open-agreements 0.7.7 → 0.8.0

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 (704) hide show
  1. package/LICENSE +201 -21
  2. package/README.de.md +16 -29
  3. package/README.es.md +16 -29
  4. package/README.md +45 -54
  5. package/README.pt-br.md +16 -29
  6. package/README.template.md +19 -25
  7. package/README.zh.md +16 -29
  8. package/content/recipes/nvca-certificate-of-incorporation/fields/acquisition_exception_shares.json +36 -0
  9. package/content/recipes/nvca-certificate-of-incorporation/fields/adjustment_notice_days.json +22 -0
  10. package/content/recipes/nvca-certificate-of-incorporation/fields/common_shares_authorized.json +22 -0
  11. package/content/recipes/nvca-certificate-of-incorporation/fields/company_name.json +29 -0
  12. package/content/recipes/nvca-certificate-of-incorporation/fields/conversion_notice_days.json +22 -0
  13. package/content/recipes/nvca-certificate-of-incorporation/fields/dividend_formula_alt.json +22 -0
  14. package/content/recipes/nvca-certificate-of-incorporation/fields/dividend_rate_per_share.json +22 -0
  15. package/content/recipes/nvca-certificate-of-incorporation/fields/dividend_rate_percent.json +22 -0
  16. package/content/recipes/nvca-certificate-of-incorporation/fields/effective_date.json +22 -0
  17. package/content/recipes/nvca-certificate-of-incorporation/fields/number_of_classes.json +29 -0
  18. package/content/recipes/nvca-certificate-of-incorporation/fields/original_issue_price.json +22 -0
  19. package/content/recipes/nvca-certificate-of-incorporation/fields/par_value.json +36 -0
  20. package/content/recipes/nvca-certificate-of-incorporation/fields/preferred_director_seats.json +22 -0
  21. package/content/recipes/nvca-certificate-of-incorporation/fields/preferred_shares_authorized.json +22 -0
  22. package/content/recipes/nvca-certificate-of-incorporation/fields/preferred_shares_designated_portion.json +29 -0
  23. package/content/recipes/nvca-certificate-of-incorporation/fields/preferred_shares_outstanding_threshold.json +29 -0
  24. package/content/recipes/nvca-certificate-of-incorporation/fields/qualified_financing_notice_days.json +22 -0
  25. package/content/recipes/nvca-certificate-of-incorporation/fields/redemption_interest_rate.json +22 -0
  26. package/content/recipes/nvca-certificate-of-incorporation/fields/redemption_start_date.json +22 -0
  27. package/content/recipes/nvca-certificate-of-incorporation/fields/registered_agent_address.json +22 -0
  28. package/content/recipes/nvca-certificate-of-incorporation/fields/registered_agent_name.json +22 -0
  29. package/content/recipes/nvca-certificate-of-incorporation/fields/series_designation.json +22 -0
  30. package/content/recipes/nvca-certificate-of-incorporation/fields/signature_page_marker.json +22 -0
  31. package/content/recipes/nvca-certificate-of-incorporation/fields/specify_percentage.json +22 -0
  32. package/content/recipes/nvca-certificate-of-incorporation/fields/strategic_partnership_exception_shares.json +22 -0
  33. package/content/recipes/nvca-certificate-of-incorporation/fields/time_zone.json +22 -0
  34. package/content/recipes/nvca-certificate-of-incorporation/fields/total_authorized_shares.json +22 -0
  35. package/content/recipes/nvca-certificate-of-incorporation/template-manifest.json +77 -0
  36. package/content/recipes/nvca-stock-purchase-agreement/fields/agreement_date_month_day.json +27 -0
  37. package/content/recipes/nvca-stock-purchase-agreement/fields/agreement_year_two_digits.json +27 -0
  38. package/content/recipes/nvca-stock-purchase-agreement/fields/company_name.json +25 -0
  39. package/content/recipes/nvca-stock-purchase-agreement/fields/investor_counsel.json +27 -0
  40. package/content/recipes/nvca-stock-purchase-agreement/fields/minimum_shares_initial_closing.json +39 -0
  41. package/content/recipes/nvca-stock-purchase-agreement/fields/optional_plural_suffix.json +27 -0
  42. package/content/recipes/nvca-stock-purchase-agreement/fields/par_value_per_share.json +28 -0
  43. package/content/recipes/nvca-stock-purchase-agreement/fields/purchase_price_per_share.json +28 -0
  44. package/content/recipes/nvca-stock-purchase-agreement/fields/series_designation.json +159 -0
  45. package/content/recipes/nvca-stock-purchase-agreement/metadata.yaml +1 -1
  46. package/content/recipes/nvca-stock-purchase-agreement/template-manifest.json +24 -0
  47. package/content/templates/bonterms-mutual-nda/template.docx +0 -0
  48. package/content/templates/openagreements-board-consent-safe/.template.generated.json +0 -1
  49. package/content/templates/openagreements-employee-ip-inventions-assignment/.template.generated.json +9 -5
  50. package/content/templates/openagreements-employee-ip-inventions-assignment/README.md +2 -0
  51. package/content/templates/openagreements-employee-ip-inventions-assignment/metadata.yaml +8 -9
  52. package/content/templates/openagreements-employee-ip-inventions-assignment/template.docx +0 -0
  53. package/content/templates/openagreements-employee-ip-inventions-assignment/template.md +3 -4
  54. package/content/templates/openagreements-employment-confidentiality-acknowledgement/metadata.yaml +0 -9
  55. package/content/templates/openagreements-employment-confidentiality-acknowledgement/template.docx +0 -0
  56. package/content/templates/openagreements-employment-confidentiality-acknowledgement/template.json +0 -1
  57. package/content/templates/openagreements-employment-offer-letter/.template.generated.json +9 -5
  58. package/content/templates/openagreements-employment-offer-letter/README.md +17 -5
  59. package/content/templates/openagreements-employment-offer-letter/metadata.yaml +8 -9
  60. package/content/templates/openagreements-employment-offer-letter/template.docx +0 -0
  61. package/content/templates/openagreements-employment-offer-letter/template.md +3 -4
  62. package/content/templates/openagreements-restrictive-covenant-florida/.template.generated.json +9 -5
  63. package/content/templates/openagreements-restrictive-covenant-florida/README.md +2 -2
  64. package/content/templates/openagreements-restrictive-covenant-florida/metadata.yaml +10 -12
  65. package/content/templates/openagreements-restrictive-covenant-florida/template.docx +0 -0
  66. package/content/templates/openagreements-restrictive-covenant-florida/template.md +3 -4
  67. package/content/templates/openagreements-restrictive-covenant-wyoming/.template.generated.json +9 -5
  68. package/content/templates/openagreements-restrictive-covenant-wyoming/metadata.yaml +10 -12
  69. package/content/templates/openagreements-restrictive-covenant-wyoming/template.docx +0 -0
  70. package/content/templates/openagreements-restrictive-covenant-wyoming/template.md +3 -4
  71. package/content/templates/openagreements-stockholder-consent-safe/.template.generated.json +0 -1
  72. package/dist/core/checklist/format-checklist-docx.d.ts.map +1 -1
  73. package/dist/core/checklist/format-checklist-docx.js +4 -1
  74. package/dist/core/checklist/format-checklist-docx.js.map +1 -1
  75. package/dist/core/engine.d.ts.map +1 -1
  76. package/dist/core/engine.js +2 -40
  77. package/dist/core/engine.js.map +1 -1
  78. package/dist/core/fill-pipeline.d.ts +0 -8
  79. package/dist/core/fill-pipeline.d.ts.map +1 -1
  80. package/dist/core/fill-pipeline.js +54 -30
  81. package/dist/core/fill-pipeline.js.map +1 -1
  82. package/dist/core/humanize-docx.d.ts.map +1 -1
  83. package/dist/core/humanize-docx.js +16 -6
  84. package/dist/core/humanize-docx.js.map +1 -1
  85. package/dist/core/recipe/bracket-normalizer.d.ts.map +1 -1
  86. package/dist/core/recipe/bracket-normalizer.js +3 -7
  87. package/dist/core/recipe/bracket-normalizer.js.map +1 -1
  88. package/dist/core/recipe/cleaner.js +5 -5
  89. package/dist/core/recipe/cleaner.js.map +1 -1
  90. package/dist/core/recipe/index.d.ts +1 -1
  91. package/dist/core/recipe/index.d.ts.map +1 -1
  92. package/dist/core/recipe/index.js +57 -4
  93. package/dist/core/recipe/index.js.map +1 -1
  94. package/dist/core/recipe/ooxml-parts.d.ts +11 -0
  95. package/dist/core/recipe/ooxml-parts.d.ts.map +1 -1
  96. package/dist/core/recipe/ooxml-parts.js +22 -0
  97. package/dist/core/recipe/ooxml-parts.js.map +1 -1
  98. package/dist/core/recipe/patcher.d.ts.map +1 -1
  99. package/dist/core/recipe/patcher.js +2 -5
  100. package/dist/core/recipe/patcher.js.map +1 -1
  101. package/dist/core/recipe/source-drift.d.ts +19 -0
  102. package/dist/core/recipe/source-drift.d.ts.map +1 -1
  103. package/dist/core/recipe/source-drift.js +32 -2
  104. package/dist/core/recipe/source-drift.js.map +1 -1
  105. package/dist/core/selector.d.ts.map +1 -1
  106. package/dist/core/selector.js +49 -4
  107. package/dist/core/selector.js.map +1 -1
  108. package/dist/core/selectors/index.d.ts +40 -0
  109. package/dist/core/selectors/index.d.ts.map +1 -0
  110. package/dist/core/selectors/index.js +64 -0
  111. package/dist/core/selectors/index.js.map +1 -0
  112. package/dist/core/selectors/loader.d.ts +16 -0
  113. package/dist/core/selectors/loader.d.ts.map +1 -0
  114. package/dist/core/selectors/loader.js +80 -0
  115. package/dist/core/selectors/loader.js.map +1 -0
  116. package/dist/core/selectors/manifest-schema.d.ts +123 -0
  117. package/dist/core/selectors/manifest-schema.d.ts.map +1 -0
  118. package/dist/core/selectors/manifest-schema.js +93 -0
  119. package/dist/core/selectors/manifest-schema.js.map +1 -0
  120. package/dist/core/selectors/patch.d.ts +24 -0
  121. package/dist/core/selectors/patch.d.ts.map +1 -0
  122. package/dist/core/selectors/patch.js +68 -0
  123. package/dist/core/selectors/patch.js.map +1 -0
  124. package/dist/core/selectors/postconditions.d.ts +24 -0
  125. package/dist/core/selectors/postconditions.d.ts.map +1 -0
  126. package/dist/core/selectors/postconditions.js +50 -0
  127. package/dist/core/selectors/postconditions.js.map +1 -0
  128. package/dist/core/selectors/resolve.d.ts +32 -0
  129. package/dist/core/selectors/resolve.d.ts.map +1 -0
  130. package/dist/core/selectors/resolve.js +36 -0
  131. package/dist/core/selectors/resolve.js.map +1 -0
  132. package/dist/core/unified-pipeline.d.ts +3 -1
  133. package/dist/core/unified-pipeline.d.ts.map +1 -1
  134. package/dist/core/unified-pipeline.js +19 -5
  135. package/dist/core/unified-pipeline.js.map +1 -1
  136. package/gemini-extension.json +1 -1
  137. package/node_modules/@usejunior/docx-core/LICENSE +202 -21
  138. package/node_modules/@usejunior/docx-core/NOTICE +2 -0
  139. package/node_modules/@usejunior/docx-core/README.md +2 -2
  140. package/node_modules/@usejunior/docx-core/dist/.tsbuildinfo +1 -1
  141. package/node_modules/@usejunior/docx-core/dist/atomizer.d.ts +55 -0
  142. package/node_modules/@usejunior/docx-core/dist/atomizer.d.ts.map +1 -1
  143. package/node_modules/@usejunior/docx-core/dist/atomizer.js +139 -14
  144. package/node_modules/@usejunior/docx-core/dist/atomizer.js.map +1 -1
  145. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/auxiliaryIdCollision.d.ts +99 -0
  146. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/auxiliaryIdCollision.d.ts.map +1 -0
  147. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/auxiliaryIdCollision.js +415 -0
  148. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/auxiliaryIdCollision.js.map +1 -0
  149. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/documentReconstructor.d.ts.map +1 -1
  150. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/documentReconstructor.js +403 -113
  151. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/documentReconstructor.js.map +1 -1
  152. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/formattingFidelity.d.ts +99 -0
  153. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/formattingFidelity.d.ts.map +1 -0
  154. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/formattingFidelity.js +449 -0
  155. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/formattingFidelity.js.map +1 -0
  156. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-bookmarks.d.ts +37 -0
  157. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-bookmarks.d.ts.map +1 -0
  158. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-bookmarks.js +189 -0
  159. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-bookmarks.js.map +1 -0
  160. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-containers.d.ts +74 -0
  161. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-containers.d.ts.map +1 -0
  162. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-containers.js +171 -0
  163. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-containers.js.map +1 -0
  164. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-deletion.d.ts +88 -0
  165. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-deletion.d.ts.map +1 -0
  166. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-deletion.js +326 -0
  167. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-deletion.js.map +1 -0
  168. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-postprocess.d.ts +85 -0
  169. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-postprocess.d.ts.map +1 -0
  170. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-postprocess.js +402 -0
  171. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-postprocess.js.map +1 -0
  172. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-presplit.d.ts +39 -0
  173. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-presplit.d.ts.map +1 -0
  174. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-presplit.js +265 -0
  175. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-presplit.js.map +1 -0
  176. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-shared.d.ts +62 -0
  177. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-shared.d.ts.map +1 -0
  178. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-shared.js +139 -0
  179. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-shared.js.map +1 -0
  180. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-wrappers.d.ts +198 -0
  181. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-wrappers.d.ts.map +1 -0
  182. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-wrappers.js +475 -0
  183. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier-wrappers.js.map +1 -0
  184. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier.d.ts +6 -290
  185. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier.d.ts.map +1 -1
  186. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier.js +23 -1828
  187. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/inPlaceModifier.js.map +1 -1
  188. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/pipeline.d.ts +36 -2
  189. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/pipeline.d.ts.map +1 -1
  190. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/pipeline.js +456 -224
  191. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/pipeline.js.map +1 -1
  192. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/trackChangesAcceptorAst.d.ts.map +1 -1
  193. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/trackChangesAcceptorAst.js +199 -173
  194. package/node_modules/@usejunior/docx-core/dist/baselines/atomizer/trackChangesAcceptorAst.js.map +1 -1
  195. package/node_modules/@usejunior/docx-core/dist/baselines/wmlcomparer/DotnetCli.d.ts.map +1 -1
  196. package/node_modules/@usejunior/docx-core/dist/baselines/wmlcomparer/DotnetCli.js +7 -0
  197. package/node_modules/@usejunior/docx-core/dist/baselines/wmlcomparer/DotnetCli.js.map +1 -1
  198. package/node_modules/@usejunior/docx-core/dist/cli/compare-two.d.ts.map +1 -1
  199. package/node_modules/@usejunior/docx-core/dist/cli/compare-two.js +3 -1
  200. package/node_modules/@usejunior/docx-core/dist/cli/compare-two.js.map +1 -1
  201. package/node_modules/@usejunior/docx-core/dist/cli/conformance-adapter.d.ts +3 -0
  202. package/node_modules/@usejunior/docx-core/dist/cli/conformance-adapter.d.ts.map +1 -0
  203. package/node_modules/@usejunior/docx-core/dist/cli/conformance-adapter.js +93 -0
  204. package/node_modules/@usejunior/docx-core/dist/cli/conformance-adapter.js.map +1 -0
  205. package/node_modules/@usejunior/docx-core/dist/cli/index.d.ts.map +1 -1
  206. package/node_modules/@usejunior/docx-core/dist/cli/index.js +5 -1
  207. package/node_modules/@usejunior/docx-core/dist/cli/index.js.map +1 -1
  208. package/node_modules/@usejunior/docx-core/dist/compare-types.d.ts +197 -0
  209. package/node_modules/@usejunior/docx-core/dist/compare-types.d.ts.map +1 -0
  210. package/node_modules/@usejunior/docx-core/dist/compare-types.js +2 -0
  211. package/node_modules/@usejunior/docx-core/dist/compare-types.js.map +1 -0
  212. package/node_modules/@usejunior/docx-core/dist/core-types.d.ts +5 -1
  213. package/node_modules/@usejunior/docx-core/dist/core-types.d.ts.map +1 -1
  214. package/node_modules/@usejunior/docx-core/dist/core-types.js +5 -1
  215. package/node_modules/@usejunior/docx-core/dist/core-types.js.map +1 -1
  216. package/node_modules/@usejunior/docx-core/dist/footnotes.d.ts +8 -3
  217. package/node_modules/@usejunior/docx-core/dist/footnotes.d.ts.map +1 -1
  218. package/node_modules/@usejunior/docx-core/dist/footnotes.js +8 -3
  219. package/node_modules/@usejunior/docx-core/dist/footnotes.js.map +1 -1
  220. package/node_modules/@usejunior/docx-core/dist/generation/compile.d.ts +22 -0
  221. package/node_modules/@usejunior/docx-core/dist/generation/compile.d.ts.map +1 -0
  222. package/node_modules/@usejunior/docx-core/dist/generation/compile.js +58 -0
  223. package/node_modules/@usejunior/docx-core/dist/generation/compile.js.map +1 -0
  224. package/node_modules/@usejunior/docx-core/dist/generation/context.d.ts +42 -0
  225. package/node_modules/@usejunior/docx-core/dist/generation/context.d.ts.map +1 -0
  226. package/node_modules/@usejunior/docx-core/dist/generation/context.js +65 -0
  227. package/node_modules/@usejunior/docx-core/dist/generation/context.js.map +1 -0
  228. package/node_modules/@usejunior/docx-core/dist/generation/emit/comments-part.d.ts +36 -0
  229. package/node_modules/@usejunior/docx-core/dist/generation/emit/comments-part.d.ts.map +1 -0
  230. package/node_modules/@usejunior/docx-core/dist/generation/emit/comments-part.js +116 -0
  231. package/node_modules/@usejunior/docx-core/dist/generation/emit/comments-part.js.map +1 -0
  232. package/node_modules/@usejunior/docx-core/dist/generation/emit/document-part.d.ts +24 -0
  233. package/node_modules/@usejunior/docx-core/dist/generation/emit/document-part.d.ts.map +1 -0
  234. package/node_modules/@usejunior/docx-core/dist/generation/emit/document-part.js +60 -0
  235. package/node_modules/@usejunior/docx-core/dist/generation/emit/document-part.js.map +1 -0
  236. package/node_modules/@usejunior/docx-core/dist/generation/emit/emit-context.d.ts +28 -0
  237. package/node_modules/@usejunior/docx-core/dist/generation/emit/emit-context.d.ts.map +1 -0
  238. package/node_modules/@usejunior/docx-core/dist/generation/emit/emit-context.js +19 -0
  239. package/node_modules/@usejunior/docx-core/dist/generation/emit/emit-context.js.map +1 -0
  240. package/node_modules/@usejunior/docx-core/dist/generation/emit/font-table-part.d.ts +16 -0
  241. package/node_modules/@usejunior/docx-core/dist/generation/emit/font-table-part.d.ts.map +1 -0
  242. package/node_modules/@usejunior/docx-core/dist/generation/emit/font-table-part.js +74 -0
  243. package/node_modules/@usejunior/docx-core/dist/generation/emit/font-table-part.js.map +1 -0
  244. package/node_modules/@usejunior/docx-core/dist/generation/emit/header-footer-part.d.ts +23 -0
  245. package/node_modules/@usejunior/docx-core/dist/generation/emit/header-footer-part.d.ts.map +1 -0
  246. package/node_modules/@usejunior/docx-core/dist/generation/emit/header-footer-part.js +57 -0
  247. package/node_modules/@usejunior/docx-core/dist/generation/emit/header-footer-part.js.map +1 -0
  248. package/node_modules/@usejunior/docx-core/dist/generation/emit/numbering-part.d.ts +29 -0
  249. package/node_modules/@usejunior/docx-core/dist/generation/emit/numbering-part.d.ts.map +1 -0
  250. package/node_modules/@usejunior/docx-core/dist/generation/emit/numbering-part.js +102 -0
  251. package/node_modules/@usejunior/docx-core/dist/generation/emit/numbering-part.js.map +1 -0
  252. package/node_modules/@usejunior/docx-core/dist/generation/emit/package-parts.d.ts +24 -0
  253. package/node_modules/@usejunior/docx-core/dist/generation/emit/package-parts.d.ts.map +1 -0
  254. package/node_modules/@usejunior/docx-core/dist/generation/emit/package-parts.js +121 -0
  255. package/node_modules/@usejunior/docx-core/dist/generation/emit/package-parts.js.map +1 -0
  256. package/node_modules/@usejunior/docx-core/dist/generation/emit/paragraph.d.ts +24 -0
  257. package/node_modules/@usejunior/docx-core/dist/generation/emit/paragraph.d.ts.map +1 -0
  258. package/node_modules/@usejunior/docx-core/dist/generation/emit/paragraph.js +63 -0
  259. package/node_modules/@usejunior/docx-core/dist/generation/emit/paragraph.js.map +1 -0
  260. package/node_modules/@usejunior/docx-core/dist/generation/emit/properties.d.ts +36 -0
  261. package/node_modules/@usejunior/docx-core/dist/generation/emit/properties.d.ts.map +1 -0
  262. package/node_modules/@usejunior/docx-core/dist/generation/emit/properties.js +157 -0
  263. package/node_modules/@usejunior/docx-core/dist/generation/emit/properties.js.map +1 -0
  264. package/node_modules/@usejunior/docx-core/dist/generation/emit/run.d.ts +16 -0
  265. package/node_modules/@usejunior/docx-core/dist/generation/emit/run.d.ts.map +1 -0
  266. package/node_modules/@usejunior/docx-core/dist/generation/emit/run.js +71 -0
  267. package/node_modules/@usejunior/docx-core/dist/generation/emit/run.js.map +1 -0
  268. package/node_modules/@usejunior/docx-core/dist/generation/emit/section.d.ts +29 -0
  269. package/node_modules/@usejunior/docx-core/dist/generation/emit/section.d.ts.map +1 -0
  270. package/node_modules/@usejunior/docx-core/dist/generation/emit/section.js +117 -0
  271. package/node_modules/@usejunior/docx-core/dist/generation/emit/section.js.map +1 -0
  272. package/node_modules/@usejunior/docx-core/dist/generation/emit/settings-part.d.ts +13 -0
  273. package/node_modules/@usejunior/docx-core/dist/generation/emit/settings-part.d.ts.map +1 -0
  274. package/node_modules/@usejunior/docx-core/dist/generation/emit/settings-part.js +68 -0
  275. package/node_modules/@usejunior/docx-core/dist/generation/emit/settings-part.js.map +1 -0
  276. package/node_modules/@usejunior/docx-core/dist/generation/emit/styles-part.d.ts +16 -0
  277. package/node_modules/@usejunior/docx-core/dist/generation/emit/styles-part.d.ts.map +1 -0
  278. package/node_modules/@usejunior/docx-core/dist/generation/emit/styles-part.js +82 -0
  279. package/node_modules/@usejunior/docx-core/dist/generation/emit/styles-part.js.map +1 -0
  280. package/node_modules/@usejunior/docx-core/dist/generation/emit/table.d.ts +26 -0
  281. package/node_modules/@usejunior/docx-core/dist/generation/emit/table.d.ts.map +1 -0
  282. package/node_modules/@usejunior/docx-core/dist/generation/emit/table.js +209 -0
  283. package/node_modules/@usejunior/docx-core/dist/generation/emit/table.js.map +1 -0
  284. package/node_modules/@usejunior/docx-core/dist/generation/emit/theme-part.d.ts +21 -0
  285. package/node_modules/@usejunior/docx-core/dist/generation/emit/theme-part.d.ts.map +1 -0
  286. package/node_modules/@usejunior/docx-core/dist/generation/emit/theme-part.js +151 -0
  287. package/node_modules/@usejunior/docx-core/dist/generation/emit/theme-part.js.map +1 -0
  288. package/node_modules/@usejunior/docx-core/dist/generation/emit/web-settings-part.d.ts +12 -0
  289. package/node_modules/@usejunior/docx-core/dist/generation/emit/web-settings-part.d.ts.map +1 -0
  290. package/node_modules/@usejunior/docx-core/dist/generation/emit/web-settings-part.js +19 -0
  291. package/node_modules/@usejunior/docx-core/dist/generation/emit/web-settings-part.js.map +1 -0
  292. package/node_modules/@usejunior/docx-core/dist/generation/errors.d.ts +22 -0
  293. package/node_modules/@usejunior/docx-core/dist/generation/errors.d.ts.map +1 -0
  294. package/node_modules/@usejunior/docx-core/dist/generation/errors.js +29 -0
  295. package/node_modules/@usejunior/docx-core/dist/generation/errors.js.map +1 -0
  296. package/node_modules/@usejunior/docx-core/dist/generation/index.d.ts +13 -0
  297. package/node_modules/@usejunior/docx-core/dist/generation/index.d.ts.map +1 -0
  298. package/node_modules/@usejunior/docx-core/dist/generation/index.js +12 -0
  299. package/node_modules/@usejunior/docx-core/dist/generation/index.js.map +1 -0
  300. package/node_modules/@usejunior/docx-core/dist/generation/ordering.d.ts +46 -0
  301. package/node_modules/@usejunior/docx-core/dist/generation/ordering.d.ts.map +1 -0
  302. package/node_modules/@usejunior/docx-core/dist/generation/ordering.js +119 -0
  303. package/node_modules/@usejunior/docx-core/dist/generation/ordering.js.map +1 -0
  304. package/node_modules/@usejunior/docx-core/dist/generation/recipes.d.ts +87 -0
  305. package/node_modules/@usejunior/docx-core/dist/generation/recipes.d.ts.map +1 -0
  306. package/node_modules/@usejunior/docx-core/dist/generation/recipes.js +232 -0
  307. package/node_modules/@usejunior/docx-core/dist/generation/recipes.js.map +1 -0
  308. package/node_modules/@usejunior/docx-core/dist/generation/structural-checks.d.ts +24 -0
  309. package/node_modules/@usejunior/docx-core/dist/generation/structural-checks.d.ts.map +1 -0
  310. package/node_modules/@usejunior/docx-core/dist/generation/structural-checks.js +318 -0
  311. package/node_modules/@usejunior/docx-core/dist/generation/structural-checks.js.map +1 -0
  312. package/node_modules/@usejunior/docx-core/dist/generation/theme-colors.d.ts +4 -0
  313. package/node_modules/@usejunior/docx-core/dist/generation/theme-colors.d.ts.map +1 -0
  314. package/node_modules/@usejunior/docx-core/dist/generation/theme-colors.js +18 -0
  315. package/node_modules/@usejunior/docx-core/dist/generation/theme-colors.js.map +1 -0
  316. package/node_modules/@usejunior/docx-core/dist/generation/types.d.ts +266 -0
  317. package/node_modules/@usejunior/docx-core/dist/generation/types.d.ts.map +1 -0
  318. package/node_modules/@usejunior/docx-core/dist/generation/types.js +63 -0
  319. package/node_modules/@usejunior/docx-core/dist/generation/types.js.map +1 -0
  320. package/node_modules/@usejunior/docx-core/dist/generation/validate-spec.d.ts +27 -0
  321. package/node_modules/@usejunior/docx-core/dist/generation/validate-spec.d.ts.map +1 -0
  322. package/node_modules/@usejunior/docx-core/dist/generation/validate-spec.js +363 -0
  323. package/node_modules/@usejunior/docx-core/dist/generation/validate-spec.js.map +1 -0
  324. package/node_modules/@usejunior/docx-core/dist/index.d.ts +9 -150
  325. package/node_modules/@usejunior/docx-core/dist/index.d.ts.map +1 -1
  326. package/node_modules/@usejunior/docx-core/dist/index.js +14 -0
  327. package/node_modules/@usejunior/docx-core/dist/index.js.map +1 -1
  328. package/node_modules/@usejunior/docx-core/dist/integration/generation-probes.d.ts +15 -0
  329. package/node_modules/@usejunior/docx-core/dist/integration/generation-probes.d.ts.map +1 -0
  330. package/node_modules/@usejunior/docx-core/dist/integration/generation-probes.js +84 -0
  331. package/node_modules/@usejunior/docx-core/dist/integration/generation-probes.js.map +1 -0
  332. package/node_modules/@usejunior/docx-core/dist/integration/libreoffice-oracle.d.ts +49 -0
  333. package/node_modules/@usejunior/docx-core/dist/integration/libreoffice-oracle.d.ts.map +1 -0
  334. package/node_modules/@usejunior/docx-core/dist/integration/libreoffice-oracle.js +290 -0
  335. package/node_modules/@usejunior/docx-core/dist/integration/libreoffice-oracle.js.map +1 -0
  336. package/node_modules/@usejunior/docx-core/dist/integration/synthetic-docx-fixture.d.ts +134 -0
  337. package/node_modules/@usejunior/docx-core/dist/integration/synthetic-docx-fixture.d.ts.map +1 -0
  338. package/node_modules/@usejunior/docx-core/dist/integration/synthetic-docx-fixture.js +298 -0
  339. package/node_modules/@usejunior/docx-core/dist/integration/synthetic-docx-fixture.js.map +1 -0
  340. package/node_modules/@usejunior/docx-core/dist/primitives/accept_changes.d.ts +4 -3
  341. package/node_modules/@usejunior/docx-core/dist/primitives/accept_changes.d.ts.map +1 -1
  342. package/node_modules/@usejunior/docx-core/dist/primitives/accept_changes.js +163 -77
  343. package/node_modules/@usejunior/docx-core/dist/primitives/accept_changes.js.map +1 -1
  344. package/node_modules/@usejunior/docx-core/dist/primitives/comments.d.ts +12 -3
  345. package/node_modules/@usejunior/docx-core/dist/primitives/comments.d.ts.map +1 -1
  346. package/node_modules/@usejunior/docx-core/dist/primitives/comments.js +374 -97
  347. package/node_modules/@usejunior/docx-core/dist/primitives/comments.js.map +1 -1
  348. package/node_modules/@usejunior/docx-core/dist/primitives/content_fingerprint.d.ts +29 -0
  349. package/node_modules/@usejunior/docx-core/dist/primitives/content_fingerprint.d.ts.map +1 -0
  350. package/node_modules/@usejunior/docx-core/dist/primitives/content_fingerprint.js +63 -0
  351. package/node_modules/@usejunior/docx-core/dist/primitives/content_fingerprint.js.map +1 -0
  352. package/node_modules/@usejunior/docx-core/dist/primitives/document.d.ts +94 -15
  353. package/node_modules/@usejunior/docx-core/dist/primitives/document.d.ts.map +1 -1
  354. package/node_modules/@usejunior/docx-core/dist/primitives/document.js +377 -234
  355. package/node_modules/@usejunior/docx-core/dist/primitives/document.js.map +1 -1
  356. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-comments.d.ts +18 -0
  357. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-comments.d.ts.map +1 -0
  358. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-comments.js +160 -0
  359. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-comments.js.map +1 -0
  360. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-headings.d.ts +45 -0
  361. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-headings.d.ts.map +1 -0
  362. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-headings.js +247 -0
  363. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-headings.js.map +1 -0
  364. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-styles.d.ts +11 -0
  365. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-styles.d.ts.map +1 -0
  366. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-styles.js +104 -0
  367. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-styles.js.map +1 -0
  368. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-toon.d.ts +37 -0
  369. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-toon.d.ts.map +1 -0
  370. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-toon.js +199 -0
  371. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-toon.js.map +1 -0
  372. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-types.d.ts +165 -0
  373. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-types.d.ts.map +1 -0
  374. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-types.js +2 -0
  375. package/node_modules/@usejunior/docx-core/dist/primitives/document_view-types.js.map +1 -0
  376. package/node_modules/@usejunior/docx-core/dist/primitives/document_view.d.ts +50 -101
  377. package/node_modules/@usejunior/docx-core/dist/primitives/document_view.d.ts.map +1 -1
  378. package/node_modules/@usejunior/docx-core/dist/primitives/document_view.js +287 -326
  379. package/node_modules/@usejunior/docx-core/dist/primitives/document_view.js.map +1 -1
  380. package/node_modules/@usejunior/docx-core/dist/primitives/dom-helpers.d.ts +9 -0
  381. package/node_modules/@usejunior/docx-core/dist/primitives/dom-helpers.d.ts.map +1 -1
  382. package/node_modules/@usejunior/docx-core/dist/primitives/dom-helpers.js +10 -1
  383. package/node_modules/@usejunior/docx-core/dist/primitives/dom-helpers.js.map +1 -1
  384. package/node_modules/@usejunior/docx-core/dist/primitives/footnotes.d.ts +4 -3
  385. package/node_modules/@usejunior/docx-core/dist/primitives/footnotes.d.ts.map +1 -1
  386. package/node_modules/@usejunior/docx-core/dist/primitives/footnotes.js +232 -44
  387. package/node_modules/@usejunior/docx-core/dist/primitives/footnotes.js.map +1 -1
  388. package/node_modules/@usejunior/docx-core/dist/primitives/formatting_tags.d.ts +7 -0
  389. package/node_modules/@usejunior/docx-core/dist/primitives/formatting_tags.d.ts.map +1 -1
  390. package/node_modules/@usejunior/docx-core/dist/primitives/formatting_tags.js +22 -11
  391. package/node_modules/@usejunior/docx-core/dist/primitives/formatting_tags.js.map +1 -1
  392. package/node_modules/@usejunior/docx-core/dist/primitives/index.d.ts +12 -0
  393. package/node_modules/@usejunior/docx-core/dist/primitives/index.d.ts.map +1 -1
  394. package/node_modules/@usejunior/docx-core/dist/primitives/index.js +11 -0
  395. package/node_modules/@usejunior/docx-core/dist/primitives/index.js.map +1 -1
  396. package/node_modules/@usejunior/docx-core/dist/primitives/layout.d.ts +4 -3
  397. package/node_modules/@usejunior/docx-core/dist/primitives/layout.d.ts.map +1 -1
  398. package/node_modules/@usejunior/docx-core/dist/primitives/layout.js +45 -3
  399. package/node_modules/@usejunior/docx-core/dist/primitives/layout.js.map +1 -1
  400. package/node_modules/@usejunior/docx-core/dist/primitives/locator.d.ts +76 -0
  401. package/node_modules/@usejunior/docx-core/dist/primitives/locator.d.ts.map +1 -0
  402. package/node_modules/@usejunior/docx-core/dist/primitives/locator.js +223 -0
  403. package/node_modules/@usejunior/docx-core/dist/primitives/locator.js.map +1 -0
  404. package/node_modules/@usejunior/docx-core/dist/primitives/merge_runs.d.ts +21 -3
  405. package/node_modules/@usejunior/docx-core/dist/primitives/merge_runs.d.ts.map +1 -1
  406. package/node_modules/@usejunior/docx-core/dist/primitives/merge_runs.js +32 -10
  407. package/node_modules/@usejunior/docx-core/dist/primitives/merge_runs.js.map +1 -1
  408. package/node_modules/@usejunior/docx-core/dist/primitives/minimal_save.d.ts +38 -0
  409. package/node_modules/@usejunior/docx-core/dist/primitives/minimal_save.d.ts.map +1 -0
  410. package/node_modules/@usejunior/docx-core/dist/primitives/minimal_save.js +323 -0
  411. package/node_modules/@usejunior/docx-core/dist/primitives/minimal_save.js.map +1 -0
  412. package/node_modules/@usejunior/docx-core/dist/primitives/namespaces.d.ts +53 -0
  413. package/node_modules/@usejunior/docx-core/dist/primitives/namespaces.d.ts.map +1 -1
  414. package/node_modules/@usejunior/docx-core/dist/primitives/namespaces.js +59 -0
  415. package/node_modules/@usejunior/docx-core/dist/primitives/namespaces.js.map +1 -1
  416. package/node_modules/@usejunior/docx-core/dist/primitives/reject_changes.d.ts +6 -4
  417. package/node_modules/@usejunior/docx-core/dist/primitives/reject_changes.d.ts.map +1 -1
  418. package/node_modules/@usejunior/docx-core/dist/primitives/reject_changes.js +187 -91
  419. package/node_modules/@usejunior/docx-core/dist/primitives/reject_changes.js.map +1 -1
  420. package/node_modules/@usejunior/docx-core/dist/primitives/revision-parts.d.ts +7 -0
  421. package/node_modules/@usejunior/docx-core/dist/primitives/revision-parts.d.ts.map +1 -0
  422. package/node_modules/@usejunior/docx-core/dist/primitives/revision-parts.js +27 -0
  423. package/node_modules/@usejunior/docx-core/dist/primitives/revision-parts.js.map +1 -0
  424. package/node_modules/@usejunior/docx-core/dist/primitives/revision-vocabulary.d.ts +7 -0
  425. package/node_modules/@usejunior/docx-core/dist/primitives/revision-vocabulary.d.ts.map +1 -0
  426. package/node_modules/@usejunior/docx-core/dist/primitives/revision-vocabulary.js +39 -0
  427. package/node_modules/@usejunior/docx-core/dist/primitives/revision-vocabulary.js.map +1 -0
  428. package/node_modules/@usejunior/docx-core/dist/primitives/schema-corpus-capture.d.ts +19 -0
  429. package/node_modules/@usejunior/docx-core/dist/primitives/schema-corpus-capture.d.ts.map +1 -0
  430. package/node_modules/@usejunior/docx-core/dist/primitives/schema-corpus-capture.js +29 -0
  431. package/node_modules/@usejunior/docx-core/dist/primitives/schema-corpus-capture.js.map +1 -0
  432. package/node_modules/@usejunior/docx-core/dist/primitives/sectPrAudit.d.ts +19 -0
  433. package/node_modules/@usejunior/docx-core/dist/primitives/sectPrAudit.d.ts.map +1 -0
  434. package/node_modules/@usejunior/docx-core/dist/primitives/sectPrAudit.js +165 -0
  435. package/node_modules/@usejunior/docx-core/dist/primitives/sectPrAudit.js.map +1 -0
  436. package/node_modules/@usejunior/docx-core/dist/primitives/semantic_tags.d.ts +7 -0
  437. package/node_modules/@usejunior/docx-core/dist/primitives/semantic_tags.d.ts.map +1 -1
  438. package/node_modules/@usejunior/docx-core/dist/primitives/semantic_tags.js +23 -4
  439. package/node_modules/@usejunior/docx-core/dist/primitives/semantic_tags.js.map +1 -1
  440. package/node_modules/@usejunior/docx-core/dist/primitives/serialize_html.d.ts +37 -0
  441. package/node_modules/@usejunior/docx-core/dist/primitives/serialize_html.d.ts.map +1 -0
  442. package/node_modules/@usejunior/docx-core/dist/primitives/serialize_html.js +395 -0
  443. package/node_modules/@usejunior/docx-core/dist/primitives/serialize_html.js.map +1 -0
  444. package/node_modules/@usejunior/docx-core/dist/primitives/serialize_markdown.d.ts +16 -0
  445. package/node_modules/@usejunior/docx-core/dist/primitives/serialize_markdown.d.ts.map +1 -0
  446. package/node_modules/@usejunior/docx-core/dist/primitives/serialize_markdown.js +300 -0
  447. package/node_modules/@usejunior/docx-core/dist/primitives/serialize_markdown.js.map +1 -0
  448. package/node_modules/@usejunior/docx-core/dist/primitives/serialize_plaintext.d.ts +15 -0
  449. package/node_modules/@usejunior/docx-core/dist/primitives/serialize_plaintext.d.ts.map +1 -0
  450. package/node_modules/@usejunior/docx-core/dist/primitives/serialize_plaintext.js +154 -0
  451. package/node_modules/@usejunior/docx-core/dist/primitives/serialize_plaintext.js.map +1 -0
  452. package/node_modules/@usejunior/docx-core/dist/primitives/styles.d.ts +15 -0
  453. package/node_modules/@usejunior/docx-core/dist/primitives/styles.d.ts.map +1 -1
  454. package/node_modules/@usejunior/docx-core/dist/primitives/styles.js +33 -22
  455. package/node_modules/@usejunior/docx-core/dist/primitives/styles.js.map +1 -1
  456. package/node_modules/@usejunior/docx-core/dist/primitives/table_context.d.ts +19 -0
  457. package/node_modules/@usejunior/docx-core/dist/primitives/table_context.d.ts.map +1 -0
  458. package/node_modules/@usejunior/docx-core/dist/primitives/table_context.js +189 -0
  459. package/node_modules/@usejunior/docx-core/dist/primitives/table_context.js.map +1 -0
  460. package/node_modules/@usejunior/docx-core/dist/primitives/tables.d.ts.map +1 -1
  461. package/node_modules/@usejunior/docx-core/dist/primitives/tables.js +13 -3
  462. package/node_modules/@usejunior/docx-core/dist/primitives/tables.js.map +1 -1
  463. package/node_modules/@usejunior/docx-core/dist/primitives/text.d.ts +2 -1
  464. package/node_modules/@usejunior/docx-core/dist/primitives/text.d.ts.map +1 -1
  465. package/node_modules/@usejunior/docx-core/dist/primitives/text.js +116 -12
  466. package/node_modules/@usejunior/docx-core/dist/primitives/text.js.map +1 -1
  467. package/node_modules/@usejunior/docx-core/dist/primitives/track-changes-emitter.d.ts +148 -0
  468. package/node_modules/@usejunior/docx-core/dist/primitives/track-changes-emitter.d.ts.map +1 -0
  469. package/node_modules/@usejunior/docx-core/dist/primitives/track-changes-emitter.js +291 -0
  470. package/node_modules/@usejunior/docx-core/dist/primitives/track-changes-emitter.js.map +1 -0
  471. package/node_modules/@usejunior/docx-core/dist/primitives/validate_ai_revisions.d.ts +35 -0
  472. package/node_modules/@usejunior/docx-core/dist/primitives/validate_ai_revisions.d.ts.map +1 -0
  473. package/node_modules/@usejunior/docx-core/dist/primitives/validate_ai_revisions.js +323 -0
  474. package/node_modules/@usejunior/docx-core/dist/primitives/validate_ai_revisions.js.map +1 -0
  475. package/node_modules/@usejunior/docx-core/dist/primitives/xml-helpers.d.ts +29 -0
  476. package/node_modules/@usejunior/docx-core/dist/primitives/xml-helpers.d.ts.map +1 -0
  477. package/node_modules/@usejunior/docx-core/dist/primitives/xml-helpers.js +35 -0
  478. package/node_modules/@usejunior/docx-core/dist/primitives/xml-helpers.js.map +1 -0
  479. package/node_modules/@usejunior/docx-core/dist/primitives/xml.d.ts +5 -0
  480. package/node_modules/@usejunior/docx-core/dist/primitives/xml.d.ts.map +1 -1
  481. package/node_modules/@usejunior/docx-core/dist/primitives/xml.js +5 -0
  482. package/node_modules/@usejunior/docx-core/dist/primitives/xml.js.map +1 -1
  483. package/node_modules/@usejunior/docx-core/dist/primitives/zip.d.ts +1 -0
  484. package/node_modules/@usejunior/docx-core/dist/primitives/zip.d.ts.map +1 -1
  485. package/node_modules/@usejunior/docx-core/dist/primitives/zip.js +21 -3
  486. package/node_modules/@usejunior/docx-core/dist/primitives/zip.js.map +1 -1
  487. package/node_modules/@usejunior/docx-core/dist/shared/field-structure.d.ts +14 -0
  488. package/node_modules/@usejunior/docx-core/dist/shared/field-structure.d.ts.map +1 -0
  489. package/node_modules/@usejunior/docx-core/dist/shared/field-structure.js +166 -0
  490. package/node_modules/@usejunior/docx-core/dist/shared/field-structure.js.map +1 -0
  491. package/node_modules/@usejunior/docx-core/dist/shared/ooxml/namespaces.d.ts +4 -1
  492. package/node_modules/@usejunior/docx-core/dist/shared/ooxml/namespaces.d.ts.map +1 -1
  493. package/node_modules/@usejunior/docx-core/dist/shared/ooxml/namespaces.js +4 -1
  494. package/node_modules/@usejunior/docx-core/dist/shared/ooxml/namespaces.js.map +1 -1
  495. package/node_modules/@usejunior/docx-core/package.json +13 -9
  496. package/node_modules/@xmldom/xmldom/CHANGELOG.md +186 -70
  497. package/node_modules/@xmldom/xmldom/index.d.ts +144 -19
  498. package/node_modules/@xmldom/xmldom/lib/dom.js +705 -343
  499. package/node_modules/@xmldom/xmldom/lib/grammar.js +14 -0
  500. package/node_modules/@xmldom/xmldom/package.json +13 -10
  501. package/package.json +7 -7
  502. package/server.json +3 -3
  503. package/skills/{cloud-service-agreement → agreements/cloud-service-agreement}/SKILL.md +2 -2
  504. package/skills/{nda → agreements/cloud-service-agreement}/template-filling-execution.md +2 -2
  505. package/skills/{data-privacy-agreement → agreements/data-privacy-agreement}/SKILL.md +15 -4
  506. package/skills/{safe → agreements/data-privacy-agreement}/template-filling-execution.md +12 -6
  507. package/skills/{employment-contract → agreements/employment-contract}/SKILL.md +3 -3
  508. package/skills/{cloud-service-agreement → agreements/employment-contract}/template-filling-execution.md +12 -6
  509. package/skills/{nda → agreements/nda}/SKILL.md +2 -2
  510. package/skills/{open-agreements → agreements/nda}/template-filling-execution.md +12 -6
  511. package/skills/{open-agreements → agreements/open-agreements}/SKILL.md +13 -30
  512. package/skills/agreements/open-agreements/template-filling-execution.md +98 -0
  513. package/skills/{safe → agreements/safe}/SKILL.md +2 -2
  514. package/skills/agreements/safe/template-filling-execution.md +98 -0
  515. package/skills/{services-agreement → agreements/services-agreement}/SKILL.md +3 -3
  516. package/skills/agreements/services-agreement/template-filling-execution.md +98 -0
  517. package/skills/{venture-financing → agreements/venture-financing}/SKILL.md +3 -3
  518. package/skills/agreements/venture-financing/template-filling-execution.md +98 -0
  519. package/skills/{client-email → client-workflows/client-email}/SKILL.md +1 -1
  520. package/skills/{delaware-franchise-tax → client-workflows/delaware-franchise-tax}/SKILL.md +1 -1
  521. package/skills/{edit-docx-agreement → client-workflows/edit-docx-agreement}/SKILL.md +1 -1
  522. package/skills/{iso-27001-evidence-collection → compliance/iso-27001-evidence-collection}/SKILL.md +1 -1
  523. package/skills/{iso-27001-internal-audit → compliance/iso-27001-internal-audit}/SKILL.md +1 -1
  524. package/skills/{soc2-readiness → compliance/soc2-readiness}/SKILL.md +1 -1
  525. package/skills/{canonical-markdown-authoring → internal/canonical-markdown-authoring}/SKILL.md +2 -3
  526. package/skills/{recipe-quality-audit → internal/recipe-quality-audit}/SKILL.md +2 -1
  527. package/skills/{unit-test-philosophy → internal/unit-test-philosophy}/SKILL.md +2 -0
  528. package/skills/legal-explainers/data-privacy-law-explainer/CONTRIBUTING.md +7 -0
  529. package/skills/legal-explainers/data-privacy-law-explainer/LICENSE +269 -0
  530. package/skills/legal-explainers/data-privacy-law-explainer/NOTICE +7 -0
  531. package/skills/legal-explainers/data-privacy-law-explainer/SKILL.md +113 -0
  532. package/skills/legal-explainers/data-privacy-law-explainer/content/alabama.md +211 -0
  533. package/skills/legal-explainers/data-privacy-law-explainer/content/alaska.md +155 -0
  534. package/skills/legal-explainers/data-privacy-law-explainer/content/arizona.md +181 -0
  535. package/skills/legal-explainers/data-privacy-law-explainer/content/arkansas.md +219 -0
  536. package/skills/legal-explainers/data-privacy-law-explainer/content/california.md +107 -0
  537. package/skills/legal-explainers/data-privacy-law-explainer/content/colorado.md +87 -0
  538. package/skills/legal-explainers/data-privacy-law-explainer/content/connecticut.md +83 -0
  539. package/skills/legal-explainers/data-privacy-law-explainer/content/delaware.md +85 -0
  540. package/skills/legal-explainers/data-privacy-law-explainer/content/district-of-columbia.md +153 -0
  541. package/skills/legal-explainers/data-privacy-law-explainer/content/florida.md +234 -0
  542. package/skills/legal-explainers/data-privacy-law-explainer/content/georgia.md +149 -0
  543. package/skills/legal-explainers/data-privacy-law-explainer/content/hawaii.md +167 -0
  544. package/skills/legal-explainers/data-privacy-law-explainer/content/idaho.md +149 -0
  545. package/skills/legal-explainers/data-privacy-law-explainer/content/illinois.md +238 -0
  546. package/skills/legal-explainers/data-privacy-law-explainer/content/indiana.md +93 -0
  547. package/skills/legal-explainers/data-privacy-law-explainer/content/iowa.md +99 -0
  548. package/skills/legal-explainers/data-privacy-law-explainer/content/kansas.md +155 -0
  549. package/skills/legal-explainers/data-privacy-law-explainer/content/kentucky.md +87 -0
  550. package/skills/legal-explainers/data-privacy-law-explainer/content/louisiana.md +209 -0
  551. package/skills/legal-explainers/data-privacy-law-explainer/content/maine.md +163 -0
  552. package/skills/legal-explainers/data-privacy-law-explainer/content/maryland.md +85 -0
  553. package/skills/legal-explainers/data-privacy-law-explainer/content/massachusetts.md +260 -0
  554. package/skills/legal-explainers/data-privacy-law-explainer/content/michigan.md +175 -0
  555. package/skills/legal-explainers/data-privacy-law-explainer/content/minnesota.md +93 -0
  556. package/skills/legal-explainers/data-privacy-law-explainer/content/mississippi.md +132 -0
  557. package/skills/legal-explainers/data-privacy-law-explainer/content/missouri.md +179 -0
  558. package/skills/legal-explainers/data-privacy-law-explainer/content/montana.md +105 -0
  559. package/skills/legal-explainers/data-privacy-law-explainer/content/nebraska.md +83 -0
  560. package/skills/legal-explainers/data-privacy-law-explainer/content/nevada.md +212 -0
  561. package/skills/legal-explainers/data-privacy-law-explainer/content/new-hampshire.md +91 -0
  562. package/skills/legal-explainers/data-privacy-law-explainer/content/new-jersey.md +95 -0
  563. package/skills/legal-explainers/data-privacy-law-explainer/content/new-mexico.md +174 -0
  564. package/skills/legal-explainers/data-privacy-law-explainer/content/new-york.md +195 -0
  565. package/skills/legal-explainers/data-privacy-law-explainer/content/north-carolina.md +205 -0
  566. package/skills/legal-explainers/data-privacy-law-explainer/content/north-dakota.md +169 -0
  567. package/skills/legal-explainers/data-privacy-law-explainer/content/ohio.md +171 -0
  568. package/skills/legal-explainers/data-privacy-law-explainer/content/oklahoma.md +168 -0
  569. package/skills/legal-explainers/data-privacy-law-explainer/content/oregon.md +103 -0
  570. package/skills/legal-explainers/data-privacy-law-explainer/content/pennsylvania.md +99 -0
  571. package/skills/legal-explainers/data-privacy-law-explainer/content/rhode-island.md +93 -0
  572. package/skills/legal-explainers/data-privacy-law-explainer/content/south-carolina.md +175 -0
  573. package/skills/legal-explainers/data-privacy-law-explainer/content/south-dakota.md +176 -0
  574. package/skills/legal-explainers/data-privacy-law-explainer/content/tennessee.md +89 -0
  575. package/skills/legal-explainers/data-privacy-law-explainer/content/texas.md +89 -0
  576. package/skills/legal-explainers/data-privacy-law-explainer/content/utah.md +83 -0
  577. package/skills/legal-explainers/data-privacy-law-explainer/content/vermont.md +267 -0
  578. package/skills/legal-explainers/data-privacy-law-explainer/content/virginia.md +85 -0
  579. package/skills/legal-explainers/data-privacy-law-explainer/content/washington.md +247 -0
  580. package/skills/legal-explainers/data-privacy-law-explainer/content/west-virginia.md +141 -0
  581. package/skills/legal-explainers/data-privacy-law-explainer/content/wisconsin.md +156 -0
  582. package/skills/legal-explainers/data-privacy-law-explainer/content/wyoming.md +185 -0
  583. package/skills/legal-explainers/data-privacy-law-explainer/manifest.json +519 -0
  584. package/skills/legal-explainers/non-compete-contract-explainer/CONTRIBUTING.md +7 -0
  585. package/skills/legal-explainers/non-compete-contract-explainer/LICENSE +269 -0
  586. package/skills/legal-explainers/non-compete-contract-explainer/NOTICE +7 -0
  587. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/SKILL.md +1 -1
  588. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/alabama.md +5 -5
  589. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/alaska.md +5 -5
  590. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/american-samoa.md +6 -6
  591. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/arizona.md +6 -4
  592. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/arkansas.md +5 -5
  593. package/skills/legal-explainers/non-compete-contract-explainer/content/au.md +208 -0
  594. package/skills/legal-explainers/non-compete-contract-explainer/content/australian-capital-territory.md +220 -0
  595. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/california.md +5 -5
  596. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/cnmi.md +4 -4
  597. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/colorado.md +5 -5
  598. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/connecticut.md +5 -5
  599. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/delaware.md +7 -7
  600. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/district-of-columbia.md +5 -5
  601. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/florida.md +5 -5
  602. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/georgia.md +7 -7
  603. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/guam.md +4 -4
  604. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/hawaii.md +5 -5
  605. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/idaho.md +5 -5
  606. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/illinois.md +5 -5
  607. package/skills/{non-compete-contract-explainer/content/india.md → legal-explainers/non-compete-contract-explainer/content/in.md} +5 -5
  608. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/indiana.md +5 -5
  609. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/iowa.md +5 -5
  610. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/kansas.md +5 -5
  611. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/kentucky.md +5 -5
  612. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/louisiana.md +9 -9
  613. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/maine.md +6 -6
  614. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/maryland.md +5 -5
  615. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/massachusetts.md +5 -5
  616. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/michigan.md +5 -5
  617. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/minnesota.md +5 -5
  618. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/mississippi.md +5 -5
  619. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/missouri.md +5 -5
  620. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/montana.md +5 -5
  621. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/nebraska.md +5 -5
  622. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/nevada.md +5 -5
  623. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/new-hampshire.md +5 -5
  624. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/new-jersey.md +5 -5
  625. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/new-mexico.md +5 -5
  626. package/skills/legal-explainers/non-compete-contract-explainer/content/new-south-wales.md +218 -0
  627. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/new-york.md +5 -5
  628. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/north-carolina.md +5 -5
  629. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/north-dakota.md +5 -5
  630. package/skills/legal-explainers/non-compete-contract-explainer/content/northern-territory.md +214 -0
  631. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/ohio.md +5 -5
  632. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/oklahoma.md +5 -5
  633. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/oregon.md +12 -12
  634. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/pennsylvania.md +5 -5
  635. package/skills/{non-compete-contract-explainer/content/philippines.md → legal-explainers/non-compete-contract-explainer/content/ph.md} +5 -5
  636. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/puerto-rico.md +4 -4
  637. package/skills/legal-explainers/non-compete-contract-explainer/content/queensland.md +206 -0
  638. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/rhode-island.md +5 -5
  639. package/skills/{non-compete-contract-explainer/content/singapore.md → legal-explainers/non-compete-contract-explainer/content/sg.md} +5 -5
  640. package/skills/legal-explainers/non-compete-contract-explainer/content/south-australia.md +236 -0
  641. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/south-carolina.md +5 -5
  642. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/south-dakota.md +5 -5
  643. package/skills/legal-explainers/non-compete-contract-explainer/content/tasmania.md +224 -0
  644. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/tennessee.md +5 -5
  645. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/texas.md +5 -5
  646. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/utah.md +5 -5
  647. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/vermont.md +29 -11
  648. package/skills/legal-explainers/non-compete-contract-explainer/content/victoria.md +218 -0
  649. package/skills/{non-compete-contract-explainer/content/us-virgin-islands.md → legal-explainers/non-compete-contract-explainer/content/virgin-islands.md} +5 -5
  650. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/virginia.md +5 -5
  651. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/washington.md +5 -5
  652. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/west-virginia.md +5 -5
  653. package/skills/legal-explainers/non-compete-contract-explainer/content/western-australia.md +224 -0
  654. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/wisconsin.md +5 -5
  655. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/content/wyoming.md +19 -15
  656. package/skills/{non-compete-contract-explainer → legal-explainers/non-compete-contract-explainer}/manifest.json +225 -76
  657. package/content/templates/bonterms-mutual-nda/signing.yaml +0 -35
  658. package/dist/core/signing-config.d.ts +0 -46
  659. package/dist/core/signing-config.d.ts.map +0 -1
  660. package/dist/core/signing-config.js +0 -67
  661. package/dist/core/signing-config.js.map +0 -1
  662. package/skills/services-agreement/template-filling-execution.md +0 -81
  663. package/skills/shared/template-filling-execution.md +0 -92
  664. /package/skills/{cloud-service-agreement → agreements/cloud-service-agreement}/CONNECTORS.md +0 -0
  665. /package/skills/{data-privacy-agreement → agreements/data-privacy-agreement}/CONNECTORS.md +0 -0
  666. /package/skills/{employment-contract → agreements/employment-contract}/CONNECTORS.md +0 -0
  667. /package/skills/{nda → agreements/nda}/CONNECTORS.md +0 -0
  668. /package/skills/{open-agreements → agreements/open-agreements}/CONNECTORS.md +0 -0
  669. /package/skills/{safe → agreements/safe}/CONNECTORS.md +0 -0
  670. /package/skills/{services-agreement → agreements/services-agreement}/CONNECTORS.md +0 -0
  671. /package/skills/{venture-financing → agreements/venture-financing}/CONNECTORS.md +0 -0
  672. /package/skills/{delaware-franchise-tax → client-workflows/delaware-franchise-tax}/CONNECTORS.md +0 -0
  673. /package/skills/{delaware-franchise-tax → client-workflows/delaware-franchise-tax}/reference/ecorp-portal-playwright-notes.md +0 -0
  674. /package/skills/{delaware-franchise-tax → client-workflows/delaware-franchise-tax}/reference/faq.md +0 -0
  675. /package/skills/{delaware-franchise-tax → client-workflows/delaware-franchise-tax}/reference/filing-instructions.md +0 -0
  676. /package/skills/{delaware-franchise-tax → client-workflows/delaware-franchise-tax}/reference/tax-calculation.md +0 -0
  677. /package/skills/{edit-docx-agreement → client-workflows/edit-docx-agreement}/CONNECTORS.md +0 -0
  678. /package/skills/{iso-27001-evidence-collection → compliance/iso-27001-evidence-collection}/CONNECTORS.md +0 -0
  679. /package/skills/{iso-27001-evidence-collection → compliance/iso-27001-evidence-collection}/rules/api-exports.md +0 -0
  680. /package/skills/{iso-27001-evidence-collection → compliance/iso-27001-evidence-collection}/rules/evidence-types.md +0 -0
  681. /package/skills/{iso-27001-evidence-collection → compliance/iso-27001-evidence-collection}/rules/screenshot-guide.md +0 -0
  682. /package/skills/{iso-27001-internal-audit → compliance/iso-27001-internal-audit}/CONNECTORS.md +0 -0
  683. /package/skills/{iso-27001-internal-audit → compliance/iso-27001-internal-audit}/rules/access-control.md +0 -0
  684. /package/skills/{iso-27001-internal-audit → compliance/iso-27001-internal-audit}/rules/business-continuity.md +0 -0
  685. /package/skills/{iso-27001-internal-audit → compliance/iso-27001-internal-audit}/rules/change-management.md +0 -0
  686. /package/skills/{iso-27001-internal-audit → compliance/iso-27001-internal-audit}/rules/encryption.md +0 -0
  687. /package/skills/{iso-27001-internal-audit → compliance/iso-27001-internal-audit}/rules/incident-response.md +0 -0
  688. /package/skills/{iso-27001-internal-audit → compliance/iso-27001-internal-audit}/rules/isms-management.md +0 -0
  689. /package/skills/{iso-27001-internal-audit → compliance/iso-27001-internal-audit}/rules/logging-monitoring.md +0 -0
  690. /package/skills/{iso-27001-internal-audit → compliance/iso-27001-internal-audit}/rules/people-controls.md +0 -0
  691. /package/skills/{iso-27001-internal-audit → compliance/iso-27001-internal-audit}/rules/supplier-management.md +0 -0
  692. /package/skills/{soc2-readiness → compliance/soc2-readiness}/CONNECTORS.md +0 -0
  693. /package/skills/{soc2-readiness → compliance/soc2-readiness}/rules/change-vendor-management.md +0 -0
  694. /package/skills/{soc2-readiness → compliance/soc2-readiness}/rules/communication-info.md +0 -0
  695. /package/skills/{soc2-readiness → compliance/soc2-readiness}/rules/control-activities.md +0 -0
  696. /package/skills/{soc2-readiness → compliance/soc2-readiness}/rules/control-environment.md +0 -0
  697. /package/skills/{soc2-readiness → compliance/soc2-readiness}/rules/logical-access.md +0 -0
  698. /package/skills/{soc2-readiness → compliance/soc2-readiness}/rules/monitoring-activities.md +0 -0
  699. /package/skills/{soc2-readiness → compliance/soc2-readiness}/rules/optional-categories.md +0 -0
  700. /package/skills/{soc2-readiness → compliance/soc2-readiness}/rules/privacy-criteria.md +0 -0
  701. /package/skills/{soc2-readiness → compliance/soc2-readiness}/rules/risk-assessment.md +0 -0
  702. /package/skills/{soc2-readiness → compliance/soc2-readiness}/rules/system-operations.md +0 -0
  703. /package/skills/{canonical-markdown-authoring → internal/canonical-markdown-authoring}/CONNECTORS.md +0 -0
  704. /package/skills/{unit-test-philosophy → internal/unit-test-philosophy}/references/allure-test-spec-writing-guide.md +0 -0
