ooxml-core 1.20.0 → 1.22.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 (422) hide show
  1. package/README.md +35 -0
  2. package/dist/{PptxHandler-TEKISCJO.cjs → PptxHandler-DNSXWTQV.cjs} +3 -3
  3. package/dist/{PptxHandler-FYD7IYXT.mjs → PptxHandler-FSKKPZZC.mjs} +3 -3
  4. package/dist/PptxHandler-H7MEWJJJ.mjs +4 -0
  5. package/dist/{PresentationBuilder-IMB4DVRN.mjs → PresentationBuilder-7TSENZTX.mjs} +2 -2
  6. package/dist/{PresentationBuilder-NCKASKXU.cjs → PresentationBuilder-A5NI35VN.cjs} +5 -5
  7. package/dist/{PresentationBuilder-EYI6Z2JP.mjs → PresentationBuilder-RIJWQSEU.mjs} +3 -3
  8. package/dist/automation/docx-forms.d.ts +26 -0
  9. package/dist/automation/docx-forms.d.ts.map +1 -0
  10. package/dist/automation/index.cjs +39159 -14352
  11. package/dist/automation/index.d.ts +5 -0
  12. package/dist/automation/index.d.ts.map +1 -1
  13. package/dist/automation/index.mjs +39145 -14353
  14. package/dist/automation/node.cjs +37 -0
  15. package/dist/automation/node.d.ts +32 -1
  16. package/dist/automation/node.d.ts.map +1 -1
  17. package/dist/automation/node.mjs +36 -1
  18. package/dist/automation/proposal.d.ts +25 -0
  19. package/dist/automation/proposal.d.ts.map +1 -0
  20. package/dist/automation/tools/define.d.ts +27 -0
  21. package/dist/automation/tools/define.d.ts.map +1 -0
  22. package/dist/automation/tools/docx-tools.d.ts +4 -0
  23. package/dist/automation/tools/docx-tools.d.ts.map +1 -0
  24. package/dist/automation/tools/index.d.ts +16 -0
  25. package/dist/automation/tools/index.d.ts.map +1 -0
  26. package/dist/automation/tools/types.d.ts +52 -0
  27. package/dist/automation/tools/types.d.ts.map +1 -0
  28. package/dist/automation/tools/visio-tools.d.ts +4 -0
  29. package/dist/automation/tools/visio-tools.d.ts.map +1 -0
  30. package/dist/automation/tools/xlsx-tools.d.ts +8 -0
  31. package/dist/automation/tools/xlsx-tools.d.ts.map +1 -0
  32. package/dist/automation/xlsx-edits.d.ts +88 -0
  33. package/dist/automation/xlsx-edits.d.ts.map +1 -0
  34. package/dist/automation/xlsx-proposal.d.ts +34 -0
  35. package/dist/automation/xlsx-proposal.d.ts.map +1 -0
  36. package/dist/automation/xlsx.d.ts +10 -5
  37. package/dist/automation/xlsx.d.ts.map +1 -1
  38. package/dist/chart/axis-range.d.ts.map +1 -1
  39. package/dist/chart/bubble-radius.d.ts +0 -5
  40. package/dist/chart/bubble-radius.d.ts.map +1 -1
  41. package/dist/chart/extent.d.ts +9 -0
  42. package/dist/chart/extent.d.ts.map +1 -0
  43. package/dist/chart/histogram-binning.d.ts.map +1 -1
  44. package/dist/chart/index.cjs +56 -18
  45. package/dist/chart/index.mjs +56 -18
  46. package/dist/chart/render/chart-svg-cartesian.d.ts.map +1 -1
  47. package/dist/chart/render/chart-svg-legend.d.ts.map +1 -1
  48. package/dist/chart/render/chart-view-ex.d.ts.map +1 -1
  49. package/dist/chart/render/chart-view.d.ts.map +1 -1
  50. package/dist/chart/trendline-fit.d.ts.map +1 -1
  51. package/dist/{chunk-3IENHIFD.cjs → chunk-4LZIUJI3.cjs} +52 -12
  52. package/dist/{chunk-LEV2SVMK.mjs → chunk-4QPOJCJG.mjs} +45 -8
  53. package/dist/{chunk-CC5UNZOO.mjs → chunk-6IIMI5RS.mjs} +52 -12
  54. package/dist/{chunk-MN27HKHM.mjs → chunk-BA7Z6ATM.mjs} +5 -5
  55. package/dist/{chunk-LVM3IZJ2.mjs → chunk-DLFMCZZT.mjs} +1 -1
  56. package/dist/{chunk-M4XLF4R7.mjs → chunk-GBKBR4CX.mjs} +20 -8
  57. package/dist/{chunk-NXKATFM5.cjs → chunk-HL3FBJ6X.cjs} +1065 -1016
  58. package/dist/{chunk-WXY5EDGT.mjs → chunk-LF5E5ZOH.mjs} +51 -2
  59. package/dist/chunk-MHNETXQB.mjs +1 -0
  60. package/dist/{chunk-MNXKRXFB.mjs → chunk-Q5PKBQXH.mjs} +52 -3
  61. package/dist/{chunk-GQYQQ3GA.mjs → chunk-VQF6HQEE.mjs} +1 -1
  62. package/dist/collab/embedding.d.ts +108 -0
  63. package/dist/collab/embedding.d.ts.map +1 -0
  64. package/dist/collab/index.cjs +423 -293
  65. package/dist/collab/index.d.ts +2 -0
  66. package/dist/collab/index.d.ts.map +1 -1
  67. package/dist/collab/index.mjs +415 -294
  68. package/dist/collab/webrtc-provider.d.ts +21 -0
  69. package/dist/collab/webrtc-provider.d.ts.map +1 -0
  70. package/dist/color/theme-palette.d.ts +5 -1
  71. package/dist/color/theme-palette.d.ts.map +1 -1
  72. package/dist/crypto/index.cjs +27 -2
  73. package/dist/crypto/index.mjs +27 -2
  74. package/dist/diagram/index.cjs +31 -3
  75. package/dist/diagram/index.mjs +31 -3
  76. package/dist/docx/block-parser.d.ts.map +1 -1
  77. package/dist/docx/cell-blocks.d.ts +7 -1
  78. package/dist/docx/cell-blocks.d.ts.map +1 -1
  79. package/dist/docx/content-control-edit.d.ts +14 -0
  80. package/dist/docx/content-control-edit.d.ts.map +1 -1
  81. package/dist/docx/content-control-model.d.ts +8 -0
  82. package/dist/docx/content-control-model.d.ts.map +1 -1
  83. package/dist/docx/content-control-values.d.ts +20 -0
  84. package/dist/docx/content-control-values.d.ts.map +1 -0
  85. package/dist/docx/content-control.d.ts +7 -1
  86. package/dist/docx/content-control.d.ts.map +1 -1
  87. package/dist/docx/element-order.d.ts +10 -5
  88. package/dist/docx/element-order.d.ts.map +1 -1
  89. package/dist/docx/embedded.cjs +3861 -1379
  90. package/dist/docx/embedded.mjs +3861 -1379
  91. package/dist/docx/field-instruction.d.ts +22 -0
  92. package/dist/docx/field-instruction.d.ts.map +1 -0
  93. package/dist/docx/form-field-model.d.ts +48 -0
  94. package/dist/docx/form-field-model.d.ts.map +1 -0
  95. package/dist/docx/form-fields.d.ts +31 -0
  96. package/dist/docx/form-fields.d.ts.map +1 -0
  97. package/dist/docx/form-fill-fields.d.ts +61 -0
  98. package/dist/docx/form-fill-fields.d.ts.map +1 -0
  99. package/dist/docx/form-fill-labels.d.ts +8 -0
  100. package/dist/docx/form-fill-labels.d.ts.map +1 -0
  101. package/dist/docx/form-fill-sites.d.ts +59 -0
  102. package/dist/docx/form-fill-sites.d.ts.map +1 -0
  103. package/dist/docx/form-fill-values.d.ts +28 -0
  104. package/dist/docx/form-fill-values.d.ts.map +1 -0
  105. package/dist/docx/form-fill-write.d.ts +26 -0
  106. package/dist/docx/form-fill-write.d.ts.map +1 -0
  107. package/dist/docx/glossary.d.ts +15 -0
  108. package/dist/docx/glossary.d.ts.map +1 -0
  109. package/dist/docx/index.cjs +5929 -3153
  110. package/dist/docx/index.d.ts +7 -0
  111. package/dist/docx/index.d.ts.map +1 -1
  112. package/dist/docx/index.mjs +5913 -3154
  113. package/dist/docx/inline-annotations.d.ts +21 -0
  114. package/dist/docx/inline-annotations.d.ts.map +1 -0
  115. package/dist/docx/inline-container-markers.d.ts +14 -0
  116. package/dist/docx/inline-container-markers.d.ts.map +1 -0
  117. package/dist/docx/inline-containers.d.ts +54 -0
  118. package/dist/docx/inline-containers.d.ts.map +1 -0
  119. package/dist/docx/inline-form-field-bookmarks.d.ts +15 -0
  120. package/dist/docx/inline-form-field-bookmarks.d.ts.map +1 -0
  121. package/dist/docx/inline-marker-positions.d.ts +15 -0
  122. package/dist/docx/inline-marker-positions.d.ts.map +1 -0
  123. package/dist/docx/inline-markers.d.ts +63 -0
  124. package/dist/docx/inline-markers.d.ts.map +1 -0
  125. package/dist/docx/inline-slots.d.ts +24 -0
  126. package/dist/docx/inline-slots.d.ts.map +1 -0
  127. package/dist/docx/layout/adapter.d.ts.map +1 -1
  128. package/dist/docx/layout/index.cjs +1176 -563
  129. package/dist/docx/layout/index.d.ts +2 -1
  130. package/dist/docx/layout/index.d.ts.map +1 -1
  131. package/dist/docx/layout/index.mjs +1175 -564
  132. package/dist/docx/layout/input.d.ts +5 -1
  133. package/dist/docx/layout/input.d.ts.map +1 -1
  134. package/dist/docx/layout/page-style-refs.d.ts +21 -0
  135. package/dist/docx/layout/page-style-refs.d.ts.map +1 -0
  136. package/dist/docx/layout/paragraph-fragments.d.ts.map +1 -1
  137. package/dist/docx/layout/result.d.ts +1 -0
  138. package/dist/docx/layout/result.d.ts.map +1 -1
  139. package/dist/docx/layout/tab-stops.d.ts +8 -1
  140. package/dist/docx/layout/tab-stops.d.ts.map +1 -1
  141. package/dist/docx/load/index.cjs +3969 -1487
  142. package/dist/docx/load/index.mjs +3969 -1487
  143. package/dist/docx/model-run.d.ts +24 -2
  144. package/dist/docx/model-run.d.ts.map +1 -1
  145. package/dist/docx/model.d.ts +5 -0
  146. package/dist/docx/model.d.ts.map +1 -1
  147. package/dist/docx/numbering-format.d.ts.map +1 -1
  148. package/dist/docx/parse-warnings.d.ts.map +1 -1
  149. package/dist/docx/parse.d.ts.map +1 -1
  150. package/dist/docx/run-segmentation.d.ts +11 -0
  151. package/dist/docx/run-segmentation.d.ts.map +1 -0
  152. package/dist/docx/save.d.ts.map +1 -1
  153. package/dist/docx/section-model.d.ts +5 -0
  154. package/dist/docx/section-model.d.ts.map +1 -1
  155. package/dist/docx/sections.d.ts +4 -2
  156. package/dist/docx/sections.d.ts.map +1 -1
  157. package/dist/docx/settings.d.ts +9 -0
  158. package/dist/docx/settings.d.ts.map +1 -1
  159. package/dist/docx/special-characters.d.ts +34 -0
  160. package/dist/docx/special-characters.d.ts.map +1 -0
  161. package/dist/docx/style-ref-fields.d.ts +40 -0
  162. package/dist/docx/style-ref-fields.d.ts.map +1 -0
  163. package/dist/docx/style-ref.d.ts +85 -0
  164. package/dist/docx/style-ref.d.ts.map +1 -0
  165. package/dist/docx/table-model.d.ts +2 -2
  166. package/dist/docx/table-model.d.ts.map +1 -1
  167. package/dist/docx/ui/break-note-schema.d.ts.map +1 -1
  168. package/dist/docx/ui/content-control-commands.d.ts +20 -8
  169. package/dist/docx/ui/content-control-commands.d.ts.map +1 -1
  170. package/dist/docx/ui/content-control-guard.d.ts +4 -1
  171. package/dist/docx/ui/content-control-guard.d.ts.map +1 -1
  172. package/dist/docx/ui/content-control-paste.d.ts +23 -0
  173. package/dist/docx/ui/content-control-paste.d.ts.map +1 -0
  174. package/dist/docx/ui/content-control-rows.d.ts +15 -0
  175. package/dist/docx/ui/content-control-rows.d.ts.map +1 -0
  176. package/dist/docx/ui/content-control-sources.d.ts +12 -0
  177. package/dist/docx/ui/content-control-sources.d.ts.map +1 -0
  178. package/dist/docx/ui/content-control-spans.d.ts +29 -6
  179. package/dist/docx/ui/content-control-spans.d.ts.map +1 -1
  180. package/dist/docx/ui/content-control-temporary.d.ts +10 -0
  181. package/dist/docx/ui/content-control-temporary.d.ts.map +1 -0
  182. package/dist/docx/ui/form-field-commands.d.ts +41 -0
  183. package/dist/docx/ui/form-field-commands.d.ts.map +1 -0
  184. package/dist/docx/ui/form-field-guard.d.ts +24 -0
  185. package/dist/docx/ui/form-field-guard.d.ts.map +1 -0
  186. package/dist/docx/ui/form-text-blank.d.ts +18 -0
  187. package/dist/docx/ui/form-text-blank.d.ts.map +1 -0
  188. package/dist/docx/ui/index.cjs +9276 -7132
  189. package/dist/docx/ui/index.d.ts +5 -0
  190. package/dist/docx/ui/index.d.ts.map +1 -1
  191. package/dist/docx/ui/index.mjs +9259 -7137
  192. package/dist/docx/ui/positional-tab-input.d.ts +7 -0
  193. package/dist/docx/ui/positional-tab-input.d.ts.map +1 -0
  194. package/dist/docx/ui/run-compare.d.ts.map +1 -1
  195. package/dist/docx/ui/run-extra-mark.d.ts +1 -1
  196. package/dist/docx/ui/run-extra-mark.d.ts.map +1 -1
  197. package/dist/docx/ui/schema-marks.d.ts +1 -1
  198. package/dist/docx/ui/schema-marks.d.ts.map +1 -1
  199. package/dist/docx/ui/symbol-font.d.ts +4 -0
  200. package/dist/docx/ui/symbol-font.d.ts.map +1 -0
  201. package/dist/docx/ui/yjs-collaboration.d.ts +12 -1
  202. package/dist/docx/ui/yjs-collaboration.d.ts.map +1 -1
  203. package/dist/docx/write-block-placement.d.ts +7 -0
  204. package/dist/docx/write-block-placement.d.ts.map +1 -1
  205. package/dist/docx/write-content-control.d.ts +6 -0
  206. package/dist/docx/write-content-control.d.ts.map +1 -1
  207. package/dist/docx/write-header-footer.d.ts +6 -2
  208. package/dist/docx/write-header-footer.d.ts.map +1 -1
  209. package/dist/docx/write-inline.d.ts +12 -16
  210. package/dist/docx/write-inline.d.ts.map +1 -1
  211. package/dist/docx/write-paragraph.d.ts.map +1 -1
  212. package/dist/docx/write-revisions.d.ts.map +1 -1
  213. package/dist/docx/write-run.d.ts.map +1 -1
  214. package/dist/docx/write-section-properties.d.ts +5 -0
  215. package/dist/docx/write-section-properties.d.ts.map +1 -0
  216. package/dist/docx/write-sections.d.ts.map +1 -1
  217. package/dist/docx/write-table-controls.d.ts +15 -0
  218. package/dist/docx/write-table-controls.d.ts.map +1 -0
  219. package/dist/docx/write-table-properties.d.ts.map +1 -1
  220. package/dist/docx/write-table.d.ts.map +1 -1
  221. package/dist/docx/write.d.ts.map +1 -1
  222. package/dist/docx/xml.d.ts +6 -0
  223. package/dist/docx/xml.d.ts.map +1 -1
  224. package/dist/drawingml/index.cjs +31 -3
  225. package/dist/drawingml/index.mjs +31 -3
  226. package/dist/index.cjs +77 -26
  227. package/dist/index.mjs +77 -26
  228. package/dist/math/index.cjs +27 -2
  229. package/dist/math/index.mjs +27 -2
  230. package/dist/opc/index.cjs +51 -11
  231. package/dist/opc/index.mjs +51 -11
  232. package/dist/opc/zip-folders.d.ts +11 -0
  233. package/dist/opc/zip-folders.d.ts.map +1 -0
  234. package/dist/opc/zip-limits.d.ts +9 -0
  235. package/dist/opc/zip-limits.d.ts.map +1 -1
  236. package/dist/pptx/automation/index.cjs +28818 -7388
  237. package/dist/pptx/automation/index.d.ts +93 -3
  238. package/dist/pptx/automation/index.d.ts.map +1 -1
  239. package/dist/pptx/automation/index.mjs +740 -63
  240. package/dist/pptx/automation/schemas/chart-formatting-schemas.d.ts +1 -1
  241. package/dist/pptx/automation/schemas/chart-schemas.d.ts +1 -1
  242. package/dist/pptx/automation/schemas/chart-user-shape-schemas.d.ts +1 -1
  243. package/dist/pptx/automation/schemas/element-schemas.d.ts +1 -1
  244. package/dist/pptx/automation/schemas/export-schemas.d.ts +1 -1
  245. package/dist/pptx/automation/schemas/geometry-schemas.d.ts +1 -1
  246. package/dist/pptx/automation/schemas/hyperlink-schemas.d.ts +1 -1
  247. package/dist/pptx/automation/schemas/index.mjs +1 -0
  248. package/dist/pptx/automation/schemas/json-schemas.d.ts +1 -1
  249. package/dist/pptx/automation/schemas/layout-schemas.d.ts +1 -1
  250. package/dist/pptx/automation/schemas/lock-schemas.d.ts +1 -1
  251. package/dist/pptx/automation/schemas/metadata-schemas.d.ts +1 -1
  252. package/dist/pptx/automation/schemas/ole-schemas.d.ts +1 -1
  253. package/dist/pptx/automation/schemas/presentation-schemas.d.ts +1 -1
  254. package/dist/pptx/automation/schemas/section-schemas.d.ts +1 -1
  255. package/dist/pptx/automation/schemas/slide-schemas.d.ts +1 -1
  256. package/dist/pptx/automation/schemas/smartart-schemas.d.ts +1 -1
  257. package/dist/pptx/automation/schemas/table-style-schemas.d.ts +1 -1
  258. package/dist/pptx/automation/schemas/template-schemas.d.ts +1 -1
  259. package/dist/pptx/automation/schemas/theme-schemas.d.ts +1 -1
  260. package/dist/pptx/automation/schemas/validation-schemas.d.ts +1 -1
  261. package/dist/pptx/chunks/{index-CgFX0T7b.d.ts → index-CPhsd7Df.d.ts} +9 -1
  262. package/dist/pptx/chunks/{index-CgFX0T7b.d.ts.map → index-CPhsd7Df.d.ts.map} +1 -1
  263. package/dist/pptx/chunks/{index-qwVYoFn6.d.ts → index-Q5mM8kIR.d.ts} +2 -2
  264. package/dist/pptx/chunks/{index-qwVYoFn6.d.ts.map → index-Q5mM8kIR.d.ts.map} +1 -1
  265. package/dist/pptx/chunks/{schemas-CWr181Wx.d.ts → schemas-fuDGetRe.d.ts} +2 -2
  266. package/dist/pptx/chunks/{schemas-CWr181Wx.d.ts.map → schemas-fuDGetRe.d.ts.map} +1 -1
  267. package/dist/pptx/cli/index.cjs +116 -17
  268. package/dist/pptx/cli/index.mjs +5 -5
  269. package/dist/pptx/converter/index.cjs +12 -3
  270. package/dist/pptx/converter/index.d.ts +1 -1
  271. package/dist/pptx/converter/index.mjs +3 -3
  272. package/dist/pptx/editor/render/find-replace.cjs +14 -14
  273. package/dist/pptx/editor/render/find-replace.d.ts +1 -1
  274. package/dist/pptx/editor/render/find-replace.mjs +1 -1
  275. package/dist/pptx/editor/render/slide-operations.cjs +8 -8
  276. package/dist/pptx/editor/render/slide-operations.mjs +2 -2
  277. package/dist/pptx/index.cjs +116 -17
  278. package/dist/pptx/index.d.ts +2 -2
  279. package/dist/pptx/index.mjs +6 -6
  280. package/dist/pptx/signature-node/index.cjs +20 -8
  281. package/dist/pptx/signature-node/index.mjs +2 -2
  282. package/dist/teams/index.cjs +105 -70
  283. package/dist/teams/index.mjs +105 -70
  284. package/dist/text/text-diff.d.ts +15 -0
  285. package/dist/text/text-diff.d.ts.map +1 -0
  286. package/dist/visio/collab/bind.d.ts +44 -0
  287. package/dist/visio/collab/bind.d.ts.map +1 -0
  288. package/dist/visio/collab/compose.d.ts +15 -0
  289. package/dist/visio/collab/compose.d.ts.map +1 -0
  290. package/dist/visio/collab/index.cjs +1194 -0
  291. package/dist/visio/collab/index.d.ts +8 -0
  292. package/dist/visio/collab/index.d.ts.map +1 -0
  293. package/dist/visio/collab/index.mjs +1152 -0
  294. package/dist/visio/collab/keys.d.ts +22 -0
  295. package/dist/visio/collab/keys.d.ts.map +1 -0
  296. package/dist/visio/collab/order.d.ts +11 -0
  297. package/dist/visio/collab/order.d.ts.map +1 -0
  298. package/dist/visio/collab/package.d.ts +37 -0
  299. package/dist/visio/collab/package.d.ts.map +1 -0
  300. package/dist/visio/collab/read.d.ts +41 -0
  301. package/dist/visio/collab/read.d.ts.map +1 -0
  302. package/dist/visio/collab/scan.d.ts +28 -0
  303. package/dist/visio/collab/scan.d.ts.map +1 -0
  304. package/dist/visio/collab/schema.d.ts +70 -0
  305. package/dist/visio/collab/schema.d.ts.map +1 -0
  306. package/dist/visio/collab/snapshot.d.ts +61 -0
  307. package/dist/visio/collab/snapshot.d.ts.map +1 -0
  308. package/dist/visio/collab/write.d.ts +20 -0
  309. package/dist/visio/collab/write.d.ts.map +1 -0
  310. package/dist/visio/index.cjs +159 -39
  311. package/dist/visio/index.mjs +159 -39
  312. package/dist/visio/ui/collab-options.d.ts +24 -0
  313. package/dist/visio/ui/collab-options.d.ts.map +1 -0
  314. package/dist/visio/ui/collab-presence.d.ts +31 -0
  315. package/dist/visio/ui/collab-presence.d.ts.map +1 -0
  316. package/dist/visio/ui/contract.d.ts +9 -3
  317. package/dist/visio/ui/contract.d.ts.map +1 -1
  318. package/dist/visio/ui/document-history.d.ts +3 -1
  319. package/dist/visio/ui/document-history.d.ts.map +1 -1
  320. package/dist/visio/ui/index.cjs +284 -95
  321. package/dist/visio/ui/index.d.ts +2 -0
  322. package/dist/visio/ui/index.d.ts.map +1 -1
  323. package/dist/visio/ui/index.mjs +278 -95
  324. package/dist/xlsx/collab/index.cjs +8 -3
  325. package/dist/xlsx/collab/index.mjs +8 -3
  326. package/dist/xlsx/compare/cells.d.ts +22 -0
  327. package/dist/xlsx/compare/cells.d.ts.map +1 -0
  328. package/dist/xlsx/compare/compare.d.ts +12 -0
  329. package/dist/xlsx/compare/compare.d.ts.map +1 -0
  330. package/dist/xlsx/compare/conditional.d.ts +7 -0
  331. package/dist/xlsx/compare/conditional.d.ts.map +1 -0
  332. package/dist/xlsx/compare/format-key.d.ts +34 -0
  333. package/dist/xlsx/compare/format-key.d.ts.map +1 -0
  334. package/dist/xlsx/compare/group.d.ts +8 -0
  335. package/dist/xlsx/compare/group.d.ts.map +1 -0
  336. package/dist/xlsx/compare/index.d.ts +5 -0
  337. package/dist/xlsx/compare/index.d.ts.map +1 -0
  338. package/dist/xlsx/compare/rich-text.d.ts +7 -0
  339. package/dist/xlsx/compare/rich-text.d.ts.map +1 -0
  340. package/dist/xlsx/compare/sheets.d.ts +22 -0
  341. package/dist/xlsx/compare/sheets.d.ts.map +1 -0
  342. package/dist/xlsx/compare/structure.d.ts +11 -0
  343. package/dist/xlsx/compare/structure.d.ts.map +1 -0
  344. package/dist/xlsx/compare/text.d.ts +8 -0
  345. package/dist/xlsx/compare/text.d.ts.map +1 -0
  346. package/dist/xlsx/compare/types.d.ts +173 -0
  347. package/dist/xlsx/compare/types.d.ts.map +1 -0
  348. package/dist/xlsx/edit/cell-values.d.ts.map +1 -1
  349. package/dist/xlsx/edit/clipboard-html.d.ts.map +1 -1
  350. package/dist/xlsx/edit/clipboard-text.d.ts.map +1 -1
  351. package/dist/xlsx/edit/clipboard.d.ts.map +1 -1
  352. package/dist/xlsx/edit/clone-cell.d.ts +9 -0
  353. package/dist/xlsx/edit/clone-cell.d.ts.map +1 -0
  354. package/dist/xlsx/edit/history.d.ts +8 -3
  355. package/dist/xlsx/edit/history.d.ts.map +1 -1
  356. package/dist/xlsx/edit/timelines.d.ts.map +1 -1
  357. package/dist/xlsx/formula/change-areas.d.ts +9 -0
  358. package/dist/xlsx/formula/change-areas.d.ts.map +1 -0
  359. package/dist/xlsx/formula/engine-prepare.d.ts +8 -0
  360. package/dist/xlsx/formula/engine-prepare.d.ts.map +1 -1
  361. package/dist/xlsx/formula/engine.d.ts.map +1 -1
  362. package/dist/xlsx/formula/spill.d.ts +5 -1
  363. package/dist/xlsx/formula/spill.d.ts.map +1 -1
  364. package/dist/xlsx/index.cjs +2461 -1192
  365. package/dist/xlsx/index.d.ts +1 -0
  366. package/dist/xlsx/index.d.ts.map +1 -1
  367. package/dist/xlsx/index.mjs +2454 -1193
  368. package/dist/xlsx/layout/cell-view.d.ts.map +1 -1
  369. package/dist/xlsx/layout/navigate.d.ts.map +1 -1
  370. package/dist/xlsx/layout/style-view.d.ts +5 -0
  371. package/dist/xlsx/layout/style-view.d.ts.map +1 -1
  372. package/dist/xlsx/load/csv-dates.d.ts +22 -0
  373. package/dist/xlsx/load/csv-dates.d.ts.map +1 -0
  374. package/dist/xlsx/load/csv-import.d.ts +64 -0
  375. package/dist/xlsx/load/csv-import.d.ts.map +1 -0
  376. package/dist/xlsx/load/csv-separators.d.ts +13 -0
  377. package/dist/xlsx/load/csv-separators.d.ts.map +1 -0
  378. package/dist/xlsx/load/csv-traits.d.ts +20 -0
  379. package/dist/xlsx/load/csv-traits.d.ts.map +1 -0
  380. package/dist/xlsx/load/csv.d.ts +8 -4
  381. package/dist/xlsx/load/csv.d.ts.map +1 -1
  382. package/dist/xlsx/load/detect.d.ts +13 -0
  383. package/dist/xlsx/load/detect.d.ts.map +1 -1
  384. package/dist/xlsx/load/errors.d.ts +1 -0
  385. package/dist/xlsx/load/errors.d.ts.map +1 -1
  386. package/dist/xlsx/load/index.cjs +537 -91
  387. package/dist/xlsx/load/index.d.ts +3 -1
  388. package/dist/xlsx/load/index.d.ts.map +1 -1
  389. package/dist/xlsx/load/index.mjs +536 -92
  390. package/dist/xlsx/numfmt/input-date.d.ts +2 -0
  391. package/dist/xlsx/numfmt/input-date.d.ts.map +1 -1
  392. package/dist/xlsx/pivot/cache-xml.d.ts.map +1 -1
  393. package/dist/xlsx/pivot/groups.d.ts.map +1 -1
  394. package/dist/xlsx/read/index.d.ts +2 -1
  395. package/dist/xlsx/read/index.d.ts.map +1 -1
  396. package/dist/xlsx/read/limits.d.ts +50 -0
  397. package/dist/xlsx/read/limits.d.ts.map +1 -0
  398. package/dist/xlsx/read/load.d.ts +11 -1
  399. package/dist/xlsx/read/load.d.ts.map +1 -1
  400. package/dist/xlsx/read/package.d.ts +5 -23
  401. package/dist/xlsx/read/package.d.ts.map +1 -1
  402. package/dist/xlsx/read/shared-strings.d.ts +2 -2
  403. package/dist/xlsx/read/shared-strings.d.ts.map +1 -1
  404. package/dist/xlsx/read/worksheet.d.ts +2 -0
  405. package/dist/xlsx/read/worksheet.d.ts.map +1 -1
  406. package/dist/xlsx/stable-key.d.ts +3 -0
  407. package/dist/xlsx/stable-key.d.ts.map +1 -0
  408. package/dist/xlsx/styles.d.ts.map +1 -1
  409. package/dist/xlsx/ui/index.cjs +662 -372
  410. package/dist/xlsx/ui/index.mjs +662 -372
  411. package/dist/xlsx/ui/locales/de/shell.d.ts.map +1 -1
  412. package/dist/xlsx/ui/locales/en/shell.d.ts.map +1 -1
  413. package/dist/xlsx/ui/locales/es/shell.d.ts.map +1 -1
  414. package/dist/xlsx/ui/locales/fr/shell.d.ts.map +1 -1
  415. package/dist/xlsx/ui/locales/zh-CN/shell.d.ts.map +1 -1
  416. package/dist/xlsx/write/sheet-props.d.ts.map +1 -1
  417. package/dist/xml/index.cjs +32 -3
  418. package/dist/xml/index.mjs +32 -4
  419. package/dist/xml/xml.d.ts +11 -1
  420. package/dist/xml/xml.d.ts.map +1 -1
  421. package/package.json +6 -1
  422. package/dist/PptxHandler-SITN3K3F.mjs +0 -4
