@sheetxl/sdk 0.7.28-beta.4 → 0.8.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (355) hide show
  1. package/THIRD-PARTY-NOTICES.md +1 -1
  2. package/browser/cjs/4f5eoQQfV-V7LO2_.cjs +1 -0
  3. package/browser/cjs/BEnEDC1m546-gzWS.cjs +1 -0
  4. package/browser/cjs/CwCUa4IzGNGissLL.cjs +1 -0
  5. package/browser/cjs/Dg3GaW0QWwnlqetX.cjs +1 -0
  6. package/browser/cjs/KWQPie2u7AP69web.cjs +93 -0
  7. package/browser/cjs/index.cjs +2 -2
  8. package/browser/esm/{DBIu6NUHIcxOOBQp.mjs → BJ9hcZAGY8Tj5_9L.mjs} +1 -1
  9. package/browser/esm/C8vpA2ZBtZf6w4nq.mjs +394 -0
  10. package/browser/esm/DDojiE2-oycJ7qGi.mjs +20 -0
  11. package/browser/esm/DEPT7zmpiMdZ-_qC.mjs +70253 -0
  12. package/browser/esm/DOvCi3lf49To36WP.mjs +8 -0
  13. package/browser/esm/{CHSahmMFYNB0Ajkf.mjs → Dq3sc4B_HQHBrT5N.mjs} +2 -2
  14. package/browser/esm/index.mjs +871 -696
  15. package/browser/esm/{CKk58ZLcrllMzfou.mjs → trwZArJQQq7K9kL7.mjs} +2 -2
  16. package/licenses/dependencies.txt +204 -204
  17. package/node/esm/CGWsQOMWdnDeF4dX.mjs +8 -0
  18. package/node/esm/{DUYP6faJJHCaW1Xf.mjs → CL9MI-b6D9BmtVXW.mjs} +1 -1
  19. package/node/esm/CressiwiIhxCVp1v.mjs +28 -0
  20. package/node/esm/O2cOO3xIynWUgOWe.mjs +403 -0
  21. package/node/esm/index.mjs +53973 -38584
  22. package/package.json +6 -7
  23. package/resources/locales/de/model.msg.json +45 -9
  24. package/resources/locales/en/model.msg.json +42 -9
  25. package/types/scripting-api.json +7093 -0
  26. package/types/scripting-enums.json +54 -4
  27. package/types/scripting.d.ts +7185 -1079
  28. package/types/src/anchored/AbstractAnchored.d.ts +18 -8
  29. package/types/src/anchored/AnchoredMap.d.ts +2 -0
  30. package/types/src/anchored/IAnchoredMap.d.ts +52 -4
  31. package/types/src/autoFill/AutoFill.d.ts +316 -32
  32. package/types/src/autoFill/IAutoFill.d.ts +232 -15
  33. package/types/src/border/{IBorder.d.ts → IBorders.d.ts} +41 -40
  34. package/types/src/border/index.d.ts +1 -1
  35. package/types/src/calculation/Calculation.d.ts +745 -35
  36. package/types/src/calculation/ExternalBookBindings.d.ts +118 -0
  37. package/types/src/calculation/FormulaText.d.ts +74 -0
  38. package/types/src/calculation/ICalculation.d.ts +318 -81
  39. package/types/src/calculation/INamedFormulasCollection.d.ts +5 -8
  40. package/types/src/calculation/NamedFormulaCollection.d.ts +139 -107
  41. package/types/src/calculation/NamedLambdaFunction.d.ts +28 -0
  42. package/types/src/calculation/TokenType.d.ts +9 -0
  43. package/types/src/calculation/Types.d.ts +83 -2
  44. package/types/src/calculation/_CloneBoundary.d.ts +80 -0
  45. package/types/src/calculation/compiler/ASTTypes.d.ts +58 -0
  46. package/types/src/calculation/compiler/CompilerUtils.d.ts +134 -12
  47. package/types/src/calculation/compiler/FormulaCompiler.d.ts +29 -4
  48. package/types/src/calculation/compiler/FormulaParser.d.ts +1 -2
  49. package/types/src/calculation/compiler/LiteTransform.d.ts +17 -0
  50. package/types/src/calculation/compiler/ParserUtils.d.ts +26 -1
  51. package/types/src/calculation/compiler/SRParser.d.ts +2 -1
  52. package/types/src/calculation/compiler/Types.d.ts +79 -9
  53. package/types/src/calculation/executor/CalcExecutor.d.ts +422 -34
  54. package/types/src/calculation/executor/CalcExecutorUtils.d.ts +43 -2
  55. package/types/src/calculation/executor/CircularReference.d.ts +2 -0
  56. package/types/src/calculation/formula/Formula.d.ts +58 -21
  57. package/types/src/calculation/formula/FormulaBlock.d.ts +124 -21
  58. package/types/src/calculation/formula/FormulaRecordView.d.ts +79 -0
  59. package/types/src/calculation/formula/IFormulaBlock.d.ts +261 -67
  60. package/types/src/calculation/formula/LambdaValue.d.ts +15 -16
  61. package/types/src/calculation/formula/LazyValue.d.ts +96 -0
  62. package/types/src/calculation/formula/TokenUtils.d.ts +25 -1
  63. package/types/src/calculation/formula/index.d.ts +1 -0
  64. package/types/src/calculation/functions/FunctionDeclarations.d.ts +31 -0
  65. package/types/src/calculation/functions/initializeFunctions.d.ts +15 -2
  66. package/types/src/calculation/grid/CalcGrid.d.ts +384 -158
  67. package/types/src/calculation/grid/CalcGridBackend.d.ts +450 -0
  68. package/types/src/calculation/grid/CalcGridProxy.d.ts +133 -0
  69. package/types/src/calculation/grid/CalcGridUtils.d.ts +62 -12
  70. package/types/src/calculation/grid/FormulaEntry.d.ts +129 -0
  71. package/types/src/calculation/grid/FormulaHost.d.ts +236 -0
  72. package/types/src/calculation/grid/ICalcGrid.d.ts +456 -143
  73. package/types/src/calculation/grid/_CalcRequest.d.ts +272 -0
  74. package/types/src/calculation/grid/index.d.ts +4 -0
  75. package/types/src/calculation/index.d.ts +2 -0
  76. package/types/src/calculation/spatial/ContentfulSpatialValue.d.ts +6 -2
  77. package/types/src/calculation/spatial/FormulaSpatialValue.d.ts +339 -11
  78. package/types/src/calculation/spatial/SpillEntry.d.ts +20 -5
  79. package/types/src/calculation/spatial/TouchedWindows.d.ts +86 -0
  80. package/types/src/calculation/spatial/index.d.ts +1 -0
  81. package/types/src/calculation/state/CalcInputs.d.ts +41 -0
  82. package/types/src/calculation/state/CalcNode.d.ts +160 -29
  83. package/types/src/calculation/state/CalcScope.d.ts +37 -0
  84. package/types/src/calculation/state/CalcState.d.ts +22 -1
  85. package/types/src/calculation/state/CalculationContext.d.ts +39 -3
  86. package/types/src/calculation/state/IContextContainer.d.ts +159 -26
  87. package/types/src/calculation/state/_PendingOverlayGrid.d.ts +163 -0
  88. package/types/src/calculation/state/_ReadObservedGrid.d.ts +74 -8
  89. package/types/src/calculation/state/index.d.ts +1 -0
  90. package/types/src/calculation/symbol/ExternalSheetSymbols.d.ts +80 -0
  91. package/types/src/calculation/symbol/ISymbolRegistry.d.ts +23 -0
  92. package/types/src/calculation/symbol/IndirectSymbolProvider.d.ts +16 -2
  93. package/types/src/calculation/symbol/SheetSymbolProvider.d.ts +63 -3
  94. package/types/src/calculation/symbol/SymbolRegistry.d.ts +20 -0
  95. package/types/src/calculation/symbol/index.d.ts +3 -2
  96. package/types/src/cell/ICell.d.ts +78 -23
  97. package/types/src/cell/ICellProtection.d.ts +50 -10
  98. package/types/src/cellRange/ICellRange.d.ts +368 -90
  99. package/types/src/cellRange/ICellRanges.d.ts +9 -7
  100. package/types/src/chart/Chart.d.ts +72 -2
  101. package/types/src/chart/ChartCollection.d.ts +26 -0
  102. package/types/src/chart/IChart.d.ts +162 -9
  103. package/types/src/chart/IChartCollection.d.ts +25 -0
  104. package/types/src/chart/_ChartXml.d.ts +70 -0
  105. package/types/src/chart/index.d.ts +1 -3
  106. package/types/src/collections/ArraysGrid.d.ts +1 -1
  107. package/types/src/collections/IGrid.d.ts +1 -1
  108. package/types/src/collections/ISparseGrid.d.ts +9 -0
  109. package/types/src/collections/ISpatialMap.d.ts +59 -21
  110. package/types/src/collections/ImmutableList.d.ts +28 -0
  111. package/types/src/collections/MixedTypedArrayList.d.ts +168 -108
  112. package/types/src/collections/OverlappingRangeIterator.d.ts +13 -17
  113. package/types/src/collections/RepeatingList.d.ts +7 -0
  114. package/types/src/collections/ScalarGrid.d.ts +50 -0
  115. package/types/src/collections/SparseGrid.d.ts +1 -1
  116. package/types/src/collections/SpatialMap.d.ts +13 -21
  117. package/types/src/collections/Tuple.d.ts +128 -16
  118. package/types/src/collections/_GridUtils.d.ts +19 -6
  119. package/types/src/collections/_RangeSweep.d.ts +97 -0
  120. package/types/src/collections/_SpatialUtils.d.ts +20 -2
  121. package/types/src/collections/index.d.ts +1 -0
  122. package/types/src/comment/Comment.d.ts +159 -0
  123. package/types/src/comment/CommentCollection.d.ts +40 -0
  124. package/types/src/comment/IComment.d.ts +319 -48
  125. package/types/src/comment/ICommentCollection.d.ts +90 -0
  126. package/types/src/comment/_CommentUtils.d.ts +28 -0
  127. package/types/src/comment/index.d.ts +1 -0
  128. package/types/src/condition/AnchoredConditional.d.ts +76 -17
  129. package/types/src/condition/BuiltInOperators/AbstractOperator.d.ts +8 -7
  130. package/types/src/condition/BuiltInOperators/EqualToOperator.d.ts +2 -1
  131. package/types/src/condition/BuiltInOperators/ExpressionOperator.d.ts +3 -6
  132. package/types/src/condition/BuiltInOperators/InSetOperator.d.ts +1 -1
  133. package/types/src/condition/BuiltinSelectors/BaseSelector.d.ts +7 -0
  134. package/types/src/condition/BuiltinSelectors/ListSelector.d.ts +9 -0
  135. package/types/src/condition/Condition.d.ts +16 -0
  136. package/types/src/condition/ICondition.d.ts +86 -33
  137. package/types/src/condition/_ConditionFormula.d.ts +152 -0
  138. package/types/src/condition/_ConditionUtils.d.ts +73 -10
  139. package/types/src/conditionalFormat/ConditionalFormat.d.ts +21 -10
  140. package/types/src/conditionalFormat/ConditionalFormatCollection.d.ts +19 -8
  141. package/types/src/conditionalFormat/IConditionalFormat.d.ts +5 -3
  142. package/types/src/conditionalFormat/IConditionalFormatCollection.d.ts +2 -0
  143. package/types/src/dataValidation/DataValidation.d.ts +50 -3
  144. package/types/src/dataValidation/DataValidationCollection.d.ts +20 -9
  145. package/types/src/dataValidation/IDataValidation.d.ts +119 -30
  146. package/types/src/dataValidation/IDataValidationCollection.d.ts +10 -2
  147. package/types/src/date/DateUtils.d.ts +20 -0
  148. package/types/src/date/_DateUtils.d.ts +91 -7
  149. package/types/src/externalBook/ExternalBookCollection.d.ts +145 -12
  150. package/types/src/externalBook/ExternalBookName.d.ts +96 -0
  151. package/types/src/externalBook/IExternalBook.d.ts +170 -18
  152. package/types/src/externalBook/IExternalBookCollection.d.ts +79 -7
  153. package/types/src/externalBook/index.d.ts +1 -0
  154. package/types/src/fill/IStroke.d.ts +1 -1
  155. package/types/src/filter/IFilter.d.ts +29 -4
  156. package/types/src/font/IFont.d.ts +17 -0
  157. package/types/src/history/IHistory.d.ts +3 -2
  158. package/types/src/i18n/LanguagePack.d.ts +12 -4
  159. package/types/src/index.d.ts +3 -0
  160. package/types/src/io/AbstractBackingStore.d.ts +24 -1
  161. package/types/src/io/ArrayBackingStore.d.ts +1 -1
  162. package/types/src/io/EmbeddedPart.d.ts +20 -0
  163. package/types/src/io/IEmbeddedPart.d.ts +63 -0
  164. package/types/src/io/IWorkbookIO.d.ts +185 -18
  165. package/types/src/io/WorkbookIO.d.ts +9 -0
  166. package/types/src/io/WorkbookOrigin.d.ts +20 -11
  167. package/types/src/io/WorkbookOriginProvider.d.ts +46 -0
  168. package/types/src/io/_XmlFragment.d.ts +49 -0
  169. package/types/src/io/index.d.ts +1 -0
  170. package/types/src/lib/file/file.browser.d.ts +19 -5
  171. package/types/src/lib/file/file.node.d.ts +5 -0
  172. package/types/src/lib/utils/_Utils.d.ts +18 -0
  173. package/types/src/lib/utils/utils.browser.d.ts +9 -3
  174. package/types/src/license/license-key.d.ts +27 -0
  175. package/types/src/listener/IListener.d.ts +12 -7
  176. package/types/src/listener/ListenerEmitter.d.ts +46 -5
  177. package/types/src/model/AbstractModel.d.ts +14 -5
  178. package/types/src/movable/Control.d.ts +57 -0
  179. package/types/src/movable/IControl.d.ts +84 -0
  180. package/types/src/movable/IMovable.d.ts +23 -1
  181. package/types/src/movable/IMovableCollection.d.ts +2 -0
  182. package/types/src/movable/Movable.d.ts +4 -6
  183. package/types/src/movable/MovableCollection.d.ts +7 -7
  184. package/types/src/movable/index.d.ts +4 -0
  185. package/types/src/named/AbstractNamed.d.ts +1 -1
  186. package/types/src/named/INamed.d.ts +4 -1
  187. package/types/src/named/INamedCollection.d.ts +26 -0
  188. package/types/src/named/NamedCollection.d.ts +16 -15
  189. package/types/src/numFmt/BuiltInFormats.d.ts +15 -7
  190. package/types/src/numFmt/IFormatEngine.d.ts +2 -0
  191. package/types/src/numFmt/NumfmtFormatEngine.d.ts +2 -0
  192. package/types/src/person/IPerson.d.ts +99 -0
  193. package/types/src/person/IPersonCollection.d.ts +51 -0
  194. package/types/src/person/Person.d.ts +32 -0
  195. package/types/src/person/PersonCollection.d.ts +49 -0
  196. package/types/src/person/index.d.ts +3 -0
  197. package/types/src/picture/IPicture.d.ts +2 -0
  198. package/types/src/picture/Picture.d.ts +2 -0
  199. package/types/src/pivot/IPivotTable.d.ts +107 -0
  200. package/types/src/pivot/IPivotTableCollection.d.ts +25 -0
  201. package/types/src/pivot/PivotTable.d.ts +57 -0
  202. package/types/src/pivot/PivotTableCollection.d.ts +25 -0
  203. package/types/src/pivot/index.d.ts +6 -0
  204. package/types/src/primitives/CompositeRangeStats.d.ts +2 -0
  205. package/types/src/primitives/Criteria.d.ts +1 -1
  206. package/types/src/primitives/LambdaBrand.d.ts +21 -0
  207. package/types/src/primitives/PrimitiveUtils.d.ts +60 -21
  208. package/types/src/primitives/Range.d.ts +105 -25
  209. package/types/src/primitives/RangeStats.d.ts +24 -1
  210. package/types/src/primitives/ReferenceRange.d.ts +42 -0
  211. package/types/src/primitives/Runtime.d.ts +15 -2
  212. package/types/src/primitives/stats/FrequencyStats.d.ts +9 -0
  213. package/types/src/primitives/stats/LookupIndex.d.ts +46 -0
  214. package/types/src/primitives/stats/SortedNumbers.d.ts +2 -0
  215. package/types/src/primitives/stats/index.d.ts +1 -0
  216. package/types/src/print/IPrint.d.ts +0 -22
  217. package/types/src/protectedRange/IProtectedRange.d.ts +4 -0
  218. package/types/src/protectedRange/IProtectedRangeCollection.d.ts +2 -0
  219. package/types/src/protectedRange/ProtectedRange.d.ts +1 -4
  220. package/types/src/protectedRange/ProtectedRangeCollection.d.ts +19 -8
  221. package/types/src/protection/DefaultProtection.d.ts +12 -1
  222. package/types/src/protection/IProtection.d.ts +36 -2
  223. package/types/src/reference/ReferenceUtils.d.ts +80 -0
  224. package/types/src/reference/index.d.ts +2 -0
  225. package/types/src/resource/IResource.d.ts +21 -1
  226. package/types/src/resource/IResourceCollection.d.ts +9 -1
  227. package/types/src/resource/ResourceCollection.d.ts +6 -6
  228. package/types/src/scripting/FunctionArguments.d.ts +22 -0
  229. package/types/src/scripting/FunctionCollection.d.ts +41 -11
  230. package/types/src/scripting/IFunctionCollection.d.ts +41 -0
  231. package/types/src/scripting/IModule.d.ts +25 -0
  232. package/types/src/scripting/IModuleCollection.d.ts +17 -0
  233. package/types/src/scripting/IScript.d.ts +18 -0
  234. package/types/src/scripting/Module.d.ts +34 -6
  235. package/types/src/scripting/ModuleCollection.d.ts +17 -12
  236. package/types/src/scripting/Runtime.d.ts +15 -0
  237. package/types/src/scripting/Scripts.d.ts +2 -0
  238. package/types/src/scripting/TypedFunction.d.ts +197 -4
  239. package/types/src/scripting/_FunctionIndex.d.ts +5 -0
  240. package/types/src/scripting/_ModuleUtils.d.ts +11 -1
  241. package/types/src/scripting/_ScriptUtils.d.ts +3 -0
  242. package/types/src/scripting/declarations.browser.d.ts +10 -0
  243. package/types/src/scripting/declarations.d.ts +49 -0
  244. package/types/src/scripting/declarations.node.d.ts +9 -0
  245. package/types/src/scripting/index.d.ts +3 -0
  246. package/types/src/selection/IRangeSelection.d.ts +9 -4
  247. package/types/src/selection/RangeSelection.d.ts +2 -0
  248. package/types/src/shape/IShape.d.ts +41 -3
  249. package/types/src/shape/Shape.d.ts +10 -0
  250. package/types/src/shape/_ShapeXml.d.ts +28 -0
  251. package/types/src/sheet/CellRegion.d.ts +6 -0
  252. package/types/src/sheet/ICellContainerOptions.d.ts +50 -0
  253. package/types/src/sheet/ISheet.d.ts +224 -41
  254. package/types/src/sheet/ISheetCollection.d.ts +2 -5
  255. package/types/src/sheet/NamedCellRange.d.ts +16 -7
  256. package/types/src/sheet/Sheet.d.ts +757 -114
  257. package/types/src/sheet/SheetCell.d.ts +81 -21
  258. package/types/src/sheet/SheetCollection.d.ts +19 -8
  259. package/types/src/sheet/SheetRange.d.ts +65 -14
  260. package/types/src/sheet/SheetRanges.d.ts +4 -6
  261. package/types/src/sheet/_CellBuffer.d.ts +214 -0
  262. package/types/src/sheet/_InvalidSheetRange.d.ts +5 -5
  263. package/types/src/sheet/_ListenerAnchor.d.ts +104 -0
  264. package/types/src/sheet/_RangeStateSweep.d.ts +16 -0
  265. package/types/src/sheet/_ScalarListFactory.d.ts +61 -0
  266. package/types/src/sheet/_SheetAutoFillUtils.d.ts +74 -0
  267. package/types/src/sheet/_SheetAutoFitUtils.d.ts +28 -0
  268. package/types/src/sheet/_SheetEvents.d.ts +43 -0
  269. package/types/src/sheet/_SheetFilterUtils.d.ts +32 -1
  270. package/types/src/sheet/_SheetIntents.d.ts +250 -0
  271. package/types/src/sheet/_SheetMutations.d.ts +179 -59
  272. package/types/src/sheet/_SheetStateReader.d.ts +16 -10
  273. package/types/src/sheet/_SheetStateTypes.d.ts +57 -73
  274. package/types/src/sheet/_SheetUtils.d.ts +2 -18
  275. package/types/src/sheet/_WatchAnchor.d.ts +93 -0
  276. package/types/src/sheet/spatial/HeldFormulaEntry.d.ts +36 -0
  277. package/types/src/sheet/spatial/index.d.ts +1 -0
  278. package/types/src/sheet/style/SheetCellStyle.d.ts +91 -64
  279. package/types/src/sheet/style/SheetDirectStyle.d.ts +16 -5
  280. package/types/src/sheet/style/_Resolvers.d.ts +5 -3
  281. package/types/src/sheet/style/_StyleUtils.d.ts +37 -7
  282. package/types/src/sheetHeader/ISheetHeader.d.ts +2 -0
  283. package/types/src/sheetHeader/SheetHeader.d.ts +14 -0
  284. package/types/src/sheetProtection/ISheetProtection.d.ts +41 -7
  285. package/types/src/sheetProtection/SheetProtection.d.ts +12 -0
  286. package/types/src/sheetView/ISheetView.d.ts +45 -1
  287. package/types/src/sheetView/SheetView.d.ts +11 -0
  288. package/types/src/slicer/ISlicer.d.ts +2 -0
  289. package/types/src/slicer/Slicer.d.ts +2 -0
  290. package/types/src/sort/ISort.d.ts +2 -0
  291. package/types/src/string/IStringCollection.d.ts +5 -0
  292. package/types/src/string/StringCollection.d.ts +6 -6
  293. package/types/src/style/INamedStyleCollection.d.ts +72 -0
  294. package/types/src/style/IStyle.d.ts +30 -10
  295. package/types/src/style/IStyleCollection.d.ts +63 -42
  296. package/types/src/style/ITableStyleCollection.d.ts +89 -0
  297. package/types/src/style/NamedStyleCollection.d.ts +39 -0
  298. package/types/src/style/StyleCollection.d.ts +41 -5
  299. package/types/src/style/TableStyleCollection.d.ts +49 -0
  300. package/types/src/style/_BuiltInStyleDefs.d.ts +3 -3
  301. package/types/src/style/index.d.ts +4 -0
  302. package/types/src/table/AnchoredTable.d.ts +644 -68
  303. package/types/src/table/AutoTable.d.ts +5 -5
  304. package/types/src/table/ITable.d.ts +228 -30
  305. package/types/src/table/ITableCollection.d.ts +2 -0
  306. package/types/src/table/TableCollection.d.ts +19 -8
  307. package/types/src/table/_FilterField.d.ts +7 -5
  308. package/types/src/table/_NamedTable.d.ts +17 -1
  309. package/types/src/table/_NamedTableSource.d.ts +1 -0
  310. package/types/src/table/_SortField.d.ts +2 -0
  311. package/types/src/table/_TableColumn.d.ts +13 -2
  312. package/types/src/table/_TableMessages.d.ts +1 -0
  313. package/types/src/table/_TableUtils.d.ts +40 -0
  314. package/types/src/text/Bullet.d.ts +4 -0
  315. package/types/src/text/ITextFrame.d.ts +25 -1
  316. package/types/src/text/TextBoxAlignment.d.ts +15 -6
  317. package/types/src/text/TextFrame.d.ts +4 -0
  318. package/types/src/text/TextLine.d.ts +4 -0
  319. package/types/src/text/TextParagraph.d.ts +4 -0
  320. package/types/src/text/TextRun.d.ts +9 -0
  321. package/types/src/text/TextStacked.d.ts +83 -0
  322. package/types/src/text/index.d.ts +1 -0
  323. package/types/src/theme/ITheme.d.ts +2 -0
  324. package/types/src/theme/IThemeCollection.d.ts +2 -0
  325. package/types/src/theme/ThemeCollection.d.ts +8 -7
  326. package/types/src/transaction/ITransaction.d.ts +238 -36
  327. package/types/src/transaction/Transaction.d.ts +99 -11
  328. package/types/src/type/AbstractCollection.d.ts +101 -0
  329. package/types/src/type/ICollection.d.ts +117 -0
  330. package/types/src/type/ITypes.d.ts +9 -7
  331. package/types/src/type/index.d.ts +1 -0
  332. package/types/src/utils/_CSSUtils.d.ts +3 -3
  333. package/types/src/workbook/IWorkbook.d.ts +171 -40
  334. package/types/src/workbook/Workbook.d.ts +103 -7
  335. package/types/src/workbook/_WorkbookIntents.d.ts +36 -0
  336. package/types/src/workbookProtection/IWorkbookProtection.d.ts +7 -0
  337. package/types/src/workbookProtection/WorkbookProtection.d.ts +3 -0
  338. package/types/src/workbookView/IWorkbookView.d.ts +12 -0
  339. package/types/src/workbookView/WorkbookView.d.ts +5 -0
  340. package/browser/cjs/BF14ZEAnaqxXroSj.cjs +0 -1
  341. package/browser/cjs/BXtvdT1Z-MsB_o5F.cjs +0 -1
  342. package/browser/cjs/Bc4JjVVZfFo3R4He.cjs +0 -33
  343. package/browser/cjs/CD2RXdnfqSYNc6gX.cjs +0 -57
  344. package/browser/cjs/DcLpXGexEtOxi-dD.cjs +0 -1
  345. package/browser/esm/0Mj5WKM362q6CECb.mjs +0 -824
  346. package/browser/esm/CPTtL2f6_4iblmFM.mjs +0 -4436
  347. package/browser/esm/CoA-sUxjiIUIpTUF.mjs +0 -109
  348. package/browser/esm/Dy4Sdpju1T2icURu.mjs +0 -50854
  349. package/node/esm/BtGxbEbBm79YvF_k.mjs +0 -843
  350. package/node/esm/DqgWsVXROpSgKq6c.mjs +0 -114
  351. package/types/src/cellRange/_GraphNode.d.ts +0 -38
  352. package/types/src/dataValidation/_Utils.d.ts +0 -10
  353. package/types/src/sheet/listener/RangesListener.d.ts +0 -32
  354. package/types/src/sheet/listener/RangesListenerEntry.d.ts +0 -19
  355. package/types/src/sheet/listener/index.d.ts +0 -3
