@usejunior/docx-core 0.19.1 → 0.21.2

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 (180) hide show
  1. package/README.md +12 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/cli/conformance-adapter.d.ts.map +1 -1
  4. package/dist/cli/conformance-adapter.js +0 -27
  5. package/dist/cli/conformance-adapter.js.map +1 -1
  6. package/dist/core-types.d.ts +1 -139
  7. package/dist/core-types.d.ts.map +1 -1
  8. package/dist/core-types.js +1 -3
  9. package/dist/core-types.js.map +1 -1
  10. package/dist/generation/compile.d.ts.map +1 -1
  11. package/dist/generation/compile.js +1 -3
  12. package/dist/generation/compile.js.map +1 -1
  13. package/dist/index.d.ts +5 -1
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +13 -1
  16. package/dist/index.js.map +1 -1
  17. package/dist/integration/generation-probes.d.ts +36 -2
  18. package/dist/integration/generation-probes.d.ts.map +1 -1
  19. package/dist/integration/generation-probes.js +137 -15
  20. package/dist/integration/generation-probes.js.map +1 -1
  21. package/dist/integration/libreoffice-oracle.d.ts +3 -1
  22. package/dist/integration/libreoffice-oracle.d.ts.map +1 -1
  23. package/dist/integration/libreoffice-oracle.js +10 -4
  24. package/dist/integration/libreoffice-oracle.js.map +1 -1
  25. package/dist/integration/synthetic-docx-fixture.d.ts.map +1 -1
  26. package/dist/integration/synthetic-docx-fixture.js +8 -0
  27. package/dist/integration/synthetic-docx-fixture.js.map +1 -1
  28. package/dist/primitives/accept_ai_edits.js +14 -2
  29. package/dist/primitives/accept_ai_edits.js.map +1 -1
  30. package/dist/primitives/accept_changes.d.ts +6 -0
  31. package/dist/primitives/accept_changes.d.ts.map +1 -1
  32. package/dist/primitives/accept_changes.js +236 -62
  33. package/dist/primitives/accept_changes.js.map +1 -1
  34. package/dist/primitives/bookmarks.d.ts +8 -2
  35. package/dist/primitives/bookmarks.d.ts.map +1 -1
  36. package/dist/primitives/bookmarks.js +31 -7
  37. package/dist/primitives/bookmarks.js.map +1 -1
  38. package/dist/primitives/comments.d.ts +101 -5
  39. package/dist/primitives/comments.d.ts.map +1 -1
  40. package/dist/primitives/comments.js +356 -156
  41. package/dist/primitives/comments.js.map +1 -1
  42. package/dist/primitives/conformance.d.ts +42 -0
  43. package/dist/primitives/conformance.d.ts.map +1 -0
  44. package/dist/primitives/conformance.js +61 -0
  45. package/dist/primitives/conformance.js.map +1 -0
  46. package/dist/primitives/document.d.ts +145 -2
  47. package/dist/primitives/document.d.ts.map +1 -1
  48. package/dist/primitives/document.js +505 -27
  49. package/dist/primitives/document.js.map +1 -1
  50. package/dist/primitives/document_view-headings.d.ts +3 -1
  51. package/dist/primitives/document_view-headings.d.ts.map +1 -1
  52. package/dist/primitives/document_view-headings.js +5 -5
  53. package/dist/primitives/document_view-headings.js.map +1 -1
  54. package/dist/primitives/document_view.d.ts +2 -0
  55. package/dist/primitives/document_view.d.ts.map +1 -1
  56. package/dist/primitives/document_view.js +18 -4
  57. package/dist/primitives/document_view.js.map +1 -1
  58. package/dist/primitives/errors.d.ts +3 -2
  59. package/dist/primitives/errors.d.ts.map +1 -1
  60. package/dist/primitives/errors.js +3 -1
  61. package/dist/primitives/errors.js.map +1 -1
  62. package/dist/primitives/extract_revisions.d.ts +23 -6
  63. package/dist/primitives/extract_revisions.d.ts.map +1 -1
  64. package/dist/primitives/extract_revisions.js +208 -38
  65. package/dist/primitives/extract_revisions.js.map +1 -1
  66. package/dist/primitives/field_evaluation.d.ts +70 -0
  67. package/dist/primitives/field_evaluation.d.ts.map +1 -0
  68. package/dist/primitives/field_evaluation.js +462 -0
  69. package/dist/primitives/field_evaluation.js.map +1 -0
  70. package/dist/primitives/footnotes.d.ts +53 -3
  71. package/dist/primitives/footnotes.d.ts.map +1 -1
  72. package/dist/primitives/footnotes.js +228 -83
  73. package/dist/primitives/footnotes.js.map +1 -1
  74. package/dist/primitives/index.d.ts +12 -1
  75. package/dist/primitives/index.d.ts.map +1 -1
  76. package/dist/primitives/index.js +12 -1
  77. package/dist/primitives/index.js.map +1 -1
  78. package/dist/primitives/merge_runs.d.ts +3 -1
  79. package/dist/primitives/merge_runs.d.ts.map +1 -1
  80. package/dist/primitives/merge_runs.js +12 -2
  81. package/dist/primitives/merge_runs.js.map +1 -1
  82. package/dist/primitives/namespaces.d.ts +10 -2
  83. package/dist/primitives/namespaces.d.ts.map +1 -1
  84. package/dist/primitives/namespaces.js +11 -2
  85. package/dist/primitives/namespaces.js.map +1 -1
  86. package/dist/primitives/note_conversion.d.ts +11 -0
  87. package/dist/primitives/note_conversion.d.ts.map +1 -0
  88. package/dist/primitives/note_conversion.js +12 -0
  89. package/dist/primitives/note_conversion.js.map +1 -0
  90. package/dist/primitives/paragraph-index.d.ts +31 -0
  91. package/dist/primitives/paragraph-index.d.ts.map +1 -0
  92. package/dist/primitives/paragraph-index.js +140 -0
  93. package/dist/primitives/paragraph-index.js.map +1 -0
  94. package/dist/primitives/paragraph_merge_formatting.d.ts +24 -0
  95. package/dist/primitives/paragraph_merge_formatting.d.ts.map +1 -0
  96. package/dist/primitives/paragraph_merge_formatting.js +86 -0
  97. package/dist/primitives/paragraph_merge_formatting.js.map +1 -0
  98. package/dist/primitives/paragraph_numbering.d.ts +40 -0
  99. package/dist/primitives/paragraph_numbering.d.ts.map +1 -0
  100. package/dist/primitives/paragraph_numbering.js +198 -0
  101. package/dist/primitives/paragraph_numbering.js.map +1 -0
  102. package/dist/primitives/paragraph_structure.d.ts +19 -0
  103. package/dist/primitives/paragraph_structure.d.ts.map +1 -0
  104. package/dist/primitives/paragraph_structure.js +66 -0
  105. package/dist/primitives/paragraph_structure.js.map +1 -0
  106. package/dist/primitives/reject_changes.d.ts +6 -0
  107. package/dist/primitives/reject_changes.d.ts.map +1 -1
  108. package/dist/primitives/reject_changes.js +278 -68
  109. package/dist/primitives/reject_changes.js.map +1 -1
  110. package/dist/primitives/relationships.d.ts +22 -0
  111. package/dist/primitives/relationships.d.ts.map +1 -1
  112. package/dist/primitives/relationships.js +87 -0
  113. package/dist/primitives/relationships.js.map +1 -1
  114. package/dist/primitives/revision-parts.d.ts +15 -0
  115. package/dist/primitives/revision-parts.d.ts.map +1 -1
  116. package/dist/primitives/revision-parts.js +33 -1
  117. package/dist/primitives/revision-parts.js.map +1 -1
  118. package/dist/primitives/sectPrAudit.d.ts.map +1 -1
  119. package/dist/primitives/sectPrAudit.js +10 -1
  120. package/dist/primitives/sectPrAudit.js.map +1 -1
  121. package/dist/primitives/sections.d.ts +135 -0
  122. package/dist/primitives/sections.d.ts.map +1 -0
  123. package/dist/primitives/sections.js +644 -0
  124. package/dist/primitives/sections.js.map +1 -0
  125. package/dist/primitives/styles.d.ts +61 -0
  126. package/dist/primitives/styles.d.ts.map +1 -1
  127. package/dist/primitives/styles.js +207 -25
  128. package/dist/primitives/styles.js.map +1 -1
  129. package/dist/primitives/symbol_run_content.d.ts +42 -0
  130. package/dist/primitives/symbol_run_content.d.ts.map +1 -0
  131. package/dist/primitives/symbol_run_content.js +79 -0
  132. package/dist/primitives/symbol_run_content.js.map +1 -0
  133. package/dist/primitives/table_cells.d.ts +49 -0
  134. package/dist/primitives/table_cells.d.ts.map +1 -0
  135. package/dist/primitives/table_cells.js +149 -0
  136. package/dist/primitives/table_cells.js.map +1 -0
  137. package/dist/primitives/table_columns.d.ts +50 -0
  138. package/dist/primitives/table_columns.d.ts.map +1 -0
  139. package/dist/primitives/table_columns.js +138 -0
  140. package/dist/primitives/table_columns.js.map +1 -0
  141. package/dist/primitives/table_edit_common.d.ts +39 -0
  142. package/dist/primitives/table_edit_common.d.ts.map +1 -0
  143. package/dist/primitives/table_edit_common.js +163 -0
  144. package/dist/primitives/table_edit_common.js.map +1 -0
  145. package/dist/primitives/table_occupancy.d.ts +39 -0
  146. package/dist/primitives/table_occupancy.d.ts.map +1 -0
  147. package/dist/primitives/table_occupancy.js +145 -0
  148. package/dist/primitives/table_occupancy.js.map +1 -0
  149. package/dist/primitives/table_rows.d.ts +56 -0
  150. package/dist/primitives/table_rows.d.ts.map +1 -0
  151. package/dist/primitives/table_rows.js +390 -0
  152. package/dist/primitives/table_rows.js.map +1 -0
  153. package/dist/primitives/text.d.ts +69 -1
  154. package/dist/primitives/text.d.ts.map +1 -1
  155. package/dist/primitives/text.js +592 -102
  156. package/dist/primitives/text.js.map +1 -1
  157. package/dist/primitives/track-changes-emitter.d.ts +23 -0
  158. package/dist/primitives/track-changes-emitter.d.ts.map +1 -1
  159. package/dist/primitives/track-changes-emitter.js +64 -1
  160. package/dist/primitives/track-changes-emitter.js.map +1 -1
  161. package/dist/primitives/validate_document.d.ts.map +1 -1
  162. package/dist/primitives/validate_document.js +22 -1
  163. package/dist/primitives/validate_document.js.map +1 -1
  164. package/dist/primitives/zip.d.ts +22 -1
  165. package/dist/primitives/zip.d.ts.map +1 -1
  166. package/dist/primitives/zip.js +47 -8
  167. package/dist/primitives/zip.js.map +1 -1
  168. package/dist/shared/docx/DocxArchive.d.ts +6 -2
  169. package/dist/shared/docx/DocxArchive.d.ts.map +1 -1
  170. package/dist/shared/docx/DocxArchive.js +17 -4
  171. package/dist/shared/docx/DocxArchive.js.map +1 -1
  172. package/dist/shared/field-semantics.d.ts +26 -0
  173. package/dist/shared/field-semantics.d.ts.map +1 -0
  174. package/dist/shared/field-semantics.js +232 -0
  175. package/dist/shared/field-semantics.js.map +1 -0
  176. package/dist/shared/field-structure.d.ts +10 -1
  177. package/dist/shared/field-structure.d.ts.map +1 -1
  178. package/dist/shared/field-structure.js +31 -12
  179. package/dist/shared/field-structure.js.map +1 -1
  180. package/package.json +4 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sections.js","sourceRoot":"","sources":["../../src/primitives/sections.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,6BAA6B,GAE9B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACjG,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EACL,kBAAkB,EAClB,wBAAwB,GAEzB,MAAM,4BAA4B,CAAC;AA2HpC,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAE3B;IADlB,YACkB,IAA8B,EAC9C,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,SAAI,GAAJ,IAAI,CAA0B;QAI9C,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AAQD,SAAS,QAAQ,CAAC,EAAW,EAAE,SAAiB;IAC9C,OAAO,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC;WAC1C,EAAE,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE,CAAC;WACjC,IAAI,CAAC;AACZ,CAAC;AAED,SAAS,QAAQ,CAAC,EAAW,EAAE,SAAiB;IAC9C,OAAO,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC;WAC1C,EAAE,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE,CAAC;WACjC,IAAI,CAAC;AACZ,CAAC;AAED,SAAS,WAAW,CAAC,EAAkB,EAAE,SAAiB;IACxD,IAAI,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IACrB,MAAM,GAAG,GAAG,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IACpC,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACtD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,OAAO,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACpD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,mBAAmB,CAAC,GAAa;IACxC,MAAM,IAAI,GAAG,GAAG,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpE,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IAErB,MAAM,QAAQ,GAAkB,EAAE,CAAC;IACnC,MAAM,UAAU,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAY,CAAC;QAChD,MAAM,GAAG,GAAG,uBAAuB,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,GAAG;YAChB,CAAC,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC3C,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,MAAM,EAAE,CAAC;YACX,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC;SACpC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACzC,IAAI,WAAW,EAAE,CAAC;QAChB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAe,EAAE,SAAiB;IAC3D,OAAO,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACpE,IAAI,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC;QACjC,cAAc,EAAE,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;KAC1C,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,cAAc,CAAC,OAAoB,EAAE,YAAoB;IAChE,MAAM,IAAI,GAAG,uBAAuB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IACxE,MAAM,SAAS,GAAG,uBAAuB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAClF,MAAM,IAAI,GAAG,uBAAuB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IACxE,MAAM,KAAK,GAAG,uBAAuB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAE1E,OAAO;QACL,YAAY;QACZ,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,iBAAiB,EAAE,OAAO,CAAC,SAAS;YAClC,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC,SAAS,CAAC;YAC3C,CAAC,CAAC,IAAI;QACR,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;QAC9C,eAAe,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC;QAChD,gBAAgB,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;QAC/D,QAAQ,EAAE,IAAI;YACZ,CAAC,CAAC;gBACE,UAAU,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBAClC,WAAW,EAAE,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC;gBACnC,WAAW,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;aACtC;YACH,CAAC,CAAC,IAAI;QACR,OAAO,EAAE,KAAK;YACZ,CAAC,CAAC;gBACE,QAAQ,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC;gBACnC,UAAU,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC;gBACvC,WAAW,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;gBACzC,SAAS,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC;gBACrC,WAAW,EAAE,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC;gBACzC,WAAW,EAAE,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC;gBACzC,WAAW,EAAE,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC;aAC1C;YACH,CAAC,CAAC,IAAI;QACR,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,eAAe,CAAC;QAC7D,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,eAAe,CAAC;KAC9D,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAa;IAC/C,OAAO,mBAAmB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,cAAc,GAAG;IACrB,YAAY;IACZ,aAAa;IACb,aAAa;CACgD,CAAC;AAEhE,MAAM,WAAW,GAAG;IAClB,UAAU;IACV,YAAY;IACZ,aAAa;IACb,WAAW;IACX,aAAa;IACb,aAAa;IACb,aAAa;CAC+C,CAAC;AAE/D,SAAS,eAAe,CACtB,KAAoB,EACpB,IAA0B;IAE1B,OAAO,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc,EAAE,KAAa;IAC1D,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAK,KAAgB,IAAI,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,oBAAoB,CAC5B,mBAAmB,EACnB,GAAG,KAAK,mCAAmC,CAC5C,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc,EAAE,KAAa;IACxD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,oBAAoB,CAC5B,sBAAsB,EACtB,GAAG,KAAK,0BAA0B,CACnC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc,EAAE,KAAa;IAC1D,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAK,KAAgB,GAAG,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,oBAAoB,CAC5B,sBAAsB,EACtB,GAAG,KAAK,uCAAuC,CAChD,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAmC;IAC3D,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;QAC9E,MAAM,IAAI,oBAAoB,CAC5B,uBAAuB,EACvB,mDAAmD,CACpD,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACvE,MAAM,UAAU,GAAG,eAAe,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAClE,IACE,QAAQ,CAAC,eAAe,KAAK,SAAS;WACnC,CAAC,WAAW;WACZ,CAAC,UAAU,EACd,CAAC;QACD,MAAM,IAAI,oBAAoB,CAC5B,wBAAwB,EACxB,yDAAyD,CAC1D,CAAC;IACJ,CAAC;IAED,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QAC3C,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,eAAe,CAAC;eAC5C,QAAQ,CAAC,eAAe,GAAG,CAAC,EAC/B,CAAC;YACD,MAAM,IAAI,oBAAoB,CAC5B,2BAA2B,EAC3B,sDAAsD,CACvD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,UAAU,KAAK,SAAS,EAAE,CAAC;QAChD,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,EAAE,WAAW,KAAK,SAAS,EAAE,CAAC;QACjD,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC;IAC/E,CAAC;IACD,IACE,QAAQ,CAAC,QAAQ,EAAE,WAAW,KAAK,SAAS;WACzC,QAAQ,CAAC,QAAQ,CAAC,WAAW,KAAK,UAAU;WAC5C,QAAQ,CAAC,QAAQ,CAAC,WAAW,KAAK,WAAW,EAChD,CAAC;QACD,MAAM,IAAI,oBAAoB,CAC5B,0BAA0B,EAC1B,yDAAyD,CAC1D,CAAC;IACJ,CAAC;IAED,IAAI,QAAQ,CAAC,OAAO,EAAE,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC7C,mBAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,QAAQ,CAAC,OAAO,EAAE,WAAW,KAAK,SAAS,EAAE,CAAC;QAChD,mBAAmB,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;IAC3E,CAAC;IACD,KAAK,MAAM,GAAG,IAAI;QAChB,YAAY;QACZ,WAAW;QACX,aAAa;QACb,aAAa;QACb,aAAa;KACL,EAAE,CAAC;QACX,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,KAAK,KAAK,SAAS;YAAE,qBAAqB,CAAC,KAAK,EAAE,WAAW,GAAG,EAAE,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,MAAe,EAAE,IAAa;IAC7D,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;QACzB,CAAC,CAAC,KAAK;QACP,UAAU;QACV,WAAW;QACX,WAAW;QACX,CAAC,CAAC,SAAS;QACX,MAAM;QACN,UAAU;QACV,QAAQ;QACR,WAAW;QACX,CAAC,CAAC,OAAO;QACT,eAAe;QACf,MAAM;QACN,WAAW;QACX,SAAS;QACT,iBAAiB;QACjB,cAAc;KACf,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC;SACpC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IACpD,IAAI,SAAS;QAAE,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;;QAC/C,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,wBAAwB,CAAC,MAAe,EAAE,KAAc;IAC/D,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;QACzB,UAAU;QACV,WAAW;QACX,WAAW;QACX,CAAC,CAAC,SAAS;QACX,MAAM;QACN,UAAU;QACV,QAAQ;QACR,WAAW;QACX,CAAC,CAAC,OAAO;QACT,eAAe;QACf,MAAM;QACN,WAAW;QACX,SAAS;QACT,iBAAiB;QACjB,cAAc;KACf,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC;SACpC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IACpD,IAAI,SAAS;QAAE,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;;QAChD,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,4BAA4B,CAAC,MAAe,EAAE,SAAkB;IACvE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;QACzB,MAAM;QACN,UAAU;QACV,QAAQ;QACR,WAAW;QACX,CAAC,CAAC,OAAO;QACT,eAAe;QACf,MAAM;QACN,WAAW;QACX,SAAS;QACT,iBAAiB;QACjB,cAAc;KACf,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC;SACpC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IACpD,IAAI,SAAS;QAAE,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;;QACpD,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAe,EAAE,SAA2B;IACvE,MAAM,aAAa,GAAG,uBAAuB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9D,IAAI,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IAC5B,KAAK,MAAM,SAAS,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CACrD,KAAK,CAAC,SAAS,KAAK,CAAC,CAAC,eAAe;eAClC,KAAK,CAAC,SAAS,KAAK,CAAC,CAAC,eAAe,CACzC,CAAC;QACF,IAAI,SAAS;YAAE,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;;YAC/C,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,yBAAyB,CAAC,MAAe;IAChD,KAAK,MAAM,MAAM,IAAI,uBAAuB,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,CAAC;QACrE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC;AAED,SAAS,qCAAqC,CAAC,MAAe;IAC5D,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1C,IACE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,eAAe,CAAC;eAC3B,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,eAAe,CAAC,EACjC,CAAC;YACD,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QACvD,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,SAAS,EAAE,YAAY,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;YAC3C,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,uCAAuC,CAC9C,GAAa,EACb,YAAoB,EACpB,QAAyD,EACzD,iBAA0B,EAC1B,aAAsB;IAEtB,MAAM,YAAY,GAA8B,EAAE,YAAY,EAAE,GAAG,QAAQ,EAAE,CAAC;IAC9E,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC/B,MAAM,iBAAiB,GAAG,iBAAiB;QACzC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAY;QAC1C,CAAC,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IACpC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,KAAK,MAAM,SAAS,IAAI,aAAa,CAAC,aAAa,CAAC,EAAE,CAAC;YACrD,IACE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,CAAC;mBAC9B,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,CAAC,EACpC,CAAC;gBACD,iBAAiB,CAAC,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;IACH,CAAC;IACD,iCAAiC,CAC/B,EAAE,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,EAChE,YAAY,CACb,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAAC,MAAe;IAClD,IAAI,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC;IAChC,OAAO,MAAM,EAAE,CAAC;QACd,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC;YAC5B,SAAS;QACX,CAAC;QACD,IAAI,GAAG,CAAC,MAAiB,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;YAC1C,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC;YAC5B,SAAS;QACX,CAAC;QACD,MAAM;IACR,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,2BAA2B,CAClC,GAAa,EACb,GAAY,EACZ,GAAoB;IAEpB,MAAM,GAAG,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IACzC,GAAG,CAAC,WAAW,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE;QAC3C,MAAM,EAAE,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC/C,UAAU,EAAE,GAAG,CAAC,MAAM;QACtB,QAAQ,EAAE,GAAG,CAAC,IAAI;KACnB,CAAC,CAAC,CAAC;IACJ,GAAG,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,qBAAqB,CAC5B,OAA4B,EAC5B,SAAiB,EACjB,KAAkC;IAElC,OAAO,KAAK,KAAK,SAAS;WACrB,CAAC,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,iCAAiC,CACxC,WAAwB,EACxB,QAAmC;IAEnC,IACE,eAAe,CAAC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;WAC/C,uBAAuB,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;WAChE,CACD,QAAQ,CAAC,QAAQ,EAAE,UAAU,KAAK,SAAS;eACxC,QAAQ,CAAC,QAAQ,CAAC,WAAW,KAAK,SAAS,CAC/C,EACD,CAAC;QACD,MAAM,IAAI,oBAAoB,CAC5B,sBAAsB,EACtB,oEAAoE,CACrE,CAAC;IACJ,CAAC;IAED,IACE,eAAe,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;WAC3C,uBAAuB,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC;WACjE,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,EACnE,CAAC;QACD,MAAM,IAAI,oBAAoB,CAC5B,yBAAyB,EACzB,6DAA6D,CAC9D,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,uBAAuB,CACrC,GAAa,EACb,QAAmC,EACnC,GAAqB;IAErB,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC3B,MAAM,WAAW,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACpE,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,oBAAoB,CAC5B,mBAAmB,EACnB,iBAAiB,QAAQ,CAAC,YAAY,iBAAiB,CACxD,CAAC;IACJ,CAAC;IACD,iCAAiC,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAEzD,MAAM,kBAAkB,GAAG,uBAAuB,CAChD,WAAW,CAAC,MAAM,EAClB,CAAC,CAAC,SAAS,CACZ,CAAC;IACF,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9E,MAAM,eAAe,GAAG,uBAAuB,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;IAC7E,MAAM,eAAe,GAAG,cAAc,CAAC,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAE3E,MAAM,iBAAiB,GAAG,QAAQ,CAAC,eAAe,KAAK,SAAS,IAAI,CAClE,kBAAkB,CAAC,MAAM,KAAK,CAAC;WAC5B,WAAW,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,eAAe,CACpF,CAAC;IACF,MAAM,eAAe,GAAG,eAAe,CAAC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,IAAI,CAC5E,iBAAiB,CAAC,MAAM,KAAK,CAAC;WAC3B,qBAAqB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;WAC/E,qBAAqB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;WAChF,qBAAqB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,CACzF,CAAC;IACF,MAAM,cAAc,GAAG,eAAe,CAAC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,CACvE,eAAe,CAAC,MAAM,KAAK,CAAC;WACzB,qBAAqB,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;WAC5E,qBAAqB,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;WAChF,qBAAqB,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;WAClF,qBAAqB,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;WAC9E,qBAAqB,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;WAClF,qBAAqB,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;WAClF,qBAAqB,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CACtF,CAAC;IAEF,IAAI,CAAC,iBAAiB,IAAI,CAAC,eAAe,IAAI,CAAC,cAAc,EAAE,CAAC;QAC9D,OAAO;YACL,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,OAAO,EAAE,KAAK;YACd,eAAe;YACf,cAAc,EAAE,eAAe;SAChC,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAY,CAAC;IAEhE,IAAI,eAAe,EAAE,CAAC;QACpB,IAAI,IAAI,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAChC,KAAK,MAAM,SAAS,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACnD,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YACrC,uBAAuB,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,aAAa,GAAG;YACpB,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;YACpC,CAAC,GAAG,EAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;YACrC,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;SAClC,CAAC;QACX,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,aAAa,EAAE,CAAC;YAC1C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,cAAc,EAAE,CAAC;QACnB,IAAI,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;QAC/B,KAAK,MAAM,SAAS,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;YACvC,wBAAwB,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,WAAW,GAAG;YAClB,CAAC,CAAC,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;YACnC,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;YACvC,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;YACzC,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;YACrC,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;YACzC,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;YACzC,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;SACjC,CAAC;QACX,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC;YACxC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,iBAAiB,EAAE,CAAC;QACtB,IAAI,SAAS,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;QACtC,KAAK,MAAM,SAAS,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACpD,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,SAAS,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;YAC/C,4BAA4B,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC9D,CAAC;QACD,SAAS,CAAC,cAAc,CACtB,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,CAAC,KAAK,EAAE,EACd,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,CACjC,CAAC;IACJ,CAAC;IAED,IAAI,GAAG,EAAE,CAAC;QACR,KAAK,MAAM,KAAK,IAAI,uBAAuB,CAAC,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,CAAC;YAChF,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;QACD,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,wBAAwB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,OAAO;QACL,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,OAAO,EAAE,IAAI;QACb,eAAe;QACf,cAAc,EAAE,cAAc,CAAC,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC;KACnE,CAAC;AACJ,CAAC;AAED,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAmB;IACpD,UAAU;IACV,YAAY;IACZ,YAAY;IACZ,UAAU;IACV,SAAS;CACV,CAAC,CAAC;AAEH,SAAS,mCAAmC,CAAC,SAAkB;IAC7D,MAAM,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC;IACpC,IAAI,CAAC,MAAM;QAAE,OAAO;IACpB,MAAM,QAAQ,GAAG,SAAS,CAAC,eAAe,CAAC;IAC3C,MAAM,IAAI,GAAG,SAAS,CAAC,WAAW,CAAC;IACnC,IAAI,QAAQ,EAAE,QAAQ,KAAK,CAAC,IAAI,GAAG,CAAC,QAAmB,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC;QAC1E,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,IAAI,EAAE,QAAQ,KAAK,CAAC,IAAI,GAAG,CAAC,IAAe,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;QAChE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,kBAAkB,CAChC,GAAa,EACb,QAAoC,EACpC,GAAqB,EACrB,mBAAyC;IAEzC,IACE,OAAO,QAAQ,CAAC,iBAAiB,KAAK,QAAQ;WAC3C,QAAQ,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EACjD,CAAC;QACD,MAAM,IAAI,oBAAoB,CAC5B,wBAAwB,EACxB,qDAAqD,CACtD,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,oBAAoB,CAC5B,4BAA4B,EAC5B,2EAA2E,CAC5E,CAAC;IACJ,CAAC;IACD,IACE,QAAQ,CAAC,iBAAiB,KAAK,SAAS;WACrC,OAAO,QAAQ,CAAC,iBAAiB,KAAK,SAAS,EAClD,CAAC;QACD,MAAM,IAAI,oBAAoB,CAC5B,4BAA4B,EAC5B,sCAAsC,CACvC,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,yBAAyB,CAAC,GAAG,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC1E,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,oBAAoB,CAC5B,0BAA0B,EAC1B,cAAc,QAAQ,CAAC,iBAAiB,mCAAmC,CAC5E,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpE,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,oBAAoB,CAC5B,yBAAyB,EACzB,4EAA4E,CAC7E,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,uBAAuB,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,IACE,SAAS;WACN,uBAAuB,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAC1D,CAAC;QACD,MAAM,IAAI,oBAAoB,CAC5B,yBAAyB,EACzB,8CAA8C,CAC/C,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAI,iBAA0C,CAAC;IAC/C,IAAI,MAAM,GAAgB,MAAM,CAAC,WAAW,CAAC;IAC7C,OAAO,MAAM,EAAE,CAAC;QACd,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,MAAiB,CAAC;YAClC,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtB,MAAM,GAAG,GAAG,uBAAuB,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvD,MAAM,MAAM,GAAG,GAAG;oBAChB,CAAC,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBAC3C,CAAC,CAAC,SAAS,CAAC;gBACd,IAAI,MAAM,EAAE,CAAC;oBACX,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;oBAC9E,MAAM;gBACR,CAAC;YACH,CAAC;iBAAM,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClC,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC;gBAC/E,MAAM;YACR,CAAC;QACH,CAAC;QACD,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC;IAC9B,CAAC;IACD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,IAAI,oBAAoB,CAC5B,mBAAmB,EACnB,wDAAwD,CACzD,CAAC;IACJ,CAAC;IACD,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC7D,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,oBAAoB,CAC5B,mBAAmB,EACnB,+CAA+C,CAChD,CAAC;IACJ,CAAC;IAED,MAAM,iBAAiB,GAAG,QAAQ,CAAC,iBAAiB,IAAI,IAAI,CAAC;IAC7D,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;QACxB,uCAAuC,CACrC,GAAG,EACH,YAAY,EACZ,QAAQ,CAAC,UAAU,EACnB,iBAAiB,EACjB,iBAAiB,CAAC,MAAM,CACzB,CAAC;IACJ,CAAC;IAED,MAAM,kBAAkB,GAAG,YAAY,CAAC,MAAM,CAAC;IAC/C,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAY,CAAC;IACpF,MAAM,cAAc,GAAG,uBAAuB,CAAC,SAAS,CAAC,IAAI,CAAY,CAAC;IAC1E,yBAAyB,CAAC,cAAc,CAAC,CAAC;IAC1C,mBAAmB,CAAC,cAAc,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAExD,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IACjD,IAAI,GAAG;QAAE,2BAA2B,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;IAC5D,WAAW,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IACxC,iBAAiB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAE3C,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,CAAC;QACH,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,qCAAqC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAChE,gBAAgB,GAAG,IAAI,CAAC;YACxB,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACxB,uBAAuB,CACrB,GAAG,EACH,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAC,UAAU,EAAE,CACzC,CAAC;YACJ,CAAC;YACD,IAAI,GAAG,EAAE,CAAC;gBACR,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAClC,wBAAwB,CAAC,uBAAuB,EAAE,GAAG,CAAC,CACvD,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YAC/B,gBAAgB,GAAG,uBAAuB,CACxC,GAAG,EACH,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAC,UAAU,EAAE,EACxC,GAAG,CACJ,CAAC,OAAO,CAAC;QACZ,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,2BAA2B,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1E,gBAAgB,GAAG,IAAI,CAAC;QACxB,MAAM,2BAA2B,GAAG,6BAA6B,CAC/D,GAAG,EACH,iBAAiB,EACjB,mBAAmB,CACpB,CAAC;QACF,MAAM,aAAa,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,aAAa,CAAC,MAAM,KAAK,kBAAkB,GAAG,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,oBAAoB,CAC5B,6BAA6B,EAC7B,yDAAyD,CAC1D,CAAC;QACJ,CAAC;QACD,MAAM,gBAAgB,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;QACrD,MAAM,gBAAgB,GAAG,aAAa,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;QACzD,IACE,CAAC,gBAAgB;eACd,CAAC,gBAAgB;eACjB,gBAAgB,CAAC,iBAAiB,KAAK,2BAA2B,EACrE,CAAC;YACD,MAAM,IAAI,oBAAoB,CAC5B,6BAA6B,EAC7B,yEAAyE,CAC1E,CAAC;QACJ,CAAC;QACD,OAAO;YACL,OAAO,EAAE,IAAI;YACb,2BAA2B;YAC3B,qBAAqB,EAAE,YAAY;YACnC,qBAAqB,EAAE,YAAY,GAAG,CAAC;YACvC,kBAAkB;YAClB,iBAAiB,EAAE,aAAa,CAAC,MAAM;YACvC,gBAAgB;YAChB,gBAAgB;SACjB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,gBAAgB,IAAI,iBAAiB,CAAC,UAAU,EAAE,CAAC;YACrD,mCAAmC,CAAC,iBAAiB,CAAC,CAAC;QACzD,CAAC;QACD,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC;QACvD,IAAI,gBAAgB,IAAI,UAAU,EAAE,CAAC;YACnC,UAAU,CAAC,YAAY,CAAC,uBAAuB,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC7E,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CACvC,GAAa,EACb,QAAmC,EACnC,GAAqB;IAErB,MAAM,MAAM,GAAG,uBAAuB,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC3D,OAAO;QACL,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,uBAAuB,EAAE,MAAM,CAAC,eAAe,CAAC,eAAe;QAC/D,sBAAsB,EAAE,MAAM,CAAC,cAAc,CAAC,eAAe;eACxD,QAAQ,CAAC,eAAe;KAC9B,CAAC;AACJ,CAAC"}