@@ -653,9 +653,9 @@ function reorder(current) {
653
653
  return out;
654
654
  }
655
655
 
656
- // xlsx/styles.ts
657
- function styleKey(style) {
658
- return JSON.stringify(sortKeys(style));
656
+ // xlsx/stable-key.ts
657
+ function stableKey(value) {
658
+ return JSON.stringify(sortKeys(value));
659
659
  }
660
660
  function sortKeys(value) {
661
661
  if (Array.isArray(value)) return value.map(sortKeys);
@@ -669,6 +669,11 @@ function sortKeys(value) {
669
669
  }
670
670
  return value;
671
671
  }
672
+
673
+ // xlsx/styles.ts
674
+ function styleKey(style) {
675
+ return stableKey(style);
676
+ }
672
677
  function internStyle(workbook, style) {
673
678
  const key = styleKey(style);
674
679
  const cache = styleCache(workbook);
@@ -631,9 +631,9 @@ function reorder(current) {
631
631
  return out;
632
632
  }
633
633
 
634
- // xlsx/styles.ts
635
- function styleKey(style) {
636
- return JSON.stringify(sortKeys(style));
634
+ // xlsx/stable-key.ts
635
+ function stableKey(value) {
636
+ return JSON.stringify(sortKeys(value));
637
637
  }
638
638
  function sortKeys(value) {
639
639
  if (Array.isArray(value)) return value.map(sortKeys);
@@ -647,6 +647,11 @@ function sortKeys(value) {
647
647
  }
648
648
  return value;
649
649
  }
650
+
651
+ // xlsx/styles.ts
652
+ function styleKey(style) {
653
+ return stableKey(style);
654
+ }
650
655
  function internStyle(workbook, style) {
651
656
  const key = styleKey(style);
652
657
  const cache = styleCache(workbook);
@@ -0,0 +1,22 @@
1
+ import { type Workbook, type Worksheet } from '../model.js';
2
+ import { FormatIndex } from './format-key.js';
3
+ import type { CellDifference, CompareCategory } from './types.js';
4
+ /** Counts reported differences against `maxDifferences`. */
5
+ export declare class Budget {
6
+ private readonly max;
7
+ count: number;
8
+ truncated: boolean;
9
+ constructor(max: number);
10
+ /** Takes room for one difference; false (and `truncated`) once the cap is reached. */
11
+ take(): boolean;
12
+ /** The leading items that fit. */
13
+ admit<T>(items: T[]): T[];
14
+ }
15
+ export interface CellCompareContext {
16
+ categories: ReadonlySet<CompareCategory>;
17
+ formats: FormatIndex;
18
+ budget: Budget;
19
+ }
20
+ /** Differences between two sheets matched by address. */
21
+ export declare function compareSheetCells(ctx: CellCompareContext, beforeBook: Workbook, beforeSheet: Worksheet, afterBook: Workbook, afterSheet: Worksheet): CellDifference[];
22
+ //# sourceMappingURL=cells.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cells.d.ts","sourceRoot":"","sources":["../../../xlsx/compare/cells.ts"],"names":[],"mappings":"AASA,OAAO,EAA0C,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,MAAM,UAAU,CAAC;AACjG,OAAO,EAAE,WAAW,EAAgB,MAAM,cAAc,CAAC;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAY,eAAe,EAAmB,MAAM,SAAS,CAAC;AAE1F,4DAA4D;AAC5D,qBAAa,MAAM;IAGN,OAAO,CAAC,QAAQ,CAAC,GAAG;IAFhC,KAAK,SAAK;IACV,SAAS,UAAS;IAClB,YAA6B,GAAG,EAAE,MAAM,EAAI;IAE5C,sFAAsF;IACtF,IAAI,IAAI,OAAO,CAOd;IAED,kCAAkC;IAClC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CASxB;CACD;AAED,MAAM,WAAW,kBAAkB;IAClC,UAAU,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;IACzC,OAAO,EAAE,WAAW,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CACf;AAgGD,yDAAyD;AACzD,wBAAgB,iBAAiB,CAChC,GAAG,EAAE,kBAAkB,EACvB,UAAU,EAAE,QAAQ,EACpB,WAAW,EAAE,SAAS,EACtB,SAAS,EAAE,QAAQ,EACnB,UAAU,EAAE,SAAS,GACnB,cAAc,EAAE,CAsElB"}
@@ -0,0 +1,12 @@
1
+ import type { Workbook } from '../model.js';
2
+ import { type CompareOptions, type WorkbookComparison } from './types.js';
3
+ /**
4
+ * What changed from `before` to `after`: sheets, defined names, the structure of each sheet pair
5
+ * and its cells in Spreadsheet Compare's categories (entered values, formulas, calculated values
6
+ * and effective formats). Cells are matched by address, so an inserted row reports every cell
7
+ * below it. Neither workbook is modified. Each stored cell of the two workbooks is visited once
8
+ * (row and column numbers are sorted per sheet and row; no dense grid is built); the result lists
9
+ * `notCompared` parts so a report can say what it did not check.
10
+ */
11
+ export declare function compareWorkbooks(before: Workbook, after: Workbook, options?: CompareOptions): WorkbookComparison;
12
+ //# sourceMappingURL=compare.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compare.d.ts","sourceRoot":"","sources":["../../../xlsx/compare/compare.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAMzC,OAAO,EAGN,KAAK,cAAc,EAEnB,KAAK,kBAAkB,EACvB,MAAM,SAAS,CAAC;AAEjB;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC/B,MAAM,EAAE,QAAQ,EAChB,KAAK,EAAE,QAAQ,EACf,OAAO,GAAE,cAAmB,GAC1B,kBAAkB,CAsCpB"}
@@ -0,0 +1,7 @@
1
+ import type { ConditionalFormat } from '../model.js';
2
+ import type { SheetDifference } from './types.js';
3
+ /** Rule settings that are off unless a file turns them on. */
4
+ export declare const OFF_BY_DEFAULT: string[];
5
+ /** Conditional format rules removed, added and reordered between two sheets. */
6
+ export declare function conditionalFormatDifferences(before: readonly ConditionalFormat[], after: readonly ConditionalFormat[]): SheetDifference[];
7
+ //# sourceMappingURL=conditional.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"conditional.d.ts","sourceRoot":"","sources":["../../../xlsx/compare/conditional.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAiB,iBAAiB,EAAmB,MAAM,UAAU,CAAC;AAIlF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAS/C,8DAA8D;AAC9D,eAAO,MAAM,cAAc,UAO1B,CAAC;AA6GF,gFAAgF;AAChF,wBAAgB,4BAA4B,CAC3C,MAAM,EAAE,SAAS,iBAAiB,EAAE,EACpC,KAAK,EAAE,SAAS,iBAAiB,EAAE,GACjC,eAAe,EAAE,CAWnB"}
@@ -0,0 +1,34 @@
1
+ import type { CellStyle, Font, Workbook } from '../model.js';
2
+ import type { FormatAttribute } from './types.js';
3
+ /** A font without its defaults; `family` is round-trip metadata and does not change the look. */
4
+ export declare function canonicalFont(value: Font | undefined): Font;
5
+ /** Canonical keys of a format's attributes, in {@link ATTRIBUTES} order. */
6
+ export declare function formatAttributeKeys(style: CellStyle): string[];
7
+ /**
8
+ * A copy of a plain value with every colour in it canonical (RGB with alpha, upper case, no zero
9
+ * tint) and nothing else changed: for differential formats, whose `false` flags switch a setting
10
+ * off and so are not defaults.
11
+ */
12
+ export declare function withCanonicalColors<T>(value: T): T;
13
+ /**
14
+ * The format at `styleId` with the font it paints with: a font without a name or size takes the
15
+ * default style's (`cellFont`, as the grid does), so changing style 0 shows in the cells using it.
16
+ */
17
+ export declare function paintedStyle(workbook: Workbook, styleId: number | undefined): CellStyle;
18
+ /** Interns the formats of the workbooks being compared into shared canonical ids. */
19
+ export declare class FormatIndex {
20
+ private readonly ids;
21
+ private readonly keys;
22
+ private readonly styleIds;
23
+ private readonly diffs;
24
+ /** The canonical id of the format at `styleId` of `workbook`. */
25
+ idOf(workbook: Workbook, styleId: number | undefined): number;
26
+ /** The canonical id of a format with these attribute keys, added when it is new. */
27
+ private intern;
28
+ /**
29
+ * The attributes that differ between two canonical formats (empty when they are equal). A new
30
+ * array each time, since results hand it out.
31
+ */
32
+ attributesBetween(a: number, b: number): FormatAttribute[];
33
+ }
34
+ //# sourceMappingURL=format-key.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format-key.d.ts","sourceRoot":"","sources":["../../../xlsx/compare/format-key.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAIX,SAAS,EAGT,IAAI,EAEJ,QAAQ,EACR,MAAM,UAAU,CAAC;AAIlB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AA0B/C,iGAAiG;AACjG,wBAAgB,aAAa,CAAC,KAAK,EAAE,IAAI,GAAG,SAAS,GAAG,IAAI,CAc3D;AA4DD,4EAA4E;AAC5E,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,CAS9D;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAWlD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAGvF;AAED,qFAAqF;AACrF,qBAAa,WAAW;IACvB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA6B;IACjD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAkB;IACvC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiC;IAC1D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAwC;IAE9D,iEAAiE;IACjE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAQ5D;IAED,oFAAoF;IACpF,OAAO,CAAC,MAAM;IAWd;;;OAGG;IACH,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,eAAe,EAAE,CAWzD;CACD"}
@@ -0,0 +1,8 @@
1
+ import type { CellDifference, CellDifferenceRange } from './types.js';
2
+ /**
3
+ * Groups row-major cell differences into rectangles of neighbouring cells with the same kind (and,
4
+ * for formats, the same changed attributes): runs along each row, then runs with the same columns
5
+ * on consecutive rows. Linear in the number of differences, apart from sorting the result.
6
+ */
7
+ export declare function groupCellDifferences(cells: readonly CellDifference[]): CellDifferenceRange[];
8
+ //# sourceMappingURL=group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../../xlsx/compare/group.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAgBnE;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,SAAS,cAAc,EAAE,GAAG,mBAAmB,EAAE,CAsD5F"}
@@ -0,0 +1,5 @@
1
+ export { compareWorkbooks } from './compare.js';
2
+ export { groupCellDifferences } from './group.js';
3
+ export * from './types.js';
4
+ export { comparisonText, type ComparisonTextOptions } from './text.js';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../xlsx/compare/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAC/C,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,KAAK,qBAAqB,EAAE,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { Cell, Font } from '../model.js';
2
+ /**
3
+ * The runs of a cell's string are formatted differently: on some stretch of the same text, or in
4
+ * the sequence of run looks when the text was edited too. Fonts are the two cells' own.
5
+ */
6
+ export declare function richTextChanged(b: Cell | undefined, a: Cell | undefined, bFont: Font, aFont: Font): boolean;
7
+ //# sourceMappingURL=rich-text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rich-text.d.ts","sourceRoot":"","sources":["../../../xlsx/compare/rich-text.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAe,MAAM,UAAU,CAAC;AA+ExD;;;GAGG;AACH,wBAAgB,eAAe,CAC9B,CAAC,EAAE,IAAI,GAAG,SAAS,EACnB,CAAC,EAAE,IAAI,GAAG,SAAS,EACnB,KAAK,EAAE,IAAI,EACX,KAAK,EAAE,IAAI,GACT,OAAO,CAeT"}
@@ -0,0 +1,22 @@
1
+ import type { Workbook } from '../model.js';
2
+ import type { SheetMatch, WorkbookDifference } from './types.js';
3
+ /** Two sheets taken to be the same sheet, by their zero-based positions. */
4
+ export interface SheetPair {
5
+ before: number;
6
+ after: number;
7
+ matchedBy: 'name' | 'sheetId';
8
+ }
9
+ /**
10
+ * Pairs the sheets of two workbooks: by name (case-insensitive, as Excel compares sheet names),
11
+ * then by `sheetId` among the sheets left over, which finds renamed sheets. Pairs are in the
12
+ * after workbook's order.
13
+ */
14
+ export declare function matchSheets(before: Workbook, after: Workbook, mode: SheetMatch): SheetPair[];
15
+ /**
16
+ * Positions (into `values`) of one longest strictly increasing subsequence: the items (sheets,
17
+ * conditional format rules) that kept their relative order. Every other item moved.
18
+ */
19
+ export declare function longestIncreasing(values: readonly number[]): Set<number>;
20
+ /** Sheets removed, added, renamed, moved and shown or hidden. */
21
+ export declare function sheetDifferences(before: Workbook, after: Workbook, pairs: readonly SheetPair[]): WorkbookDifference[];
22
+ //# sourceMappingURL=sheets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sheets.d.ts","sourceRoot":"","sources":["../../../xlsx/compare/sheets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAa,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAE9D,4EAA4E;AAC5E,MAAM,WAAW,SAAS;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;CAC9B;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,GAAG,SAAS,EAAE,CAsB5F;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAiBxE;AAED,iEAAiE;AACjE,wBAAgB,gBAAgB,CAC/B,MAAM,EAAE,QAAQ,EAChB,KAAK,EAAE,QAAQ,EACf,KAAK,EAAE,SAAS,SAAS,EAAE,GACzB,kBAAkB,EAAE,CAuBtB"}
@@ -0,0 +1,11 @@
1
+ import type { Workbook, Worksheet } from '../model.js';
2
+ import type { SheetPair } from './sheets.js';
3
+ import type { CompareCategory, SheetDifference, WorkbookDifference } from './types.js';
4
+ /**
5
+ * Defined names added, removed or changed, sorted by name. A sheet-scoped name is matched through
6
+ * the sheet pairing, so moving its sheet does not change it.
7
+ */
8
+ export declare function nameDifferences(before: Workbook, after: Workbook, pairs: readonly SheetPair[]): WorkbookDifference[];
9
+ /** Merges, tables, data validation and conditional formats of a sheet pair. */
10
+ export declare function sheetStructure(before: Worksheet, after: Worksheet, categories: ReadonlySet<CompareCategory>): SheetDifference[];
11
+ //# sourceMappingURL=structure.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structure.d.ts","sourceRoot":"","sources":["../../../xlsx/compare/structure.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAsC,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGxF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAiEpF;;;GAGG;AACH,wBAAgB,eAAe,CAC9B,MAAM,EAAE,QAAQ,EAChB,KAAK,EAAE,QAAQ,EACf,KAAK,EAAE,SAAS,SAAS,EAAE,GACzB,kBAAkB,EAAE,CActB;AAmDD,+EAA+E;AAC/E,wBAAgB,cAAc,CAC7B,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,WAAW,CAAC,eAAe,CAAC,GACtC,eAAe,EAAE,CAgDnB"}
@@ -0,0 +1,8 @@
1
+ import type { WorkbookComparison } from './types.js';
2
+ export interface ComparisonTextOptions {
3
+ /** One line per cell instead of one per range of neighbouring cells; default false. */
4
+ cells?: boolean;
5
+ }
6
+ /** The comparison as text: workbook changes, then each sheet with differences, then the limits. */
7
+ export declare function comparisonText(result: WorkbookComparison, options?: ComparisonTextOptions): string;
8
+ //# sourceMappingURL=text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../xlsx/compare/text.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAMX,kBAAkB,EAElB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,qBAAqB;IACrC,uFAAuF;IACvF,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB;AA6LD,mGAAmG;AACnG,wBAAgB,cAAc,CAC7B,MAAM,EAAE,kBAAkB,EAC1B,OAAO,GAAE,qBAA0B,GACjC,MAAM,CA0BR"}
@@ -0,0 +1,173 @@
1
+ import type { CellAddress, CellRange } from '../address.js';
2
+ import type { CellStyle, CellValue, ConditionalFormat, DataValidation, DefinedName, SheetState, Table } from '../model.js';
3
+ /** What a comparison can look at. Cell categories follow Excel's Spreadsheet Compare. */
4
+ export type CompareCategory =
5
+ /** A constant typed into a cell (not a formula, not a spilled or array result). */
6
+ 'enteredValue'
7
+ /** A formula added, removed or edited (data table results show their `TABLE()` formula). */
8
+ | 'formula'
9
+ /** The cached result of an unchanged formula, a spilled value or an array formula result. */
10
+ | 'calculatedValue'
11
+ /** The effective format: number format, font, fill, border, alignment, protection. */
12
+ | 'format'
13
+ /** Sheets added, removed, renamed, moved, shown or hidden. */
14
+ | 'sheet'
15
+ /** Defined names added, removed or changed. */
16
+ | 'name' | 'merge' | 'table' | 'dataValidation' | 'conditionalFormat';
17
+ export declare const COMPARE_CATEGORIES: readonly CompareCategory[];
18
+ /** Parts of a workbook no comparison looks at; listed in every result so a report stays honest. */
19
+ export declare const NOT_COMPARED: readonly ['rowAndColumnLayout', 'rowAndColumnFormats', 'comments', 'hyperlinks', 'drawings', 'pivotTables', 'conditionalFormatExtensions', 'sparklines', 'slicers', 'autoFilter', 'sheetViews', 'pageSetup', 'sheetProtection', 'documentProperties', 'theme', 'workbookSettings', 'macrosAndUnmodelledParts'];
20
+ export type UncomparedFeature = (typeof NOT_COMPARED)[number];
21
+ /**
22
+ * How sheets were paired. `auto` (the default) pairs sheets with the same name first, then
23
+ * sheets with the same `sheetId` (a rename), so a file whose producer renumbered the ids still
24
+ * pairs by name. `name` and `sheetId` use one rule only.
25
+ */
26
+ export type SheetMatch = 'auto' | 'name' | 'sheetId';
27
+ export interface CompareOptions {
28
+ /** Categories to compare; default all of {@link COMPARE_CATEGORIES}. */
29
+ categories?: readonly CompareCategory[];
30
+ /** Stop after this many differences and set `truncated`; default unlimited. */
31
+ maxDifferences?: number;
32
+ sheetMatch?: SheetMatch;
33
+ }
34
+ /** The parts of a format compared by {@link CompareCategory} `format`. */
35
+ export type FormatAttribute = 'numberFormat' | 'font' | 'fill' | 'border' | 'alignment' | 'protection'
36
+ /** The fonts of the runs of a rich-text string. */
37
+ | 'richText';
38
+ /** One side of a cell difference; an empty cell is `{ value: null }`. */
39
+ export interface CellSide {
40
+ value: CellValue;
41
+ /** Without the leading `=`. */
42
+ formula?: string;
43
+ arrayRange?: CellRange;
44
+ /** The formula is evaluated with implicit intersection (legacy semantics), where that matters. */
45
+ legacyFormula?: true;
46
+ /** The effective format, for `format` differences. */
47
+ style?: CellStyle;
48
+ }
49
+ export interface CellDifference {
50
+ kind: 'enteredValue' | 'formula' | 'calculatedValue' | 'format';
51
+ address: CellAddress;
52
+ before: CellSide;
53
+ after: CellSide;
54
+ /** What changed, for `format` differences. */
55
+ attributes?: FormatAttribute[];
56
+ }
57
+ /** A rectangle of neighbouring cells with the same kind of difference. */
58
+ export interface CellDifferenceRange {
59
+ kind: CellDifference['kind'];
60
+ range: CellRange;
61
+ /** Cells in the range (every cell of it differs). */
62
+ count: number;
63
+ /** The changed attributes shared by the range, for `format` ranges. */
64
+ attributes?: FormatAttribute[];
65
+ }
66
+ /** A difference in the structure of the workbook (sheets and defined names). */
67
+ export type WorkbookDifference = {
68
+ kind: 'sheetAdded';
69
+ sheet: string;
70
+ index: number;
71
+ } | {
72
+ kind: 'sheetRemoved';
73
+ sheet: string;
74
+ index: number;
75
+ } | {
76
+ kind: 'sheetRenamed';
77
+ from: string;
78
+ to: string;
79
+ } | {
80
+ kind: 'sheetMoved';
81
+ sheet: string;
82
+ from: number;
83
+ to: number;
84
+ } | {
85
+ kind: 'sheetState';
86
+ sheet: string;
87
+ from: SheetState;
88
+ to: SheetState;
89
+ } | {
90
+ kind: 'nameAdded';
91
+ name: string;
92
+ scope?: string;
93
+ after: DefinedName;
94
+ } | {
95
+ kind: 'nameRemoved';
96
+ name: string;
97
+ scope?: string;
98
+ before: DefinedName;
99
+ } | {
100
+ kind: 'nameChanged';
101
+ name: string;
102
+ scope?: string;
103
+ before: DefinedName;
104
+ after: DefinedName;
105
+ };
106
+ /** A difference in a sheet's merges, tables, data validation or conditional formats. */
107
+ export type SheetDifference = {
108
+ kind: 'mergeAdded' | 'mergeRemoved';
109
+ range: CellRange;
110
+ } | {
111
+ kind: 'tableAdded';
112
+ table: string;
113
+ after: Table;
114
+ } | {
115
+ kind: 'tableRemoved';
116
+ table: string;
117
+ before: Table;
118
+ } | {
119
+ kind: 'tableChanged';
120
+ table: string;
121
+ before: Table;
122
+ after: Table;
123
+ fields: ('range' | 'columns' | 'headerRow' | 'totalsRow' | 'style')[];
124
+ } | {
125
+ kind: 'dataValidationAdded';
126
+ after: DataValidation;
127
+ } | {
128
+ kind: 'dataValidationRemoved';
129
+ before: DataValidation;
130
+ }
131
+ /** Conditional format differences are per rule: each is a format with that one rule. */
132
+ | {
133
+ kind: 'conditionalFormatAdded';
134
+ after: ConditionalFormat;
135
+ } | {
136
+ kind: 'conditionalFormatRemoved';
137
+ before: ConditionalFormat;
138
+ }
139
+ /** The rule moved above or below other rules (priority order, not numbering). */
140
+ | {
141
+ kind: 'conditionalFormatReordered';
142
+ before: ConditionalFormat;
143
+ after: ConditionalFormat;
144
+ };
145
+ /** A pair of sheets present in both workbooks and what differs between them. */
146
+ export interface SheetComparison {
147
+ /** The name in the after workbook. */
148
+ name: string;
149
+ beforeName: string;
150
+ /** Zero-based positions in each workbook. */
151
+ beforeIndex: number;
152
+ afterIndex: number;
153
+ /** Which rule paired the two sheets. */
154
+ matchedBy: 'name' | 'sheetId';
155
+ structure: SheetDifference[];
156
+ /** Cell differences in row-major order; for one cell, `formula` and value kinds before `format`. */
157
+ cells: CellDifference[];
158
+ /** {@link cells} grouped into rectangles, in row-major order of their top-left cell. */
159
+ ranges: CellDifferenceRange[];
160
+ }
161
+ export interface WorkbookComparison {
162
+ workbook: WorkbookDifference[];
163
+ /** Every paired sheet, in the after workbook's order. Added and removed sheets are in `workbook`. */
164
+ sheets: SheetComparison[];
165
+ /** Differences reported, cells and structure together. */
166
+ count: number;
167
+ /** `maxDifferences` was reached: more differences may exist. */
168
+ truncated: boolean;
169
+ categories: CompareCategory[];
170
+ /** Categories left out by the options, then everything no comparison looks at. */
171
+ notCompared: (CompareCategory | UncomparedFeature)[];
172
+ }
173
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../xlsx/compare/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cell-values.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/cell-values.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,WAAW,EAChB,KAAK,SAAS,EAKd,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE3D,OAAO,EACN,KAAK,WAAW,EAMhB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAgBzC,gEAAgE;AAChE,wBAAgB,eAAe,CAC9B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,YAAY,CAAC,EAAE,SAAS,YAAY,EAAE,GACpC,IAAI,CA+BN;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAC1B,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,SAAS,EAChB,KAAK,GAAE,SAAS,EAAO,GACrB,SAAS,EAAE,CAeb;AAED,oFAAoF;AACpF,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS,CAIvF;AAED,gGAAgG;AAChG,wBAAgB,UAAU,CACzB,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GACV,IAAI,CAoBN;AAED,4EAA4E;AAC5E,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAU7F;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAS9C;AAED,wBAAgB,YAAY,CAC3B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GACV,IAAI,CAaN;AAED,wBAAgB,YAAY,CAC3B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,SAAS,GACd,IAAI,CAaN;AAED,wBAAgB,cAAc,CAC7B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,EAAE,EAAE,WAAW,EACf,MAAM,EAAE,SAAS,EAAE,EAAE,GACnB,IAAI,CAmBN;AAmBD,wBAAgB,UAAU,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAc/F;AAED,gEAAgE;AAChE,wBAAgB,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAoC/F"}
1
+ {"version":3,"file":"cell-values.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/cell-values.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,WAAW,EAChB,KAAK,SAAS,EAKd,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE3D,OAAO,EACN,KAAK,WAAW,EAMhB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAgBzC,gEAAgE;AAChE,wBAAgB,eAAe,CAC9B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,YAAY,CAAC,EAAE,SAAS,YAAY,EAAE,GACpC,IAAI,CA+BN;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAC1B,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,SAAS,EAChB,KAAK,GAAE,SAAS,EAAO,GACrB,SAAS,EAAE,CAeb;AAED,oFAAoF;AACpF,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS,CAIvF;AAED,gGAAgG;AAChG,wBAAgB,UAAU,CACzB,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GACV,IAAI,CAoBN;AAED,4EAA4E;AAC5E,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAU7F;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAS9C;AAED,wBAAgB,YAAY,CAC3B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GACV,IAAI,CAaN;AAED,wBAAgB,YAAY,CAC3B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,SAAS,GACd,IAAI,CAaN;AAED,wBAAgB,cAAc,CAC7B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,EAAE,EAAE,WAAW,EACf,MAAM,EAAE,SAAS,EAAE,EAAE,GACnB,IAAI,CAqBN;AAmBD,wBAAgB,UAAU,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAc/F;AAED,gEAAgE;AAChE,wBAAgB,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAoC/F"}
@@ -1 +1 @@
1
- {"version":3,"file":"clipboard-html.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/clipboard-html.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,KAAK,EAAa,YAAY,EAAE,MAAM,UAAU,CAAC;AAE1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,eAAO,MAAM,UAAU,SAAU,MAAM,KAAG,MACsD,CAAC;AAEjG,0FAA0F;AAC1F,wBAAgB,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,EAAE,KAAK,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CAQ1F;AA8BD,4FAA4F;AAC5F,wBAAgB,MAAM,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,GAAG,MAAM,CA0CzE"}
1
+ {"version":3,"file":"clipboard-html.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/clipboard-html.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,KAAK,EAAa,YAAY,EAAE,MAAM,UAAU,CAAC;AAE1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,eAAO,MAAM,UAAU,SAAU,MAAM,KAAG,MACsD,CAAC;AAEjG,0FAA0F;AAC1F,wBAAgB,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,EAAE,KAAK,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,CAQ1F;AA8BD,4FAA4F;AAC5F,wBAAgB,MAAM,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,GAAG,MAAM,CAqDzE"}
@@ -1 +1 @@
1
- {"version":3,"file":"clipboard-text.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/clipboard-text.ts"],"names":[],"mappings":"AAKA,2FAA2F;AAC3F,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,CAG9C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,CAyCjD"}
1
+ {"version":3,"file":"clipboard-text.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/clipboard-text.ts"],"names":[],"mappings":"AAKA,2FAA2F;AAC3F,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,CAG9C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,CA0CjD"}
@@ -1 +1 @@
1
- {"version":3,"file":"clipboard.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/clipboard.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,WAAW,EAChB,KAAK,SAAS,EAMd,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAKzC,OAAO,EAAE,KAAK,WAAW,EAAwB,MAAM,WAAW,CAAC;AAMnE,OAAO,KAAK,EAAiB,cAAc,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAc7F,kGAAkG;AAClG,wBAAgB,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,gBAAgB,CA0D3F;AAED,0FAA0F;AAC1F,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAiB9E;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CACtB,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,EAAE,EAAE,WAAW,EACf,OAAO,EAAE,gBAAgB,GAAG,MAAM,EAClC,OAAO,EAAE,YAAY,GACnB,SAAS,CAsJX"}
1
+ {"version":3,"file":"clipboard.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/clipboard.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,WAAW,EAChB,KAAK,SAAS,EAMd,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAa,QAAQ,EAAE,MAAM,UAAU,CAAC;AAKpD,OAAO,EAAE,KAAK,WAAW,EAAwB,MAAM,WAAW,CAAC;AAMnE,OAAO,KAAK,EAAiB,cAAc,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAc7F,kGAAkG;AAClG,wBAAgB,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,gBAAgB,CAmE3F;AAED,0FAA0F;AAC1F,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAiB9E;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CACtB,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,EAAE,EAAE,WAAW,EACf,OAAO,EAAE,gBAAgB,GAAG,MAAM,EAClC,OAAO,EAAE,YAAY,GACnB,SAAS,CAsJX"}
@@ -0,0 +1,9 @@
1
+ import type { Cell } from '../model.js';
2
+ /**
3
+ * A deep copy of a cell, equal to `structuredClone(cell)`. A cell's fields are plain data, mostly
4
+ * primitives, so they are copied directly and only nested values (rich text runs, an array
5
+ * range, an error value) go through `structuredClone`: copying the many cells of a bulk edit
6
+ * then costs a spread each instead of a structured clone each.
7
+ */
8
+ export declare function cloneCell(cell: Cell): Cell;
9
+ //# sourceMappingURL=clone-cell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clone-cell.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/clone-cell.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAErC;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAQ1C"}
@@ -114,12 +114,17 @@ export interface HistoryStep {
114
114
  export declare function captureScope(workbook: Workbook, scope: EditScope, before?: Snapshot): Snapshot;
115
115
  /** Puts a snapshot back. Sheets are restored in place so references held by views stay valid. */
116
116
  export declare function restoreSnapshot(workbook: Workbook, snapshot: Snapshot): void;
117
- /** The cells a step's snapshots cover, for incremental recalculation. */
118
- export declare function touchedCells(step: HistoryStep): {
117
+ type Position = {
119
118
  sheet: number;
120
119
  row: number;
121
120
  col: number;
122
- }[];
121
+ };
122
+ /**
123
+ * The cells a step's snapshots cover, for incremental recalculation: each once, in snapshot order.
124
+ * A bulk write is one range on one sheet, captured before and after in row-major order, so its two
125
+ * lists are merged in step without a set of every cell.
126
+ */
127
+ export declare function touchedCells(step: HistoryStep): Position[];
123
128
  /** Undo and redo stacks of snapshot steps. */
124
129
  export declare class History {
125
130
  private readonly limit;
@@ -1 +1 @@
1
- {"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/history.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/history.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAA2B,MAAM,YAAY,CAAC;AAErE,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACvE,OAAO,EACN,KAAK,QAAQ,EACb,KAAK,SAAS,EAMd,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,KAAK,cAAc,EAAkC,MAAM,gBAAgB,CAAC;AAErF,kFAAkF;AAClF,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,SAAS,EAAE,MAAM,CAAC,CAAC;AAEzD;;;;;;;;GAQG;AACH,MAAM,MAAM,SAAS,GAClB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,EAAE,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,EAAE,CAAA;CAAE,GACpD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GAC3D;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB,CAAC;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,CAAC,GAC/B;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC;AAExB,KAAK,QAAQ,GACV;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,EAAE,CAAC;IAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAA;CAAE,GACtF;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,EAAE,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;CAAE,GAC9E;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,cAAc,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GACrD;IACA,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC1B,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;IAChC,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;CACnB,GACD;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,WAAW,EAAE,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,YAAY,CAAA;CAAE,GAC3F;IACA,IAAI,EAAE,UAAU,CAAC;IACjB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,YAAY,CAAC;CACvB,CAAC;AAEL,2EAA2E;AAC3E,KAAK,YAAY,GAAG,IAAI,CACvB,QAAQ,EACN,iBAAiB,GACjB,sBAAsB,GACtB,oBAAoB,GACpB,UAAU,GACV,YAAY,GACZ,SAAS,CACX,CAAC;AA2BF,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,QAAQ,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,MAAM,QAAQ,GACjB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE;QAAE,IAAI,EAAE,KAAK,GAAG,KAAK,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAC3F;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhD,MAAM,WAAW,WAAW;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,CAAC;CAChB;AA+CD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,CA4C9F;AAeD,iGAAiG;AACjG,wBAAgB,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CA8C5E;AAED,KAAK,QAAQ,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAY5D;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,QAAQ,EAAE,CAyC1D;AAED,8CAA8C;AAC9C,qBAAa,OAAO;IAIP,OAAO,CAAC,QAAQ,CAAC,KAAK;IAHlC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAqB;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAE5C,YAA6B,KAAK,EAAE,MAAM,EAAI;IAE9C,IAAI,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,CAI5B;IAED,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW,GAAG,SAAS,CAShD;IAED,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW,GAAG,SAAS,CAMhD;IAED,OAAO,QAAO,OAAO,CAAyB;IAC9C,OAAO,QAAO,OAAO,CAA2B;IAChD,SAAS,QAAO,MAAM,GAAG,SAAS,CAA4B;IAC9D,SAAS,QAAO,MAAM,GAAG,SAAS,CAA8B;CAChE"}
@@ -1 +1 @@
1
- {"version":3,"file":"timelines.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/timelines.ts"],"names":[],"mappings":"AAMA,OAAO,EAAkC,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpG,OAAO,EAAE,KAAK,WAAW,EAAW,MAAM,WAAW,CAAC;AAWtD;;;GAGG;AACH,wBAAgB,oBAAoB,CACnC,GAAG,EAAE,WAAW,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,iBAAiB,GAAG,IAAI,GACjC,IAAI,CAiCN;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI,CAmCzF;AAED,wFAAwF;AACxF,wBAAgB,cAAc,CAC7B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,GAAG,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACnC,MAAM,CA4GR;AAED,2FAA2F;AAC3F,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAgBnE"}
1
+ {"version":3,"file":"timelines.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/timelines.ts"],"names":[],"mappings":"AAMA,OAAO,EAAkC,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAEpG,OAAO,EAAE,KAAK,WAAW,EAAW,MAAM,WAAW,CAAC;AAWtD;;;GAGG;AACH,wBAAgB,oBAAoB,CACnC,GAAG,EAAE,WAAW,EAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,iBAAiB,GAAG,IAAI,GACjC,IAAI,CAiCN;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI,CAmCzF;AAED,wFAAwF;AACxF,wBAAgB,cAAc,CAC7B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,GAAG,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACnC,MAAM,CAmHR;AAED,2FAA2F;AAC3F,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAgBnE"}
@@ -0,0 +1,9 @@
1
+ import type { CellPosition } from './engine-types.js';
2
+ import type { Area } from './values.js';
3
+ /**
4
+ * Changed cells as rectangles, for dependency queries that take a range: runs along a row, then
5
+ * runs over the same columns on consecutive rows. Cells in row-major order (as a bulk edit writes
6
+ * them) give a handful of areas; any order still gives areas whose union is exactly the cells.
7
+ */
8
+ export declare function changeAreas(changes: readonly CellPosition[]): Area[];
9
+ //# sourceMappingURL=change-areas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"change-areas.d.ts","sourceRoot":"","sources":["../../../xlsx/formula/change-areas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAErC;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,GAAG,IAAI,EAAE,CA6BpE"}
@@ -1,3 +1,4 @@
1
+ import { type CellRange } from '../address.js';
1
2
  import type { Cell, Workbook } from '../model.js';
2
3
  import type { FormulaNode } from './graph.js';
3
4
  import { ReverseIndex } from './graph-index.js';
@@ -14,6 +15,12 @@ export declare class GraphPreparation {
14
15
  private readonly create;
15
16
  readonly reverse: ReverseIndex;
16
17
  readonly formulas: PreparedFormulas;
18
+ /**
19
+ * The spills stored in the file, by sheet and anchor (`cellKey`): from the anchor to the last
20
+ * row and column of the cells marked as its results. Until the anchor is evaluated they are
21
+ * the only record of the cells it covers.
22
+ */
23
+ readonly spills: Map<number, Map<number, CellRange>>;
17
24
  private sheet;
18
25
  private rows;
19
26
  private row;
@@ -26,6 +33,7 @@ export declare class GraphPreparation {
26
33
  */
27
34
  run(timeRemaining?: () => number): boolean;
28
35
  private add;
36
+ private addSpilled;
29
37
  /** Moves to the next stored row (and sheet), or marks the walk finished. */
30
38
  private nextRow;
31
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"engine-prepare.d.ts","sourceRoot":"","sources":["../../../xlsx/formula/engine-prepare.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAK7C,kGAAkG;AAClG,MAAM,WAAW,gBAAgB;IAChC,+DAA+D;IAC/D,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,4EAA4E;IAC5E,QAAQ,EAAE,WAAW,EAAE,CAAC;CACxB;AAED,KAAK,UAAU,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,KAAK,WAAW,CAAC;AAEvF,qBAAa,gBAAgB;IAU3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAVxB,QAAQ,CAAC,OAAO,eAAsB;IACtC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAiC;IACpE,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,IAAI,CAAoD;IAChE,OAAO,CAAC,GAAG,CAAK;IAChB,OAAO,CAAC,KAAK,CAAuC;IACpD,OAAO,CAAC,QAAQ,CAAS;IAEzB,YACkB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,UAAU,EAChC;IAEJ;;;OAGG;IACH,GAAG,CAAC,aAAa,CAAC,EAAE,MAAM,MAAM,GAAG,OAAO,CAezC;IAED,OAAO,CAAC,GAAG;IAMX,4EAA4E;IAC5E,OAAO,CAAC,OAAO;CAkBf"}
1
+ {"version":3,"file":"engine-prepare.d.ts","sourceRoot":"","sources":["../../../xlsx/formula/engine-prepare.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,SAAS,EAAW,MAAM,YAAY,CAAC;AACrD,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAM7C,kGAAkG;AAClG,MAAM,WAAW,gBAAgB;IAChC,+DAA+D;IAC/D,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,4EAA4E;IAC5E,QAAQ,EAAE,WAAW,EAAE,CAAC;CACxB;AAED,KAAK,UAAU,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,KAAK,WAAW,CAAC;AAEvF,qBAAa,gBAAgB;IAgB3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IAhBxB,QAAQ,CAAC,OAAO,eAAsB;IACtC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAiC;IACpE;;;;OAIG;IACH,QAAQ,CAAC,MAAM,sCAA6C;IAC5D,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,IAAI,CAAoD;IAChE,OAAO,CAAC,GAAG,CAAK;IAChB,OAAO,CAAC,KAAK,CAAuC;IACpD,OAAO,CAAC,QAAQ,CAAS;IAEzB,YACkB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,UAAU,EAChC;IAEJ;;;OAGG;IACH,GAAG,CAAC,aAAa,CAAC,EAAE,MAAM,MAAM,GAAG,OAAO,CAgBzC;IAED,OAAO,CAAC,GAAG;IAMX,OAAO,CAAC,UAAU;IAclB,4EAA4E;IAC5E,OAAO,CAAC,OAAO;CAkBf"}
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../xlsx/formula/engine.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAmB,QAAQ,EAAE,MAAM,UAAU,CAAC;AAK1D,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAgB,MAAM,gBAAgB,CAAC;AAQlF,OAAO,EACN,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,0BAA0B,EAC1B,KAAK,YAAY,GACjB,MAAM,gBAAgB,CAAC;AA+NxB,wDAAwD;AACxD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,GAAE,iBAAsB,GAAG,UAAU,CAEhG"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../xlsx/formula/engine.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAmB,QAAQ,EAAE,MAAM,UAAU,CAAC;AAK1D,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAgB,MAAM,gBAAgB,CAAC;AAQlF,OAAO,EACN,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,0BAA0B,EAC1B,KAAK,YAAY,GACjB,MAAM,gBAAgB,CAAC;AAwQxB,wDAAwD;AACxD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,GAAE,iBAAsB,GAAG,UAAU,CAEhG"}
@@ -16,7 +16,11 @@ export declare const isSpilledCell: (cell: Cell | undefined) => cell is SpilledC
16
16
  export declare const spillAnchorOf: (cell: Cell | undefined) => CellAddress | undefined;
17
17
  /** Removes the spill marker and value from a cell (deleting it when nothing else remains). */
18
18
  export declare function releaseSpilledCell(sheet: Worksheet, row: number, col: number): void;
19
- /** Clears the cells of a spill footprint that still belong to the anchor at (row, col). */
19
+ /**
20
+ * Clears the cells of a spill footprint that still belong to the anchor at (row, col). Each axis
21
+ * visits the fewer of the footprint's lines and the stored ones, so a sparse footprint (a spill
22
+ * stored in a file spans its marked cells) costs what it holds, not its area.
23
+ */
20
24
  export declare function clearFootprint(sheet: Worksheet, footprint: CellRange, row: number, col: number): void;
21
25
  /** The footprint an array result anchored at (row, col) needs, or undefined beyond the grid. */
22
26
  export declare function footprintFor(row: number, col: number, m: Matrix): CellRange | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"spill.d.ts","sourceRoot":"","sources":["../../../xlsx/formula/spill.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,SAAS,EAAqC,MAAM,YAAY,CAAC;AAEjG,OAAO,KAAK,EAAE,IAAI,EAAa,SAAS,EAAE,MAAM,UAAU,CAAC;AAE3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,sFAAsF;AACtF,MAAM,WAAW,WAAY,SAAQ,IAAI;IACxC,0DAA0D;IAC1D,WAAW,EAAE,WAAW,CAAC;CACzB;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa,SAAU,IAAI,GAAG,SAAS,KAAG,IAAI,IAAI,WACnB,CAAC;AAE7C,kDAAkD;AAClD,eAAO,MAAM,aAAa,SAAU,IAAI,GAAG,SAAS,KAAG,WAAW,GAAG,SACX,CAAC;AAE3D,8FAA8F;AAC9F,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAOnF;AAED,2FAA2F;AAC3F,wBAAgB,cAAc,CAC7B,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACT,IAAI,CAYN;AAED,gGAAgG;AAChG,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAIvF;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC5B,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,GAC5D,OAAO,CAoBT;AAED,0FAA0F;AAC1F,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAoBtF;AAED,oFAAoF;AACpF,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAUlF"}
1
+ {"version":3,"file":"spill.d.ts","sourceRoot":"","sources":["../../../xlsx/formula/spill.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,SAAS,EAAqC,MAAM,YAAY,CAAC;AAEjG,OAAO,KAAK,EAAE,IAAI,EAAa,SAAS,EAAE,MAAM,UAAU,CAAC;AAE3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,sFAAsF;AACtF,MAAM,WAAW,WAAY,SAAQ,IAAI;IACxC,0DAA0D;IAC1D,WAAW,EAAE,WAAW,CAAC;CACzB;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa,SAAU,IAAI,GAAG,SAAS,KAAG,IAAI,IAAI,WACnB,CAAC;AAE7C,kDAAkD;AAClD,eAAO,MAAM,aAAa,SAAU,IAAI,GAAG,SAAS,KAAG,WAAW,GAAG,SACX,CAAC;AAE3D,8FAA8F;AAC9F,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAOnF;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC7B,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACT,IAAI,CAqBN;AAED,gGAAgG;AAChG,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAIvF;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC5B,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,GAC5D,OAAO,CAoBT;AAED,0FAA0F;AAC1F,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAoBtF;AAED,oFAAoF;AACpF,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAUlF"}