@@ -1,22 +1,117 @@
1
+ import { IAnchored } from '../anchored';
2
+ import { ICellRange } from '../cellRange';
3
+ import { IListener } from '../listener';
4
+ import { ITransaction } from '../transaction';
5
+ import { IPerson } from '../person';
6
+ import { ISheet } from '../sheet';
1
7
  /**
2
- * TODO - Implement IComment.
3
- * TODO - how to make this threaded?
4
- * TODO - rationalize this with notes?
5
- * -Each Comment will have a unique id and a parent that it is a reply to.
8
+ * A comment on a cell: the root of a thread, with its replies, or a note.
6
9
  *
7
- * ? How to add root range.addComment(content) ? (only allows for 1 root)
8
-
9
- * https://learn.microsoft.com/en-us/javascript/api/office-scripts/excelscript/excelscript.contenttype?view=office-scripts
10
+ * @remarks
11
+ * Follows Office Scripts' `Comment`: one per cell, the thread's root, resolved as a whole,
12
+ * with replies ({@link IComment.IReply}) that borrow its cell. A note — Excel's older yellow
13
+ * box — is a comment that {@link isNote | says so}: it has no replies, no resolved state and no
14
+ * creation date, and its content may carry formatting runs where a thread's is plain text.
10
15
  *
11
- * Excel has a resolved/done status
12
- * Excel has mentions?
16
+ * Anchored to its cell, so it follows a row or column insert or delete and is deleted when its
17
+ * cell is.
13
18
  */
