ooxml-core 1.4.0 → 1.6.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 (318) hide show
  1. package/dist/{PptxHandler-ZPJNHEZZ.mjs → PptxHandler-DDEJ6CKU.mjs} +2 -2
  2. package/dist/automation/index.cjs +14809 -7789
  3. package/dist/automation/index.mjs +14809 -7789
  4. package/dist/{chunk-XGLKW3JJ.mjs → chunk-5L4DHJV3.mjs} +23 -3
  5. package/dist/{chunk-IVDC75E5.mjs → chunk-EPNLABIU.mjs} +1 -1
  6. package/dist/{chunk-BB55ASTX.mjs → chunk-Q52O7SXQ.mjs} +3 -3
  7. package/dist/{chunk-QPQDLSJQ.mjs → chunk-QXZJOUW4.mjs} +1 -1
  8. package/dist/{chunk-H4TPDZV4.mjs → chunk-UQQGC6O3.mjs} +1 -1
  9. package/dist/drawingml/index.cjs +102 -24
  10. package/dist/drawingml/index.d.ts +1 -0
  11. package/dist/drawingml/index.d.ts.map +1 -1
  12. package/dist/drawingml/index.mjs +102 -25
  13. package/dist/drawingml/write-theme.d.ts +17 -0
  14. package/dist/drawingml/write-theme.d.ts.map +1 -0
  15. package/dist/geometry/auto-align.d.ts +32 -0
  16. package/dist/geometry/auto-align.d.ts.map +1 -0
  17. package/dist/geometry/graph-layout.d.ts +37 -0
  18. package/dist/geometry/graph-layout.d.ts.map +1 -0
  19. package/dist/geometry/index.cjs +361 -7
  20. package/dist/geometry/index.d.ts +2 -0
  21. package/dist/geometry/index.d.ts.map +1 -1
  22. package/dist/geometry/index.mjs +359 -8
  23. package/dist/index.cjs +624 -122
  24. package/dist/index.mjs +624 -122
  25. package/dist/pptx/automation/index.cjs +23 -2
  26. package/dist/pptx/automation/index.mjs +5 -5
  27. package/dist/pptx/cli/index.cjs +23 -2
  28. package/dist/pptx/cli/index.mjs +4 -4
  29. package/dist/pptx/converter/index.mjs +2 -2
  30. package/dist/pptx/index.cjs +23 -2
  31. package/dist/pptx/index.mjs +5 -5
  32. package/dist/teams/index.cjs +3 -2
  33. package/dist/teams/index.mjs +3 -2
  34. package/dist/text/change-case.d.ts +20 -0
  35. package/dist/text/change-case.d.ts.map +1 -0
  36. package/dist/text/index.cjs +70 -0
  37. package/dist/text/index.d.ts +1 -0
  38. package/dist/text/index.d.ts.map +1 -1
  39. package/dist/text/index.mjs +68 -1
  40. package/dist/visio/arrow-shapes.d.ts +16 -0
  41. package/dist/visio/arrow-shapes.d.ts.map +1 -0
  42. package/dist/visio/basic-shapes.d.ts +20 -0
  43. package/dist/visio/basic-shapes.d.ts.map +1 -0
  44. package/dist/visio/comments.d.ts +39 -0
  45. package/dist/visio/comments.d.ts.map +1 -0
  46. package/dist/visio/connector-route.d.ts +31 -0
  47. package/dist/visio/connector-route.d.ts.map +1 -0
  48. package/dist/visio/data-recordsets.d.ts +66 -0
  49. package/dist/visio/data-recordsets.d.ts.map +1 -0
  50. package/dist/visio/edit-change-shape-commands.d.ts +17 -0
  51. package/dist/visio/edit-change-shape-commands.d.ts.map +1 -0
  52. package/dist/visio/edit-change-shape.d.ts +4 -0
  53. package/dist/visio/edit-change-shape.d.ts.map +1 -0
  54. package/dist/visio/edit-commands.d.ts +41 -4
  55. package/dist/visio/edit-commands.d.ts.map +1 -1
  56. package/dist/visio/edit-comment-commands.d.ts +32 -0
  57. package/dist/visio/edit-comment-commands.d.ts.map +1 -0
  58. package/dist/visio/edit-comments.d.ts +7 -0
  59. package/dist/visio/edit-comments.d.ts.map +1 -0
  60. package/dist/visio/edit-connection-points.d.ts +19 -0
  61. package/dist/visio/edit-connection-points.d.ts.map +1 -0
  62. package/dist/visio/edit-connector-commands.d.ts +57 -0
  63. package/dist/visio/edit-connector-commands.d.ts.map +1 -0
  64. package/dist/visio/edit-connector-glue.d.ts +43 -0
  65. package/dist/visio/edit-connector-glue.d.ts.map +1 -0
  66. package/dist/visio/edit-connector-layout.d.ts +37 -0
  67. package/dist/visio/edit-connector-layout.d.ts.map +1 -0
  68. package/dist/visio/edit-connector-reroute.d.ts +30 -0
  69. package/dist/visio/edit-connector-reroute.d.ts.map +1 -0
  70. package/dist/visio/edit-connector.d.ts +42 -0
  71. package/dist/visio/edit-connector.d.ts.map +1 -0
  72. package/dist/visio/edit-data-commands.d.ts +49 -0
  73. package/dist/visio/edit-data-commands.d.ts.map +1 -0
  74. package/dist/visio/edit-data-parts.d.ts +34 -0
  75. package/dist/visio/edit-data-parts.d.ts.map +1 -0
  76. package/dist/visio/edit-data.d.ts +8 -0
  77. package/dist/visio/edit-data.d.ts.map +1 -0
  78. package/dist/visio/edit-delete.d.ts.map +1 -1
  79. package/dist/visio/edit-diagram-parts-commands.d.ts +55 -0
  80. package/dist/visio/edit-diagram-parts-commands.d.ts.map +1 -0
  81. package/dist/visio/edit-diagram-parts.d.ts +16 -0
  82. package/dist/visio/edit-diagram-parts.d.ts.map +1 -0
  83. package/dist/visio/edit-ellipse-geometry.d.ts +2 -0
  84. package/dist/visio/edit-ellipse-geometry.d.ts.map +1 -1
  85. package/dist/visio/edit-foreign-bitmap.d.ts +7 -0
  86. package/dist/visio/edit-foreign-bitmap.d.ts.map +1 -0
  87. package/dist/visio/edit-formatting-cell-admission.d.ts +2 -0
  88. package/dist/visio/edit-formatting-cell-admission.d.ts.map +1 -1
  89. package/dist/visio/edit-formatting-commands.d.ts +14 -1
  90. package/dist/visio/edit-formatting-commands.d.ts.map +1 -1
  91. package/dist/visio/edit-formatting-effects.d.ts +50 -0
  92. package/dist/visio/edit-formatting-effects.d.ts.map +1 -0
  93. package/dist/visio/edit-formatting-glow.d.ts +43 -0
  94. package/dist/visio/edit-formatting-glow.d.ts.map +1 -0
  95. package/dist/visio/edit-formatting-paint-scope.d.ts.map +1 -1
  96. package/dist/visio/edit-formatting-paint.d.ts +6 -0
  97. package/dist/visio/edit-formatting-paint.d.ts.map +1 -1
  98. package/dist/visio/edit-formatting-scope.d.ts.map +1 -1
  99. package/dist/visio/edit-formatting-text-commands.d.ts +56 -0
  100. package/dist/visio/edit-formatting-text-commands.d.ts.map +1 -0
  101. package/dist/visio/edit-formatting-text-extra.d.ts +11 -0
  102. package/dist/visio/edit-formatting-text-extra.d.ts.map +1 -0
  103. package/dist/visio/edit-formatting-text.d.ts.map +1 -1
  104. package/dist/visio/edit-formatting-theme-context.d.ts +14 -0
  105. package/dist/visio/edit-formatting-theme-context.d.ts.map +1 -0
  106. package/dist/visio/edit-formatting.d.ts +2 -0
  107. package/dist/visio/edit-formatting.d.ts.map +1 -1
  108. package/dist/visio/edit-geometry-admission.d.ts +1 -1
  109. package/dist/visio/edit-geometry-admission.d.ts.map +1 -1
  110. package/dist/visio/edit-geometry.d.ts.map +1 -1
  111. package/dist/visio/edit-group-commands.d.ts +22 -0
  112. package/dist/visio/edit-group-commands.d.ts.map +1 -0
  113. package/dist/visio/edit-group-rotation.d.ts +7 -1
  114. package/dist/visio/edit-group-rotation.d.ts.map +1 -1
  115. package/dist/visio/edit-group.d.ts +17 -0
  116. package/dist/visio/edit-group.d.ts.map +1 -0
  117. package/dist/visio/edit-guide-commands.d.ts +26 -0
  118. package/dist/visio/edit-guide-commands.d.ts.map +1 -0
  119. package/dist/visio/edit-guides.d.ts +4 -0
  120. package/dist/visio/edit-guides.d.ts.map +1 -0
  121. package/dist/visio/edit-layer-commands.d.ts +20 -0
  122. package/dist/visio/edit-layer-commands.d.ts.map +1 -0
  123. package/dist/visio/edit-layers.d.ts +7 -0
  124. package/dist/visio/edit-layers.d.ts.map +1 -0
  125. package/dist/visio/edit-metadata-commands.d.ts +46 -0
  126. package/dist/visio/edit-metadata-commands.d.ts.map +1 -0
  127. package/dist/visio/edit-metadata.d.ts +4 -0
  128. package/dist/visio/edit-metadata.d.ts.map +1 -0
  129. package/dist/visio/edit-page-auto-size.d.ts +19 -0
  130. package/dist/visio/edit-page-auto-size.d.ts.map +1 -0
  131. package/dist/visio/edit-page-create.d.ts +24 -0
  132. package/dist/visio/edit-page-create.d.ts.map +1 -0
  133. package/dist/visio/edit-page-decoration.d.ts +14 -0
  134. package/dist/visio/edit-page-decoration.d.ts.map +1 -0
  135. package/dist/visio/edit-page-setup-commands.d.ts +57 -0
  136. package/dist/visio/edit-page-setup-commands.d.ts.map +1 -0
  137. package/dist/visio/edit-page-setup.d.ts +13 -0
  138. package/dist/visio/edit-page-setup.d.ts.map +1 -0
  139. package/dist/visio/edit-page-size.d.ts +4 -0
  140. package/dist/visio/edit-page-size.d.ts.map +1 -1
  141. package/dist/visio/edit-page-theme-commands.d.ts +15 -0
  142. package/dist/visio/edit-page-theme-commands.d.ts.map +1 -0
  143. package/dist/visio/edit-page-theme-recolor.d.ts +3 -0
  144. package/dist/visio/edit-page-theme-recolor.d.ts.map +1 -0
  145. package/dist/visio/edit-page-theme.d.ts +10 -0
  146. package/dist/visio/edit-page-theme.d.ts.map +1 -0
  147. package/dist/visio/edit-pages.d.ts.map +1 -1
  148. package/dist/visio/edit-path-commands.d.ts +19 -0
  149. package/dist/visio/edit-path-commands.d.ts.map +1 -0
  150. package/dist/visio/edit-path-create.d.ts +23 -0
  151. package/dist/visio/edit-path-create.d.ts.map +1 -0
  152. package/dist/visio/edit-picture.d.ts +7 -0
  153. package/dist/visio/edit-picture.d.ts.map +1 -0
  154. package/dist/visio/edit-recalculate-index.d.ts +2 -0
  155. package/dist/visio/edit-recalculate-index.d.ts.map +1 -1
  156. package/dist/visio/edit-resize-anchor.d.ts +1 -1
  157. package/dist/visio/edit-resize-anchor.d.ts.map +1 -1
  158. package/dist/visio/edit-scope.d.ts.map +1 -1
  159. package/dist/visio/edit-shape-create.d.ts +8 -0
  160. package/dist/visio/edit-shape-create.d.ts.map +1 -1
  161. package/dist/visio/edit-shape-data-commands.d.ts +34 -0
  162. package/dist/visio/edit-shape-data-commands.d.ts.map +1 -0
  163. package/dist/visio/edit-shape-data.d.ts +22 -0
  164. package/dist/visio/edit-shape-data.d.ts.map +1 -0
  165. package/dist/visio/edit-shape-order.d.ts.map +1 -1
  166. package/dist/visio/edit-subprocess-commands.d.ts +27 -0
  167. package/dist/visio/edit-subprocess-commands.d.ts.map +1 -0
  168. package/dist/visio/edit-subprocess.d.ts +9 -0
  169. package/dist/visio/edit-subprocess.d.ts.map +1 -0
  170. package/dist/visio/edit-text-field-commands.d.ts +21 -0
  171. package/dist/visio/edit-text-field-commands.d.ts.map +1 -0
  172. package/dist/visio/edit-text-field.d.ts +5 -0
  173. package/dist/visio/edit-text-field.d.ts.map +1 -0
  174. package/dist/visio/edit-text-range-plan.d.ts.map +1 -1
  175. package/dist/visio/edit-text-ranges.d.ts.map +1 -1
  176. package/dist/visio/edit-text.d.ts.map +1 -1
  177. package/dist/visio/edit.d.ts +2 -1
  178. package/dist/visio/edit.d.ts.map +1 -1
  179. package/dist/visio/effects.d.ts +13 -0
  180. package/dist/visio/effects.d.ts.map +1 -0
  181. package/dist/visio/formula-evaluate.d.ts.map +1 -1
  182. package/dist/visio/index.cjs +27020 -19658
  183. package/dist/visio/index.d.ts +26 -1
  184. package/dist/visio/index.d.ts.map +1 -1
  185. package/dist/visio/index.mjs +26949 -19659
  186. package/dist/visio/model.d.ts +125 -0
  187. package/dist/visio/model.d.ts.map +1 -1
  188. package/dist/visio/page-decoration.d.ts +66 -0
  189. package/dist/visio/page-decoration.d.ts.map +1 -0
  190. package/dist/visio/page-scale.d.ts.map +1 -1
  191. package/dist/visio/page-setup.d.ts +8 -0
  192. package/dist/visio/page-setup.d.ts.map +1 -0
  193. package/dist/visio/page-theme.d.ts +9 -0
  194. package/dist/visio/page-theme.d.ts.map +1 -0
  195. package/dist/visio/paper-sizes.d.ts +24 -0
  196. package/dist/visio/paper-sizes.d.ts.map +1 -0
  197. package/dist/visio/parser.d.ts.map +1 -1
  198. package/dist/visio/path-fit.d.ts +69 -0
  199. package/dist/visio/path-fit.d.ts.map +1 -0
  200. package/dist/visio/shadow.d.ts +9 -0
  201. package/dist/visio/shadow.d.ts.map +1 -0
  202. package/dist/visio/shape-connections.d.ts +5 -0
  203. package/dist/visio/shape-connections.d.ts.map +1 -0
  204. package/dist/visio/shape-metadata.d.ts +3 -0
  205. package/dist/visio/shape-metadata.d.ts.map +1 -1
  206. package/dist/visio/shape-structure.d.ts +10 -0
  207. package/dist/visio/shape-structure.d.ts.map +1 -0
  208. package/dist/visio/shapes.d.ts.map +1 -1
  209. package/dist/visio/stencil-shapes.d.ts +20 -0
  210. package/dist/visio/stencil-shapes.d.ts.map +1 -0
  211. package/dist/visio/stencils.d.ts +30 -0
  212. package/dist/visio/stencils.d.ts.map +1 -0
  213. package/dist/visio/style.d.ts +3 -0
  214. package/dist/visio/style.d.ts.map +1 -1
  215. package/dist/visio/text-character.d.ts +5 -0
  216. package/dist/visio/text-character.d.ts.map +1 -0
  217. package/dist/visio/text-field-context.d.ts +6 -0
  218. package/dist/visio/text-field-context.d.ts.map +1 -0
  219. package/dist/visio/text-field-display.d.ts +12 -0
  220. package/dist/visio/text-field-display.d.ts.map +1 -0
  221. package/dist/visio/text-fields.d.ts +65 -0
  222. package/dist/visio/text-fields.d.ts.map +1 -0
  223. package/dist/visio/theme-builtins.d.ts +32 -0
  224. package/dist/visio/theme-builtins.d.ts.map +1 -0
  225. package/dist/visio/theme-write.d.ts +4 -0
  226. package/dist/visio/theme-write.d.ts.map +1 -0
  227. package/dist/visio/theme.d.ts +2 -0
  228. package/dist/visio/theme.d.ts.map +1 -1
  229. package/dist/visio/ui/auto-layout.d.ts +38 -0
  230. package/dist/visio/ui/auto-layout.d.ts.map +1 -0
  231. package/dist/visio/ui/change-case.d.ts +12 -0
  232. package/dist/visio/ui/change-case.d.ts.map +1 -0
  233. package/dist/visio/ui/connection-points.d.ts +45 -0
  234. package/dist/visio/ui/connection-points.d.ts.map +1 -0
  235. package/dist/visio/ui/connector-preview.d.ts +24 -0
  236. package/dist/visio/ui/connector-preview.d.ts.map +1 -0
  237. package/dist/visio/ui/data-graphic-rules.d.ts +45 -0
  238. package/dist/visio/ui/data-graphic-rules.d.ts.map +1 -0
  239. package/dist/visio/ui/data-graphics.d.ts +15 -0
  240. package/dist/visio/ui/data-graphics.d.ts.map +1 -0
  241. package/dist/visio/ui/data-table.d.ts +33 -0
  242. package/dist/visio/ui/data-table.d.ts.map +1 -0
  243. package/dist/visio/ui/diagram-check.d.ts +32 -0
  244. package/dist/visio/ui/diagram-check.d.ts.map +1 -0
  245. package/dist/visio/ui/diagram-parts.d.ts +20 -0
  246. package/dist/visio/ui/diagram-parts.d.ts.map +1 -0
  247. package/dist/visio/ui/draw-path-plan.d.ts +21 -0
  248. package/dist/visio/ui/draw-path-plan.d.ts.map +1 -0
  249. package/dist/visio/ui/draw-plan.d.ts +13 -2
  250. package/dist/visio/ui/draw-plan.d.ts.map +1 -1
  251. package/dist/visio/ui/edit-commands.d.ts.map +1 -1
  252. package/dist/visio/ui/format-painter.d.ts +25 -0
  253. package/dist/visio/ui/format-painter.d.ts.map +1 -0
  254. package/dist/visio/ui/guides.d.ts +34 -0
  255. package/dist/visio/ui/guides.d.ts.map +1 -0
  256. package/dist/visio/ui/index.cjs +8010 -2707
  257. package/dist/visio/ui/index.d.ts +25 -0
  258. package/dist/visio/ui/index.d.ts.map +1 -1
  259. package/dist/visio/ui/index.mjs +7898 -2708
  260. package/dist/visio/ui/insert.d.ts +26 -0
  261. package/dist/visio/ui/insert.d.ts.map +1 -0
  262. package/dist/visio/ui/layer-assign.d.ts +31 -0
  263. package/dist/visio/ui/layer-assign.d.ts.map +1 -0
  264. package/dist/visio/ui/page-edit.d.ts.map +1 -1
  265. package/dist/visio/ui/page-setup.d.ts +50 -0
  266. package/dist/visio/ui/page-setup.d.ts.map +1 -0
  267. package/dist/visio/ui/page-size.d.ts +2 -11
  268. package/dist/visio/ui/page-size.d.ts.map +1 -1
  269. package/dist/visio/ui/paste-text.d.ts +13 -0
  270. package/dist/visio/ui/paste-text.d.ts.map +1 -0
  271. package/dist/visio/ui/scene-data.d.ts +4 -0
  272. package/dist/visio/ui/scene-data.d.ts.map +1 -0
  273. package/dist/visio/ui/scene-details.d.ts.map +1 -1
  274. package/dist/visio/ui/scene-validation-text.d.ts +8 -0
  275. package/dist/visio/ui/scene-validation-text.d.ts.map +1 -0
  276. package/dist/visio/ui/scene-validation.d.ts.map +1 -1
  277. package/dist/visio/ui/select-by-type.d.ts +35 -0
  278. package/dist/visio/ui/select-by-type.d.ts.map +1 -0
  279. package/dist/visio/ui/shape-arrange.d.ts.map +1 -1
  280. package/dist/visio/ui/shape-change.d.ts +11 -0
  281. package/dist/visio/ui/shape-change.d.ts.map +1 -0
  282. package/dist/visio/ui/shape-effects.d.ts +14 -0
  283. package/dist/visio/ui/shape-effects.d.ts.map +1 -0
  284. package/dist/visio/ui/shape-formatting.d.ts +5 -0
  285. package/dist/visio/ui/shape-formatting.d.ts.map +1 -1
  286. package/dist/visio/ui/shape-group.d.ts +9 -0
  287. package/dist/visio/ui/shape-group.d.ts.map +1 -0
  288. package/dist/visio/ui/shape-move.d.ts +5 -2
  289. package/dist/visio/ui/shape-move.d.ts.map +1 -1
  290. package/dist/visio/ui/shape-report.d.ts +37 -0
  291. package/dist/visio/ui/shape-report.d.ts.map +1 -0
  292. package/dist/visio/ui/shape-resize.d.ts.map +1 -1
  293. package/dist/visio/ui/shape-rotation.d.ts.map +1 -1
  294. package/dist/visio/ui/snapshot-scene.d.ts.map +1 -1
  295. package/dist/visio/ui/subprocess.d.ts +13 -0
  296. package/dist/visio/ui/subprocess.d.ts.map +1 -0
  297. package/dist/visio/ui/text-block.d.ts +42 -0
  298. package/dist/visio/ui/text-block.d.ts.map +1 -0
  299. package/dist/visio/ui/text-dialog.d.ts +54 -0
  300. package/dist/visio/ui/text-dialog.d.ts.map +1 -0
  301. package/dist/visio/ui/text-draft.d.ts +25 -0
  302. package/dist/visio/ui/text-draft.d.ts.map +1 -0
  303. package/dist/visio/ui/text-field-catalog.d.ts +17 -0
  304. package/dist/visio/ui/text-field-catalog.d.ts.map +1 -0
  305. package/dist/xlsx/edit/dimensions.d.ts.map +1 -1
  306. package/dist/xlsx/edit/filter.d.ts.map +1 -1
  307. package/dist/xlsx/edit/shift-sheet.d.ts.map +1 -1
  308. package/dist/xlsx/edit/structure.d.ts +1 -1
  309. package/dist/xlsx/edit/structure.d.ts.map +1 -1
  310. package/dist/xlsx/filter-rows.d.ts +4 -0
  311. package/dist/xlsx/filter-rows.d.ts.map +1 -1
  312. package/dist/xlsx/index.cjs +37 -22
  313. package/dist/xlsx/index.mjs +37 -22
  314. package/dist/xlsx/load/index.cjs +3 -2
  315. package/dist/xlsx/load/index.mjs +3 -2
  316. package/dist/xlsx/ui/index.cjs +37 -22
  317. package/dist/xlsx/ui/index.mjs +37 -22
  318. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-field-catalog.d.ts","sourceRoot":"","sources":["../../../visio/ui/text-field-catalog.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,CAAC;AACtF,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,WAAW,sBAAsB;IACtC,EAAE,EAAE,kBAAkB,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACpC,OAAO,EAAE,SAAS;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACtD;AAkBD,2FAA2F;AAC3F,eAAO,MAAM,sBAAsB,EAAE,SAAS,sBAAsB,EAiDnE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"dimensions.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/dimensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGrD,OAAO,EAAE,KAAK,WAAW,EAAwB,MAAM,WAAW,CAAC;AAqBnE,qFAAqF;AACrF,wBAAgB,cAAc,CAC7B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,KAAK,MAAM,GACjD,MAAM,GAAG,SAAS,CAUpB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC7B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,MAAM,EAAE,EACd,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,KAAK,MAAM,GAClD,IAAI,CAiCN;AAgBD,kGAAkG;AAClG,wBAAgB,YAAY,CAC3B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,MAAM,GAAG,MAAM,GACrB,IAAI,CA4BN;AAED,wBAAgB,SAAS,CACxB,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,KAAK,GAAG,KAAK,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,MAAM,EAAE,OAAO,GACb,IAAI,CAyCN"}
