@beyondwork/docx-react-component 1.0.130 → 1.0.132

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 (98) hide show
  1. package/dist/api/public-types.cjs +679 -157
  2. package/dist/api/public-types.d.cts +2 -2
  3. package/dist/api/public-types.d.ts +2 -2
  4. package/dist/api/public-types.js +5 -3
  5. package/dist/api/v3.cjs +371 -32
  6. package/dist/api/v3.d.cts +3 -3
  7. package/dist/api/v3.d.ts +3 -3
  8. package/dist/api/v3.js +10 -10
  9. package/dist/{canonical-document-BMtONpgf.d.cts → canonical-document-CfZIc-fC.d.cts} +1 -1
  10. package/dist/{canonical-document-BMtONpgf.d.ts → canonical-document-CfZIc-fC.d.ts} +1 -1
  11. package/dist/{chunk-YLL7MF5C.js → chunk-43JAPM2F.js} +24 -17
  12. package/dist/{chunk-4YCWECLZ.js → chunk-4HGFJ6Z2.js} +1 -1
  13. package/dist/{chunk-HYHCRMR7.js → chunk-6736GA6J.js} +1 -1
  14. package/dist/{chunk-Q7Y57KOK.js → chunk-6TLZ6CMP.js} +2 -2
  15. package/dist/{chunk-DGA7M77X.js → chunk-ALWXYGXP.js} +2 -2
  16. package/dist/{chunk-PHMWH23E.js → chunk-C5LXKR54.js} +1 -1
  17. package/dist/{chunk-6TBLDBCL.js → chunk-CDEZGLQ3.js} +1 -1
  18. package/dist/{chunk-VRKK2CSZ.js → chunk-JVTDBX67.js} +2 -2
  19. package/dist/{chunk-THVM6EP5.js → chunk-LPLJZJT2.js} +1196 -35
  20. package/dist/{chunk-T5YYFDZB.js → chunk-N5FTU4HZ.js} +1 -1
  21. package/dist/{chunk-3YCQM2RV.js → chunk-QUTVR72L.js} +8 -7
  22. package/dist/{chunk-M7YRJX6V.js → chunk-RBWJHRNP.js} +1 -1
  23. package/dist/{chunk-A66ZVUAT.js → chunk-RYMMKOFI.js} +204 -10
  24. package/dist/{chunk-QXKQPUOM.js → chunk-SZ6BJA4Q.js} +3 -3
  25. package/dist/{chunk-A3GSNB4G.js → chunk-U3UMKA7B.js} +147 -13
  26. package/dist/{chunk-KNHMXKC6.js → chunk-UFPBYJMA.js} +2 -2
  27. package/dist/{chunk-35RHOE6I.js → chunk-UP2KDOYE.js} +6 -1162
  28. package/dist/{chunk-CI2TD3T4.js → chunk-W2I47J2Q.js} +1 -1
  29. package/dist/{chunk-7G5GR3VV.js → chunk-XYTWOJII.js} +5 -5
  30. package/dist/{chunk-WZDKNF37.js → chunk-YUHNDEV5.js} +7 -7
  31. package/dist/{chunk-ZVC23LKV.js → chunk-ZDYGRO2Z.js} +1 -1
  32. package/dist/compare.d.cts +1 -1
  33. package/dist/compare.d.ts +1 -1
  34. package/dist/core/commands/formatting-commands.d.cts +2 -2
  35. package/dist/core/commands/formatting-commands.d.ts +2 -2
  36. package/dist/core/commands/image-commands.cjs +312 -20
  37. package/dist/core/commands/image-commands.d.cts +2 -2
  38. package/dist/core/commands/image-commands.d.ts +2 -2
  39. package/dist/core/commands/image-commands.js +5 -5
  40. package/dist/core/commands/section-layout-commands.d.cts +2 -2
  41. package/dist/core/commands/section-layout-commands.d.ts +2 -2
  42. package/dist/core/commands/style-commands.d.cts +2 -2
  43. package/dist/core/commands/style-commands.d.ts +2 -2
  44. package/dist/core/commands/table-structure-commands.cjs +312 -20
  45. package/dist/core/commands/table-structure-commands.d.cts +2 -2
  46. package/dist/core/commands/table-structure-commands.d.ts +2 -2
  47. package/dist/core/commands/table-structure-commands.js +4 -4
  48. package/dist/core/commands/text-commands.cjs +312 -20
  49. package/dist/core/commands/text-commands.d.cts +2 -2
  50. package/dist/core/commands/text-commands.d.ts +2 -2
  51. package/dist/core/commands/text-commands.js +5 -5
  52. package/dist/core/selection/mapping.d.cts +2 -2
  53. package/dist/core/selection/mapping.d.ts +2 -2
  54. package/dist/core/state/editor-state.d.cts +2 -2
  55. package/dist/core/state/editor-state.d.ts +2 -2
  56. package/dist/index.cjs +3015 -2213
  57. package/dist/index.d.cts +5 -5
  58. package/dist/index.d.ts +5 -5
  59. package/dist/index.js +554 -99
  60. package/dist/io/docx-session.d.cts +4 -4
  61. package/dist/io/docx-session.d.ts +4 -4
  62. package/dist/io/docx-session.js +4 -4
  63. package/dist/legal.d.cts +1 -1
  64. package/dist/legal.d.ts +1 -1
  65. package/dist/legal.js +3 -3
  66. package/dist/{loader-B-aL5HGD.d.ts → loader-CfpeEPAa.d.ts} +3 -3
  67. package/dist/{loader-DiY_ZgKl.d.cts → loader-MAa8VpzW.d.cts} +3 -3
  68. package/dist/{public-types-gvubspUI.d.cts → public-types-Cjs8glST.d.ts} +137 -2
  69. package/dist/{public-types-DyqnxxO9.d.ts → public-types-KBS6JnOs.d.cts} +137 -2
  70. package/dist/public-types.cjs +679 -157
  71. package/dist/public-types.d.cts +2 -2
  72. package/dist/public-types.d.ts +2 -2
  73. package/dist/public-types.js +5 -3
  74. package/dist/runtime/collab.d.cts +3 -3
  75. package/dist/runtime/collab.d.ts +3 -3
  76. package/dist/runtime/document-runtime.cjs +371 -22
  77. package/dist/runtime/document-runtime.d.cts +2 -2
  78. package/dist/runtime/document-runtime.d.ts +2 -2
  79. package/dist/runtime/document-runtime.js +14 -14
  80. package/dist/{session-CDB0hohT.d.ts → session-CkoH8FoY.d.ts} +3 -3
  81. package/dist/{session-BUN6B-Vj.d.cts → session-wwe0Gib-.d.cts} +3 -3
  82. package/dist/session.d.cts +5 -5
  83. package/dist/session.d.ts +5 -5
  84. package/dist/session.js +5 -5
  85. package/dist/tailwind.cjs +492 -202
  86. package/dist/tailwind.d.cts +2 -2
  87. package/dist/tailwind.d.ts +2 -2
  88. package/dist/tailwind.js +7 -7
  89. package/dist/{types-C4bz3kDU.d.cts → types-B3SGRW0w.d.cts} +2 -2
  90. package/dist/{types-VWH6CRvG.d.ts → types-CH7NWqVL.d.ts} +2 -2
  91. package/dist/ui-tailwind/editor-surface/search-plugin.d.cts +3 -3
  92. package/dist/ui-tailwind/editor-surface/search-plugin.d.ts +3 -3
  93. package/dist/ui-tailwind/editor-surface/search-plugin.js +4 -4
  94. package/dist/ui-tailwind.cjs +492 -202
  95. package/dist/ui-tailwind.d.cts +3 -3
  96. package/dist/ui-tailwind.d.ts +3 -3
  97. package/dist/ui-tailwind.js +7 -7
  98. package/package.json +4 -1
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  collectEditableTargetRefs
3
- } from "./chunk-A66ZVUAT.js";
3
+ } from "./chunk-RYMMKOFI.js";
4
4
 