@@ -167,6 +167,14 @@ const LEAF_NODE_TAGS = new Set([
167
167
  'w:endnoteRef', // Endnote reference marker
168
168
  'w:footnoteReference', // Footnote reference
169
169
  'w:endnoteReference', // Endnote reference
170
+ 'w:commentReference', // Comment reference anchor (run-level child).
171
+ // Note: w:commentRangeStart / w:commentRangeEnd / w:bookmarkStart /
172
+ // w:bookmarkEnd / w:moveFromRangeStart/End / w:moveToRangeStart/End /
173
+ // w:permStart / w:permEnd are paragraph-level markers
174
+ // (siblings of <w:r>, not children). They are
175
+ // tracked in PARAGRAPH_LEVEL_TAGS below and atomized via a separate branch in
176
+ // atomizeTreeInternal so the reconstructor can emit them outside synthetic
177
+ // <w:r> wrappers.
170
178
  'w:separator', // Separator
171
179
  'w:continuationSeparator', // Continuation separator
172
180
  'w:pgNum', // Page number
@@ -175,6 +183,37 @@ const LEAF_NODE_TAGS = new Set([
175
183
  'w:object', // Embedded object
176
184
  'mc:AlternateContent', // Alternate content
177
185
  ]);
186
+ /**
187
+ * Tag names that are paragraph-level OOXML markers.
188
+ *
189
+ * These elements are valid as direct children of <w:p> (and revision wrappers
190
+ * like <w:ins>/<w:del>/<w:moveFrom>/<w:moveTo>) but never inside <w:r>. The
191
+ * rebuild reconstructor emits them as siblings of <w:r>, not leaves wrapped in
192
+ * a synthetic run.
193
+ *
194
+ * Scope: commentRange, bookmark, moveFromRange / moveToRange, and
195
+ * range-permission (permStart / permEnd) markers. Explicit move-range markers
196
+ * coexist with the synthetic emission in wrapWithMoveFrom and wrapWithMoveTo:
197
+ * the reconstructor suppresses synthesis for paragraphs whose atom stream
198
+ * already carries explicit markers of the same kind, so the two paths never
199
+ * double-emit.
200
+ *
201
+ * @conformance ECMA-376 edition 5, Part 1 § 17.13.5
202
+ * @see https://github.com/UseJunior/safe-docx/issues/110
203
+ * @see https://github.com/UseJunior/safe-docx/issues/111
204
+ */
205
+ export const PARAGRAPH_LEVEL_TAGS = new Set([
206
+ 'w:commentRangeStart',
207
+ 'w:commentRangeEnd',
208
+ 'w:bookmarkStart',
209
+ 'w:bookmarkEnd',
210
+ 'w:moveFromRangeStart',
211
+ 'w:moveFromRangeEnd',
212
+ 'w:moveToRangeStart',
213
+ 'w:moveToRangeEnd',
214
+ 'w:permStart',
215
+ 'w:permEnd',
216
+ ]);
178
217
  /**
179
218
  * Special tag name for empty paragraph boundary atoms.
180
219
  * These atoms are created for paragraphs that have no content (only w:pPr).
@@ -191,6 +230,18 @@ export const EMPTY_PARAGRAPH_TAG = '__emptyParagraph__';
191
230
  export function isLeafNode(element) {
192
231
  return LEAF_NODE_TAGS.has(element.tagName);
193
232
  }
233
+ /**
234
+ * Check if an element is a paragraph-level OOXML marker.
235
+ *
236
+ * Paragraph-level markers (PARAGRAPH_LEVEL_TAGS: commentRange*, bookmark*,
237
+ * moveFromRange*, moveToRange*, perm*) are
238
+ * atomized only when they sit inside a <w:p> ancestor — body/table-sibling
239
+ * placements stay out of the atom stream and are handled by the scaffold-strip
240
+ * block in the reconstructor.
241
+ */
242
+ export function isParagraphLevelLeaf(element) {
243
+ return PARAGRAPH_LEVEL_TAGS.has(element.tagName);
244
+ }
194
245
  /**
195
246
  * Create a ComparisonUnitAtom from a leaf element.
196
247
  *
@@ -233,19 +284,25 @@ export function createComparisonUnitAtom(options) {
233
284
  // Tree Atomization
234
285
  // =============================================================================
235
286
  /**
236
- * Check if a paragraph element is empty (has no content, only properties).
287
+ * Check if a paragraph element is empty (has no content-bearing children).
288
+ *
289
+ * Empty paragraphs have only paragraph properties, or proofing-error anchors.
290
+ * `w:proofErr` marks spelling/grammar proofing state and carries no document
291
+ * content, so a paragraph containing only those anchors is empty for
292
+ * comparison.
237
293
  *
238
- * Empty paragraphs have only w:pPr children, no w:r (run) elements.
294
+ * @conformance ECMA-376 edition 5, Part 1 § 17.13.8.1
295
+ * @see https://github.com/UseJunior/safe-docx/issues/456
239
296
  */
297
+ const EMPTY_PARAGRAPH_TRANSPARENT_TAGS = new Set(['w:pPr', 'w:proofErr']);
240
298
  function isEmptyParagraph(node) {
241
299
  if (node.tagName !== 'w:p')
242
300
  return false;
243
301
  const kids = childElements(node);
244
302
  if (kids.length === 0)
245
303
  return true;
246
- // Check if all children are w:pPr (no runs)
247
304
  for (const child of kids) {
248
- if (child.tagName !== 'w:pPr') {
305
+ if (!EMPTY_PARAGRAPH_TRANSPARENT_TAGS.has(child.tagName)) {
249
306
  return false;
250
307
  }
251
308
  }
@@ -257,8 +314,9 @@ function isEmptyParagraph(node) {
257
314
  * These atoms represent empty paragraphs that have no text content,
258
315
  * ensuring they are preserved during document reconstruction.
259
316
  *
260
- * The hash includes the previous content hash to ensure empty paragraphs
261
- * only match if they're at the same logical position in the document.
317
+ * The hash includes a paragraph-level content signature for the previous
318
+ * content-bearing paragraph and a consecutive-empty index. Text fragment
319
+ * boundaries are ignored, while non-text leaves contribute stable tokens.
262
320
  *
263
321
  * @param paragraphElement - The w:p element
264
322
  * @param ancestors - Ancestor elements from root to parent
@@ -272,15 +330,10 @@ function createEmptyParagraphAtomWithContext(paragraphElement, ancestors, part,
272
330
  const revTrackElement = findRevisionTrackingElement(ancestors);
273
331
  // Determine initial correlation status
274
332
  const correlationStatus = getStatusFromRevisionTracking(revTrackElement);
275
- // Create a hash that uniquely identifies this empty paragraph
276
- // Include:
277
- // 1. pPr content for paragraph properties
278
- // 2. lastContentHash for context (what content precedes this empty paragraph)
279
- // 3. emptyParagraphCount for consecutive empty paragraphs with same context
280
333
  const pPr = findChildByTagName(paragraphElement, 'w:pPr');
281
334
  const pPrHash = pPr ? hashElement(pPr) : 'no-pPr';
282
335
  const contextHash = state.lastContentHash || 'document-start';
283
- const hashContent = `empty-paragraph:${contextHash}:${state.emptyParagraphCount}:${pPrHash}`;
336
+ const hashContent = `empty-paragraph:${contextHash}:${state.consecutiveEmptyIndex}:${pPrHash}`;
284
337
  return {
285
338
  contentElement: virtualElement,
286
339
  ancestorElements: [...ancestors, paragraphElement],
@@ -293,6 +346,25 @@ function createEmptyParagraphAtomWithContext(paragraphElement, ancestors, part,
293
346
  rPr: null, // Empty paragraphs have no run formatting
294
347
  };
295
348
  }
349
+ function updateParagraphContentContext(node, atoms, state) {
350
+ if (node.tagName !== 'w:p') {
351
+ return;
352
+ }
353
+ const contentAtoms = atoms.filter((atom) => !PARAGRAPH_LEVEL_TAGS.has(atom.contentElement.tagName));
354
+ if (contentAtoms.length === 0) {
355
+ return;
356
+ }
357
+ const signature = contentAtoms
358
+ .map((atom) => {
359
+ if (atom.contentElement.tagName === 'w:t') {
360
+ return getLeafText(atom.contentElement) ?? '';
361
+ }
362
+ return `\u0000${atom.contentElement.tagName}:${atom.sha1Hash}\u0000`;
363
+ })
364
+ .join('');
365
+ state.lastContentHash = sha1(`para-content:${signature}`);
366
+ state.consecutiveEmptyIndex = 0;
367
+ }
296
368
  /**
297
369
  * Internal recursive atomization function with state tracking.
298
370
  */
@@ -305,18 +377,35 @@ function atomizeTreeInternal(node, ancestors, part, state, options) {
305
377
  part,
306
378
  });
307
379
  atoms.push(atom);
308
- // Update last content hash for context-aware empty paragraph matching
309
- state.lastContentHash = atom.sha1Hash;
380
+ }
381
+ else if (options.atomizeParagraphLevelMarkers &&
382
+ isParagraphLevelLeaf(node) &&
383
+ ancestors.some((a) => a.tagName === 'w:p')) {
384
+ // Paragraph-level markers (commentRange*, bookmark*, perm*) inside a <w:p>
385
+ // become atoms so the rebuild reconstructor can re-emit them as siblings
386
+ // of <w:r>.
387
+ // Body/table-sibling placements are intentionally skipped — they are
388
+ // already handled by the scaffold-strip block in the reconstructor and
389
+ // would otherwise misattach to the previous paragraph in
390
+ // assignParagraphIndices().
391
+ const atom = createComparisonUnitAtom({
392
+ contentElement: options.cloneLeafNodes ? node.cloneNode(true) : node,
393
+ ancestors,
394
+ part,
395
+ });
396
+ atoms.push(atom);
310
397
  }
311
398
  else if (isEmptyParagraph(node)) {
312
399
  // Create empty paragraph atom with context-aware hash
313
400
  atoms.push(createEmptyParagraphAtomWithContext(node, ancestors, part, state));
314
401
  state.emptyParagraphCount++;
402
+ state.consecutiveEmptyIndex++;
315
403
  }
316
404
  else {
317
405
  for (const child of childElements(node)) {
318
406
  atoms.push(...atomizeTreeInternal(child, [...ancestors, node], part, state, options));
319
407
  }
408
+ updateParagraphContentContext(node, atoms, state);
320
409
  }
321
410
  return atoms;
322
411
  }
@@ -337,9 +426,11 @@ export function atomizeTree(node, ancestors, part, options = {}) {
337
426
  mergeAcrossRuns: options.mergeAcrossRuns ?? true,
338
427
  mergePunctuationAcrossRuns: options.mergePunctuationAcrossRuns ?? true,
339
428
  splitTextIntoWords: options.splitTextIntoWords ?? true,
429
+ atomizeParagraphLevelMarkers: options.atomizeParagraphLevelMarkers ?? false,
340
430
  };
341
431
  const state = {
342
432
  emptyParagraphCount: 0,
433
+ consecutiveEmptyIndex: 0,
343
434
  lastContentHash: '',
344
435
  };
345
436
  const rawAtoms = atomizeTreeInternal(node, ancestors, part, state, normalizedOptions);
@@ -703,6 +794,29 @@ function runPropertiesEqual(a, b) {
703
794
  // Compare by deep hashing (includes children for w:rPr properties)
704
795
  return hashElementDeep(a) === hashElementDeep(b);
705
796
  }
797
+ /**
798
+ * Find the nearest `w:hyperlink` ancestor of an atom, or null.
799
+ *
800
+ * Boundary normalization must never merge text atoms across a hyperlink
801
+ * boundary: the surviving atom keeps a single ancestor chain, so a
802
+ * cross-boundary merge either absorbs adjacent plain text into the link
803
+ * (formatting bleed) or detaches link text from its wrapper.
804
+ *
805
+ * @conformance ECMA-376 edition 5, Part 1 § 17.16.22
806
+ * @see https://github.com/UseJunior/safe-docx/issues/368
807
+ */
808
+ export function nearestHyperlinkAncestor(atom) {
809
+ for (let i = atom.ancestorElements.length - 1; i >= 0; i--) {
810
+ const ancestor = atom.ancestorElements[i];
811
+ if (ancestor.tagName === 'w:hyperlink')
812
+ return ancestor;
813
+ // w:hyperlink always sits between the run and its paragraph; once the
814
+ // walk reaches w:p there is no hyperlink wrapper.
815
+ if (ancestor.tagName === 'w:p')
816
+ break;
817
+ }
818
+ return null;
819
+ }
706
820
  /**
707
821
  * Check if two atoms can be merged into one.
708
822
  *
@@ -710,6 +824,7 @@ function runPropertiesEqual(a, b) {
710
824
  * - Are both w:t (text) elements
711
825
  * - Neither is a collapsed field (fields should stay as separate atoms for finer diff)
712
826
  * - Are in the same paragraph
827
+ * - Are inside the same w:hyperlink wrapper (or both outside one)
713
828
  * - Have the same run formatting (w:rPr) OR are in the same run
714
829
  * - Have the same revision tracking status
715
830
  *
@@ -745,6 +860,11 @@ function canMergeAtoms(a, b, options) {
745
860
  // (In inplace mode we disable this so each atom stays anchored to a real run.)
746
861
  if (!options.mergeAcrossRuns)
747
862
  return false;
863
+ // Never merge across a w:hyperlink boundary — the merged atom keeps only
864
+ // one side's ancestry, so link text would detach from (or plain text be
865
+ // absorbed into) the hyperlink wrapper.
866
+ if (nearestHyperlinkAncestor(a) !== nearestHyperlinkAncestor(b))
867
+ return false;
748
868
  // Different runs - check if they have equivalent formatting
749
869
  const aRPr = getRunProperties(a);
750
870
  const bRPr = getRunProperties(b);
@@ -809,6 +929,11 @@ function canMergePunctuation(a, b, options) {
809
929
  const aText = getLeafText(a.contentElement) ?? '';
810
930
  if (!/\w$/.test(aText))
811
931
  return false;
932
+ // Never merge across a w:hyperlink boundary: punctuation that follows a
933
+ // link must not inherit the link run's ancestry/formatting (e.g. the
934
+ // sentence period after a URL turning underlined).
935
+ if (nearestHyperlinkAncestor(a) !== nearestHyperlinkAncestor(b))
936
+ return false;
812
937
  // If cross-run punctuation merge is disabled, require same run.
813
938
  if (!options.mergePunctuationAcrossRuns) {
814
939
  const aRun = a.ancestorElements.find((e) => e.tagName === 'w:r');
@@ -1 +1 @@
1
- {"version":3,"file":"atomizer.js","sourceRoot":"","sources":["../src/atomizer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atomizer.js","sourceRoot":"","sources":["../src/atomizer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,99 @@
1
+ /**
2
+ * Auxiliary Part ID Collision Resolution
3
+ *
4
+ * Auxiliary part IDs (`w:id` on comments, footnotes, endnotes — OOXML
5
+ * ST_DecimalNumber) are document-local: independently authored documents
6
+ * routinely both start at `w:id="1"`. When the original and revised inputs
7
+ * define *different* content under the same ID, the post-reconstruction
8
+ * definition merge used to silently skip the source-side definition ("ID
9
+ * already present"), leaving anchors from one side bound to the other side's
10
+ * content.
11
+ *
12
+ * Strategy decision (issue #107 offered renumber vs. detect-and-flag): we
13
+ * renumber, because detect-and-flag would fail comparisons between any two
14
+ * independently authored commented documents — a core use case — and there is
15
+ * no collision-free fallback mode to flag into. Renumbering happens *before*
16
+ * comparison, on the revised archive, rather than inside the merge step:
17
+ * after reconstruction the merged document.xml no longer records which anchor
18
+ * came from which side, but at load time the revised archive can be rewritten
19
+ * consistently (part definition + every ID-bearing anchor in document.xml,
20
+ * header/footer parts, and the note stories — comments may be anchored on
21
+ * footnote/endnote text). Downstream, colliding anchors then differ by ID, so
22
+ * the LCS emits them as delete/insert pairs and the existing definition merge
23
+ * imports the renumbered definition — each anchor resolves to the content it
24
+ * was authored against, in both reconstruction modes.
25
+ *
26
+ * IDs whose definitions are content-identical on both sides are left alone so
27
+ * their anchors still match as unchanged content (no duplicate definitions),
28
+ * which keeps the common derived-document case byte-stable.
29
+ *
30
+ * Comment ancillary parts have a second collision axis: commentsExtended.xml
31
+ * and commentsIds.xml are keyed by the w14:paraId on comment-content
32
+ * paragraphs, not by w:id. We restamp colliding revised-side comment paraIds
33
+ * before comparison for the same reason: merged ancillary rows must never bind
34
+ * to the other document's comment paragraph.
35
+ *
36
+ * @see https://github.com/UseJunior/safe-docx/issues/107
37
+ * @see https://github.com/UseJunior/safe-docx/issues/448
38
+ */
39
+ import type { DocxArchive } from '../../shared/docx/DocxArchive.js';
40
+ export interface AuxiliaryPartDescriptor {
41
+ label: string;
42
+ partPath: string;
43
+ referenceTag: string;
44
+ entryTag: string;
45
+ rootTag: string;
46
+ contentType: string;
47
+ relationshipType: string;
48
+ /**
49
+ * Every document.xml / header / footer tag that carries this part's `w:id`.
50
+ * Superset of `referenceTag`: comments also anchor via range markers.
51
+ */
52
+ idBearingTags: string[];
53
+ }
54
+ export declare const AUXILIARY_PARTS: AuxiliaryPartDescriptor[];
55
+ /**
56
+ * Parse an auxiliary part and extract entry elements by ID.
57
+ */
58
+ export declare function parseEntries(xml: string, entryTag: string): {
59
+ doc: Document;
60
+ entries: Map<string, Element>;
61
+ };
62
+ export interface RenumberedAuxiliaryId {
63
+ label: string;
64
+ fromId: string;
65
+ toId: string;
66
+ }
67
+ /**
68
+ * Detect auxiliary `w:id` values defined with different content on both
69
+ * sides and renumber the revised side's definitions and anchors into a fresh
70
+ * ID space, so the comparison never binds an anchor to the other document's
71
+ * content. Mutates `revisedArchive` in place; the originals' IDs are kept so
72
+ * the comparison base (rebuild mode clones the original archive) stays
73
+ * untouched.
74
+ *
75
+ * Anchors are rewritten in every revised-side story that can carry them:
76
+ * document.xml, header/footer parts, and the auxiliary parts themselves —
77
+ * Word allows comments anchored on footnote/endnote text, so a renumbered
78
+ * comment's anchor may live inside footnotes.xml/endnotes.xml.
79
+ *
80
+ * Returns the applied renumberings (empty on the no-collision fast path).
81
+ */
82
+ export declare function renumberCollidingAuxiliaryIds(originalArchive: DocxArchive, revisedArchive: DocxArchive): Promise<RenumberedAuxiliaryId[]>;
83
+ export interface RestampedCommentParaId {
84
+ fromParaId: string;
85
+ toParaId: string;
86
+ }
87
+ /**
88
+ * Restamp revised-side comment paragraph paraIds when they collide with
89
+ * original-side comment paraIds that belong to different comment content.
90
+ *
91
+ * This pass intentionally matches literal Word prefixes (`w14`, `w15`, and
92
+ * `w16cid`) for both DOM lookup and raw allocation scans, consistent with the
93
+ * rest of this module's prefix-literal auxiliary part handling. Mutates
94
+ * `revisedArchive` in place and returns the applied restamps.
95
+ *
96
+ * @see https://github.com/UseJunior/safe-docx/issues/448
97
+ */
98
+ export declare function restampCollidingCommentParaIds(originalArchive: DocxArchive, revisedArchive: DocxArchive): Promise<RestampedCommentParaId[]>;
99
+ //# sourceMappingURL=auxiliaryIdCollision.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auxiliaryIdCollision.d.ts","sourceRoot":"","sources":["../../../src/baselines/atomizer/auxiliaryIdCollision.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAIpE,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,eAAO,MAAM,eAAe,EAAE,uBAAuB,EA+BpD,CAAC;AAEF;;GAEG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,MAAM,GACf;IAAE,GAAG,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAUlD;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAuED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,6BAA6B,CACjD,eAAe,EAAE,WAAW,EAC5B,cAAc,EAAE,WAAW,GAC1B,OAAO,CAAC,qBAAqB,EAAE,CAAC,CA+FlC;AAED,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAuDD;;;;;;;;;;GAUG;AACH,wBAAsB,8BAA8B,CAClD,eAAe,EAAE,WAAW,EAC5B,cAAc,EAAE,WAAW,GAC1B,OAAO,CAAC,sBAAsB,EAAE,CAAC,CA8GnC"}