1
+ {"version":3,"file":"dimensions.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/dimensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGrD,OAAO,EAAE,KAAK,WAAW,EAAwB,MAAM,WAAW,CAAC;AAqBnE,qFAAqF;AACrF,wBAAgB,cAAc,CAC7B,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,KAAK,MAAM,GACjD,MAAM,GAAG,SAAS,CAUpB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC7B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,MAAM,EAAE,EACd,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,KAAK,MAAM,GAClD,IAAI,CAiCN;AAgBD,kGAAkG;AAClG,wBAAgB,YAAY,CAC3B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,MAAM,GAAG,MAAM,GACrB,IAAI,CA4BN;AAED,wBAAgB,SAAS,CACxB,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,KAAK,GAAG,KAAK,EACnB,OAAO,EAAE,MAAM,EAAE,EACjB,MAAM,EAAE,OAAO,GACb,IAAI,CA+CN"}
@@ -1 +1 @@
1
- {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/filter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,SAAS,EAAiC,MAAM,YAAY,CAAC;AAE7F,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,KAAK,WAAW,EAAW,MAAM,WAAW,CAAC;AAItD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,WAAW,GAAG,SAAS,CAoC1E;AAED,sFAAsF;AACtF,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAqBxF;AAED,yFAAyF;AACzF,wBAAgB,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI,CAiB7F;AAED,qFAAqF;AACrF,wBAAgB,YAAY,CAC3B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,GAC1B,IAAI,CA6BN;AAED,gGAAgG;AAChG,wBAAgB,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAoBhG"}
1
+ {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/filter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,SAAS,EAAiC,MAAM,YAAY,CAAC;AAE7F,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,KAAK,WAAW,EAAW,MAAM,WAAW,CAAC;AAItD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,WAAW,GAAG,SAAS,CAoC1E;AAED,sFAAsF;AACtF,wBAAgB,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAMxF;AAED,yFAAyF;AACzF,wBAAgB,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI,CAiB7F;AAED,qFAAqF;AACrF,wBAAgB,YAAY,CAC3B,GAAG,EAAE,WAAW,EAChB,CAAC,EAAE,MAAM,EACT,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,GAC1B,IAAI,CA6BN;AAED,gGAAgG;AAChG,wBAAgB,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI,CAoBhG"}
@@ -1 +1 @@
1
- {"version":3,"file":"shift-sheet.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/shift-sheet.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAA2C,SAAS,EAAE,MAAM,UAAU,CAAC;AAGnF,OAAO,EACN,KAAK,SAAS,EAMd,MAAM,cAAc,CAAC;AAEtB,iGAAiG;AACjG,MAAM,WAAW,IAAI;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACX;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CA8CvF"}
1
+ {"version":3,"file":"shift-sheet.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/shift-sheet.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAA2C,SAAS,EAAE,MAAM,UAAU,CAAC;AAGnF,OAAO,EACN,KAAK,SAAS,EAMd,MAAM,cAAc,CAAC;AAEtB,iGAAiG;AACjG,MAAM,WAAW,IAAI;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACX;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAgDvF"}
@@ -1,6 +1,6 @@
1
1
  import type { Worksheet } from '../model.js';
2
2
  import { type EditContext } from './context.js';
3
- import type { AxisShift } from './range-math.js';
3
+ import { type AxisShift } from './range-math.js';
4
4
  /** Applies an axis shift to a sheet and every formula in the workbook (no undo step). */
5
5
  export declare function applyAxisShift(ctx: EditContext, sheet: Worksheet, shift: AxisShift): void;
6
6
  export declare const insertRows: (ctx: EditContext, s: number, at: number, count: number) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"structure.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/structure.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,KAAK,WAAW,EAAW,MAAM,WAAW,CAAC;AAEtD,OAAO,KAAK,EAAQ,SAAS,EAAE,MAAM,cAAc,CAAC;AAUpD,yFAAyF;AACzF,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAMzF;AAgDD,eAAO,MAAM,UAAU,QAAS,WAAW,KAAK,MAAM,MAAM,MAAM,SAAS,MAAM,KAAG,IAC1C,CAAC;AAC3C,eAAO,MAAM,UAAU,QAAS,WAAW,KAAK,MAAM,MAAM,MAAM,SAAS,MAAM,KAAG,IACzC,CAAC;AAC5C,eAAO,MAAM,aAAa,QAAS,WAAW,KAAK,MAAM,MAAM,MAAM,SAAS,MAAM,KAAG,IAC7C,CAAC;AAC3C,eAAO,MAAM,aAAa,QAAS,WAAW,KAAK,MAAM,MAAM,MAAM,SAAS,MAAM,KAAG,IAC5C,CAAC"}
1
+ {"version":3,"file":"structure.d.ts","sourceRoot":"","sources":["../../../xlsx/edit/structure.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,KAAK,WAAW,EAAyB,MAAM,WAAW,CAAC;AAEpE,OAAO,EAAa,KAAK,SAAS,EAAc,MAAM,cAAc,CAAC;AAUrE,yFAAyF;AACzF,wBAAgB,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAMzF;AAoDD,eAAO,MAAM,UAAU,QAAS,WAAW,KAAK,MAAM,MAAM,MAAM,SAAS,MAAM,KAAG,IAC1C,CAAC;AAC3C,eAAO,MAAM,UAAU,QAAS,WAAW,KAAK,MAAM,MAAM,MAAM,SAAS,MAAM,KAAG,IACzC,CAAC;AAC5C,eAAO,MAAM,aAAa,QAAS,WAAW,KAAK,MAAM,MAAM,MAAM,SAAS,MAAM,KAAG,IAC7C,CAAC;AAC3C,eAAO,MAAM,aAAa,QAAS,WAAW,KAAK,MAAM,MAAM,MAAM,SAAS,MAAM,KAAG,IAC5C,CAAC"}
@@ -1,6 +1,10 @@
1
1
  import type { AutoFilter, Workbook, Worksheet } from './model.js';
2
2
  /** Matches the value/blank filters supported by the editor. */
3
3
  export declare function rowMatchesFilter(workbook: Workbook, sheet: Worksheet, row: number, filter: AutoFilter): boolean;
4
+ /** Records a filter result while preserving manual hiding and other row metadata. */
5
+ export declare function setRowFiltered(sheet: Worksheet, row: number, filteredOut: boolean, hasCriteria?: boolean): void;
6
+ /** Removing the filter restores rows hidden only by it, retaining manual hiding. */
7
+ export declare function clearFilteredRows(sheet: Worksheet): void;
4
8
  /** Loaded rows have a combined hidden bit; infer the filter cause from supported criteria. */
5
9
  export declare function isFilteredRow(workbook: Workbook, sheet: Worksheet, row: number): boolean;
6
10
  /** Capture loaded filter state so editing a value does not implicitly reapply the filter. */
@@ -1 +1 @@
1
- {"version":3,"file":"filter-rows.d.ts","sourceRoot":"","sources":["../../xlsx/filter-rows.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE/D,+DAA+D;AAC/D,wBAAgB,gBAAgB,CAC/B,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,UAAU,GAChB,OAAO,CAMT;AAED,8FAA8F;AAC9F,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAWxF;AAED,6FAA6F;AAC7F,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAUzD"}
1
+ {"version":3,"file":"filter-rows.d.ts","sourceRoot":"","sources":["../../xlsx/filter-rows.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE/D,+DAA+D;AAC/D,wBAAgB,gBAAgB,CAC/B,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,UAAU,GAChB,OAAO,CAMT;AAED,qFAAqF;AACrF,wBAAgB,cAAc,CAC7B,KAAK,EAAE,SAAS,EAChB,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,OAAO,EACpB,WAAW,UAAQ,GACjB,IAAI,CAiBN;AAED,oFAAoF;AACpF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAIxD;AAED,8FAA8F;AAC9F,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAWxF;AAED,6FAA6F;AAC7F,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAUzD"}
@@ -7835,11 +7835,35 @@ function rowMatchesFilter(workbook, sheet, row2, filter2) {
7835
7835
  return text3 === "" ? !!column.blank : (column.values ?? []).includes(text3);
7836
7836
  });
7837
7837
  }
7838
+ function setRowFiltered(sheet, row2, filteredOut, hasCriteria = false) {
7839
+ const info = { ...sheet.rowInfo.get(row2) };
7840
+ const manual = info.manuallyHidden || info.hidden && !info.filteredOut;
7841
+ if (filteredOut) {
7842
+ info.hidden = true;
7843
+ info.filteredOut = true;
7844
+ if (manual) info.manuallyHidden = true;
7845
+ } else {
7846
+ delete info.filteredOut;
7847
+ delete info.manuallyHidden;
7848
+ if (manual) {
7849
+ info.hidden = true;
7850
+ if (hasCriteria) info.filteredOut = false;
7851
+ } else delete info.hidden;
7852
+ }
7853
+ if (Object.keys(info).length) sheet.rowInfo.set(row2, info);
7854
+ else sheet.rowInfo.delete(row2);
7855
+ }
7856
+ function clearFilteredRows(sheet) {
7857
+ for (const [row2, info] of sheet.rowInfo)
7858
+ if (info.filteredOut !== void 0 || info.manuallyHidden !== void 0)
7859
+ setRowFiltered(sheet, row2, false);
7860
+ }
7838
7861
  function isFilteredRow(workbook, sheet, row2) {
7862
+ const filter2 = sheet.autoFilter;
7863
+ if (!filter2) return false;
7839
7864
  const info = sheet.rowInfo.get(row2);
7840
7865
  if (info?.filteredOut !== void 0) return info.filteredOut;
7841
- const filter2 = sheet.autoFilter;
7842
- return !!info?.hidden && !!filter2 && row2 > filter2.range.start.row && row2 <= filter2.range.end.row && !rowMatchesFilter(workbook, sheet, row2, filter2);
7866
+ return !!info?.hidden && row2 > filter2.range.start.row && row2 <= filter2.range.end.row && !rowMatchesFilter(workbook, sheet, row2, filter2);
7843
7867
  }
7844
7868
  function readFilteredRows(workbook) {
7845
7869
  for (const sheet of workbook.sheets)
@@ -25959,8 +25983,10 @@ function shiftSheetContent(sheet, shift2, band) {
25959
25983
  if (sheet.autoFilter) {
25960
25984
  const old = sheet.autoFilter.range;
25961
25985
  const range = moveRange(old);
25962
- if (!range) delete sheet.autoFilter;
25963
- else {
25986
+ if (!range) {
25987
+ delete sheet.autoFilter;
25988
+ clearFilteredRows(sheet);
25989
+ } else {
25964
25990
  const filter2 = { ...sheet.autoFilter, range };
25965
25991
  if (shift2.axis === "col" && filter2.columns)
25966
25992
  filter2.columns = filter2.columns.flatMap((fc) => {
@@ -26111,6 +26137,9 @@ function shiftAxis(ctx, s, axis, at, count2, insert) {
26111
26137
  const sheet = sheetAt(ctx.workbook, s);
26112
26138
  const noun = axis === "row" ? count2 === 1 ? "row" : "rows" : count2 === 1 ? "column" : "columns";
26113
26139
  const shift2 = { axis, at, count: insert ? count2 : -count2 };
26140
+ const info = { sheet: s, structural: true };
26141
+ if (!sheet.autoFilter || shiftRange(sheet.autoFilter.range, shift2))
26142
+ info.calc = { kind: "shift", sheet: s, shift: shift2 };
26114
26143
  ctx.run(
26115
26144
  `${insert ? "Insert" : "Delete"} ${noun}`,
26116
26145
  "structure",
@@ -26119,7 +26148,7 @@ function shiftAxis(ctx, s, axis, at, count2, insert) {
26119
26148
  applyAxisShift(ctx, sheet, shift2);
26120
26149
  if (insert) inheritFormats(sheet, axis, at, count2);
26121
26150
  },
26122
- { sheet: s, structural: true, calc: { kind: "shift", sheet: s, shift: shift2 } }
26151
+ info
26123
26152
  );
26124
26153
  }
26125
26154
  var insertRows = (ctx, s, at, count2) => shiftAxis(ctx, s, "row", at, count2, true);
@@ -27216,11 +27245,12 @@ function setHidden(ctx, s, axis, indices, hidden) {
27216
27245
  continue;
27217
27246
  }
27218
27247
  const filter2 = sheet.autoFilter;
27219
- if (filter2?.columns?.length && row2 > filter2.range.start.row && row2 <= filter2.range.end.row)
27248
+ if (hidden && filter2?.columns?.length && row2 > filter2.range.start.row && row2 <= filter2.range.end.row)
27220
27249
  info.filteredOut = false;
27221
27250
  if (hidden) info.hidden = true;
27222
27251
  else {
27223
27252
  delete info.hidden;
27253
+ delete info.filteredOut;
27224
27254
  if (info.height === 0) delete info.height;
27225
27255
  }
27226
27256
  if (Object.keys(info).length) sheet.rowInfo.set(row2, info);
@@ -27373,22 +27403,7 @@ function applyFilter(ctx, sheet, filter2) {
27373
27403
  const { range } = filter2;
27374
27404
  for (let row2 = range.start.row + 1; row2 <= range.end.row; row2++) {
27375
27405
  const visible = rowMatchesFilter(ctx.workbook, sheet, row2, filter2);
27376
- const info = { ...sheet.rowInfo.get(row2) };
27377
- const manual = info.manuallyHidden || info.hidden && !info.filteredOut;
27378
- if (visible) {
27379
- delete info.filteredOut;
27380
- delete info.manuallyHidden;
27381
- if (manual) {
27382
- info.hidden = true;
27383
- if (filter2.columns?.length) info.filteredOut = false;
27384
- } else delete info.hidden;
27385
- } else {
27386
- info.hidden = true;
27387
- info.filteredOut = true;
27388
- if (manual) info.manuallyHidden = true;
27389
- }
27390
- if (Object.keys(info).length) sheet.rowInfo.set(row2, info);
27391
- else sheet.rowInfo.delete(row2);
27406
+ setRowFiltered(sheet, row2, !visible, !!filter2.columns?.length);
27392
27407
  }
27393
27408
  }
27394
27409
  function setAutoFilter(ctx, s, range) {
@@ -7829,11 +7829,35 @@ function rowMatchesFilter(workbook, sheet, row2, filter2) {
7829
7829
  return text3 === "" ? !!column.blank : (column.values ?? []).includes(text3);
7830
7830
  });
7831
7831
  }
7832
+ function setRowFiltered(sheet, row2, filteredOut, hasCriteria = false) {
7833
+ const info = { ...sheet.rowInfo.get(row2) };
7834
+ const manual = info.manuallyHidden || info.hidden && !info.filteredOut;
7835
+ if (filteredOut) {
7836
+ info.hidden = true;
7837
+ info.filteredOut = true;
7838
+ if (manual) info.manuallyHidden = true;
7839
+ } else {
7840
+ delete info.filteredOut;
7841
+ delete info.manuallyHidden;
7842
+ if (manual) {
7843
+ info.hidden = true;
7844
+ if (hasCriteria) info.filteredOut = false;
7845
+ } else delete info.hidden;
7846
+ }
7847
+ if (Object.keys(info).length) sheet.rowInfo.set(row2, info);
7848
+ else sheet.rowInfo.delete(row2);
7849
+ }
7850
+ function clearFilteredRows(sheet) {
7851
+ for (const [row2, info] of sheet.rowInfo)
7852
+ if (info.filteredOut !== void 0 || info.manuallyHidden !== void 0)
7853
+ setRowFiltered(sheet, row2, false);
7854
+ }
7832
7855
  function isFilteredRow(workbook, sheet, row2) {
7856
+ const filter2 = sheet.autoFilter;
7857
+ if (!filter2) return false;
7833
7858
  const info = sheet.rowInfo.get(row2);
7834
7859
  if (info?.filteredOut !== void 0) return info.filteredOut;
7835
- const filter2 = sheet.autoFilter;
7836
- return !!info?.hidden && !!filter2 && row2 > filter2.range.start.row && row2 <= filter2.range.end.row && !rowMatchesFilter(workbook, sheet, row2, filter2);
7860
+ return !!info?.hidden && row2 > filter2.range.start.row && row2 <= filter2.range.end.row && !rowMatchesFilter(workbook, sheet, row2, filter2);
7837
7861
  }
7838
7862
  function readFilteredRows(workbook) {
7839
7863
  for (const sheet of workbook.sheets)
@@ -25953,8 +25977,10 @@ function shiftSheetContent(sheet, shift2, band) {
25953
25977
  if (sheet.autoFilter) {
25954
25978
  const old = sheet.autoFilter.range;
25955
25979
  const range = moveRange(old);
25956
- if (!range) delete sheet.autoFilter;
25957
- else {
25980
+ if (!range) {
25981
+ delete sheet.autoFilter;
25982
+ clearFilteredRows(sheet);
25983
+ } else {
25958
25984
  const filter2 = { ...sheet.autoFilter, range };
25959
25985
  if (shift2.axis === "col" && filter2.columns)
25960
25986
  filter2.columns = filter2.columns.flatMap((fc) => {
@@ -26105,6 +26131,9 @@ function shiftAxis(ctx, s, axis, at, count2, insert) {
26105
26131
  const sheet = sheetAt(ctx.workbook, s);
26106
26132
  const noun = axis === "row" ? count2 === 1 ? "row" : "rows" : count2 === 1 ? "column" : "columns";
26107
26133
  const shift2 = { axis, at, count: insert ? count2 : -count2 };
26134
+ const info = { sheet: s, structural: true };
26135
+ if (!sheet.autoFilter || shiftRange(sheet.autoFilter.range, shift2))
26136
+ info.calc = { kind: "shift", sheet: s, shift: shift2 };
26108
26137
  ctx.run(
26109
26138
  `${insert ? "Insert" : "Delete"} ${noun}`,
26110
26139
  "structure",
@@ -26113,7 +26142,7 @@ function shiftAxis(ctx, s, axis, at, count2, insert) {
26113
26142
  applyAxisShift(ctx, sheet, shift2);
26114
26143
  if (insert) inheritFormats(sheet, axis, at, count2);
26115
26144
  },
26116
- { sheet: s, structural: true, calc: { kind: "shift", sheet: s, shift: shift2 } }
26145
+ info
26117
26146
  );
26118
26147
  }
26119
26148
  var insertRows = (ctx, s, at, count2) => shiftAxis(ctx, s, "row", at, count2, true);
@@ -27210,11 +27239,12 @@ function setHidden(ctx, s, axis, indices, hidden) {
27210
27239
  continue;
27211
27240
  }
27212
27241
  const filter2 = sheet.autoFilter;
27213
- if (filter2?.columns?.length && row2 > filter2.range.start.row && row2 <= filter2.range.end.row)
27242
+ if (hidden && filter2?.columns?.length && row2 > filter2.range.start.row && row2 <= filter2.range.end.row)
27214
27243
  info.filteredOut = false;
27215
27244
  if (hidden) info.hidden = true;
27216
27245
  else {
27217
27246
  delete info.hidden;
27247
+ delete info.filteredOut;
27218
27248
  if (info.height === 0) delete info.height;
27219
27249
  }
27220
27250
  if (Object.keys(info).length) sheet.rowInfo.set(row2, info);
@@ -27367,22 +27397,7 @@ function applyFilter(ctx, sheet, filter2) {
27367
27397
  const { range } = filter2;
27368
27398
  for (let row2 = range.start.row + 1; row2 <= range.end.row; row2++) {
27369
27399
  const visible = rowMatchesFilter(ctx.workbook, sheet, row2, filter2);
27370
- const info = { ...sheet.rowInfo.get(row2) };
27371
- const manual = info.manuallyHidden || info.hidden && !info.filteredOut;
27372
- if (visible) {
27373
- delete info.filteredOut;
27374
- delete info.manuallyHidden;
27375
- if (manual) {
27376
- info.hidden = true;
27377
- if (filter2.columns?.length) info.filteredOut = false;
27378
- } else delete info.hidden;
27379
- } else {
27380
- info.hidden = true;
27381
- info.filteredOut = true;
27382
- if (manual) info.manuallyHidden = true;
27383
- }
27384
- if (Object.keys(info).length) sheet.rowInfo.set(row2, info);
27385
- else sheet.rowInfo.delete(row2);
27400
+ setRowFiltered(sheet, row2, !visible, !!filter2.columns?.length);
27386
27401
  }
27387
27402
  }
27388
27403
  function setAutoFilter(ctx, s, range) {
@@ -5378,10 +5378,11 @@ function rowMatchesFilter(workbook, sheet, row2, filter2) {
5378
5378
  });
5379
5379
  }
5380
5380
  function isFilteredRow(workbook, sheet, row2) {
5381
+ const filter2 = sheet.autoFilter;
5382
+ if (!filter2) return false;
5381
5383
  const info = sheet.rowInfo.get(row2);
5382
5384
  if (info?.filteredOut !== void 0) return info.filteredOut;
5383
- const filter2 = sheet.autoFilter;
5384
- return !!info?.hidden && !!filter2 && row2 > filter2.range.start.row && row2 <= filter2.range.end.row && !rowMatchesFilter(workbook, sheet, row2, filter2);
5385
+ return !!info?.hidden && row2 > filter2.range.start.row && row2 <= filter2.range.end.row && !rowMatchesFilter(workbook, sheet, row2, filter2);
5385
5386
  }
5386
5387
  function readFilteredRows(workbook) {
5387
5388
  for (const sheet of workbook.sheets)
@@ -5372,10 +5372,11 @@ function rowMatchesFilter(workbook, sheet, row2, filter2) {
5372
5372
  });
5373
5373
  }
5374
5374
  function isFilteredRow(workbook, sheet, row2) {
5375
+ const filter2 = sheet.autoFilter;
5376
+ if (!filter2) return false;
5375
5377
  const info = sheet.rowInfo.get(row2);
5376
5378
  if (info?.filteredOut !== void 0) return info.filteredOut;
5377
- const filter2 = sheet.autoFilter;
5378
- return !!info?.hidden && !!filter2 && row2 > filter2.range.start.row && row2 <= filter2.range.end.row && !rowMatchesFilter(workbook, sheet, row2, filter2);
5379
+ return !!info?.hidden && row2 > filter2.range.start.row && row2 <= filter2.range.end.row && !rowMatchesFilter(workbook, sheet, row2, filter2);
5379
5380
  }
5380
5381
  function readFilteredRows(workbook) {
5381
5382
  for (const sheet of workbook.sheets)
@@ -7769,11 +7769,35 @@ function rowMatchesFilter(workbook, sheet, row2, filter2) {
7769
7769
  return text2 === "" ? !!column.blank : (column.values ?? []).includes(text2);
7770
7770
  });
7771
7771
  }
7772
+ function setRowFiltered(sheet, row2, filteredOut, hasCriteria = false) {
7773
+ const info = { ...sheet.rowInfo.get(row2) };
7774
+ const manual = info.manuallyHidden || info.hidden && !info.filteredOut;
7775
+ if (filteredOut) {
7776
+ info.hidden = true;
7777
+ info.filteredOut = true;
7778
+ if (manual) info.manuallyHidden = true;
7779
+ } else {
7780
+ delete info.filteredOut;
7781
+ delete info.manuallyHidden;
7782
+ if (manual) {
7783
+ info.hidden = true;
7784
+ if (hasCriteria) info.filteredOut = false;
7785
+ } else delete info.hidden;
7786
+ }
7787
+ if (Object.keys(info).length) sheet.rowInfo.set(row2, info);
7788
+ else sheet.rowInfo.delete(row2);
7789
+ }
7790
+ function clearFilteredRows(sheet) {
7791
+ for (const [row2, info] of sheet.rowInfo)
7792
+ if (info.filteredOut !== void 0 || info.manuallyHidden !== void 0)
7793
+ setRowFiltered(sheet, row2, false);
7794
+ }
7772
7795
  function isFilteredRow(workbook, sheet, row2) {
7796
+ const filter2 = sheet.autoFilter;
7797
+ if (!filter2) return false;
7773
7798
  const info = sheet.rowInfo.get(row2);
7774
7799
  if (info?.filteredOut !== void 0) return info.filteredOut;
7775
- const filter2 = sheet.autoFilter;
7776
- return !!info?.hidden && !!filter2 && row2 > filter2.range.start.row && row2 <= filter2.range.end.row && !rowMatchesFilter(workbook, sheet, row2, filter2);
7800
+ return !!info?.hidden && row2 > filter2.range.start.row && row2 <= filter2.range.end.row && !rowMatchesFilter(workbook, sheet, row2, filter2);
7777
7801
  }
7778
7802
 
7779
7803
  // xlsx/formula/functions/math-sum.ts
@@ -15624,8 +15648,10 @@ function shiftSheetContent(sheet, shift2, band) {
15624
15648
  if (sheet.autoFilter) {
15625
15649
  const old = sheet.autoFilter.range;
15626
15650
  const range2 = moveRange(old);
15627
- if (!range2) delete sheet.autoFilter;
15628
- else {
15651
+ if (!range2) {
15652
+ delete sheet.autoFilter;
15653
+ clearFilteredRows(sheet);
15654
+ } else {
15629
15655
  const filter2 = { ...sheet.autoFilter, range: range2 };
15630
15656
  if (shift2.axis === "col" && filter2.columns)
15631
15657
  filter2.columns = filter2.columns.flatMap((fc) => {
@@ -15776,6 +15802,9 @@ function shiftAxis(ctx, s, axis, at, count2, insert) {
15776
15802
  const sheet = sheetAt(ctx.workbook, s);
15777
15803
  const noun = axis === "row" ? count2 === 1 ? "row" : "rows" : count2 === 1 ? "column" : "columns";
15778
15804
  const shift2 = { axis, at, count: insert ? count2 : -count2 };
15805
+ const info = { sheet: s, structural: true };
15806
+ if (!sheet.autoFilter || shiftRange(sheet.autoFilter.range, shift2))
15807
+ info.calc = { kind: "shift", sheet: s, shift: shift2 };
15779
15808
  ctx.run(
15780
15809
  `${insert ? "Insert" : "Delete"} ${noun}`,
15781
15810
  "structure",
@@ -15784,7 +15813,7 @@ function shiftAxis(ctx, s, axis, at, count2, insert) {
15784
15813
  applyAxisShift(ctx, sheet, shift2);
15785
15814
  if (insert) inheritFormats(sheet, axis, at, count2);
15786
15815
  },
15787
- { sheet: s, structural: true, calc: { kind: "shift", sheet: s, shift: shift2 } }
15816
+ info
15788
15817
  );
15789
15818
  }
15790
15819
  var insertRows = (ctx, s, at, count2) => shiftAxis(ctx, s, "row", at, count2, true);
@@ -16881,11 +16910,12 @@ function setHidden(ctx, s, axis, indices, hidden) {
16881
16910
  continue;
16882
16911
  }
16883
16912
  const filter2 = sheet.autoFilter;
16884
- if (filter2?.columns?.length && row2 > filter2.range.start.row && row2 <= filter2.range.end.row)
16913
+ if (hidden && filter2?.columns?.length && row2 > filter2.range.start.row && row2 <= filter2.range.end.row)
16885
16914
  info.filteredOut = false;
16886
16915
  if (hidden) info.hidden = true;
16887
16916
  else {
16888
16917
  delete info.hidden;
16918
+ delete info.filteredOut;
16889
16919
  if (info.height === 0) delete info.height;
16890
16920
  }
16891
16921
  if (Object.keys(info).length) sheet.rowInfo.set(row2, info);
@@ -17038,22 +17068,7 @@ function applyFilter(ctx, sheet, filter2) {
17038
17068
  const { range: range2 } = filter2;
17039
17069
  for (let row2 = range2.start.row + 1; row2 <= range2.end.row; row2++) {
17040
17070
  const visible = rowMatchesFilter(ctx.workbook, sheet, row2, filter2);
17041
- const info = { ...sheet.rowInfo.get(row2) };
17042
- const manual = info.manuallyHidden || info.hidden && !info.filteredOut;
17043
- if (visible) {
17044
- delete info.filteredOut;
17045
- delete info.manuallyHidden;
17046
- if (manual) {
17047
- info.hidden = true;
17048
- if (filter2.columns?.length) info.filteredOut = false;
17049
- } else delete info.hidden;
17050
- } else {
17051
- info.hidden = true;
17052
- info.filteredOut = true;
17053
- if (manual) info.manuallyHidden = true;
17054
- }
17055
- if (Object.keys(info).length) sheet.rowInfo.set(row2, info);
17056
- else sheet.rowInfo.delete(row2);
17071
+ setRowFiltered(sheet, row2, !visible, !!filter2.columns?.length);
17057
17072
  }
17058
17073
  }
17059
17074
  function setAutoFilter(ctx, s, range2) {
@@ -7767,11 +7767,35 @@ function rowMatchesFilter(workbook, sheet, row2, filter2) {
7767
7767
  return text2 === "" ? !!column.blank : (column.values ?? []).includes(text2);
7768
7768
  });
7769
7769
  }
7770
+ function setRowFiltered(sheet, row2, filteredOut, hasCriteria = false) {
7771
+ const info = { ...sheet.rowInfo.get(row2) };
7772
+ const manual = info.manuallyHidden || info.hidden && !info.filteredOut;
7773
+ if (filteredOut) {
7774
+ info.hidden = true;
7775
+ info.filteredOut = true;
7776
+ if (manual) info.manuallyHidden = true;
7777
+ } else {
7778
+ delete info.filteredOut;
7779
+ delete info.manuallyHidden;
7780
+ if (manual) {
7781
+ info.hidden = true;
7782
+ if (hasCriteria) info.filteredOut = false;
7783
+ } else delete info.hidden;
7784
+ }
7785
+ if (Object.keys(info).length) sheet.rowInfo.set(row2, info);
7786
+ else sheet.rowInfo.delete(row2);
7787
+ }
7788
+ function clearFilteredRows(sheet) {
7789
+ for (const [row2, info] of sheet.rowInfo)
7790
+ if (info.filteredOut !== void 0 || info.manuallyHidden !== void 0)
7791
+ setRowFiltered(sheet, row2, false);
7792
+ }
7770
7793
  function isFilteredRow(workbook, sheet, row2) {
7794
+ const filter2 = sheet.autoFilter;
7795
+ if (!filter2) return false;
7771
7796
  const info = sheet.rowInfo.get(row2);
7772
7797
  if (info?.filteredOut !== void 0) return info.filteredOut;
7773
- const filter2 = sheet.autoFilter;
7774
- return !!info?.hidden && !!filter2 && row2 > filter2.range.start.row && row2 <= filter2.range.end.row && !rowMatchesFilter(workbook, sheet, row2, filter2);
7798
+ return !!info?.hidden && row2 > filter2.range.start.row && row2 <= filter2.range.end.row && !rowMatchesFilter(workbook, sheet, row2, filter2);
7775
7799
  }
7776
7800
 
7777
7801
  // xlsx/formula/functions/math-sum.ts
@@ -15622,8 +15646,10 @@ function shiftSheetContent(sheet, shift2, band) {
15622
15646
  if (sheet.autoFilter) {
15623
15647
  const old = sheet.autoFilter.range;
15624
15648
  const range2 = moveRange(old);
15625
- if (!range2) delete sheet.autoFilter;
15626
- else {
15649
+ if (!range2) {
15650
+ delete sheet.autoFilter;
15651
+ clearFilteredRows(sheet);
15652
+ } else {
15627
15653
  const filter2 = { ...sheet.autoFilter, range: range2 };
15628
15654
  if (shift2.axis === "col" && filter2.columns)
15629
15655
  filter2.columns = filter2.columns.flatMap((fc) => {
@@ -15774,6 +15800,9 @@ function shiftAxis(ctx, s, axis, at, count2, insert) {
15774
15800
  const sheet = sheetAt(ctx.workbook, s);
15775
15801
  const noun = axis === "row" ? count2 === 1 ? "row" : "rows" : count2 === 1 ? "column" : "columns";
15776
15802
  const shift2 = { axis, at, count: insert ? count2 : -count2 };
15803
+ const info = { sheet: s, structural: true };
15804
+ if (!sheet.autoFilter || shiftRange(sheet.autoFilter.range, shift2))
15805
+ info.calc = { kind: "shift", sheet: s, shift: shift2 };
15777
15806
  ctx.run(
15778
15807
  `${insert ? "Insert" : "Delete"} ${noun}`,
15779
15808
  "structure",
@@ -15782,7 +15811,7 @@ function shiftAxis(ctx, s, axis, at, count2, insert) {
15782
15811
  applyAxisShift(ctx, sheet, shift2);
15783
15812
  if (insert) inheritFormats(sheet, axis, at, count2);
15784
15813
  },
15785
- { sheet: s, structural: true, calc: { kind: "shift", sheet: s, shift: shift2 } }
15814
+ info
15786
15815
  );
15787
15816
  }
15788
15817
  var insertRows = (ctx, s, at, count2) => shiftAxis(ctx, s, "row", at, count2, true);
@@ -16879,11 +16908,12 @@ function setHidden(ctx, s, axis, indices, hidden) {
16879
16908
  continue;
16880
16909
  }
16881
16910
  const filter2 = sheet.autoFilter;
16882
- if (filter2?.columns?.length && row2 > filter2.range.start.row && row2 <= filter2.range.end.row)
16911
+ if (hidden && filter2?.columns?.length && row2 > filter2.range.start.row && row2 <= filter2.range.end.row)
16883
16912
  info.filteredOut = false;
16884
16913
  if (hidden) info.hidden = true;
16885
16914
  else {
16886
16915
  delete info.hidden;
16916
+ delete info.filteredOut;
16887
16917
  if (info.height === 0) delete info.height;
16888
16918
  }
16889
16919
  if (Object.keys(info).length) sheet.rowInfo.set(row2, info);
@@ -17036,22 +17066,7 @@ function applyFilter(ctx, sheet, filter2) {
17036
17066
  const { range: range2 } = filter2;
17037
17067
  for (let row2 = range2.start.row + 1; row2 <= range2.end.row; row2++) {
17038
17068
  const visible = rowMatchesFilter(ctx.workbook, sheet, row2, filter2);
17039
- const info = { ...sheet.rowInfo.get(row2) };
17040
- const manual = info.manuallyHidden || info.hidden && !info.filteredOut;
17041
- if (visible) {
17042
- delete info.filteredOut;
17043
- delete info.manuallyHidden;
17044
- if (manual) {
17045
- info.hidden = true;
17046
- if (filter2.columns?.length) info.filteredOut = false;
17047
- } else delete info.hidden;
17048
- } else {
17049
- info.hidden = true;
17050
- info.filteredOut = true;
17051
- if (manual) info.manuallyHidden = true;
17052
- }
17053
- if (Object.keys(info).length) sheet.rowInfo.set(row2, info);
17054
- else sheet.rowInfo.delete(row2);
17069
+ setRowFiltered(sheet, row2, !visible, !!filter2.columns?.length);
17055
17070
  }
17056
17071
  }
17057
17072
  function setAutoFilter(ctx, s, range2) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ooxml-core",
3
- "version": "1.4.0",
3
+ "version": "1.6.0",
4
4
  "description": "Shared OOXML logic for the Word, PowerPoint and Excel viewers: everything except the UI",
5
5
  "keywords": [
6
6
  "charts",