@@ -1,5 +1,6 @@
1
1
  export type StyleDef = {
2
2
  styleId: string;
3
+ styleType: string | null;
3
4
  name: string;
4
5
  basedOn: string | null;
5
6
  pPr: Element | null;
@@ -8,6 +9,19 @@ export type StyleDef = {
8
9
  export type StylesModel = {
9
10
  byId: Map<string, StyleDef>;
10
11
  };
12
+ export type ThemeModel = {
13
+ fonts: Map<string, string>;
14
+ colors: Map<string, string>;
15
+ };
16
+ /**
17
+ * Parse the concrete Latin/EA/complex-script fonts and color scheme carried by
18
+ * `word/theme/theme1.xml`.
19
+ *
20
+ * @conformance ECMA-376 edition 5, Part 1 § 17.3.2.26
21
+ * @conformance ECMA-376 edition 5, Part 1 § 17.3.2.6
22
+ * @see https://github.com/UseJunior/safe-docx/issues/738
23
+ */
24
+ export declare function parseThemeXml(themeDoc: Document | null): ThemeModel;
11
25
  export declare function parseStylesXml(stylesDoc: Document | null): StylesModel;
12
26
  export type ParagraphAlignment = 'LEFT' | 'CENTER' | 'RIGHT' | 'JUSTIFY';
13
27
  export type ParagraphFormatting = {
@@ -23,6 +37,14 @@ export declare function extractParagraphFormatting(pPr: Element | null, styles:
23
37
  export type RunFormatting = {
24
38
  bold: boolean;
25
39
  italic: boolean;
40
+ caps: boolean;
41
+ smallCaps: boolean;
42
+ strike: boolean;
43
+ emboss: boolean;
44
+ imprint: boolean;
45
+ outline: boolean;
46
+ shadow: boolean;
47
+ vanish: boolean;
26
48
  underline: boolean;
27
49
  highlightVal: string | null;
28
50
  fontName: string;
@@ -44,10 +66,49 @@ export type StyleRunFormatting = {
44
66
  };
45
67
  /** Resolve a named style's effective run formatting through its `basedOn` chain. */
46
68
  export declare function extractStyleRunFormatting(styles: StylesModel, styleId: string | null): StyleRunFormatting;
69
+ /**
70
+ * Resolve the run formatting a reader actually sees, not merely the formatting
71
+ * the run declares. Ordinary properties are taken from the first layer that
72
+ * specifies them: direct `w:rPr` on the run, then the `w:rStyle`
73
+ * character-style `basedOn` chain, then the paragraph mark's `w:rPr` inside
74
+ * `pPr`, then the paragraph style's `basedOn` chain. A property specified
75
+ * nowhere resolves to the neutral value (`false`, `''`, `0`, or `null`).
76
+ *
77
+ * Each property is resolved independently down the chain — a style that
78
+ * specifies only color does not mask an ancestor's bold.
79
+ *
80
+ * Toggle properties are evaluated in hierarchy order rather than by ordinary
81
+ * nearest-wins inheritance. At style level, an on declaration inverts the
82
+ * accumulated state and an off declaration preserves it. Direct formatting
83
+ * is absolute. This parity rule applies independently to `w:b`, `w:i`,
84
+ * `w:caps`, `w:smallCaps`, `w:strike`, `w:emboss`, `w:imprint`, `w:outline`,
85
+ * `w:shadow`, and `w:vanish`.
86
+ *
87
+ * Not resolved: `w:docDefaults`, table-style run properties, and
88
+ * numbering-level `rPr`. A formatting change confined to one of those layers
89
+ * is invisible to this resolver.
90
+ *
91
+ * Part of docx-core's public surface (see `src/index.ts`) so external
92
+ * diagnostics — `scripts/check_docx_formatting_loss.mjs` today, the planned
93
+ * formatting-convention detector (#687) — consume this one implementation
94
+ * instead of growing declared-properties re-implementations that drift.
95
+ *
96
+ * @param params.run the `w:r` element (a non-run element yields style/paragraph
97
+ * contributions only)
98
+ * @param params.paragraphPPr the owning paragraph's `w:pPr`, or null
99
+ * @param params.paragraphStyleId the `w:val` of `pPr/w:pStyle`, or null
100
+ * @param params.styles the model produced by {@link parseStylesXml}
101
+ * @param params.theme the model produced by {@link parseThemeXml}; when
102
+ * omitted, direct font/color fallbacks retain their previous behavior
103
+ *
104
+ * @conformance ECMA-376 edition 5, Part 1 § 17.7.3
105
+ * @see https://github.com/UseJunior/safe-docx/issues/737
106
+ */
47
107
  export declare function extractEffectiveRunFormatting(params: {
48
108
  run: Element;
49
109
  paragraphPPr: Element | null;
50
110
  paragraphStyleId: string | null;
51
111
  styles: StylesModel;
112
+ theme?: ThemeModel | null;
52
113
  }): RunFormatting;
53
114
  //# sourceMappingURL=styles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/primitives/styles.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,QAAQ,GAAG;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IACpB,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CAC7B,CAAC;AAEF,wBAAgB,cAAc,CAAC,SAAS,EAAE,QAAQ,GAAG,IAAI,GAAG,WAAW,CAyBtE;AAiBD,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;AAEzE,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,kBAAkB,CAAC;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC;AAsDF,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,OAAO,GAAG,IAAI,EACnB,MAAM,EAAE,WAAW,GAClB,mBAAmB,CA+BrB;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB,CAAC;AAEF,oFAAoF;AACpF,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,kBAAkB,CASpB;AA0DD,wBAAgB,6BAA6B,CAAC,MAAM,EAAE;IACpD,GAAG,EAAE,OAAO,CAAC;IACb,YAAY,EAAE,OAAO,GAAG,IAAI,CAAC;IAC7B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,WAAW,CAAC;CACrB,GAAG,aAAa,CAiChB"}
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/primitives/styles.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,76 @@ function getWAttr(el, localName) {
5
5
  // when attributes were written without a real namespace binding.
6
6
  return getAttributeSafe(el, OOXML.W_NS, localName, 'w', { emptyIsMissing: true });
7
7
  }
8
+ const THEME_COLOR_ELEMENT_BY_REFERENCE = {
9
+ dark1: 'dk1',
10
+ light1: 'lt1',
11
+ dark2: 'dk2',
12
+ light2: 'lt2',
13
+ text1: 'dk1',
14
+ background1: 'lt1',
15
+ text2: 'dk2',
16
+ background2: 'lt2',
17
+ accent1: 'accent1',
18
+ accent2: 'accent2',
19
+ accent3: 'accent3',
20
+ accent4: 'accent4',
21
+ accent5: 'accent5',
22
+ accent6: 'accent6',
23
+ hyperlink: 'hlink',
24
+ followedHyperlink: 'folHlink',
25
+ };
26
+ function drawingChild(parent, localName) {
27
+ return parent ? getFirstChild(parent, OOXML.A_NS, localName) : null;
28
+ }
29
+ function themeColorHex(slot) {
30
+ const srgb = drawingChild(slot, 'srgbClr');
31
+ const srgbValue = srgb?.getAttribute('val');
32
+ if (srgbValue && /^[0-9A-Fa-f]{6}$/u.test(srgbValue))
33
+ return srgbValue.toUpperCase();
34
+ const system = drawingChild(slot, 'sysClr');
35
+ const lastColor = system?.getAttribute('lastClr');
36
+ if (lastColor && /^[0-9A-Fa-f]{6}$/u.test(lastColor))
37
+ return lastColor.toUpperCase();
38
+ return null;
39
+ }
40
+ /**
41
+ * Parse the concrete Latin/EA/complex-script fonts and color scheme carried by
42
+ * `word/theme/theme1.xml`.
43
+ *
44
+ * @conformance ECMA-376 edition 5, Part 1 § 17.3.2.26
45
+ * @conformance ECMA-376 edition 5, Part 1 § 17.3.2.6
46
+ * @see https://github.com/UseJunior/safe-docx/issues/738
47
+ */
48
+ export function parseThemeXml(themeDoc) {
49
+ const fonts = new Map();
50
+ const colors = new Map();
51
+ if (!themeDoc)
52
+ return { fonts, colors };
53
+ const fontScheme = themeDoc.getElementsByTagNameNS(OOXML.A_NS, 'fontScheme').item(0);
54
+ for (const family of ['major', 'minor']) {
55
+ const familyElement = drawingChild(fontScheme, `${family}Font`);
56
+ for (const [suffix, elementName] of [
57
+ ['Ascii', 'latin'],
58
+ ['HAnsi', 'latin'],
59
+ ['EastAsia', 'ea'],
60
+ ['Bidi', 'cs'],
61
+ ]) {
62
+ const typeface = drawingChild(familyElement, elementName)?.getAttribute('typeface');
63
+ if (typeface)
64
+ fonts.set(`${family}${suffix}`, typeface);
65
+ }
66
+ }
67
+ const colorScheme = themeDoc.getElementsByTagNameNS(OOXML.A_NS, 'clrScheme').item(0);
68
+ if (colorScheme) {
69
+ for (const [reference, elementName] of Object.entries(THEME_COLOR_ELEMENT_BY_REFERENCE)) {
70
+ const slot = drawingChild(colorScheme, elementName);
71
+ const hex = slot ? themeColorHex(slot) : null;
72
+ if (hex)
73
+ colors.set(reference, hex);
74
+ }
75
+ }
76
+ return { fonts, colors };
77
+ }
8
78
  export function parseStylesXml(stylesDoc) {
9
79
  const byId = new Map();
10
80
  if (!stylesDoc)
@@ -22,6 +92,7 @@ export function parseStylesXml(stylesDoc) {
22
92
  const basedOn = basedOnEl ? (getWAttr(basedOnEl, 'val') ?? null) : null;
23
93
  byId.set(id, {
24
94
  styleId: id,
95
+ styleType: getWAttr(st, 'type'),
25
96
  name,
26
97
  basedOn,
27
98
  pPr: pPr ?? null,
@@ -128,9 +199,9 @@ export function extractStyleRunFormatting(styles, styleId) {
128
199
  return {
129
200
  bold: firstNonNull(rPrs.map((rPr) => parseBoolProp(rPr, W.b))),
130
201
  italic: firstNonNull(rPrs.map((rPr) => parseBoolProp(rPr, W.i))),
131
- fontName: firstNonNull(rPrs.map(parseFontName)),
202
+ fontName: firstNonNull(rPrs.map((rPr) => parseFontName(rPr))),
132
203
  fontSizePt: firstNonNull(rPrs.map(parseFontSizePt)),
133
- colorHex: firstNonNull(rPrs.map(parseColorHex)),
204
+ colorHex: firstNonNull(rPrs.map((rPr) => parseColorHex(rPr))),
134
205
  };
135
206
  }
136
207
  function parseBoolProp(parent, tagLocal) {
@@ -139,12 +210,37 @@ function parseBoolProp(parent, tagLocal) {
139
210
  const el = getFirstChild(parent, OOXML.W_NS, tagLocal);
140
211
  if (!el)
141
212
  return null;
142
- // <w:b/> implies true. <w:b w:val="0"/> implies false.
213
+ // <w:b/> implies true. <w:b w:val="0"/> implies false. 'off' is the
214
+ // transitional OOXML ST_OnOff spelling; documents produced by older writers
215
+ // still carry it, and reading it as "on" would invert the property.
143
216
  const v = getWAttr(el, 'val');
144
- if (v === '0' || v === 'false')
217
+ if (v === '0' || v === 'false' || v === 'off')
145
218
  return false;
146
219
  return true;
147
220
  }
221
+ /**
222
+ * Evaluate a toggle property in hierarchy order. Style-level true values
223
+ * invert the accumulated state while style-level false values preserve it;
224
+ * direct formatting sets an absolute value.
225
+ *
226
+ * @conformance ECMA-376 edition 5, Part 1 § 17.7.3
227
+ * @see https://github.com/UseJunior/safe-docx/issues/737
228
+ */
229
+ function resolveToggleProperty(steps, tagLocal) {
230
+ let effective = false;
231
+ for (const { rPr, kind } of steps) {
232
+ const declaration = parseBoolProp(rPr, tagLocal);
233
+ if (declaration === null)
234
+ continue;
235
+ if (kind === 'direct') {
236
+ effective = declaration;
237
+ }
238
+ else if (declaration) {
239
+ effective = !effective;
240
+ }
241
+ }
242
+ return effective;
243
+ }
148
244
  function parseUnderline(parent) {
149
245
  if (!parent)
150
246
  return null;
@@ -156,12 +252,18 @@ function parseUnderline(parent) {
156
252
  return true;
157
253
  return v !== 'none';
158
254
  }
159
- function parseFontName(parent) {
255
+ function parseFontName(parent, theme = null) {
160
256
  if (!parent)
161
257
  return null;
162
258
  const el = getFirstChild(parent, OOXML.W_NS, W.rFonts);
163
259
  if (!el)
164
260
  return null;
261
+ for (const attribute of ['asciiTheme', 'hAnsiTheme', 'eastAsiaTheme', 'cstheme']) {
262
+ const reference = getWAttr(el, attribute);
263
+ const resolved = reference ? theme?.fonts.get(reference) : null;
264
+ if (resolved)
265
+ return resolved;
266
+ }
165
267
  return getWAttr(el, 'ascii') ?? getWAttr(el, 'hAnsi') ?? getWAttr(el, 'cs') ?? getWAttr(el, 'val') ?? null;
166
268
  }
167
269
  function parseFontSizePt(parent) {
@@ -179,12 +281,33 @@ function parseFontSizePt(parent) {
179
281
  // OOXML stores half-points.
180
282
  return v / 2.0;
181
283
  }
182
- function parseColorHex(parent) {
284
+ function applyThemeColorTransform(hex, tint, shade) {
285
+ const tintByte = tint && /^[0-9A-Fa-f]{2}$/u.test(tint) ? Number.parseInt(tint, 16) : null;
286
+ const shadeByte = shade && /^[0-9A-Fa-f]{2}$/u.test(shade) ? Number.parseInt(shade, 16) : null;
287
+ const transform = (component) => {
288
+ let value = component;
289
+ if (shadeByte !== null)
290
+ value = value * (shadeByte / 255);
291
+ if (tintByte !== null)
292
+ value = 255 - (255 - value) * (tintByte / 255);
293
+ return Math.max(0, Math.min(255, Math.round(value)));
294
+ };
295
+ return [0, 2, 4]
296
+ .map((offset) => transform(Number.parseInt(hex.slice(offset, offset + 2), 16)).toString(16).padStart(2, '0'))
297
+ .join('')
298
+ .toUpperCase();
299
+ }
300
+ function parseColorHex(parent, theme = null) {
183
301
  if (!parent)
184
302
  return null;
185
303
  const el = getFirstChild(parent, OOXML.W_NS, W.color);
186
304
  if (!el)
187
305
  return null;
306
+ const themeReference = getWAttr(el, 'themeColor');
307
+ const themeHex = themeReference ? theme?.colors.get(themeReference) : null;
308
+ if (themeHex) {
309
+ return applyThemeColorTransform(themeHex, getWAttr(el, 'themeTint'), getWAttr(el, 'themeShade'));
310
+ }
188
311
  const v = getWAttr(el, 'val') || el.getAttribute('val');
189
312
  if (!v || v === 'auto')
190
313
  return null;
@@ -201,8 +324,46 @@ function parseHighlightVal(parent) {
201
324
  return null;
202
325
  return v;
203
326
  }
327
+ /**
328
+ * Resolve the run formatting a reader actually sees, not merely the formatting
329
+ * the run declares. Ordinary properties are taken from the first layer that
330
+ * specifies them: direct `w:rPr` on the run, then the `w:rStyle`
331
+ * character-style `basedOn` chain, then the paragraph mark's `w:rPr` inside
332
+ * `pPr`, then the paragraph style's `basedOn` chain. A property specified
333
+ * nowhere resolves to the neutral value (`false`, `''`, `0`, or `null`).
334
+ *
335
+ * Each property is resolved independently down the chain — a style that
336
+ * specifies only color does not mask an ancestor's bold.
337
+ *
338
+ * Toggle properties are evaluated in hierarchy order rather than by ordinary
339
+ * nearest-wins inheritance. At style level, an on declaration inverts the
340
+ * accumulated state and an off declaration preserves it. Direct formatting
341
+ * is absolute. This parity rule applies independently to `w:b`, `w:i`,
342
+ * `w:caps`, `w:smallCaps`, `w:strike`, `w:emboss`, `w:imprint`, `w:outline`,
343
+ * `w:shadow`, and `w:vanish`.
344
+ *
345
+ * Not resolved: `w:docDefaults`, table-style run properties, and
346
+ * numbering-level `rPr`. A formatting change confined to one of those layers
347
+ * is invisible to this resolver.
348
+ *
349
+ * Part of docx-core's public surface (see `src/index.ts`) so external
350
+ * diagnostics — `scripts/check_docx_formatting_loss.mjs` today, the planned
351
+ * formatting-convention detector (#687) — consume this one implementation
352
+ * instead of growing declared-properties re-implementations that drift.
353
+ *
354
+ * @param params.run the `w:r` element (a non-run element yields style/paragraph
355
+ * contributions only)
356
+ * @param params.paragraphPPr the owning paragraph's `w:pPr`, or null
357
+ * @param params.paragraphStyleId the `w:val` of `pPr/w:pStyle`, or null
358
+ * @param params.styles the model produced by {@link parseStylesXml}
359
+ * @param params.theme the model produced by {@link parseThemeXml}; when
360
+ * omitted, direct font/color fallbacks retain their previous behavior
361
+ *
362
+ * @conformance ECMA-376 edition 5, Part 1 § 17.7.3
363
+ * @see https://github.com/UseJunior/safe-docx/issues/737
364
+ */
204
365
  export function extractEffectiveRunFormatting(params) {
205
- const { run, paragraphPPr, paragraphStyleId, styles } = params;
366
+ const { run, paragraphPPr, paragraphStyleId, styles, theme = null } = params;
206
367
  const isRun = run.localName === W.r || run.localName === 'r';
207
368
  const rPr = isRun ? getFirstChild(run, OOXML.W_NS, W.rPr) : null;
208
369
  const pRPr = paragraphPPr ? getFirstChild(paragraphPPr, OOXML.W_NS, W.rPr) : null;
@@ -210,25 +371,46 @@ export function extractEffectiveRunFormatting(params) {
210
371
  const rStyleEl = rPr ? getFirstChild(rPr, OOXML.W_NS, W.rStyle) : null;
211
372
  const rStyleId = rStyleEl ? (getWAttr(rStyleEl, 'val') ?? null) : null;
212
373
  const rStyleChain = resolveStyleChain(styles, rStyleId);
213
- const rStyleRPr = firstNonNull(rStyleChain.map((s) => s.rPr));
214
- const paraChain = resolveStyleChain(styles, paragraphStyleId);
215
- const styleRPr = firstNonNull(paraChain.map((s) => s.rPr));
216
- // Priority: direct rPr → rStyle chain rPr → paragraph rPr → paragraph style chain rPr
217
- const bold = firstNonNull([parseBoolProp(rPr, W.b), parseBoolProp(rStyleRPr, W.b), parseBoolProp(pRPr, W.b), parseBoolProp(styleRPr, W.b)]) ?? false;
218
- const italic = firstNonNull([parseBoolProp(rPr, W.i), parseBoolProp(rStyleRPr, W.i), parseBoolProp(pRPr, W.i), parseBoolProp(styleRPr, W.i)]) ?? false;
219
- const underline = firstNonNull([parseUnderline(rPr), parseUnderline(rStyleRPr), parseUnderline(pRPr), parseUnderline(styleRPr)]) ?? false;
220
- const highlightVal = firstNonNull([parseHighlightVal(rPr), parseHighlightVal(rStyleRPr), parseHighlightVal(pRPr), parseHighlightVal(styleRPr)]);
221
- const fontName = firstNonNull([parseFontName(rPr), parseFontName(rStyleRPr), parseFontName(pRPr), parseFontName(styleRPr)]) ?? '';
222
- const fontSizePt = firstNonNull([parseFontSizePt(rPr), parseFontSizePt(rStyleRPr), parseFontSizePt(pRPr), parseFontSizePt(styleRPr)]) ?? 0;
223
- const colorHex = firstNonNull([parseColorHex(rPr), parseColorHex(rStyleRPr), parseColorHex(pRPr), parseColorHex(styleRPr)]);
374
+ const paragraphStyleChain = resolveStyleChain(styles, paragraphStyleId);
375
+ // Priority: direct rPr → rStyle chain rPrs → paragraph mark rPr → paragraph
376
+ // style chain rPrs. Each property resolves independently down this list: a
377
+ // chain member that specifies only color must not mask an ancestor's bold,
378
+ // so the sources are the individual rPr containers, never "the first chain
379
+ // member that has an rPr" (peer review on #684; extractStyleRunFormatting
380
+ // above already resolved per property).
381
+ const sources = [
382
+ rPr,
383
+ ...rStyleChain.map((s) => s.rPr),
384
+ pRPr,
385
+ ...paragraphStyleChain.map((s) => s.rPr),
386
+ ];
387
+ const resolve = (parse) => firstNonNull(sources.map(parse));
388
+ // Apply from the least specific style ancestor to direct run formatting.
389
+ // Paragraph-mark rPr is direct formatting at its hierarchy level; a
390
+ // character style can still contribute above it before the run's own rPr
391
+ // supplies the final absolute override.
392
+ const toggleSteps = [
393
+ ...[...paragraphStyleChain].reverse().map((style) => ({ rPr: style.rPr, kind: 'style' })),
394
+ { rPr: pRPr, kind: 'direct' },
395
+ ...[...rStyleChain].reverse().map((style) => ({ rPr: style.rPr, kind: 'style' })),
396
+ { rPr, kind: 'direct' },
397
+ ];
224
398
  return {
225
- bold,
226
- italic,
227
- underline,
228
- highlightVal: highlightVal ?? null,
229
- fontName,
230
- fontSizePt,
231
- colorHex: colorHex ?? null,
399
+ bold: resolveToggleProperty(toggleSteps, W.b),
400
+ italic: resolveToggleProperty(toggleSteps, W.i),
401
+ caps: resolveToggleProperty(toggleSteps, W.caps),
402
+ smallCaps: resolveToggleProperty(toggleSteps, W.smallCaps),
403
+ strike: resolveToggleProperty(toggleSteps, W.strike),
404
+ emboss: resolveToggleProperty(toggleSteps, W.emboss),
405
+ imprint: resolveToggleProperty(toggleSteps, W.imprint),
406
+ outline: resolveToggleProperty(toggleSteps, W.outline),
407
+ shadow: resolveToggleProperty(toggleSteps, W.shadow),
408
+ vanish: resolveToggleProperty(toggleSteps, W.vanish),
409
+ underline: resolve(parseUnderline) ?? false,
410
+ highlightVal: resolve(parseHighlightVal),
411
+ fontName: resolve((el) => parseFontName(el, theme)) ?? '',
412
+ fontSizePt: resolve(parseFontSizePt) ?? 0,
413
+ colorHex: resolve((el) => parseColorHex(el, theme)),
232
414
  };
233
415
  }
234
416
  //# sourceMappingURL=styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/primitives/styles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/primitives/styles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Text projection of `<w:sym>` run content.
3
+ *
4
+ * A symbol glyph has two legal spellings in WordprocessingML and Word renders
5
+ * them identically:
6
+ *
7
+ * 1. `<w:sym w:font="Wingdings" w:char="F0A8"/>`, and
8
+ * 2. the same codepoint written literally inside a `<w:t>`, with the symbol
9
+ * font carried on the run's `<w:rFonts>`.
10
+ *
11
+ * Any text projection that walks `w:t`/`w:delText` alone therefore sees a
12
+ * document that *lost* a symbol and a document that *kept* it as the same
13
+ * string, and sees the two spellings of one glyph as different strings. This
14
+ * module is the single place the projection resolves spelling (1) into the
15
+ * characters spelling (2) would have contributed.
16
+ *
17
+ * The font is deliberately **not** part of the projected value. The projections
18
+ * that consume this are text projections: they already exclude `w:rFonts`, so
19
+ * folding `w:sym/@w:font` in would make the same font signal visible for one
20
+ * spelling of a glyph and invisible for the other, and would make the two
21
+ * spellings compare unequal by construction — the exact false difference this
22
+ * resolution exists to remove. A font-only change is a formatting change and
23
+ * belongs to the formatting-fidelity surface, not the round-trip text gate;
24
+ * that residual is tracked separately.
25
+ *
26
+ * @conformance ECMA-376 edition 5, Part 1 § 17.3.3.30
27
+ * @see https://github.com/UseJunior/safe-docx/issues/793
28
+ * @see https://github.com/UseJunior/safe-docx/issues/799
29
+ */
30
+ /** Local name of the symbol-character run-content element. */
31
+ export declare const SYM_LOCAL_NAME = "sym";
32
+ /**
33
+ * Project a `<w:sym>` element to the text it contributes, or `undefined` when
34
+ * `element` is not a `w:sym`.
35
+ *
36
+ * For a resolvable `@w:char` the result is exactly the character the glyph
37
+ * stands for — what it would have contributed had it been spelled as literal
38
+ * `w:t` content. Otherwise it is a framed, projection-only identity that keeps
39
+ * the element's presence visible without colliding with authored text.
40
+ */
41
+ export declare function projectSymbolRun(element: Element): string | undefined;
42
+ //# sourceMappingURL=symbol_run_content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"symbol_run_content.d.ts","sourceRoot":"","sources":["../../src/primitives/symbol_run_content.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAIH,8DAA8D;AAC9D,eAAO,MAAM,cAAc,QAAQ,CAAC;AAkCpC;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAMrE"}