5
5
  // src/api/v3/_ux-response.ts
6
6
  function emitUxResponse(runtime, res) {
@@ -7,28 +7,28 @@ import {
7
7
  resolveSectionForStoryTarget,
8
8
  searchSecondaryStories,
9
9
  searchSurfaceBlocks
10
- } from "./chunk-THVM6EP5.js";
10
+ } from "./chunk-LPLJZJT2.js";
11
11
  import {
12
12
  createEditorSurfaceSnapshot,
13
13
  createFormattingContext,
14
14
  resolveTableStyleResolution
15
- } from "./chunk-A3GSNB4G.js";
15
+ } from "./chunk-U3UMKA7B.js";
16
16
  import {
17
17
  createSelectionSnapshot
18
18
  } from "./chunk-OYGMRRR7.js";
19
19
  import {
20
20
  normalizeParsedTextDocument
21
- } from "./chunk-4YCWECLZ.js";
21
+ } from "./chunk-4HGFJ6Z2.js";
22
22
  import {
23
23
  buildFieldRegistry,
24
24
  parseMainDocumentXml,
25
25
  parseTocLevelRange
26
- } from "./chunk-M7YRJX6V.js";
26
+ } from "./chunk-RBWJHRNP.js";
27
27
  import {
28
28
  collectEditableTargetRefs,
29
29
  collectLayoutInputIdentities,
30
30
  validateEditableTargetRef
31
- } from "./chunk-A66ZVUAT.js";
31
+ } from "./chunk-RYMMKOFI.js";
32
32
  import {
33
33
  serializeMainDocument
34
34
  } from "./chunk-FM4K4XFJ.js";
@@ -18,7 +18,7 @@ import {
18
18
  resolveScopeRange,
19
19
  scopeSpecificity,
20
20
  searchDocument
21
- } from "./chunk-7G5GR3VV.js";
21
+ } from "./chunk-XYTWOJII.js";
22
22
  import {
23
23
  BROADCAST_COMMAND_TYPES,
24
24
  COMMAND_EVENT_SCHEMA_VERSION,
@@ -29,7 +29,7 @@ import {
29
29
  buildPageAnchorElementId,
30
30
  createUiApi,
31
31
  emitUxResponse
32
- } from "./chunk-CI2TD3T4.js";
32
+ } from "./chunk-W2I47J2Q.js";
33
33
  import {
34
34
  DEFAULT_PX_PER_TWIP,
35
35
  DEFAULT_REGISTRY_ENTRIES,
@@ -37,24 +37,24 @@ import {
37
37
  LAYCACHE_SCHEMA_VERSION,
38
38
  LAYOUT_ENGINE_VERSION,
39
39
  createScopeTagRegistry
40
- } from "./chunk-THVM6EP5.js";
40
+ } from "./chunk-LPLJZJT2.js";
41
41
  import {
42
42
  chartModelStore,
43
43
  createFormattingContext
44
- } from "./chunk-A3GSNB4G.js";
44
+ } from "./chunk-U3UMKA7B.js";
45
45
  import {
46
46
  createSelectionSnapshot,
47
47
  deriveDocumentStats
48
48
  } from "./chunk-OYGMRRR7.js";
49
49
  import {
50
50
  DocxSession
51
- } from "./chunk-DGA7M77X.js";
51
+ } from "./chunk-ALWXYGXP.js";
52
52
  import {
53
53
  WORKFLOW_PAYLOAD_PART_PATH,
54
54
  buildEditorStateXml,
55
55
  parseEditorStateXml,
56
56
  parseWorkflowPayloadEnvelopeFromPackage
57
- } from "./chunk-VRKK2CSZ.js";
57
+ } from "./chunk-JVTDBX67.js";
58
58
  import {
59
59
  EMU_PER_PX,
60
60
  GRADIENT_STOP_UNITS,
@@ -63,7 +63,7 @@ import {
63
63
  createHeaderFooterStoryKey,
64
64
  createNoteStoryKey,
65
65
  validateEditableTargetRef
66
- } from "./chunk-A66ZVUAT.js";
66
+ } from "./chunk-RYMMKOFI.js";
67
67
  import {
68
68
  readOpcPackage
69
69
  } from "./chunk-WUDSNHWF.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  extractBookmarksFromBodyXml
3
- } from "./chunk-M7YRJX6V.js";
3
+ } from "./chunk-RBWJHRNP.js";
4
4
 
5
5
  // src/legal/document-root.ts