14
- export interface IComment {
19
+ export interface IComment extends IAnchored {
20
+ /**
21
+ * The comment's identifier, unique within the workbook.
22
+ */
23
+ getId(): string;
24
+ /**
25
+ * The sheet the comment is on.
26
+ */
27
+ getSheet(): ISheet;
28
+ /**
29
+ * The cell the comment is on.
30
+ *
31
+ * @remarks
32
+ * Invalid, never null, once the cell has been deleted — see {@link IAnchored.getRanges}.
33
+ */
34
+ getRange(options?: ICellRange.GetRangeOptions): ICellRange;
35
+ /**
36
+ * The content as plain text.
37
+ *
38
+ * @remarks
39
+ * A note's formatting runs are joined; see {@link getRichContent} for them.
40
+ */
15
41
  getContent(): string;
16
- setContent(content: string): void;
17
- getUserId(): string;
18
- delete(): void;
19
- getCreationDate(): Date;
42
+ /**
43
+ * Replaces the content.
44
+ *
45
+ * @param content Plain text, or formatting runs for a note.
46
+ */
47
+ setContent(content: IComment.Content, options?: ITransaction.OperationOptions): this;
48
+ /**
49
+ * The content with its formatting runs, or `null` when it is plain text.
50
+ */
51
+ getRichContent(): IComment.RichContent | null;
52
+ /**
53
+ * The person who wrote the comment, or `null` if the workbook does not know them.
54
+ */
55
+ getAuthor(): IPerson | null;
56
+ /**
57
+ * When the comment was written, or `null` for a note, which Excel does not date.
58
+ */
59
+ getCreationDate(): Date | null;
60
+ /**
61
+ * Whether the thread is resolved.
62
+ *
63
+ * @remarks
64
+ * Always `false` for a note.
65
+ */
66
+ isResolved(): boolean;
67
+ /**
68
+ * Marks the thread resolved, or reopens it.
69
+ */
70
+ setResolved(resolved: boolean, options?: ITransaction.OperationOptions): this;
71
+ /**
72
+ * Whether this is a note rather than a threaded comment.
73
+ *
74
+ * @see {@link IComment.Properties.asNote}
75
+ */
76
+ isNote(): boolean;
77
+ /**
78
+ * The replies, oldest first.
79
+ */
80
+ getReplies(): IComment.IReply[];
81
+ /**
82
+ * Returns the reply with the given id, or `null` if there is none.
83
+ */
84
+ getReply(id: string): IComment.IReply | null;
85
+ /**
86
+ * Adds a reply.
87
+ *
88
+ * @param content The reply's text.
89
+ * @param options The person replying, when not the {@link IPersonCollection.getCurrent | current}
90
+ * one.
91
+ *
92
+ * @remarks
93
+ * A note has no replies; adding one converts it to a threaded comment, as Excel does.
94
+ */
95
+ addReply(content: IComment.Content, options?: IComment.AddReplyOptions): IComment.IReply;
96
+ /**
97
+ * Set multiple properties at once.
98
+ */
99
+ update(properties: IComment.Modifiers | IComment, options?: ITransaction.OperationOptions): this;
100
+ /**
101
+ * Add Listeners.
102
+ *
103
+ * @see
104
+ * {@link IListener.ISource.addListeners}
105
+ */
106
+ addListeners(listeners: IComment.IListeners, options?: IListener.Options): IListener.Remove;
107
+ /**
108
+ * @returns The current state as a JSON object, or `null` if there is no state.
109
+ */
110
+ toJSON(): IComment.JSON | null;
111
+ /**
112
+ * For runtime type checking.
113
+ */
114
+ readonly isIComment: true;
20
115
  }
21
116
  /**
22
117
  * {@inheritDoc IComment}
@@ -24,85 +119,261 @@ export interface IComment {
24
119
  * ### **Interface**
25
120
  *
26
121
  * {@link IComment}
122
+ *
123
+ * **Additional Interfaces**
124
+ * * {@link ICommentCollection}
125
+ * * {@link IComment.IReply}
27
126
  */
28
127
  export declare namespace IComment {
29
- interface Properties {
128
+ /**
129
+ * A reply within a thread.
130
+ *
131
+ * @remarks
132
+ * Follows Office Scripts' `CommentReply`: it has an author, content and a date of its own, and
133
+ * borrows everything else — the cell, the resolved state — from its {@link getParent | parent}.
134
+ */
135
+ interface IReply {
30
136
  /**
31
- * The content of the comment.
137
+ * The reply's identifier, unique within the workbook.
32
138
  */
33
- content?: any;
34
- asNote?: boolean;
139
+ getId(): string;
140
+ /**
141
+ * The comment this replies to.
142
+ */
143
+ getParent(): IComment;
144
+ /**
145
+ * The cell the thread is on — the parent's.
146
+ */
147
+ getRange(options?: ICellRange.GetRangeOptions): ICellRange;
148
+ /**
149
+ * The content as plain text.
150
+ */
151
+ getContent(): string;
152
+ /**
153
+ * Replaces the content.
154
+ */
155
+ setContent(content: IComment.Content, options?: ITransaction.OperationOptions): this;
156
+ /**
157
+ * The person who wrote the reply, or `null` if the workbook does not know them.
158
+ */
159
+ getAuthor(): IPerson | null;
160
+ /**
161
+ * When the reply was written.
162
+ */
163
+ getCreationDate(): Date | null;
164
+ /**
165
+ * Whether the thread is resolved — the parent's answer.
166
+ */
167
+ isResolved(): boolean;
168
+ /**
169
+ * Removes the reply from the thread.
170
+ */
171
+ delete(options?: ITransaction.OperationOptions): void;
172
+ /**
173
+ * Returns `true` once the reply has been removed.
174
+ */
175
+ isDeleted(): boolean;
176
+ /**
177
+ * @returns The current state as a JSON object.
178
+ */
179
+ toJSON(): IComment.ReplyJSON;
180
+ /**
181
+ * For runtime type checking.
182
+ */
183
+ readonly isICommentReply: true;
35
184
  }
36
185
  /**
37
- * For persisting.
186
+ * One formatted span of a note's content.
187
+ *
188
+ * @remarks
189
+ * A note keeps Excel's rich text; a threaded comment is plain text and never carries these.
190
+ * Every property but `text` is optional and inherits the note's default when absent.
38
191
  */
39
- interface RichJSON extends IComment.Properties {
192
+ interface Run {
40
193
  /**
41
- * Required for referencing in replies.
194
+ * The text of the span.
42
195
  */
43
- id: string;
196
+ text: string;
44
197
  /**
45
- * The id for author or the comment the comment.
198
+ * The font name.
46
199
  */
47
- personId: string;
200
+ font?: string;
201
+ /**
202
+ * The font size in points.
203
+ */
204
+ size?: number;
205
+ bold?: boolean;
206
+ italic?: boolean;
48
207
  /**
49
- * If this is a reply, the id of the parent comment.
208
+ * The color as a hex string.
50
209
  */
51
- parentId?: string;
210
+ color?: string;
211
+ }
212
+ /**
213
+ * Content with formatting: a list of {@link Run | runs}.
214
+ */
215
+ interface RichContent {
216
+ runs: Run[];
217
+ }
218
+ /**
219
+ * What a comment says: plain text, or formatting runs for a note.
220
+ */
221
+ type Content = string | RichContent;
222
+ /**
223
+ * The values that can be set on a comment.
224
+ */
225
+ interface Properties {
52
226
  /**
53
- * An unordered list of mention ids.
54
- * @remarks
55
- * These are not order dependent.
227
+ * {@inheritDoc IComment.getContent}
56
228
  */
57
- mentionsIds?: string[];
229
+ content?: Content;
58
230
  /**
59
- * The date the comment was created.
231
+ * Whether the comment is a note: displayed in Excel's simple box rather than as a thread,
232
+ * with no author date, replies or resolved state.
233
+ *
234
+ * @defaultValue false
60
235
  */
61
- dt?: Date | string;
236
+ asNote?: boolean;
62
237
  /**
63
- * The comment has been marked as done.
238
+ * {@inheritDoc IComment.isResolved}
64
239
  */
65
- done?: boolean;
240
+ resolved?: boolean;
241
+ /**
242
+ * The author: a person, or a display name. Defaults to the workbook's
243
+ * {@link IPersonCollection.getCurrent | current} person.
244
+ */
245
+ person?: IPerson | string;
66
246
  }
67
- type JSON = Partial<IComment.RichJSON> | string;
247
+ /**
248
+ * Modifiers describe a partial list of properties that can be set.
249
+ */
250
+ type Modifiers = Partial<IComment.Properties>;
251
+ /**
252
+ * Used when updating a comment through a cell or range: modifiers, a plain string as the
253
+ * content, or `null` to remove.
254
+ *
255
+ * @see
256
+ * `ICellRange.setComments`
257
+ */
258
+ type Update = IComment.Modifiers | string | null;
259
+ /**
260
+ * Options for {@link IComment.addReply}.
261
+ */
262
+ interface AddReplyOptions extends ITransaction.OperationOptions {
263
+ /**
264
+ * {@inheritDoc IComment.Properties.person}
265
+ */
266
+ person?: IPerson | string;
267
+ }
268
+ /**
269
+ * A mention of a person within a comment's text.
270
+ */
68
271
  interface MentionJSON {
69
272
  /**
70
273
  * The id for the mention.
71
274
  */
72
275
  id: string;
73
276
  /**
74
- * The id for author or the comment the comment.
277
+ * The id of the person mentioned.
75
278
  */
76
279
  personId: string;
77
280
  /**
78
- * The start of the mention.
281
+ * Where the mention starts in the text.
79
282
  */
80
283
  startIndex?: number;
81
284
  /**
82
- * The length of the mention.
285
+ * How many characters the mention spans.
83
286
  */
84
287
  length?: number;
85
288
  }
86
289
  /**
87
- * Represents a reference to person. Either in a comment, protection clause or mention.
290
+ * The persisted shape shared by a comment and a reply.
88
291
  */
89
- interface PersonJSON {
292
+ interface EntryJSON {
90
293
  /**
91
- * A human readable string for the name.
294
+ * {@inheritDoc IComment.getId}
92
295
  */
93
- displayName?: string;
296
+ id: string;
94
297
  /**
95
- * A unique identifier.
298
+ * The id of the author, in the workbook's people.
96
299
  */
97
- id: string;
300
+ personId?: string;
98
301
  /**
99
- * The id for authorizing against the providerId.
302
+ * {@inheritDoc IComment.getContent}
100
303
  */
101
- userId?: string;
304
+ content?: Content;
102
305
  /**
103
- * The system that provided the person.
306
+ * When it was written, as an ISO string.
104
307
  */
105
- providerId?: string;
308
+ dt?: string;
309
+ /**
310
+ * People mentioned in the text.
311
+ */
312
+ mentions?: MentionJSON[];
313
+ }
314
+ /**
315
+ * A reply, for persisting.
316
+ */
317
+ interface ReplyJSON extends EntryJSON {
318
+ }
319
+ /**
320
+ * The note's box: the shape Excel draws the note in, held as it was read.
321
+ *
322
+ * @remarks
323
+ * Only ever present on a comment read from a file. A comment authored here has none, and is
324
+ * written with Excel's default box (hidden until hovered, hung to the right of its cell); a
325
+ * comment that has one is written with that box, its cell rewritten from the comment's so it
326
+ * stays with the note, its size, fill and offsets replayed as they were.
327
+ *
328
+ * Opaque markup, as a half-house — the VML `<v:shape>`, not a {@link IShape.JSON}, whose own
329
+ * `xml` is DrawingML. What it holds is a movable's worth: the cells and offsets of its corners
330
+ * (an {@link IMovable.AnchorOffset}), whether it is hidden, and a shape's fill and size. That
331
+ * is where it graduates to — an anchor, a `hidden` flag and an {@link IShape.JSON} — once the
332
+ * VML can be read into them; the offsets are the authoring machine's pixels, which is what
333
+ * keeps them opaque today.
334
+ */
335
+ interface BoxJSON {
336
+ xml: string;
337
+ }
338
+ /**
339
+ * A comment, for persisting.
340
+ */
341
+ interface JSON extends EntryJSON {
342
+ /**
343
+ * {@inheritDoc IComment.isResolved}
344
+ */
345
+ done?: boolean;
346
+ /**
347
+ * {@inheritDoc IComment.isNote}
348
+ */
349
+ asNote?: boolean;
350
+ /**
351
+ * The replies, oldest first.
352
+ */
353
+ replies?: ReplyJSON[];
354
+ /**
355
+ * {@inheritDoc IComment.BoxJSON}
356
+ */
357
+ box?: BoxJSON;
358
+ }
359
+ /**
360
+ * IListener for {@link IComment} events.
361
+ */
362
+ interface Events extends IAnchored.Events<IComment> {
363
+ /**
364
+ * Called when the content or author changes.
365
+ */
366
+ onContentChange?(source: IComment): void;
367
+ /**
368
+ * Called when the thread is resolved or reopened.
369
+ */
370
+ onResolvedChange?(source: IComment): void;
371
+ /**
372
+ * Called when a reply is added, edited or removed.
373
+ */
374
+ onRepliesChange?(source: IComment): void;
375
+ }
376
+ interface IListeners extends IListener.Callbacks<IComment, IComment.Events> {
106
377
  }
107
378
  }
108
379
  //# sourceMappingURL=IComment.d.ts.map
@@ -0,0 +1,90 @@
1
+ import { ICollection } from '../type';
2
+ import { ICellRange } from '../cellRange';
3
+ import { IAnchored } from '../anchored';
4
+ import { IComment } from './IComment';
5
+ /**
6
+ * Holds {@link IComment | comments} — a sheet's, or every sheet's in the workbook.
7
+ */
8
+ export interface ICommentCollection extends ICollection<IComment> {
9
+ /**
10
+ * Returns items that match the filter criteria.
11
+ *
12
+ * If no filter criteria is provided, all items will be returned.
13
+ *
14
+ * @param options {@link ICommentCollection.GetItemsOptions}
15
+ */
16
+ getItems(options?: ICommentCollection.GetItemsOptions): IComment[];
17
+ /**
18
+ * Adds a comment to a cell.
19
+ *
20
+ * @param address The cell. An address naming more than one cell throws, as Excel's does.
21
+ * @param content The text, or formatting runs for a note.
22
+ * @param options {@link ICommentCollection.AddOptions}
23
+ *
24
+ * @remarks
25
+ * A cell holds one comment; adding to a cell that has one throws unless
26
+ * {@link ICommentCollection.AddOptions.replaceExisting} is set. Available on a sheet's
27
+ * collection; the workbook's is a view.
28
+ */
29
+ add(address: ICellRange.Address, content: IComment.Content, options?: ICommentCollection.AddOptions): IComment;
30
+ /**
31
+ * Returns the comment with the given id, or `null` if there is none.
32
+ */
33
+ getById(id: string): IComment | null;
34
+ /**
35
+ * Returns the comment on the given cell, or `null` if there is none.
36
+ *
37
+ * @param address A cell. For a larger address, the first comment within it in reading order.
38
+ */
39
+ getAt(address: ICellRange.Address): IComment | null;
40
+ /**
41
+ * Returns the comment a reply belongs to, or `null` if no thread has that reply.
42
+ */
43
+ getByReplyId(replyId: string): IComment | null;
44
+ /** For runtime type checking. */
45
+ readonly isICommentCollection: true;
46
+ }
47
+ /**
48
+ * {@inheritDoc ICommentCollection}
49
+ * @see
50
+ * ### **Interface**
51
+ *
52
+ * {@link ICommentCollection}
53
+ */
54
+ export declare namespace ICommentCollection {
55
+ /**
56
+ * Options for adding a comment.
57
+ *
58
+ * @remarks
59
+ * `replaceExisting` replaces the comment on the cell when there is one, rather than throwing.
60
+ */
61
+ interface AddOptions extends Omit<IComment.Properties, 'content'>, Pick<IAnchored.AddOptions, 'replaceExisting' | 'description' | 'autoSelect'> {
62
+ }
63
+ interface GetItemsOptions extends ICollection.GetItemsOptions {
64
+ /**
65
+ * If provided, the filter will be limited to items that intersect the range.
66
+ */
67
+ address?: ICellRange.Address;
68
+ /**
69
+ * Indicate if items that are in hidden headers or marked as hidden should be returned.
70
+ *
71
+ * @defaultValue false
72
+ */
73
+ ignoreHidden?: boolean;
74
+ /**
75
+ * Only return items that are completely contained with the search bounds.
76
+ *
77
+ * @defaultValue false
78
+ */
79
+ fullyContained?: boolean;
80
+ /**
81
+ * Only threads with this resolved state.
82
+ */
83
+ resolved?: boolean;
84
+ /**
85
+ * `true` for notes only, `false` for threaded comments only.
86
+ */
87
+ notes?: boolean;
88
+ }
89
+ }
90
+ //# sourceMappingURL=ICommentCollection.d.ts.map
@@ -0,0 +1,28 @@
1
+ import { IPerson } from '../person';
2
+ import { IComment } from './IComment';
3
+ /**
4
+ * Resolve an {@link IComment.Update} to modifiers: a string is the content, `null` is a remove
5
+ * (returned as `null`), modifiers are copied.
6
+ * @internal
7
+ */
8
+ export declare function resolveCommentUpdate(update: IComment.Update | undefined): IComment.Modifiers | null;
9
+ /**
10
+ * The plain text of a content value.
11
+ * @internal
12
+ */
13
+ export declare function contentToText(content: IComment.Content | null | undefined): string;
14
+ /**
15
+ * Content as it is stored: a string when there are no runs or none carries formatting, otherwise
16
+ * the runs, copied.
17
+ * @internal
18
+ */
19
+ export declare function normalizeContent(content: IComment.Content | null | undefined): IComment.Content;
20
+ /**
21
+ * Resolves the author option to a person id.
22
+ * @internal
23
+ */
24
+ export declare function resolveAuthorId(person: IPerson | string | undefined, people: {
25
+ add(person: IPerson.Properties | string): IPerson;
26
+ getCurrent(): IPerson;
27
+ } | null): string | null;
28
+ //# sourceMappingURL=_CommentUtils.d.ts.map
@@ -1,2 +1,3 @@
1
1
  export * from './IComment';
2
+ export * from './ICommentCollection';
2
3
  //# sourceMappingURL=index.d.ts.map