6
6
  function resolveWalkableRoot(document) {
@@ -1,4 +1,4 @@
1
- import { C as CanonicalDocument, B as BlockNode } from './canonical-document-BMtONpgf.cjs';
1
+ import { C as CanonicalDocument, B as BlockNode } from './canonical-document-CfZIc-fC.cjs';
2
2
 
3
3
  type OpcCompressionMethod = "store" | "deflate";
4
4
  type OpcSurfaceKind = "content" | "relationships" | "content-types";
package/dist/compare.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { C as CanonicalDocument, B as BlockNode } from './canonical-document-BMtONpgf.js';
1
+ import { C as CanonicalDocument, B as BlockNode } from './canonical-document-CfZIc-fC.js';
2
2
 
3
3
  type OpcCompressionMethod = "store" | "deflate";
4
4
  type OpcSurfaceKind = "content" | "relationships" | "content-types";
@@ -1,7 +1,7 @@
1
1
  import 'prosemirror-state';
2
2
  import 'prosemirror-model';
3
- export { g4 as Alignment, g5 as FormattingMutationResult, g6 as FormattingOperation, g7 as TextMarkClearTarget, g8 as TextMarkRangeOperation, g9 as applyFormattingOperationToDocument, ga as applyIndentation, gb as applyTextMarkOperationToDocumentRange, gc as getFormattingStateFromRenderSnapshot, gd as isMarkActive, ge as makeSetAlignment, gf as makeSetFontFamily, gg as makeSetFontSize, gh as makeSetHighlight, gi as makeSetTextColor, gj as makeToggleAllCaps, gk as makeToggleBold, gl as makeToggleItalic, gm as makeToggleSmallCaps, gn as makeToggleStrikethrough, go as makeToggleSubscript, gp as makeToggleSuperscript, gq as makeToggleUnderline } from '../../public-types-gvubspUI.cjs';
4
- import '../../canonical-document-BMtONpgf.cjs';
3
+ export { g4 as Alignment, g5 as FormattingMutationResult, g6 as FormattingOperation, g7 as TextMarkClearTarget, g8 as TextMarkRangeOperation, g9 as applyFormattingOperationToDocument, ga as applyIndentation, gb as applyTextMarkOperationToDocumentRange, gc as getFormattingStateFromRenderSnapshot, gd as isMarkActive, ge as makeSetAlignment, gf as makeSetFontFamily, gg as makeSetFontSize, gh as makeSetHighlight, gi as makeSetTextColor, gj as makeToggleAllCaps, gk as makeToggleBold, gl as makeToggleItalic, gm as makeToggleSmallCaps, gn as makeToggleStrikethrough, go as makeToggleSubscript, gp as makeToggleSuperscript, gq as makeToggleUnderline } from '../../public-types-KBS6JnOs.cjs';
4
+ import '../../canonical-document-CfZIc-fC.cjs';
5
5
  import 'react';
6
6
  import 'yjs';
7
7
  import 'y-protocols/awareness';
@@ -1,7 +1,7 @@
1
1
  import 'prosemirror-state';
2
2
  import 'prosemirror-model';
3
- export { g4 as Alignment, g5 as FormattingMutationResult, g6 as FormattingOperation, g7 as TextMarkClearTarget, g8 as TextMarkRangeOperation, g9 as applyFormattingOperationToDocument, ga as applyIndentation, gb as applyTextMarkOperationToDocumentRange, gc as getFormattingStateFromRenderSnapshot, gd as isMarkActive, ge as makeSetAlignment, gf as makeSetFontFamily, gg as makeSetFontSize, gh as makeSetHighlight, gi as makeSetTextColor, gj as makeToggleAllCaps, gk as makeToggleBold, gl as makeToggleItalic, gm as makeToggleSmallCaps, gn as makeToggleStrikethrough, go as makeToggleSubscript, gp as makeToggleSuperscript, gq as makeToggleUnderline } from '../../public-types-DyqnxxO9.js';
4
- import '../../canonical-document-BMtONpgf.js';
3
+ export { g4 as Alignment, g5 as FormattingMutationResult, g6 as FormattingOperation, g7 as TextMarkClearTarget, g8 as TextMarkRangeOperation, g9 as applyFormattingOperationToDocument, ga as applyIndentation, gb as applyTextMarkOperationToDocumentRange, gc as getFormattingStateFromRenderSnapshot, gd as isMarkActive, ge as makeSetAlignment, gf as makeSetFontFamily, gg as makeSetFontSize, gh as makeSetHighlight, gi as makeSetTextColor, gj as makeToggleAllCaps, gk as makeToggleBold, gl as makeToggleItalic, gm as makeToggleSmallCaps, gn as makeToggleStrikethrough, go as makeToggleSubscript, gp as makeToggleSuperscript, gq as makeToggleUnderline } from '../../public-types-Cjs8glST.js';
4
+ import '../../canonical-document-CfZIc-fC.js';
5
5
  import 'react';
6
6
  import 'yjs';
7
7
  import 'y-protocols/awareness';
@@ -859,11 +859,14 @@ function collectEditableTargetRefs(doc, cache) {
859
859
  collectEditableTargetsInBlocks(
860
860
  context.blocks,
861
861
  {
862
+ doc,
862
863
  storyKey: context.storyKey,
863
864
  basePath: context.basePath,
864
865
  insideSdt: false,
865
866
  insideTextBox: false,
866
- tableDepth: 0
867
+ tableDepth: 0,
868
+ numberingCatalogHash: createNumberingCatalogRevisionHash(doc),
869
+ numberingTargetRevisionHash: createNumberingTargetRevisionHash(doc)
867
870
  },
868
871
  targets,
869
872
  cache
@@ -880,6 +883,7 @@ function buildBlockCacheSignature(context, blockIndex) {
880
883
  const owner = tt?.editableOwnersByChildIndex?.get(blockIndex);
881
884
  return [
882
885
  context.storyKey,
886
+ context.numberingTargetRevisionHash,
883
887
  context.insideSdt ? "1" : "0",
884
888
  context.insideTextBox ? "1" : "0",
885
889
  String(context.tableDepth),
@@ -925,7 +929,8 @@ function collectEditableTargetsInBlocks(blocks, context, targets, cache, blockIn
925
929
  editableParagraphTargetPosture(targetKind),
926
930
  context.contentControl,
927
931
  context.tableTarget,
928
- context.tableTarget?.editableOwnersByChildIndex?.get(blockIndex)
932
+ context.tableTarget?.editableOwnersByChildIndex?.get(blockIndex),
933
+ resolveEditableParagraphListIdentity(block, context)
929
934
  )
930
935
  );
931
936
  }
@@ -1454,7 +1459,7 @@ function collectEditableTargetsInInlines(inlines, basePath, context, targets) {
1454
1459
  }
1455
1460
  }
1456
1461
  }
1457
- function createParagraphEditableTarget(paragraph, kind, storyKey, blockPath, targetPosture = { editability: "editable", posture: { blockers: [] } }, contentControl, tableTarget, editableOwner) {
1462
+ function createParagraphEditableTarget(paragraph, kind, storyKey, blockPath, targetPosture = { editability: "editable", posture: { blockers: [] } }, contentControl, tableTarget, editableOwner, listIdentity) {
1458
1463
  const paragraphText = collectParagraphText(paragraph);
1459
1464
  const paragraphTextHash = hashText(paragraphText);
1460
1465
  const sourceRef = paragraph.sourceRef;
@@ -1465,19 +1470,39 @@ function createParagraphEditableTarget(paragraph, kind, storyKey, blockPath, tar
1465
1470
  context: { storyKey, insideSdt: contentControl !== void 0 },
1466
1471
  ...tableTarget
1467
1472
  }) : void 0;
1468
- const listAddress = paragraph.numbering !== void 0 ? createCanonicalAddress({
1473
+ const listAddress = listIdentity !== void 0 ? createCanonicalAddress({
1469
1474
  addressKind: "list-item-text",
1470
1475
  storyKey,
1471
1476
  staleCheckKind: "paragraph",
1472
1477
  operationScope: "list-text",
1473
- sourceRefs: [sourceRef],
1478
+ sourceRefs: [
1479
+ sourceRef,
1480
+ listIdentity.paragraphNumberingSourceRef,
1481
+ listIdentity.instanceSourceRef,
1482
+ listIdentity.abstractSourceRef
1483
+ ],
1474
1484
  staleHash: paragraphTextHash,
1475
1485
  rangeBoundary: { boundaryKind: "list-item-text" },
1486
+ list: {
1487
+ numberingOrigin: listIdentity.numberingOrigin,
1488
+ numberingInstanceId: listIdentity.numberingInstanceId,
1489
+ ...listIdentity.abstractNumberingId !== void 0 ? { abstractNumberingId: listIdentity.abstractNumberingId } : {},
1490
+ level: listIdentity.level,
1491
+ ...listIdentity.overrideHash !== void 0 ? { overrideHash: listIdentity.overrideHash } : {},
1492
+ numberingCatalogHash: listIdentity.numberingCatalogHash
1493
+ },
1476
1494
  discriminator: {
1477
1495
  blockPath,
1478
- numberingInstanceId: paragraph.numbering.numberingInstanceId,
1479
- level: paragraph.numbering.level,
1496
+ numberingOrigin: listIdentity.numberingOrigin,
1497
+ numberingInstanceId: listIdentity.numberingInstanceId,
1498
+ abstractNumberingId: listIdentity.abstractNumberingId ?? null,
1499
+ level: listIdentity.level,
1500
+ overrideHash: listIdentity.overrideHash ?? null,
1501
+ numberingCatalogHash: listIdentity.numberingCatalogHash,
1480
1502
  sourceId: sourceRef?.sourceId ?? null,
1503
+ numberingSourceId: listIdentity.paragraphNumberingSourceRef?.sourceId ?? null,
1504
+ numberingInstanceSourceId: listIdentity.instanceSourceRef?.sourceId ?? null,
1505
+ abstractNumberingSourceId: listIdentity.abstractSourceRef?.sourceId ?? null,
1481
1506
  paraId: paragraph.wordExtensionIds?.paraId ?? null,
1482
1507
  textId: paragraph.wordExtensionIds?.textId ?? null
1483
1508
  }
@@ -1518,11 +1543,62 @@ function createParagraphEditableTarget(paragraph, kind, storyKey, blockPath, tar
1518
1543
  blockType: "paragraph",
1519
1544
  ...paragraph.wordExtensionIds?.paraId !== void 0 ? { wordParaId: paragraph.wordExtensionIds.paraId } : {},
1520
1545
  ...paragraph.wordExtensionIds?.textId !== void 0 ? { wordTextId: paragraph.wordExtensionIds.textId } : {},
1521
- ...sourceRef !== void 0 ? { sourceRef } : {}
1546
+ ...sourceRef !== void 0 ? { sourceRef } : {},
1547
+ ...listIdentity !== void 0 ? {
1548
+ listNumberingOrigin: listIdentity.numberingOrigin,
1549
+ listNumberingInstanceId: listIdentity.numberingInstanceId,
1550
+ ...listIdentity.abstractNumberingId !== void 0 ? { listAbstractNumberingId: listIdentity.abstractNumberingId } : {},
1551
+ listLevel: listIdentity.level,
1552
+ ...listIdentity.overrideHash !== void 0 ? { listOverrideHash: listIdentity.overrideHash } : {},
1553
+ numberingCatalogHash: listIdentity.numberingCatalogHash
1554
+ } : {}
1522
1555
  },
1523
1556
  posture
1524
1557
  };
1525
1558
  }
1559
+ function resolveEditableParagraphListIdentity(paragraph, context) {
1560
+ const directNumbering = paragraph.numbering;
1561
+ const styleNumbering = directNumbering === void 0 && paragraph.styleId !== void 0 ? resolveParagraphStyleNumbering(context.doc, paragraph.styleId) : void 0;
1562
+ const numbering = directNumbering ?? styleNumbering;
1563
+ if (numbering === void 0) return void 0;
1564
+ const numberingCatalog = context.doc.numbering ?? { abstractDefinitions: {}, instances: {} };
1565
+ const instances = numberingCatalog.instances ?? {};
1566
+ const abstractDefinitions = numberingCatalog.abstractDefinitions ?? {};
1567
+ const instance = instances[numbering.numberingInstanceId];
1568
+ const abstractDefinition = instance !== void 0 ? abstractDefinitions[instance.abstractNumberingId] : void 0;
1569
+ const level = numbering.level ?? 0;
1570
+ const override = instance?.overrides.find((entry) => entry.level === level);
1571
+ const overrideHash = override !== void 0 ? hashText(JSON.stringify(numberingOverrideDiscriminator(override))) : void 0;
1572
+ return {
1573
+ numberingOrigin: directNumbering !== void 0 ? "paragraph" : "paragraph-style",
1574
+ numberingInstanceId: numbering.numberingInstanceId,
1575
+ ...instance?.abstractNumberingId !== void 0 ? { abstractNumberingId: instance.abstractNumberingId } : {},
1576
+ level,
1577
+ ...overrideHash !== void 0 ? { overrideHash } : {},
1578
+ numberingCatalogHash: context.numberingCatalogHash,
1579
+ ...directNumbering?.sourceRef !== void 0 ? { paragraphNumberingSourceRef: directNumbering.sourceRef } : {},
1580
+ ...instance?.sourceRef !== void 0 ? { instanceSourceRef: instance.sourceRef } : {},
1581
+ ...abstractDefinition?.sourceRef !== void 0 ? { abstractSourceRef: abstractDefinition.sourceRef } : {}
1582
+ };
1583
+ }
1584
+ function numberingOverrideDiscriminator(override) {
1585
+ return {
1586
+ level: override.level,
1587
+ startAt: override.startAt ?? null,
1588
+ sourceId: override.sourceRef?.sourceId ?? null,
1589
+ levelDefinition: override.levelDefinition === void 0 ? null : {
1590
+ sourceId: override.levelDefinition.sourceRef?.sourceId ?? null,
1591
+ format: override.levelDefinition.format ?? null,
1592
+ text: override.levelDefinition.text ?? null,
1593
+ startAt: override.levelDefinition.startAt ?? null,
1594
+ paragraphStyleId: override.levelDefinition.paragraphStyleId ?? null,
1595
+ isLegalNumbering: override.levelDefinition.isLegalNumbering ?? null,
1596
+ suffix: override.levelDefinition.suffix ?? null,
1597
+ restartAfterLevel: override.levelDefinition.restartAfterLevel ?? null,
1598
+ picBulletId: override.levelDefinition.picBulletId ?? null
1599
+ }
1600
+ };
1601
+ }
1526
1602
  function contentControlLocksContent(contentControl) {
1527
1603
  return contentControl?.lock !== void 0 && contentControl.lock !== "unlocked" && contentControl.lock !== "none";
1528
1604
  }
@@ -2291,6 +2367,7 @@ function createCanonicalAddress(input) {
2291
2367
  ...input.rowRange !== void 0 ? { rowRange: input.rowRange } : {},
2292
2368
  ...input.columnRange !== void 0 ? { columnRange: input.columnRange } : {},
2293
2369
  ...sourceHash !== void 0 ? { sourceJoinHash: sourceHash } : {},
2370
+ ...input.list !== void 0 ? { list: input.list } : {},
2294
2371
  ...input.secondaryStory === true ? { secondaryStory: true } : {},
2295
2372
  ...input.nestedTable === true ? { nestedTable: true } : {},
2296
2373
  ...input.insideSdt === true ? { insideSdt: true } : {},
@@ -2325,6 +2402,87 @@ function sourceJoinHash(refs) {
2325
2402
  if (sourceIds.length === 0) return void 0;
2326
2403
  return hashText(sourceIds.join("\0"));
2327
2404
  }
2405
+ function createNumberingCatalogRevisionHash(doc) {
2406
+ const catalog = doc.numbering ?? { abstractDefinitions: {}, instances: {} };
2407
+ const abstractDefinitions = catalog.abstractDefinitions ?? {};
2408
+ const instances = catalog.instances ?? {};
2409
+ const numPicBullets = catalog.numPicBullets ?? {};
2410
+ return hashText(JSON.stringify({
2411
+ abstractDefinitions: Object.keys(abstractDefinitions).sort().map((abstractNumberingId) => {
2412
+ const definition = abstractDefinitions[abstractNumberingId];
2413
+ return {
2414
+ abstractNumberingId,
2415
+ sourceId: definition.sourceRef?.sourceId ?? null,
2416
+ nsid: definition.nsid ?? null,
2417
+ tplc: definition.tplc ?? null,
2418
+ styleLink: definition.styleLink ?? null,
2419
+ numStyleLink: definition.numStyleLink ?? null,
2420
+ levels: definition.levels.map((level) => ({
2421
+ sourceId: level.sourceRef?.sourceId ?? null,
2422
+ level: level.level,
2423
+ format: level.format,
2424
+ text: level.text,
2425
+ startAt: level.startAt ?? null,
2426
+ paragraphStyleId: level.paragraphStyleId ?? null,
2427
+ isLegalNumbering: level.isLegalNumbering ?? null,
2428
+ suffix: level.suffix ?? null,
2429
+ restartAfterLevel: level.restartAfterLevel ?? null,
2430
+ picBulletId: level.picBulletId ?? null
2431
+ }))
2432
+ };
2433
+ }),
2434
+ instances: Object.keys(instances).sort().map((numberingInstanceId) => {
2435
+ const instance = instances[numberingInstanceId];
2436
+ return {
2437
+ numberingInstanceId,
2438
+ sourceId: instance.sourceRef?.sourceId ?? null,
2439
+ abstractNumberingId: instance.abstractNumberingId,
2440
+ overrides: instance.overrides.map(numberingOverrideDiscriminator)
2441
+ };
2442
+ }),
2443
+ numPicBullets: Object.keys(numPicBullets).sort().map((numPicBulletId) => {
2444
+ const picBullet = numPicBullets[numPicBulletId];
2445
+ return {
2446
+ numPicBulletId,
2447
+ sourceId: picBullet.sourceRef?.sourceId ?? null,
2448
+ mediaId: picBullet.mediaId ?? null,
2449
+ widthEmu: picBullet.widthEmu ?? null,
2450
+ heightEmu: picBullet.heightEmu ?? null
2451
+ };
2452
+ })
2453
+ }));
2454
+ }
2455
+ function createNumberingTargetRevisionHash(doc) {
2456
+ const paragraphStyles = doc.styles?.paragraphs ?? {};
2457
+ return hashText(JSON.stringify({
2458
+ numberingCatalogHash: createNumberingCatalogRevisionHash(doc),
2459
+ paragraphStyleNumbering: Object.keys(paragraphStyles).sort().map((styleId) => {
2460
+ const style = paragraphStyles[styleId];
2461
+ return {
2462
+ styleId,
2463
+ basedOn: style.basedOn ?? null,
2464
+ numberingInstanceId: style.numbering?.numberingInstanceId ?? null,
2465
+ level: style.numbering?.level ?? null
2466
+ };
2467
+ })
2468
+ }));
2469
+ }
2470
+ function resolveParagraphStyleNumbering(doc, styleId) {
2471
+ const visited = /* @__PURE__ */ new Set();
2472
+ let currentStyleId = styleId;
2473
+ while (currentStyleId !== void 0 && !visited.has(currentStyleId)) {
2474
+ visited.add(currentStyleId);
2475
+ const style = doc.styles?.paragraphs?.[currentStyleId];
2476
+ if (style === void 0) {
2477
+ return void 0;
2478
+ }
2479
+ if (style.numbering !== void 0) {
2480
+ return style.numbering;
2481
+ }
2482
+ currentStyleId = style.basedOn;
2483
+ }
2484
+ return void 0;
2485
+ }
2328
2486
  function collectCanonicalFieldRegionIdentities(doc) {
2329
2487
  const registry = doc.fieldRegistry;
2330
2488
  const byFieldIndex = new Map(
@@ -3771,6 +3929,10 @@ function createNumberingPrefixResolver(catalog) {
3771
3929
  ])
3772
3930
  ) : resolved.effectiveLevels;
3773
3931
  const picBulletId = resolved.effectiveLevel.picBulletId;
3932
+ const pictureBulletPosture = resolvePictureBulletRenderPosture(
3933
+ picBulletId,
3934
+ picBulletId != null ? catalog.numPicBullets?.[picBulletId] : void 0
3935
+ );
3774
3936
  const text = renderLevelText(
3775
3937
  resolved.effectiveLevel.text,
3776
3938
  workingState.counters,
@@ -3779,14 +3941,20 @@ function createNumberingPrefixResolver(catalog) {
3779
3941
  if (picBulletId == null && resolved.effectiveLevel.format !== "none" && text === null) {
3780
3942
  return null;
3781
3943
  }
3782
- const visibleText = resolved.effectiveLevel.format === "none" ? null : text;
3944
+ const visibleText = resolved.effectiveLevel.format === "none" ? null : text ?? pictureBulletPosture?.fallbackGlyph ?? null;
3945
+ const normalizedMarkerText = normalizeMarkerText(
3946
+ visibleText,
3947
+ resolved.effectiveLevel.format,
3948
+ resolved.geometry.markerRunProperties
3949
+ );
3783
3950
  const formatPosture = getNumberingFormatPosture(
3784
3951
  resolved.effectiveLevel.format,
3785
3952
  currentCounter
3786
3953
  );
3787
- const picBulletMediaId = picBulletId != null ? catalog.numPicBullets?.[picBulletId]?.mediaId : void 0;
3954
+ const picBulletMediaId = pictureBulletPosture?.mediaId;
3788
3955
  return {
3789
- text: visibleText,
3956
+ text: normalizedMarkerText.text,
3957
+ ...normalizedMarkerText.posture !== void 0 ? { markerTextPosture: normalizedMarkerText.posture } : {},
3790
3958
  level: resolved.effectiveLevel.level,
3791
3959
  format: resolved.effectiveLevel.format,
3792
3960
  ...formatPosture !== void 0 ? { formatPosture } : {},
@@ -3796,7 +3964,9 @@ function createNumberingPrefixResolver(catalog) {
3796
3964
  ...resolved.effectiveLevel.isLegalNumbering ? { isLegalNumbering: true } : {},
3797
3965
  ...resolved.geometry.markerRunProperties ? { markerRunProperties: resolved.geometry.markerRunProperties } : {},
3798
3966
  geometry: resolved.geometry,
3799
- ...picBulletMediaId != null ? { picBulletMediaId } : {}
3967
+ ...picBulletId != null ? { picBulletId } : {},
3968
+ ...picBulletMediaId != null ? { picBulletMediaId } : {},
3969
+ ...pictureBulletPosture !== void 0 ? { pictureBulletPosture } : {}
3800
3970
  };
3801
3971
  }
3802
3972
  return {
@@ -3812,6 +3982,69 @@ function createNumberingPrefixResolver(catalog) {
3812
3982
  }
3813
3983
  };
3814
3984
  }
3985
+ function normalizeMarkerText(text, format, markerRunProperties) {
3986
+ if (text === null || format !== "bullet") {
3987
+ return { text };
3988
+ }
3989
+ const fontFamily = getMarkerFontFamily(markerRunProperties);
3990
+ if (!isKnownSymbolBulletFont(fontFamily)) {
3991
+ return { text };
3992
+ }
3993
+ const renderedText = Array.from(text, (char) => SYMBOL_BULLET_GLYPH_MAP.get(char) ?? char).join("");
3994
+ if (renderedText === text) {
3995
+ return { text };
3996
+ }
3997
+ return {
3998
+ text: renderedText,
3999
+ posture: {
4000
+ status: "normalized",
4001
+ sourceText: text,
4002
+ renderedText,
4003
+ reason: "symbol-font-bullet-normalized",
4004
+ ...fontFamily ? { fontFamily } : {}
4005
+ }
4006
+ };
4007
+ }
4008
+ function getMarkerFontFamily(markerRunProperties) {
4009
+ return markerRunProperties?.fontFamilyAscii ?? markerRunProperties?.fontFamilyHAnsi ?? markerRunProperties?.fontFamilyEastAsia ?? markerRunProperties?.fontFamilyCs ?? markerRunProperties?.fontFamily;
4010
+ }
4011
+ function isKnownSymbolBulletFont(fontFamily) {
4012
+ return fontFamily !== void 0 && /^(?:symbol|wingdings|wingdings 2|wingdings 3|webdings)$/iu.test(
4013
+ fontFamily.trim()
4014
+ );
4015
+ }
4016
+ var SYMBOL_BULLET_GLYPH_MAP = /* @__PURE__ */ new Map([
4017
+ ["\uF0B7", "\u2022"],
4018
+ ["\uF0A7", "\u25AA"],
4019
+ ["\uF0FC", "\u2713"]
4020
+ ]);
4021
+ function resolvePictureBulletRenderPosture(picBulletId, picBullet) {
4022
+ if (picBulletId == null) return void 0;
4023
+ if (!picBullet) {
4024
+ return {
4025
+ status: "preserve-only",
4026
+ picBulletId,
4027
+ fallbackGlyph: "\u2022",
4028
+ reason: "picture-bullet-catalog-entry-missing"
4029
+ };
4030
+ }
4031
+ if (picBullet.mediaId) {
4032
+ return {
4033
+ status: "media-rendered",
4034
+ picBulletId,
4035
+ mediaId: picBullet.mediaId,
4036
+ ...picBullet.sourceRef ? { sourceRef: picBullet.sourceRef } : {},
4037
+ reason: "picture-bullet-media-rendered"
4038
+ };
4039
+ }
4040
+ return {
4041
+ status: "glyph-fallback",
4042
+ picBulletId,
4043
+ fallbackGlyph: "\u2022",
4044
+ ...picBullet.sourceRef ? { sourceRef: picBullet.sourceRef } : {},
4045
+ reason: "picture-bullet-media-unavailable"
4046
+ };
4047
+ }
3815
4048
  function getSequenceState(states, numberingInstanceId, options = { create: true }) {
3816
4049
  const existing = states.get(numberingInstanceId);
3817
4050
  if (existing) {
@@ -3874,7 +4107,7 @@ function getNumberingFormatPosture(format, value) {
3874
4107
  reason: registryEntry?.fallbackReason ?? "unsupported-numbering-format-decimal-fallback"
3875
4108
  };
3876
4109
  }
3877
- if (value !== void 0 && ((format === "upperRoman" || format === "lowerRoman") && (value <= 0 || value >= 4e3) || (format === "cardinalText" || format === "ordinalText") && (!Number.isInteger(value) || value < 1 || value > 999) || (format === "upperLetter" || format === "lowerLetter" || format === "chicago") && value < 1)) {
4110
+ if (value !== void 0 && (registryEntry.isInRange !== void 0 && !registryEntry.isInRange(value) || (format === "upperRoman" || format === "lowerRoman") && (value <= 0 || value >= 4e3) || (format === "cardinalText" || format === "ordinalText") && (!Number.isInteger(value) || value < 1 || value > 999) || (format === "upperLetter" || format === "lowerLetter" || format === "chicago") && value < 1)) {
3878
4111
  return {
3879
4112
  status: "approximated",
3880
4113
  requestedFormat: format,
@@ -3968,6 +4201,37 @@ var exactNumberingFormatEntries = [
3968
4201
  supportsMutation: true,
3969
4202
  render: toOrdinal2
3970
4203
  },
4204
+ {
4205
+ format: "decimalFullWidth",
4206
+ renderSupport: "supported",
4207
+ renderedFormat: "decimalFullWidth",
4208
+ supportsMutation: false,
4209
+ render: toFullWidthDecimal
4210
+ },
4211
+ {
4212
+ format: "decimalEnclosedCircle",
4213
+ renderSupport: "supported",
4214
+ renderedFormat: "decimalEnclosedCircle",
4215
+ supportsMutation: false,
4216
+ render: toCircledDecimal,
4217
+ isInRange: (value) => Number.isInteger(value) && value >= 0 && value <= 50
4218
+ },
4219
+ {
4220
+ format: "decimalEnclosedParen",
4221
+ renderSupport: "supported",
4222
+ renderedFormat: "decimalEnclosedParen",
4223
+ supportsMutation: false,
4224
+ render: (value) => Number.isInteger(value) && value > 0 ? `(${value})` : String(value),
4225
+ isInRange: (value) => Number.isInteger(value) && value > 0
4226
+ },
4227
+ {
4228
+ format: "decimalEnclosedFullstop",
4229
+ renderSupport: "supported",
4230
+ renderedFormat: "decimalEnclosedFullstop",
4231
+ supportsMutation: false,
4232
+ render: (value) => Number.isInteger(value) && value > 0 ? `${value}.` : String(value),
4233
+ isInRange: (value) => Number.isInteger(value) && value > 0
4234
+ },
3971
4235
  {
3972
4236
  format: "cardinalText",
3973
4237
  renderSupport: "supported",
@@ -4005,10 +4269,6 @@ var exactNumberingFormatEntries = [
4005
4269
  }
4006
4270
  ];
4007
4271
  var approximatedDecimalFormats = [
4008
- "decimalEnclosedCircle",
4009
- "decimalEnclosedFullstop",
4010
- "decimalEnclosedParen",
4011
- "decimalFullWidth",
4012
4272
  "decimalHalfWidth",
4013
4273
  "aiueo",
4014
4274
  "iroha",
@@ -4060,6 +4320,30 @@ function toOrdinal2(value) {
4060
4320
  return `${value}th`;
4061
4321
  }
4062
4322
  }
4323
+ function toFullWidthDecimal(value) {
4324
+ return String(value).replace(
4325
+ /[0-9]/g,
4326
+ (digit) => String.fromCharCode(65296 + Number.parseInt(digit, 10))
4327
+ );
4328
+ }
4329
+ var CIRCLED_DECIMAL_BY_VALUE = new Map([
4330
+ [0, "\u24EA"],
4331
+ ...Array.from({ length: 20 }, (_, index) => [
4332
+ index + 1,
4333
+ String.fromCodePoint(9312 + index)
4334
+ ]),
4335
+ ...Array.from({ length: 15 }, (_, index) => [
4336
+ index + 21,
4337
+ String.fromCodePoint(12881 + index)
4338
+ ]),
4339
+ ...Array.from({ length: 15 }, (_, index) => [
4340
+ index + 36,
4341
+ String.fromCodePoint(12977 + index)
4342
+ ])
4343
+ ]);
4344
+ function toCircledDecimal(value) {
4345
+ return CIRCLED_DECIMAL_BY_VALUE.get(value) ?? String(value);
4346
+ }
4063
4347
  function toAlphabetic2(value) {
4064
4348
  if (value <= 0) {
4065
4349
  return String(value);
@@ -4833,6 +5117,7 @@ function toNumberingLayoutInput(numbering) {
4833
5117
  const hangingTwips = textColumn?.hanging ?? numbering.geometry.indentation?.hanging ?? (typeof numbering.geometry.indentation?.firstLine === "number" && numbering.geometry.indentation.firstLine < 0 ? Math.abs(numbering.geometry.indentation.firstLine) : void 0);
4834
5118
  return {
4835
5119
  markerText: numbering.text,
5120
+ ...numbering.markerTextPosture ? { markerTextPosture: { ...numbering.markerTextPosture } } : {},
4836
5121
  ...numbering.markerRunProperties ? { markerRunFormatting: numbering.markerRunProperties } : {},
4837
5122
  markerSuffix: normalizeNumberingMarkerSuffix(numbering.suffix),
4838
5123
  ...markerLane ? { markerLaneStartTwips: markerLane.start } : {},
@@ -4845,7 +5130,9 @@ function toNumberingLayoutInput(numbering) {
4845
5130
  ...numbering.formatPosture !== void 0 ? { formatPosture: { ...numbering.formatPosture } } : {},
4846
5131
  startAt: numbering.startAt,
4847
5132
  ...numbering.isLegalNumbering ? { isLegalNumbering: true } : {},
4848
- ...numbering.picBulletMediaId ? { pictureBulletMediaId: numbering.picBulletMediaId } : {}
5133
+ ...numbering.picBulletId ? { pictureBulletId: numbering.picBulletId } : {},
5134
+ ...numbering.picBulletMediaId ? { pictureBulletMediaId: numbering.picBulletMediaId } : {},
5135
+ ...numbering.pictureBulletPosture ? { pictureBulletPosture: { ...numbering.pictureBulletPosture } } : {}
4849
5136
  };
4850
5137
  }
4851
5138
  function toFieldLayoutInput(entry, resolved, region) {
@@ -5357,6 +5644,7 @@ function buildEffectiveNumbering(detail) {
5357
5644
  const result = {
5358
5645
  level: detail.level,
5359
5646
  ...detail.text !== null ? { marker: detail.text } : {},
5647
+ ...detail.markerTextPosture ? { markerTextPosture: { ...detail.markerTextPosture } } : {},
5360
5648
  ...detail.markerRunProperties ? { markerRunFormatting: detail.markerRunProperties } : {},
5361
5649
  ...detail.geometry ? {
5362
5650
  indentation: {
@@ -5366,7 +5654,8 @@ function buildEffectiveNumbering(detail) {
5366
5654
  ...detail.geometry.tabStops && detail.geometry.tabStops.length > 0 ? { tab: detail.geometry.tabStops[0].position } : {}
5367
5655
  }
5368
5656
  } : {},
5369
- ...detail.picBulletMediaId ? { pictureBulletRef: detail.picBulletMediaId } : {}
5657
+ ...detail.picBulletMediaId ? { pictureBulletRef: detail.picBulletMediaId } : {},
5658
+ ...detail.pictureBulletPosture ? { pictureBulletPosture: { ...detail.pictureBulletPosture } } : {}
5370
5659
  };
5371
5660
  return result;
5372
5661
  }
@@ -7283,6 +7572,7 @@ function toSurfaceResolvedNumbering(numbering) {
7283
7572
  format: numbering.format,
7284
7573
  ...numbering.formatPosture !== void 0 ? { formatPosture: { ...numbering.formatPosture } } : {},
7285
7574
  ...numbering.text !== null ? { text: numbering.text } : {},
7575
+ ...numbering.markerTextPosture !== void 0 ? { markerTextPosture: { ...numbering.markerTextPosture } } : {},
7286
7576
  startAt: numbering.startAt,
7287
7577
  ...numbering.paragraphStyleId ? { paragraphStyleId: numbering.paragraphStyleId } : {},
7288
7578
  ...numbering.isLegalNumbering ? { isLegalNumbering: true } : {},
@@ -7295,7 +7585,9 @@ function toSurfaceResolvedNumbering(numbering) {
7295
7585
  ...numbering.geometry.markerLane ? { markerLane: { ...numbering.geometry.markerLane } } : {},
7296
7586
  ...numbering.geometry.textColumn ? { textColumn: { ...numbering.geometry.textColumn } } : {}
7297
7587
  },
7298
- ...numbering.picBulletMediaId ? { picBulletMediaId: numbering.picBulletMediaId } : {}
7588
+ ...numbering.picBulletId ? { picBulletId: numbering.picBulletId } : {},
7589
+ ...numbering.picBulletMediaId ? { picBulletMediaId: numbering.picBulletMediaId } : {},
7590
+ ...numbering.pictureBulletPosture ? { pictureBulletPosture: { ...numbering.pictureBulletPosture } } : {}
7299
7591
  };
7300
7592
  }
7301
7593
  function describePreservedInlinePreview(payloadReference) {
@@ -1,8 +1,8 @@
1
- import { C as CanonicalDocumentEnvelope, S as SelectionSnapshot, g as TransactionMapping } from '../../public-types-gvubspUI.cjs';
1
+ import { C as CanonicalDocumentEnvelope, S as SelectionSnapshot, g as TransactionMapping } from '../../public-types-KBS6JnOs.cjs';
2
2
  import 'react';
3
3
  import 'yjs';
4
4
  import 'y-protocols/awareness';
5
- import '../../canonical-document-BMtONpgf.cjs';
5
+ import '../../canonical-document-CfZIc-fC.cjs';
6
6
  import 'prosemirror-state';
7
7
  import 'prosemirror-model';
8
8
 
@@ -1,8 +1,8 @@
1
- import { C as CanonicalDocumentEnvelope, S as SelectionSnapshot, g as TransactionMapping } from '../../public-types-DyqnxxO9.js';
1
+ import { C as CanonicalDocumentEnvelope, S as SelectionSnapshot, g as TransactionMapping } from '../../public-types-Cjs8glST.js';
2
2
  import 'react';
3
3
  import 'yjs';
4
4
  import 'y-protocols/awareness';
5
- import '../../canonical-document-BMtONpgf.js';
5
+ import '../../canonical-document-CfZIc-fC.js';
6
6
  import 'prosemirror-state';
7
7
  import 'prosemirror-model';
8
8