@sheetxl/sdk 0.8.0-beta.1 → 0.8.0-beta.11
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.
- package/README.md +1 -1
- package/THIRD-PARTY-NOTICES.md +1 -1
- package/browser/esm/B7aUIvgUjncMMD_i.mjs +394 -0
- package/browser/esm/BFagR2JeWs74iAG3.mjs +171 -0
- package/browser/esm/BGOFfpxr2jPIdqmV.mjs +40 -0
- package/browser/esm/BLoUBId2xZpXAK_H.mjs +698 -0
- package/browser/esm/BMyDRQ716j79h_bH.mjs +86 -0
- package/browser/esm/BVDiOXGMc5_FMGfy.mjs +400 -0
- package/browser/esm/BjkCiv5Jz6WYKZeu.mjs +598 -0
- package/browser/esm/BkBhLS0l6z8sxI6D.mjs +441 -0
- package/browser/esm/BnG31I6Oj_HEtSPS.mjs +167 -0
- package/browser/esm/BoV6zPBnfqCBCqZ7.mjs +7729 -0
- package/browser/esm/BpgskG1Er_lGQ_yS.mjs +142 -0
- package/browser/esm/BtvLTTfSBdAKplVG.mjs +466 -0
- package/browser/esm/C16ycKja6zG0crV_.mjs +55580 -0
- package/browser/esm/C2VbEI_XVAoseAwa.mjs +1552 -0
- package/browser/esm/C4MqfLn9Dm-l3OIk.mjs +540 -0
- package/browser/esm/C5E6zSGAALWf61n4.mjs +199 -0
- package/browser/esm/CHU6iu_WGlm7fLET.mjs +1001 -0
- package/browser/esm/CQYjO777cmAznUzK.mjs +527 -0
- package/browser/esm/CU3DmJ-YnVVrC1_k.mjs +1123 -0
- package/browser/esm/CV5EGEjG5_-CPpP0.mjs +8212 -0
- package/browser/esm/{uyWBMSIxMlt8n5Z3.mjs → CaB7J-xgfKO2uAkG.mjs} +2 -2
- package/browser/esm/CkxWugaJFjDGZNZ-.mjs +12 -0
- package/browser/esm/ClPfI4lODvCece29.mjs +632 -0
- package/browser/esm/ClbvFbFzFzXLBKNN.mjs +193 -0
- package/browser/esm/{DlPMeIyxT9tG_WDk.mjs → Ctjb0SsxV4K4MMqG.mjs} +179 -202
- package/browser/esm/D5np__Jb1euAyaLw.mjs +7 -0
- package/browser/esm/DEiPS3Dr-s4fPbVZ.mjs +607 -0
- package/browser/esm/DLLE0FZNsKxbBzRn.mjs +128 -0
- package/browser/esm/DWNzqw7DUKwoxjri.mjs +20 -0
- package/browser/esm/{B0HS42a7lga1k1U_.mjs → Dlmig06rIo7cInRk.mjs} +2 -2
- package/browser/esm/{f2G3QRgEbvFJcoa2.mjs → DvAaxH6z_tGvrRzl.mjs} +1704 -1008
- package/browser/esm/Dyq_ivuHvlXLwPCl.mjs +12831 -0
- package/browser/esm/PcHFjNzQsE54POri.mjs +1141 -0
- package/browser/esm/S2dNNx1a5ydRnARM.mjs +367 -0
- package/browser/esm/f1IoRb7tEb0QmCSt.mjs +110 -0
- package/browser/esm/gssVX_FH1XFN-twD.mjs +210 -0
- package/browser/esm/index.mjs +1759 -1161
- package/browser/esm/nvU0ClAbf0g94YBK.mjs +1695 -0
- package/browser/esm/zlLuW405RSguy4Kn.mjs +357 -0
- package/licenses/dependencies.txt +141 -141
- package/node/esm/2Kihw_-5lVTEnwMa.mjs +1132 -0
- package/node/esm/857CIBgQgGpnqrXk.mjs +199 -0
- package/node/esm/B084DssTcdBheTp_.mjs +7966 -0
- package/node/esm/B21JjOLghRoDOrkx.mjs +134 -0
- package/node/esm/BIRq1kT7lLRzns9t.mjs +610 -0
- package/node/esm/BIwObuhTJYf0jpUa.mjs +451 -0
- package/node/esm/Bbf1Pm9Gk7YpLTvg.mjs +12 -0
- package/node/esm/BqiexuA89caYnAPz.mjs +1135 -0
- package/node/esm/BrCKGFRsX_ezFJ4B.mjs +811 -0
- package/node/esm/CCN5vD410obwdz38.mjs +405 -0
- package/node/esm/{Cku7XiUvw1xrRasi.mjs → CDHdgJXH2vS71WMc.mjs} +1 -1
- package/node/esm/CGp6VZL-gZa9Uezx.mjs +1860 -0
- package/node/esm/CNCNJNg890KdgkWh.mjs +142 -0
- package/node/esm/CZICGK_ss0HoGHCP.mjs +7 -0
- package/node/esm/CZiqiay42tFTrLI4.mjs +171 -0
- package/node/esm/CdJHUJSBRHZoryPe.mjs +360 -0
- package/node/esm/Ct3h15sCus4Tgt6M.mjs +1762 -0
- package/node/esm/CwePQwTILHHjGDkZ.mjs +1033 -0
- package/node/esm/CzXT00vrQa1_gvW9.mjs +28 -0
- package/node/esm/D1TKBVmoKGAXf37B.mjs +402 -0
- package/node/esm/D2KBymQJd1XhpeQD.mjs +540 -0
- package/node/esm/D6e2z7eZpxOJXHc7.mjs +1783 -0
- package/node/esm/D8zEN-6ZdDqDvTxM.mjs +639 -0
- package/node/esm/DNRhGK-8Tr9xcRyc.mjs +8320 -0
- package/node/esm/DOU54VsOjG-m-NyQ.mjs +210 -0
- package/node/esm/DUTskXCXref-IJnI.mjs +133 -0
- package/node/esm/D_t5AUxSm7_icjzq.mjs +638 -0
- package/node/esm/Db0v7zXNnyjBIjjI.mjs +372 -0
- package/node/esm/De2IONBxQhz-Qbyh.mjs +596 -0
- package/node/esm/Df1bL6VFvrqIdSLB.mjs +40 -0
- package/node/esm/DkwIPzKc3UwdUIfM.mjs +86 -0
- package/node/esm/DrTZbfemSLq2mseG.mjs +111 -0
- package/node/esm/OVfaSb506tNSIvbv.mjs +57107 -0
- package/node/esm/cGwrLA1RCE-WhJ7w.mjs +255 -0
- package/node/esm/index.mjs +2873 -53929
- package/node/esm/mFiBSM7XgBHV9AY7.mjs +13010 -0
- package/node/esm/yavzZOiZW_EjG9lE.mjs +15 -0
- package/package.json +15 -17
- package/resources/contents.json +184 -0
- package/resources/fonts/arial-bold-italic.hinted.json +125 -0
- package/resources/fonts/arial-bold-italic.metrics.json +139 -0
- package/resources/fonts/arial-bold-italic.rows.json +9 -0
- package/resources/fonts/arial-bold.hinted.json +125 -0
- package/resources/fonts/arial-bold.metrics.json +139 -0
- package/resources/fonts/arial-bold.rows.json +9 -0
- package/resources/fonts/arial-italic.hinted.json +125 -0
- package/resources/fonts/arial-italic.metrics.json +139 -0
- package/resources/fonts/arial-italic.rows.json +9 -0
- package/resources/fonts/arial-regular.hinted.json +125 -0
- package/resources/fonts/arial-regular.metrics.json +139 -0
- package/resources/fonts/arial-regular.rows.json +9 -0
- package/resources/fonts/calibri-bold-italic.hinted.json +122 -0
- package/resources/fonts/calibri-bold-italic.metrics.json +137 -0
- package/resources/fonts/calibri-bold-italic.rows.json +9 -0
- package/resources/fonts/calibri-bold.hinted.json +122 -0
- package/resources/fonts/calibri-bold.metrics.json +137 -0
- package/resources/fonts/calibri-bold.rows.json +9 -0
- package/resources/fonts/calibri-italic.hinted.json +121 -0
- package/resources/fonts/calibri-italic.metrics.json +137 -0
- package/resources/fonts/calibri-italic.rows.json +9 -0
- package/resources/fonts/calibri-regular.hinted.json +121 -0
- package/resources/fonts/calibri-regular.metrics.json +137 -0
- package/resources/fonts/calibri-regular.rows.json +9 -0
- package/resources/fonts/cambria-bold-italic.hinted.json +105 -0
- package/resources/fonts/cambria-bold-italic.metrics.json +66 -0
- package/resources/fonts/cambria-bold-italic.rows.json +9 -0
- package/resources/fonts/cambria-bold.hinted.json +108 -0
- package/resources/fonts/cambria-bold.metrics.json +66 -0
- package/resources/fonts/cambria-bold.rows.json +9 -0
- package/resources/fonts/cambria-italic.hinted.json +102 -0
- package/resources/fonts/cambria-italic.metrics.json +66 -0
- package/resources/fonts/cambria-italic.rows.json +9 -0
- package/resources/fonts/cambria-regular.hinted.json +110 -0
- package/resources/fonts/cambria-regular.metrics.json +66 -0
- package/resources/fonts/cambria-regular.rows.json +9 -0
- package/resources/fonts/contents.json +406 -0
- package/resources/fonts/courier-new-bold-italic.hinted.json +11 -0
- package/resources/fonts/courier-new-bold-italic.metrics.json +143 -0
- package/resources/fonts/courier-new-bold-italic.rows.json +9 -0
- package/resources/fonts/courier-new-bold.hinted.json +11 -0
- package/resources/fonts/courier-new-bold.metrics.json +143 -0
- package/resources/fonts/courier-new-bold.rows.json +9 -0
- package/resources/fonts/courier-new-italic.hinted.json +11 -0
- package/resources/fonts/courier-new-italic.metrics.json +143 -0
- package/resources/fonts/courier-new-italic.rows.json +9 -0
- package/resources/fonts/courier-new-regular.hinted.json +11 -0
- package/resources/fonts/courier-new-regular.metrics.json +143 -0
- package/resources/fonts/courier-new-regular.rows.json +9 -0
- package/resources/fonts/times-new-roman-bold-italic.hinted.json +125 -0
- package/resources/fonts/times-new-roman-bold-italic.metrics.json +141 -0
- package/resources/fonts/times-new-roman-bold-italic.rows.json +9 -0
- package/resources/fonts/times-new-roman-bold.hinted.json +125 -0
- package/resources/fonts/times-new-roman-bold.metrics.json +141 -0
- package/resources/fonts/times-new-roman-bold.rows.json +9 -0
- package/resources/fonts/times-new-roman-italic.hinted.json +125 -0
- package/resources/fonts/times-new-roman-italic.metrics.json +143 -0
- package/resources/fonts/times-new-roman-italic.rows.json +9 -0
- package/resources/fonts/times-new-roman-regular.hinted.json +125 -0
- package/resources/fonts/times-new-roman-regular.metrics.json +141 -0
- package/resources/fonts/times-new-roman-regular.rows.json +9 -0
- package/resources/locales/de/model.msg.json +199 -21
- package/resources/locales/en/model.msg.json +207 -23
- package/types/scripting-api.json +10663 -0
- package/types/scripting-enums.json +435 -130
- package/types/scripting.d.ts +33010 -15730
- package/types/src/.generated/wasm/fonts.d.ts +161 -0
- package/types/src/.generated/wasm/fonts_bg.inline.d.ts +3 -0
- package/types/src/.generated/wasm/sdk.d.ts +122 -0
- package/types/src/.generated/wasm/sdk_bg.inline.d.ts +3 -0
- package/types/src/address/AddressUtils.d.ts +10 -1
- package/types/src/address/_StructuredAddress.d.ts +58 -0
- package/types/src/anchored/AbstractAnchored.d.ts +18 -8
- package/types/src/anchored/AnchoredMap.d.ts +2 -0
- package/types/src/anchored/IAnchoredMap.d.ts +52 -4
- package/types/src/autoFill/AutoFill.d.ts +316 -32
- package/types/src/autoFill/IAutoFill.d.ts +232 -15
- package/types/src/border/{IBorder.d.ts → IBorders.d.ts} +58 -41
- package/types/src/border/index.d.ts +1 -1
- package/types/src/calculation/Calculation.d.ts +584 -149
- package/types/src/calculation/ExternalBookBindings.d.ts +118 -0
- package/types/src/calculation/FormulaLiterals.d.ts +2 -1
- package/types/src/calculation/FormulaText.d.ts +98 -0
- package/types/src/calculation/ICalculation.d.ts +353 -88
- package/types/src/calculation/INamedFormulasCollection.d.ts +9 -8
- package/types/src/calculation/NamedFormulaCollection.d.ts +322 -115
- package/types/src/calculation/NamedLambdaFunction.d.ts +28 -0
- package/types/src/calculation/TokenType.d.ts +9 -0
- package/types/src/calculation/Types.d.ts +83 -2
- package/types/src/calculation/_CloneBoundary.d.ts +80 -0
- package/types/src/calculation/_FormulaToolkit.d.ts +9 -0
- package/types/src/calculation/_TableExtent.d.ts +60 -0
- package/types/src/calculation/_TableRename.d.ts +13 -0
- package/types/src/calculation/compiler/ASTTypes.d.ts +71 -0
- package/types/src/calculation/compiler/CompilerUtils.d.ts +152 -44
- package/types/src/calculation/compiler/FormulaCompiler.d.ts +29 -4
- package/types/src/calculation/compiler/FormulaParser.d.ts +1 -2
- package/types/src/calculation/compiler/LiteTransform.d.ts +17 -0
- package/types/src/calculation/compiler/ParserUtils.d.ts +42 -1
- package/types/src/calculation/compiler/SRParser.d.ts +2 -1
- package/types/src/calculation/compiler/Types.d.ts +79 -9
- package/types/src/calculation/engine/CalcBackend.d.ts +855 -0
- package/types/src/calculation/engine/index.d.ts +10 -0
- package/types/src/calculation/executor/CalcExecutor.d.ts +331 -33
- package/types/src/calculation/executor/CalcExecutorUtils.d.ts +49 -2
- package/types/src/calculation/executor/CircularReference.d.ts +2 -0
- package/types/src/calculation/formula/Formula.d.ts +67 -21
- package/types/src/calculation/formula/FormulaBlock.d.ts +131 -23
- package/types/src/calculation/formula/FormulaRecordView.d.ts +79 -0
- package/types/src/calculation/formula/FunctionValues.d.ts +10 -0
- package/types/src/calculation/formula/IFormulaBlock.d.ts +277 -67
- package/types/src/calculation/formula/LambdaValue.d.ts +51 -26
- package/types/src/calculation/formula/LazyValue.d.ts +96 -0
- package/types/src/calculation/formula/TokenUtils.d.ts +25 -1
- package/types/src/calculation/formula/index.d.ts +1 -0
- package/types/src/calculation/functions/FunctionDeclarations.d.ts +35 -0
- package/types/src/calculation/functions/Operators.d.ts +8 -0
- package/types/src/calculation/functions/expandDeclaration.d.ts +15 -0
- package/types/src/calculation/functions/initializeFunctions.d.ts +3 -2
- package/types/src/calculation/grid/CalcGrid.d.ts +443 -158
- package/types/src/calculation/grid/CalcGridBackend.d.ts +523 -0
- package/types/src/calculation/grid/CalcGridProxy.d.ts +135 -0
- package/types/src/calculation/grid/CalcGridUtils.d.ts +69 -12
- package/types/src/calculation/grid/FormulaEntry.d.ts +129 -0
- package/types/src/calculation/grid/FormulaHost.d.ts +284 -0
- package/types/src/calculation/grid/ICalcGrid.d.ts +528 -141
- package/types/src/calculation/grid/_CalcRequest.d.ts +299 -0
- package/types/src/calculation/grid/_CellValueRun.d.ts +21 -0
- package/types/src/calculation/grid/index.d.ts +4 -0
- package/types/src/calculation/index.d.ts +2 -0
- package/types/src/calculation/spatial/ContentfulSpatialValue.d.ts +6 -2
- package/types/src/calculation/spatial/FormulaSpatialValue.d.ts +364 -11
- package/types/src/calculation/spatial/SpillEntry.d.ts +20 -5
- package/types/src/calculation/spatial/TouchedWindows.d.ts +86 -0
- package/types/src/calculation/spatial/index.d.ts +1 -0
- package/types/src/calculation/state/CalcInputs.d.ts +41 -0
- package/types/src/calculation/state/CalcNode.d.ts +141 -30
- package/types/src/calculation/state/CalcScope.d.ts +46 -0
- package/types/src/calculation/state/CalcState.d.ts +32 -1
- package/types/src/calculation/state/CalculationContext.d.ts +50 -3
- package/types/src/calculation/state/IContextContainer.d.ts +141 -27
- package/types/src/calculation/state/_PendingOverlayGrid.d.ts +163 -0
- package/types/src/calculation/state/_ReadObservedGrid.d.ts +74 -8
- package/types/src/calculation/state/index.d.ts +1 -0
- package/types/src/calculation/symbol/ExternalSheetSymbols.d.ts +80 -0
- package/types/src/calculation/symbol/ISymbolRegistry.d.ts +23 -0
- package/types/src/calculation/symbol/IndirectSymbolProvider.d.ts +16 -2
- package/types/src/calculation/symbol/SheetSymbolProvider.d.ts +63 -3
- package/types/src/calculation/symbol/SymbolRegistry.d.ts +20 -0
- package/types/src/calculation/symbol/index.d.ts +3 -2
- package/types/src/calculation/toolkit/FormulaLiteralReader.d.ts +4 -0
- package/types/src/calculation/toolkit/FormulaTextParser.d.ts +10 -0
- package/types/src/calculation/toolkit/FunctionDeclarationTable.d.ts +4 -0
- package/types/src/calculation/toolkit/index.d.ts +12 -0
- package/types/src/cell/ICell.d.ts +357 -33
- package/types/src/cell/ICellHeader.d.ts +31 -8
- package/types/src/cell/ICellProtection.d.ts +50 -10
- package/types/src/cellRange/ICellHeaderRange.d.ts +6 -9
- package/types/src/cellRange/ICellHeaderRanges.d.ts +5 -0
- package/types/src/cellRange/ICellRange.d.ts +737 -130
- package/types/src/cellRange/ICellRanges.d.ts +31 -24
- package/types/src/chart/Chart.d.ts +246 -16
- package/types/src/chart/ChartCollection.d.ts +31 -0
- package/types/src/chart/IChart.d.ts +2058 -18
- package/types/src/chart/IChartCollection.d.ts +50 -0
- package/types/src/chart/_ChartParts.d.ts +1066 -0
- package/types/src/chart/_ChartSource.d.ts +47 -0
- package/types/src/chart/createChart.d.ts +26 -0
- package/types/src/chart/index.d.ts +5 -3
- package/types/src/chart/kinds/ChartKind.d.ts +252 -0
- package/types/src/chart/kinds/_Area.d.ts +3 -0
- package/types/src/chart/kinds/_Bar.d.ts +4 -0
- package/types/src/chart/kinds/_BoxWhisker.d.ts +4 -0
- package/types/src/chart/kinds/_Bubble.d.ts +3 -0
- package/types/src/chart/kinds/_Funnel.d.ts +4 -0
- package/types/src/chart/kinds/_Hierarchy.d.ts +31 -0
- package/types/src/chart/kinds/_Histogram.d.ts +4 -0
- package/types/src/chart/kinds/_HitKinds.d.ts +23 -0
- package/types/src/chart/kinds/_Line.d.ts +4 -0
- package/types/src/chart/kinds/_OfPie.d.ts +4 -0
- package/types/src/chart/kinds/_Pie.d.ts +4 -0
- package/types/src/chart/kinds/_Placeholder.d.ts +6 -0
- package/types/src/chart/kinds/_Radar.d.ts +4 -0
- package/types/src/chart/kinds/_Scatter.d.ts +8 -0
- package/types/src/chart/kinds/_Sunburst.d.ts +4 -0
- package/types/src/chart/kinds/_Surface.d.ts +4 -0
- package/types/src/chart/kinds/_Treemap.d.ts +4 -0
- package/types/src/chart/kinds/_Waterfall.d.ts +18 -0
- package/types/src/chart/kinds/_builtIns.d.ts +11 -0
- package/types/src/chart/layout/ChartLayout.d.ts +825 -0
- package/types/src/chart/layout/TextMeasurer.d.ts +38 -0
- package/types/src/chart/layout/_HitGeometry.d.ts +50 -0
- package/types/src/chart/layout/_HitTest.d.ts +36 -0
- package/types/src/chart/layout/_Layout.d.ts +25 -0
- package/types/src/chart/layout/_LayoutUtils.d.ts +97 -0
- package/types/src/chart/math/BoxStats.d.ts +35 -0
- package/types/src/chart/math/DateUnitCalcs.d.ts +80 -0
- package/types/src/chart/math/DisplayUnits.d.ts +53 -0
- package/types/src/chart/math/Histogram.d.ts +48 -0
- package/types/src/chart/math/OrdUnitCalcs.d.ts +166 -0
- package/types/src/chart/math/Treemap.d.ts +28 -0
- package/types/src/chart/math/Trendlines.d.ts +71 -0
- package/types/src/chart/math/UnitCalcs.d.ts +98 -0
- package/types/src/chart/model/ChartModel.d.ts +681 -0
- package/types/src/chart/model/_ChartType.d.ts +14 -0
- package/types/src/chart/model/_Edits.d.ts +489 -0
- package/types/src/chart/model/_Grouping.d.ts +83 -0
- package/types/src/chart/model/_Inference.d.ts +52 -0
- package/types/src/chart/model/_ModelFacts.d.ts +112 -0
- package/types/src/chart/model/_NewChart.d.ts +208 -0
- package/types/src/chart/model/_OfPie.d.ts +18 -0
- package/types/src/chart/resolve/_LegacyStyles.d.ts +48 -0
- package/types/src/chart/resolve/_Resolve.d.ts +51 -0
- package/types/src/chart/resolve/_ResolvedChart.d.ts +444 -0
- package/types/src/collections/ArraysGrid.d.ts +1 -1
- package/types/src/collections/IGrid.d.ts +1 -1
- package/types/src/collections/ISparseGrid.d.ts +9 -0
- package/types/src/collections/ISpatialMap.d.ts +59 -21
- package/types/src/collections/ImmutableList.d.ts +28 -0
- package/types/src/collections/MixedTypedArrayList.d.ts +168 -108
- package/types/src/collections/RTree.d.ts +116 -36
- package/types/src/collections/RepeatingList.d.ts +7 -0
- package/types/src/collections/ScalarGrid.d.ts +50 -0
- package/types/src/collections/SparseGrid.d.ts +7 -4
- package/types/src/collections/SpatialMap.d.ts +15 -29
- package/types/src/collections/SpatialMap3D.d.ts +2 -0
- package/types/src/collections/Tuple.d.ts +128 -16
- package/types/src/collections/_GridUtils.d.ts +19 -6
- package/types/src/collections/_SpatialUtils.d.ts +20 -2
- package/types/src/collections/index.d.ts +2 -1
- package/types/src/color/_BuiltInIndexDefs.d.ts +6 -0
- package/types/src/comment/Comment.d.ts +246 -0
- package/types/src/comment/CommentCollection.d.ts +40 -0
- package/types/src/comment/IComment.d.ts +377 -50
- package/types/src/comment/ICommentCollection.d.ts +90 -0
- package/types/src/comment/NoteMovable.d.ts +26 -0
- package/types/src/comment/_CommentUtils.d.ts +50 -0
- package/types/src/comment/_NoteBox.d.ts +67 -0
- package/types/src/comment/index.d.ts +1 -0
- package/types/src/condition/AnchoredConditional.d.ts +110 -19
- package/types/src/condition/BuiltInOperators/AbstractOperator.d.ts +42 -12
- package/types/src/condition/BuiltInOperators/AfterEqualToOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/AfterOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/AndOperator.d.ts +3 -1
- package/types/src/condition/BuiltInOperators/AverageOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/BeforeEqualToOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/BeforeOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/BetweenOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/ColorOperator.d.ts +4 -0
- package/types/src/condition/BuiltInOperators/ContainsOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/EndsWithOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/EqualToOperator.d.ts +4 -1
- package/types/src/condition/BuiltInOperators/ExpressionOperator.d.ts +5 -6
- package/types/src/condition/BuiltInOperators/GreaterThanEqualToOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/GreaterThanOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/IconOperator.d.ts +4 -0
- package/types/src/condition/BuiltInOperators/InSetOperator.d.ts +22 -5
- package/types/src/condition/BuiltInOperators/LessThanEqualToOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/LessThanOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/NotOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/OrOperator.d.ts +3 -1
- package/types/src/condition/BuiltInOperators/StartsWithOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/TimePeriodOperator.d.ts +2 -0
- package/types/src/condition/BuiltInOperators/TopNOperator.d.ts +6 -0
- package/types/src/condition/BuiltinSelectors/BaseSelector.d.ts +21 -6
- package/types/src/condition/BuiltinSelectors/DateSelector.d.ts +4 -5
- package/types/src/condition/BuiltinSelectors/DisplaySelector.d.ts +20 -0
- package/types/src/condition/BuiltinSelectors/TextLengthSelector.d.ts +7 -5
- package/types/src/condition/BuiltinSelectors/TimeSelector.d.ts +3 -5
- package/types/src/condition/BuiltinSelectors/WholeSelector.d.ts +3 -5
- package/types/src/condition/BuiltinSelectors/index.d.ts +12 -6
- package/types/src/condition/Condition.d.ts +19 -1
- package/types/src/condition/ICondition.d.ts +296 -75
- package/types/src/condition/_ConditionFormula.d.ts +152 -0
- package/types/src/condition/_ConditionUtils.d.ts +167 -13
- package/types/src/conditionalFormat/ConditionalEntry.d.ts +3 -3
- package/types/src/conditionalFormat/ConditionalFormat.d.ts +34 -17
- package/types/src/conditionalFormat/ConditionalFormatCollection.d.ts +19 -8
- package/types/src/conditionalFormat/IConditionalFormat.d.ts +16 -13
- package/types/src/conditionalFormat/IConditionalFormatCollection.d.ts +2 -0
- package/types/src/dataTable/DataTable.d.ts +67 -0
- package/types/src/dataTable/DataTableCollection.d.ts +19 -0
- package/types/src/dataTable/IDataTable.d.ts +99 -0
- package/types/src/dataTable/IDataTableCollection.d.ts +18 -0
- package/types/src/dataTable/index.d.ts +6 -0
- package/types/src/dataValidation/DataValidation.d.ts +70 -4
- package/types/src/dataValidation/DataValidationCollection.d.ts +23 -9
- package/types/src/dataValidation/IDataValidation.d.ts +150 -31
- package/types/src/dataValidation/IDataValidationCollection.d.ts +34 -2
- package/types/src/date/DateUtils.d.ts +20 -0
- package/types/src/date/_DateUtils.d.ts +91 -7
- package/types/src/documentProperties/DocumentProperties.d.ts +66 -0
- package/types/src/documentProperties/ICustomProperty.d.ts +69 -0
- package/types/src/documentProperties/IDocumentProperties.d.ts +110 -0
- package/types/src/documentProperties/index.d.ts +3 -0
- package/types/src/externalBook/ExternalBookCollection.d.ts +145 -12
- package/types/src/externalBook/ExternalBookName.d.ts +96 -0
- package/types/src/externalBook/IExternalBook.d.ts +171 -19
- package/types/src/externalBook/IExternalBookCollection.d.ts +79 -7
- package/types/src/externalBook/index.d.ts +1 -0
- package/types/src/{lib/file → file}/file.browser.d.ts +22 -8
- package/types/src/{lib/file → file}/file.node.d.ts +7 -2
- package/types/src/fill/IEffect.d.ts +5 -5
- package/types/src/fill/IFill.d.ts +129 -77
- package/types/src/fill/IFillable.d.ts +47 -0
- package/types/src/fill/IStroke.d.ts +204 -64
- package/types/src/fill/PaintUtils.d.ts +22 -0
- package/types/src/fill/RectAlignment.d.ts +20 -0
- package/types/src/fill/_Fills.d.ts +187 -0
- package/types/src/fill/_Stroke.d.ts +89 -0
- package/types/src/fill/index.d.ts +3 -0
- package/types/src/filter/IFilter.d.ts +188 -5
- package/types/src/font/AdvanceBuilder.d.ts +59 -0
- package/types/src/font/AdvanceTable.d.ts +228 -0
- package/types/src/font/CanvasAdvanceBuilder.d.ts +54 -0
- package/types/src/font/FontCapture.d.ts +4 -0
- package/types/src/font/FontCollection.d.ts +108 -0
- package/types/src/font/FontPlatform.d.ts +20 -0
- package/types/src/font/FontUtils.d.ts +5 -0
- package/types/src/font/IFont.d.ts +208 -61
- package/types/src/font/IFontCollection.d.ts +126 -22
- package/types/src/font/IFontStyle.d.ts +207 -0
- package/types/src/font/TableFileAdvanceBuilder.d.ts +36 -0
- package/types/src/font/_BuiltinFontTables.d.ts +10 -0
- package/types/src/font/_FontUtils.d.ts +11 -4
- package/types/src/font/_FontsVersion.d.ts +7 -0
- package/types/src/font/index.d.ts +2 -1
- package/types/src/font/platform.browser.d.ts +15 -0
- package/types/src/font/platform.node.d.ts +5 -0
- package/types/src/group/Group.d.ts +141 -0
- package/types/src/group/GroupMovableCollection.d.ts +41 -0
- package/types/src/group/IGroup.d.ts +129 -0
- package/types/src/group/index.d.ts +2 -0
- package/types/src/history/IHistory.d.ts +21 -3
- package/types/src/hyperlink/IHyperlink.d.ts +20 -1
- package/types/src/hyperlink/_Hyperlink.d.ts +5 -1
- package/types/src/i18n/LanguagePack.d.ts +12 -4
- package/types/src/index.d.ts +8 -0
- package/types/src/io/AbstractBackingStore.d.ts +24 -1
- package/types/src/io/ArrayBackingStore.d.ts +1 -1
- package/types/src/io/EmbeddedPart.d.ts +20 -0
- package/types/src/io/IEmbeddedPart.d.ts +63 -0
- package/types/src/io/IWorkbookIO.d.ts +185 -18
- package/types/src/io/WorkbookIO.d.ts +9 -0
- package/types/src/io/WorkbookOrigin.d.ts +20 -11
- package/types/src/io/WorkbookOriginProvider.d.ts +46 -0
- package/types/src/io/_XmlFragment.d.ts +49 -0
- package/types/src/io/index.d.ts +1 -0
- package/types/src/license/LicenseDetails.d.ts +1 -0
- package/types/src/license/LicenseManager.d.ts +25 -1
- package/types/src/license/Types.d.ts +38 -0
- package/types/src/license/_Utils.d.ts +39 -0
- package/types/src/license/details.d.ts +24 -0
- package/types/src/license/license-key.d.ts +49 -2
- package/types/src/license/runtime.browser.d.ts +46 -0
- package/types/src/{lib/utils/utils.node.d.ts → license/runtime.node.d.ts} +19 -12
- package/types/src/listener/IListener.d.ts +23 -6
- package/types/src/listener/ListenerEmitter.d.ts +55 -6
- package/types/src/model/AbstractModel.d.ts +14 -5
- package/types/src/movable/AbstractMovableContent.d.ts +182 -0
- package/types/src/movable/CustomElement.d.ts +4 -5
- package/types/src/movable/ErrorContent.d.ts +49 -0
- package/types/src/movable/FormControl.d.ts +285 -0
- package/types/src/movable/GroupMember.d.ts +87 -0
- package/types/src/movable/ICustomElement.d.ts +7 -2
- package/types/src/movable/IErrorContent.d.ts +23 -0
- package/types/src/movable/IFormControl.d.ts +455 -0
- package/types/src/movable/IMovable.d.ts +405 -60
- package/types/src/movable/IMovableCollection.d.ts +64 -4
- package/types/src/movable/Movable.d.ts +161 -50
- package/types/src/movable/MovableCollection.d.ts +21 -10
- package/types/src/movable/MovableContentRegistry.d.ts +113 -0
- package/types/src/movable/_BuiltInContents.d.ts +14 -0
- package/types/src/movable/_ContentFactory.d.ts +35 -0
- package/types/src/movable/_DrawnBounds.d.ts +37 -0
- package/types/src/movable/_InsertableCollection.d.ts +39 -0
- package/types/src/movable/_MovableUtils.d.ts +5 -0
- package/types/src/movable/_PendingContent.d.ts +25 -0
- package/types/src/movable/_PlacementUtils.d.ts +55 -0
- package/types/src/movable/_RotatedFrame.d.ts +20 -0
- package/types/src/movable/index.d.ts +7 -1
- package/types/src/named/AbstractNamed.d.ts +1 -1
- package/types/src/named/INamed.d.ts +34 -1
- package/types/src/named/INamedCollection.d.ts +28 -2
- package/types/src/named/NamedCollection.d.ts +32 -19
- package/types/src/numFmt/BuiltInFormats.d.ts +20 -7
- package/types/src/numFmt/IFormatEngine.d.ts +2 -0
- package/types/src/numFmt/NumberFormatParser.d.ts +5 -0
- package/types/src/numFmt/NumfmtFormatEngine.d.ts +2 -0
- package/types/src/numFmt/_FormatCell.d.ts +11 -2
- package/types/src/numFmt/_NumFmtUtils.d.ts +0 -1
- package/types/src/numFmt/vendor/numfmt/_sheetxl.d.ts +6 -0
- package/types/src/outline/IOutline.d.ts +186 -0
- package/types/src/outline/Outline.d.ts +157 -0
- package/types/src/outline/index.d.ts +2 -0
- package/types/src/person/IPerson.d.ts +99 -0
- package/types/src/person/IPersonCollection.d.ts +51 -0
- package/types/src/person/Person.d.ts +32 -0
- package/types/src/person/PersonCollection.d.ts +49 -0
- package/types/src/person/index.d.ts +4 -0
- package/types/src/picture/IPicture.d.ts +131 -4
- package/types/src/picture/Picture.d.ts +42 -14
- package/types/src/pivot/IPivotTable.d.ts +72 -0
- package/types/src/pivot/IPivotTableCollection.d.ts +25 -0
- package/types/src/pivot/PivotCache.d.ts +34 -0
- package/types/src/pivot/PivotTable.d.ts +61 -0
- package/types/src/pivot/PivotTableCollection.d.ts +25 -0
- package/types/src/pivot/_PivotXml.d.ts +24 -0
- package/types/src/pivot/index.d.ts +6 -0
- package/types/src/primitives/CompositeRangeStats.d.ts +2 -0
- package/types/src/primitives/Criteria.d.ts +1 -1
- package/types/src/primitives/Grouping.d.ts +65 -0
- package/types/src/primitives/LambdaBrand.d.ts +26 -0
- package/types/src/primitives/PrimitiveUtils.d.ts +56 -19
- package/types/src/primitives/Range.d.ts +133 -25
- package/types/src/primitives/RangeStats.d.ts +30 -2
- package/types/src/primitives/ReferenceRange.d.ts +44 -0
- package/types/src/primitives/Runtime.d.ts +15 -2
- package/types/src/primitives/environment.browser.d.ts +9 -0
- package/types/src/primitives/environment.node.d.ts +10 -0
- package/types/src/primitives/stats/AggregateStats.d.ts +49 -15
- package/types/src/primitives/stats/Cancellation.d.ts +13 -0
- package/types/src/primitives/stats/FrequencyStats.d.ts +10 -1
- package/types/src/primitives/stats/LookupIndex.d.ts +46 -0
- package/types/src/primitives/stats/Ranked.d.ts +1 -1
- package/types/src/primitives/stats/SortedNumbers.d.ts +4 -2
- package/types/src/primitives/stats/index.d.ts +1 -0
- package/types/src/print/IPageLayout.d.ts +635 -0
- package/types/src/print/PageLayout.d.ts +258 -0
- package/types/src/print/index.d.ts +1 -1
- package/types/src/protectedRange/IProtectedRange.d.ts +6 -2
- package/types/src/protectedRange/IProtectedRangeCollection.d.ts +2 -0
- package/types/src/protectedRange/ProtectedRange.d.ts +1 -4
- package/types/src/protectedRange/ProtectedRangeCollection.d.ts +19 -8
- package/types/src/protection/DefaultProtection.d.ts +12 -1
- package/types/src/protection/IProtection.d.ts +42 -2
- package/types/src/protection/PasswordHasher.d.ts +13 -0
- package/types/src/reference/ReferenceUtils.d.ts +80 -0
- package/types/src/reference/index.d.ts +2 -0
- package/types/src/resource/IResource.d.ts +21 -1
- package/types/src/resource/IResourceCollection.d.ts +9 -1
- package/types/src/resource/ResourceCollection.d.ts +6 -6
- package/types/src/richData/IRichDataKind.d.ts +22 -0
- package/types/src/richData/RichDataRegistry.d.ts +57 -0
- package/types/src/richData/RichText.d.ts +59 -0
- package/types/src/richData/index.d.ts +3 -0
- package/types/src/scripting/FunctionCollection.d.ts +49 -15
- package/types/src/scripting/IFunctionCollection.d.ts +62 -32
- package/types/src/scripting/IModule.d.ts +25 -0
- package/types/src/scripting/IModuleCollection.d.ts +17 -0
- package/types/src/scripting/IScript.d.ts +30 -28
- package/types/src/scripting/ITypedFunction.d.ts +1 -1
- package/types/src/scripting/Module.d.ts +34 -6
- package/types/src/scripting/ModuleCollection.d.ts +17 -12
- package/types/src/scripting/Runtime.d.ts +15 -0
- package/types/src/scripting/Scripts.d.ts +3 -7
- package/types/src/scripting/TypedFunction.d.ts +154 -18
- package/types/src/scripting/_FunctionIndex.d.ts +8 -3
- package/types/src/scripting/_ModuleUtils.d.ts +11 -1
- package/types/src/scripting/_ScriptUtils.d.ts +3 -0
- package/types/src/scripting/declarations.browser.d.ts +10 -0
- package/types/src/scripting/declarations.d.ts +52 -0
- package/types/src/scripting/declarations.node.d.ts +9 -0
- package/types/src/scripting/index.d.ts +3 -0
- package/types/src/selection/ChartElementSelection.d.ts +39 -0
- package/types/src/selection/IChartElementSelection.d.ts +103 -0
- package/types/src/selection/IItemSelection.d.ts +131 -0
- package/types/src/selection/IMovableSelection.d.ts +120 -0
- package/types/src/selection/IRangeSelection.d.ts +13 -8
- package/types/src/selection/ItemSelection.d.ts +49 -0
- package/types/src/selection/MovableSelection.d.ts +29 -0
- package/types/src/selection/RangeSelection.d.ts +19 -4
- package/types/src/selection/index.d.ts +4 -0
- package/types/src/shape/GeometryPreset.d.ts +197 -0
- package/types/src/shape/IGeometry.d.ts +380 -0
- package/types/src/shape/IShape.d.ts +342 -194
- package/types/src/shape/IShapeStyle.d.ts +109 -0
- package/types/src/shape/ITextBoxStyle.d.ts +85 -0
- package/types/src/shape/Shape.d.ts +107 -21
- package/types/src/shape/ShapeStyleUtils.d.ts +66 -0
- package/types/src/shape/_ConnectorFrame.d.ts +32 -0
- package/types/src/shape/_ConnectorRoute.d.ts +33 -0
- package/types/src/shape/_Connectors.d.ts +108 -0
- package/types/src/shape/_Geometry.d.ts +14 -0
- package/types/src/shape/_GeometryLoader.d.ts +21 -0
- package/types/src/shape/_ShapeStyle.d.ts +79 -0
- package/types/src/shape/_builtIn/_BuiltInChunks.d.ts +10 -0
- package/types/src/shape/_builtIn/_BuiltInDef.d.ts +9 -0
- package/types/src/shape/_builtIn/arrows.d.ts +6 -0
- package/types/src/shape/_builtIn/basic.d.ts +6 -0
- package/types/src/shape/_builtIn/callouts.d.ts +6 -0
- package/types/src/shape/_builtIn/flowchart.d.ts +6 -0
- package/types/src/shape/_builtIn/lines.d.ts +6 -0
- package/types/src/shape/_builtIn/math.d.ts +6 -0
- package/types/src/shape/_builtIn/other.d.ts +6 -0
- package/types/src/shape/_builtIn/rectangles.d.ts +6 -0
- package/types/src/shape/_builtIn/starsBanners.d.ts +6 -0
- package/types/src/shape/geometry/_strokeEnds.d.ts +7 -0
- package/types/src/shape/geometry/format.d.ts +3 -0
- package/types/src/shape/geometry/geometry.d.ts +85 -0
- package/types/src/shape/geometry/guides.d.ts +54 -0
- package/types/src/shape/geometry/handles.d.ts +14 -0
- package/types/src/shape/geometry/index.d.ts +7 -0
- package/types/src/shape/geometry/lineEnds.d.ts +54 -0
- package/types/src/shape/geometry/paths.d.ts +35 -0
- package/types/src/shape/geometry/segments.d.ts +114 -0
- package/types/src/shape/index.d.ts +4 -0
- package/types/src/sheet/CellRegion.d.ts +43 -3
- package/types/src/sheet/ICellContainerOptions.d.ts +50 -0
- package/types/src/sheet/IOpaqueSheet.d.ts +46 -0
- package/types/src/sheet/ISheet.d.ts +81 -931
- package/types/src/sheet/IWorksheet.d.ts +1514 -0
- package/types/src/sheet/{ISheetCollection.d.ts → IWorksheetCollection.d.ts} +38 -16
- package/types/src/sheet/NamedCellRange.d.ts +17 -8
- package/types/src/sheet/NamedRange.d.ts +10 -2
- package/types/src/sheet/OpaqueSheet.d.ts +114 -0
- package/types/src/sheet/SheetCell.d.ts +96 -39
- package/types/src/sheet/SheetRange.d.ts +130 -27
- package/types/src/sheet/SheetRanges.d.ts +33 -18
- package/types/src/sheet/Worksheet.d.ts +2250 -0
- package/types/src/sheet/WorksheetCollection.d.ts +39 -0
- package/types/src/sheet/_Anomalies.d.ts +109 -0
- package/types/src/sheet/_AnomalyFormulaChecks.d.ts +125 -0
- package/types/src/sheet/_AnomalyLabelChecks.d.ts +21 -0
- package/types/src/sheet/_CellBuffer.d.ts +224 -0
- package/types/src/sheet/_CopyUtils.d.ts +13 -6
- package/types/src/sheet/_HeldFormula.d.ts +69 -0
- package/types/src/sheet/_IgnoredErrors.d.ts +46 -0
- package/types/src/sheet/_InvalidSheetRange.d.ts +10 -9
- package/types/src/sheet/_Kinds.d.ts +34 -0
- package/types/src/sheet/_Labels.d.ts +38 -0
- package/types/src/sheet/_ListenerAnchor.d.ts +104 -0
- package/types/src/sheet/_RangeStateSweep.d.ts +15 -0
- package/types/src/sheet/_ScalarListFactory.d.ts +61 -0
- package/types/src/sheet/_SheetAutoFillUtils.d.ts +74 -0
- package/types/src/sheet/_SheetAutoFitUtils.d.ts +5 -5
- package/types/src/sheet/_SheetChangeEvent.d.ts +72 -0
- package/types/src/sheet/_SheetCoords.d.ts +3 -3
- package/types/src/sheet/_SheetEvents.d.ts +43 -0
- package/types/src/sheet/_SheetFilterUtils.d.ts +51 -3
- package/types/src/sheet/_SheetIntents.d.ts +314 -0
- package/types/src/sheet/_SheetMessages.d.ts +1 -1
- package/types/src/sheet/_SheetMutations.d.ts +185 -66
- package/types/src/sheet/_SheetSortUtils.d.ts +2 -2
- package/types/src/sheet/_SheetStateReader.d.ts +35 -11
- package/types/src/sheet/_SheetStateTypes.d.ts +143 -79
- package/types/src/sheet/_SheetUtils.d.ts +59 -41
- package/types/src/sheet/_WatchAnchor.d.ts +106 -0
- package/types/src/sheet/clipboard/RangeClipboardItems.d.ts +4 -4
- package/types/src/sheet/clipboard/SheetHTMLTableParser.d.ts +3 -3
- package/types/src/sheet/clipboard/SheetHTMLTableWriter.d.ts +3 -3
- package/types/src/sheet/index.d.ts +5 -2
- package/types/src/sheet/spatial/HeldFormulaEntry.d.ts +36 -0
- package/types/src/sheet/spatial/index.d.ts +1 -0
- package/types/src/sheet/style/SheetCellStyle.d.ts +223 -337
- package/types/src/sheet/style/SheetDirectStyle.d.ts +31 -20
- package/types/src/sheet/style/SheetNamedStyle.d.ts +19 -17
- package/types/src/sheet/style/SheetTableStyle.d.ts +5 -5
- package/types/src/sheet/style/_DigitWidth.d.ts +7 -0
- package/types/src/sheet/style/_Resolvers.d.ts +17 -10
- package/types/src/sheet/style/_StyleUtils.d.ts +34 -40
- package/types/src/sheetHeader/ISheetHeader.d.ts +96 -55
- package/types/src/sheetHeader/SheetCellHeader.d.ts +6 -0
- package/types/src/sheetHeader/SheetCellHeaderRange.d.ts +2 -0
- package/types/src/sheetHeader/SheetCellHeaderRanges.d.ts +2 -0
- package/types/src/sheetHeader/SheetHeader.d.ts +48 -27
- package/types/src/sheetHeader/_HeaderMetrics.d.ts +37 -0
- package/types/src/sheetHeader/_HeaderUtils.d.ts +5 -4
- package/types/src/sheetProtection/{ISheetProtection.d.ts → IWorksheetProtection.d.ts} +64 -30
- package/types/src/sheetProtection/WorksheetProtection.d.ts +51 -0
- package/types/src/sheetProtection/index.d.ts +1 -1
- package/types/src/sheetView/{ISheetView.d.ts → IWorksheetView.d.ts} +230 -69
- package/types/src/sheetView/WorksheetView.d.ts +139 -0
- package/types/src/sheetView/_SheetViewUtils.d.ts +5 -3
- package/types/src/sheetView/index.d.ts +1 -1
- package/types/src/slicer/ISlicer.d.ts +304 -17
- package/types/src/slicer/ISlicerStyle.d.ts +109 -0
- package/types/src/slicer/Slicer.d.ts +128 -13
- package/types/src/slicer/SlicerStyle.d.ts +25 -0
- package/types/src/slicer/_BuiltInSlicerStyles.d.ts +13 -0
- package/types/src/slicer/_SlicerUtils.d.ts +30 -0
- package/types/src/slicer/index.d.ts +1 -0
- package/types/src/sort/ISort.d.ts +39 -7
- package/types/src/string/IStringCollection.d.ts +5 -0
- package/types/src/string/StringCollection.d.ts +6 -6
- package/types/src/style/{IStyle.d.ts → ICellStyle.d.ts} +117 -85
- package/types/src/style/INamedStyleCollection.d.ts +72 -0
- package/types/src/style/ISlicerStyleCollection.d.ts +77 -0
- package/types/src/style/IStyleCollection.d.ts +91 -60
- package/types/src/style/ITableStyleCollection.d.ts +89 -0
- package/types/src/style/NamedStyleCollection.d.ts +39 -0
- package/types/src/style/SlicerStyleCollection.d.ts +46 -0
- package/types/src/style/StyleCollection.d.ts +81 -26
- package/types/src/style/TableStyleCollection.d.ts +49 -0
- package/types/src/style/_BuiltInStyleDefs.d.ts +9 -8
- package/types/src/style/_BuiltInStyleNames.d.ts +2 -2
- package/types/src/style/index.d.ts +7 -1
- package/types/src/table/AnchoredTable.d.ts +723 -78
- package/types/src/table/AutoTable.d.ts +8 -6
- package/types/src/table/ITable.d.ts +289 -49
- package/types/src/table/ITableCollection.d.ts +12 -0
- package/types/src/table/ITableStyle.d.ts +37 -37
- package/types/src/table/TableCollection.d.ts +19 -8
- package/types/src/table/_FilterField.d.ts +19 -6
- package/types/src/table/_NamedTable.d.ts +20 -4
- package/types/src/table/_NamedTableSource.d.ts +3 -2
- package/types/src/table/_SortField.d.ts +2 -0
- package/types/src/table/_TableColumn.d.ts +13 -2
- package/types/src/table/_TableMessages.d.ts +1 -0
- package/types/src/table/_TableUtils.d.ts +40 -0
- package/types/src/text/Bullet.d.ts +4 -0
- package/types/src/text/IText.d.ts +150 -15
- package/types/src/text/ITextFrame.d.ts +110 -1
- package/types/src/text/TextBoxAlignment.d.ts +25 -16
- package/types/src/text/TextEngine.d.ts +34 -0
- package/types/src/text/TextFrame.d.ts +8 -2
- package/types/src/text/TextLine.d.ts +4 -0
- package/types/src/text/TextParagraph.d.ts +4 -0
- package/types/src/text/TextRotation.d.ts +3 -3
- package/types/src/text/TextRun.d.ts +12 -2
- package/types/src/text/TextStacked.d.ts +83 -0
- package/types/src/text/TextWrapper.d.ts +32 -26
- package/types/src/text/_TextUtils.d.ts +5 -5
- package/types/src/text/_TextWrapperFallback.d.ts +49 -0
- package/types/src/text/impl/TabStrategy.d.ts +3 -1
- package/types/src/text/index.d.ts +1 -0
- package/types/src/text/richtext/IRichText.d.ts +50 -0
- package/types/src/text/richtext/index.d.ts +1 -1
- package/types/src/theme/ITheme.d.ts +153 -11
- package/types/src/theme/IThemeCollection.d.ts +2 -0
- package/types/src/theme/ThemeCollection.d.ts +16 -7
- package/types/src/theme/_OfficeFontScheme.d.ts +8 -0
- package/types/src/theme/_OfficeFormatScheme.d.ts +3 -0
- package/types/src/transaction/ITransaction.d.ts +277 -45
- package/types/src/transaction/Transaction.d.ts +108 -11
- package/types/src/transaction/TransactionUndoManager.d.ts +4 -1
- package/types/src/transaction/_BatchHandle.d.ts +118 -0
- package/types/src/type/AbstractCollection.d.ts +92 -0
- package/types/src/type/ICollection.d.ts +131 -1
- package/types/src/type/IProperties.d.ts +1 -1
- package/types/src/type/ITypes.d.ts +9 -7
- package/types/src/type/index.d.ts +1 -0
- package/types/src/utils/_CSSUtils.d.ts +4 -4
- package/types/src/wasm/_fontsWasm.d.ts +7 -0
- package/types/src/wasm/_sdkWasm.d.ts +7 -0
- package/types/src/wasm/fontsWasm.d.ts +32 -0
- package/types/src/wasm/index.d.ts +3 -0
- package/types/src/wasm/loader.browser.d.ts +9 -0
- package/types/src/wasm/loader.node.d.ts +9 -0
- package/types/src/wasm/sdkWasm.d.ts +32 -0
- package/types/src/workbook/IWorkbook.d.ts +404 -73
- package/types/src/workbook/Workbook.d.ts +196 -28
- package/types/src/workbook/WorkbookRange.d.ts +2 -2
- package/types/src/workbook/WorkbookRanges.d.ts +2 -2
- package/types/src/workbook/_WorkbookIntents.d.ts +36 -0
- package/types/src/workbook/_WorkbookMessages.d.ts +5 -0
- package/types/src/workbookProtection/IWorkbookProtection.d.ts +7 -0
- package/types/src/workbookProtection/WorkbookProtection.d.ts +3 -0
- package/types/src/workbookView/IWorkbookView.d.ts +94 -0
- package/types/src/workbookView/WorkbookView.d.ts +26 -0
- package/browser/cjs/B7_pDFYCVzt-3hUs.cjs +0 -1
- package/browser/cjs/BatsV2UUraVDCRXm.cjs +0 -57
- package/browser/cjs/CUz53T65cRGQRgvv.cjs +0 -33
- package/browser/cjs/DU0kYUtdFa3jK-im.cjs +0 -1
- package/browser/cjs/Dv3x6zut1ZRUt3IF.cjs +0 -10
- package/browser/cjs/Dv4yIPLV98M5zLHa.cjs +0 -1
- package/browser/cjs/a0Z-SXs_N71CtqYb.cjs +0 -1
- package/browser/cjs/index.cjs +0 -3
- package/browser/esm/6JKSOvc5czaQB2Bj.mjs +0 -109
- package/browser/esm/BtuJ9AGzeURtAsGo.mjs +0 -51241
- package/browser/esm/DGU6sM25u0EWCKl1.mjs +0 -824
- package/node/esm/-pxdn3M3tc6PLHs7.mjs +0 -114
- package/node/esm/0n5bslM9jhO1JnI2.mjs +0 -843
- package/types/src/cellRange/_GraphNode.d.ts +0 -38
- package/types/src/collections/OverlappingRangeIterator.d.ts +0 -91
- package/types/src/condition/BuiltinSelectors/ListSelector.d.ts +0 -12
- package/types/src/dataValidation/_Utils.d.ts +0 -10
- package/types/src/font/CanvasFontMeasurer.d.ts +0 -25
- package/types/src/font/FontKitFontMeasurer.d.ts +0 -11
- package/types/src/font/SimpleFontMeasurer.d.ts +0 -4
- package/types/src/lib/utils/_Utils.d.ts +0 -27
- package/types/src/lib/utils/utils.browser.d.ts +0 -33
- package/types/src/movable/IGroup.d.ts +0 -30
- package/types/src/movable/IMovableSelection.d.ts +0 -49
- package/types/src/print/IPrint.d.ts +0 -234
- package/types/src/sheet/Sheet.d.ts +0 -1107
- package/types/src/sheet/SheetCollection.d.ts +0 -18
- package/types/src/sheet/listener/RangesListener.d.ts +0 -32
- package/types/src/sheet/listener/RangesListenerEntry.d.ts +0 -19
- package/types/src/sheet/listener/index.d.ts +0 -3
- package/types/src/sheetProtection/SheetProtection.d.ts +0 -39
- package/types/src/sheetView/SheetView.d.ts +0 -113
- package/types/src/text/richtext/IStyledFont.d.ts +0 -330
- /package/types/src/{lib/utils → license}/banner.d.ts +0 -0
|
@@ -1,131 +1,191 @@
|
|
|
1
|
-
import { IRange,
|
|
1
|
+
import { IRange, IRuntime, Scalar } from '@sheetxl/primitives';
|
|
2
|
+
import { IListener } from '../listener';
|
|
2
3
|
import { FunctionProvider } from '@sheetxl/scripting';
|
|
3
4
|
import { AbstractModel, IModel } from '../model';
|
|
5
|
+
import { ITransaction } from '../transaction';
|
|
4
6
|
import { IStringCollection } from '../string';
|
|
5
7
|
import { IFunctionCollection } from '../scripting';
|
|
6
|
-
import { ISpatialMap, ISpatialMap3D } from '../collections';
|
|
7
8
|
import { INamed, INamedCollection } from '../named';
|
|
8
9
|
import { ICellRange, ICellRanges } from '../cellRange';
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
10
|
+
import { NamedNodeInfo } from './Types';
|
|
11
|
+
import { ITable } from '../table';
|
|
12
|
+
import { IExternalBook, IExternalBookCollection } from '../externalBook';
|
|
13
|
+
import { ExternalBookCollection } from '../externalBook/ExternalBookCollection';
|
|
14
|
+
import { FormulaBlockResolvers, FormulaImager } from './formula';
|
|
11
15
|
import { IFormulaCompiler } from './compiler';
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
+
import { CalcGrid, FormulaHost, ICalcGrid } from './grid';
|
|
17
|
+
import { CalcRequest, CalcResponse, CalcGridSpec, TableSymbols, NameSymbols } from './grid/_CalcRequest';
|
|
18
|
+
import { CalcBackend } from './engine/CalcBackend';
|
|
19
|
+
import { IndirectSymbolProvider, ISymbolRegistry } from './symbol';
|
|
16
20
|
import { ICalculation } from './ICalculation';
|
|
17
21
|
import { NamedFormulaCollection } from './NamedFormulaCollection';
|
|
18
22
|
import { INamedFormulasCollection } from './INamedFormulasCollection';
|
|
19
23
|
/**
|
|
20
24
|
* Implementation for {@link ICalculation}.
|
|
21
25
|
*/
|
|
22
|
-
export declare class Calculation extends AbstractModel<State, ICalculation.JSON,
|
|
23
|
-
protected
|
|
24
|
-
protected
|
|
26
|
+
export declare class Calculation extends AbstractModel<AbstractModel.State, ICalculation.JSON, ICalculation.IListeners> implements ICalculation {
|
|
27
|
+
protected _backend: CalcBackend | null;
|
|
28
|
+
protected _startReplica: CalcBackend.Replica | null;
|
|
29
|
+
/** The symbols formulas bind through (DESIGN-CALC-SERVICE §8): the model's, handed to the backend. */
|
|
30
|
+
protected _symbols: ISymbolRegistry;
|
|
25
31
|
protected _status: ICalculation.Status;
|
|
26
32
|
protected _statusTransition: Promise<void> | null;
|
|
27
33
|
protected _runtime: IRuntime;
|
|
28
34
|
protected _functions: IFunctionCollection;
|
|
29
35
|
protected _namedFormulas: NamedFormulaCollection;
|
|
36
|
+
protected _externalBooks: ExternalBookCollection;
|
|
30
37
|
/** `json.names` held from construction until {@link hydrateNames} — see it for why. */
|
|
31
38
|
protected _pendingNames: INamed.JSON[] | null;
|
|
32
39
|
protected _compiler: IFormulaCompiler;
|
|
33
40
|
protected _compilerEditing: IFormulaCompiler;
|
|
34
41
|
protected _compilerEditingSig: string;
|
|
42
|
+
protected _compilerEditingStorage: IFormulaCompiler | null;
|
|
35
43
|
protected _compilerModule: typeof import('./compiler/FormulaCompiler');
|
|
44
|
+
protected _engineModule: typeof import('./engine') | null;
|
|
45
|
+
protected _planCache: 'off' | 'assert' | 'on' | null;
|
|
36
46
|
protected _getActiveCell: () => IRange.CellCoords | null;
|
|
37
47
|
protected _getRange: (address: ICellRange.Address, options?: ICellRange.GetRangeOptions) => ICellRange;
|
|
38
48
|
protected _getRanges: (address: ICellRanges.Address, options?: ICellRange.GetRangeOptions) => ICellRanges;
|
|
39
|
-
|
|
40
|
-
protected
|
|
41
|
-
protected
|
|
42
|
-
|
|
43
|
-
protected
|
|
44
|
-
|
|
45
|
-
protected
|
|
46
|
-
protected
|
|
47
|
-
protected
|
|
49
|
+
/** The current handle of every formula host's grid, by grid id. */
|
|
50
|
+
protected _formulaHosts: Map<string, FormulaHost>;
|
|
51
|
+
protected _modelStore: ITransaction.IStore | null;
|
|
52
|
+
/** The model-side grids, by grid id (DESIGN-CALC-SERVICE §13.23): what a copy lands on, what a start seeds from. */
|
|
53
|
+
protected readonly _fronts: Map<string, CalcGrid>;
|
|
54
|
+
/** What each model grid is, for the `create` a start sends for it (its size is read then). */
|
|
55
|
+
protected readonly _gridSpecs: Map<string, CalcGridSpec>;
|
|
56
|
+
protected _modelStoreRemoveListener: IListener.Remove | null;
|
|
57
|
+
protected _mirrorRemoveListener: IListener.Remove | null;
|
|
58
|
+
_modelMirrorId: string | null;
|
|
59
|
+
/** Where the owner's sheet list is held ({@link _setSheets}): the model's store, or a transient one with no model. */
|
|
60
|
+
protected _ownerStore: ITransaction.IStore;
|
|
61
|
+
/** The record holding the owner's sheet list, in {@link _ownerStore}. */
|
|
62
|
+
protected _sheetListId: string;
|
|
63
|
+
protected _landedCommits: Set<string> | null;
|
|
64
|
+
protected _outstanding: Set<Promise<ICalcGrid.Results>> | null;
|
|
48
65
|
protected _pendingActions: (() => Promise<unknown>)[] | null;
|
|
49
66
|
protected _pendingPriority: (() => Promise<unknown>)[] | null;
|
|
50
67
|
protected _draining: boolean;
|
|
68
|
+
protected _drainDepth: number;
|
|
51
69
|
protected _drainScheduled: boolean;
|
|
52
70
|
protected _calcOwed: boolean;
|
|
71
|
+
protected _calcOwedBy: string | null;
|
|
72
|
+
protected _channel: HeldRequest[] | null;
|
|
73
|
+
protected _bootPending: Promise<void> | null;
|
|
74
|
+
/** Passes running now: see {@link _calculateNow}. */
|
|
75
|
+
protected _passesInFlight: number;
|
|
76
|
+
/** The calculation state last announced (`onCalculationStateChange`). */
|
|
77
|
+
protected _calculationState: ICalculation.CalculationState;
|
|
78
|
+
/** A check of the calculation state is posted: see {@link _noteCalculationState}. */
|
|
79
|
+
protected _calculationStatePosted: boolean;
|
|
80
|
+
/** `ready()` calls waiting for work in flight to end: woken on every check. */
|
|
81
|
+
protected _calculationStateWaiters: (() => void)[] | null;
|
|
82
|
+
protected _bootFull: boolean;
|
|
83
|
+
/** Consumer work not yet settled: see {@link waitUntil}. */
|
|
84
|
+
protected _consumerWork: number;
|
|
85
|
+
protected _bootExplicit: boolean;
|
|
86
|
+
protected _compilerWaiters: (() => void)[] | null;
|
|
87
|
+
protected _wroteWhileOff: boolean;
|
|
53
88
|
/** {@link ICalculation.getCalculationMode} — gates the reactive pass in {@link _calculate}. */
|
|
54
89
|
protected _calcMode: ICalculation.CalculationMode;
|
|
55
90
|
/** {@link ICalculation.getIterativeCalculation} — handed to the executor per pass. */
|
|
56
91
|
protected _iterate: boolean;
|
|
57
|
-
protected
|
|
92
|
+
protected _maxIteration: number;
|
|
58
93
|
protected _maxIterateChange: number;
|
|
59
94
|
/** The `calcPr` the file carried, kept whole so settings this engine ignores still round-trip. */
|
|
60
95
|
protected _calcJSON: ICalculation.JSON | null;
|
|
61
96
|
protected _removeNamedItemsListeners: (() => void) | null;
|
|
62
|
-
|
|
63
|
-
protected
|
|
97
|
+
/** The listeners on each table's extent, registered again whenever the named collection changes. */
|
|
98
|
+
protected _tableListenerRemovers: (() => void)[];
|
|
64
99
|
/**
|
|
65
100
|
* Resolver callbacks passed to every {@link FormulaBlock} at creation time.
|
|
66
101
|
* Populated from {@link Calculation.ConstructorOptions} during `_initialize`.
|
|
67
102
|
*/
|
|
68
103
|
protected _resolvers: FormulaBlockResolvers | null;
|
|
104
|
+
/** Tables as symbols: a table's stable id, which is what a structured reference stores. */
|
|
105
|
+
protected _tableSymbols: IndirectSymbolProvider<INamed<ITable>> | null;
|
|
106
|
+
protected _nameSymbols: IndirectSymbolProvider<ICalculation.INamedFormula> | null;
|
|
69
107
|
constructor(options?: Calculation.ConstructorOptions);
|
|
70
108
|
protected _initialize(options?: Calculation.ConstructorOptions): void;
|
|
71
109
|
/**
|
|
72
|
-
*
|
|
73
|
-
*
|
|
110
|
+
* Makes the backend from its loaded module. Once per calculation; a restart reuses it, as
|
|
111
|
+
* `_dropEngine` leaves it.
|
|
74
112
|
*
|
|
75
113
|
* @remarks
|
|
76
|
-
*
|
|
77
|
-
*
|
|
78
|
-
* formula's `getReferencedSymbolIds()` catches the "heal" case (`#NAME?`/`#REF!` → valid) that a
|
|
79
|
-
* precedent-range markDirty can't, because an unresolved reference has no precedent range.
|
|
80
|
-
*
|
|
81
|
-
* Marking the direct referencers is not enough where the referencer is another NAME. Downstream
|
|
82
|
-
* of a cell, the dependency graph carries transitivity for free; downstream of a name it carries
|
|
83
|
-
* nothing, because a name registers no precedent range for the formulas that mention it. So the
|
|
84
|
-
* ids are first expanded over the symbol graph ({@link _namedTargets}), and only from the cells
|
|
85
|
-
* that land in are the ordinary edges left to do the rest.
|
|
86
|
-
*
|
|
87
|
-
* O(formulas) all3D scan — same cost/scale as `recompileNamed`.
|
|
88
|
-
*
|
|
89
|
-
* @returns `true` if any formula was marked dirty.
|
|
114
|
+
* Its history starts here, at the model's current commit: nothing before a start writes to it.
|
|
115
|
+
* Its replicas start as the owner held them when the start was asked for.
|
|
90
116
|
*/
|
|
91
|
-
protected
|
|
117
|
+
protected _attachEngine(engine: typeof import('./engine')): void;
|
|
92
118
|
/**
|
|
93
|
-
* {@
|
|
94
|
-
*
|
|
95
|
-
* @remarks
|
|
96
|
-
* The memo is keyed on the formula spatial's IDENTITY, which is the whole invalidation story:
|
|
97
|
-
* the map is copy-on-write (`getFormulas().clone()` before any mutation, `setFormulas` to
|
|
98
|
-
* publish), so a formula added, removed, shifted or recompiled necessarily replaces it — and an
|
|
99
|
-
* undo, which restores an earlier map, replaces it too. Nothing has to remember to clear this.
|
|
100
|
-
*
|
|
101
|
-
* The sweep is the same `all3D` walk `recompileNamed` and {@link _markDirtyReferencing} already
|
|
102
|
-
* do, done once for every name instead of once per name.
|
|
119
|
+
* What the backend asks of this calculation (see {@link CalcBackend.Callbacks}): the in-process
|
|
120
|
+
* half of the backend's interface.
|
|
103
121
|
*/
|
|
104
|
-
protected
|
|
122
|
+
protected _backendCallbacks(): CalcBackend.Callbacks;
|
|
105
123
|
/**
|
|
106
|
-
*
|
|
124
|
+
* Recompiles, at the next safe point, the formulas that reference a name - or reference a name
|
|
125
|
+
* that does: a name's link to the engine, held from before there is one. See
|
|
126
|
+
* {@link IContextContainer.recompileNamed}.
|
|
127
|
+
*/
|
|
128
|
+
protected _recompileNamed(nameId: string): void;
|
|
129
|
+
/** Marks, at the next safe point, the formulas that reference a name out of date. See {@link IContextContainer.invalidateNamed}. */
|
|
130
|
+
protected _invalidateNamed(nameId: string): void;
|
|
131
|
+
/**
|
|
132
|
+
* @internal
|
|
133
|
+
* Rewrites the formulas that reference `table`, which is about to be removed: `'error'` puts
|
|
134
|
+
* `#REF!` in place of each reference (a delete), `'address'` the absolute range it designated
|
|
135
|
+
* (a convert to range).
|
|
107
136
|
*
|
|
108
137
|
* @remarks
|
|
109
|
-
*
|
|
110
|
-
*
|
|
111
|
-
*
|
|
112
|
-
* name id, which is what {@link NamedFormulaCollection.getById} is asked to confirm before the
|
|
113
|
-
* walk continues through one.
|
|
114
|
-
*
|
|
115
|
-
* Expands each id once. That is the cycle guard (`A = B+1`, `B = A+1` reaches `A` again on its
|
|
116
|
-
* second hop) and the diamond guard both.
|
|
138
|
+
* Called while the table still exists: its id and its extent are read now, and the rewrite runs at
|
|
139
|
+
* the next safe point. A defined name whose body cites the table is not rewritten; it evaluates
|
|
140
|
+
* `#REF!` once the table is gone.
|
|
117
141
|
*/
|
|
118
|
-
|
|
142
|
+
_releaseTableReferences(table: ITable, release: 'error' | 'address'): void;
|
|
119
143
|
/**
|
|
120
|
-
*
|
|
121
|
-
*
|
|
144
|
+
* @internal
|
|
145
|
+
* A table's body has changed rows: re-fit the A1 references that spanned it (see
|
|
146
|
+
* {@link CalcBackend.refitTableRows}).
|
|
122
147
|
*
|
|
123
|
-
* @
|
|
124
|
-
* The
|
|
125
|
-
*
|
|
126
|
-
*
|
|
148
|
+
* @param sheet The sheet the table is on, by id or name.
|
|
149
|
+
* @param columns The table's columns. A reference reaching outside them is an ordinary one.
|
|
150
|
+
* @param match The rows a reference has to span to be one of the body's, as they read NOW.
|
|
151
|
+
* @param headerRow The header's row when a reference from it to `match.rowEnd` also counts.
|
|
152
|
+
* @param to The body's rows now.
|
|
153
|
+
* @param afterShift The rows to match are where a shift THIS edit makes will have put them - a
|
|
154
|
+
* row inserted at the body's first row. The table hears of a shift before the engine has made it,
|
|
155
|
+
* so this waits for the next safe point.
|
|
156
|
+
* @param isCurrent Whether the table is still as this change left it.
|
|
157
|
+
*/
|
|
158
|
+
_refitTableRows(sheet: string, columns: {
|
|
159
|
+
colStart: number;
|
|
160
|
+
colEnd: number;
|
|
161
|
+
}, match: {
|
|
162
|
+
rowStart: number;
|
|
163
|
+
rowEnd: number;
|
|
164
|
+
}, headerRow: number | null, to: {
|
|
165
|
+
rowStart: number;
|
|
166
|
+
rowEnd: number;
|
|
167
|
+
}, afterShift: boolean, isCurrent: () => boolean): void;
|
|
168
|
+
/**
|
|
169
|
+
* @internal
|
|
170
|
+
* Rewrites the 3-D spans that a tab-order change from `before` to `after` broke — an endpoint that
|
|
171
|
+
* `movedId` carried across the other — to their inward neighbor. Called inside the move's commit,
|
|
172
|
+
* so an undo of the move restores the text.
|
|
173
|
+
*/
|
|
174
|
+
_replaceSheetSpans(before: readonly string[], after: readonly string[], movedId?: string): void;
|
|
175
|
+
/**
|
|
176
|
+
* @internal
|
|
177
|
+
* Demand/plan counters and timings since construction (or the last {@link _resetStats}) — the
|
|
178
|
+
* plan-cache soak rig. From a console: `SheetXL.getSelectedWorkbook().getCalculation()._stats()`.
|
|
179
|
+
*/
|
|
180
|
+
_stats(): ReturnType<CalcBackend['getDemandStats']>;
|
|
181
|
+
/** @internal Zeroes every counter/timing so a measurement window starts clean. */
|
|
182
|
+
_resetStats(): void;
|
|
183
|
+
/**
|
|
184
|
+
* @internal
|
|
185
|
+
* Read (no argument) or set the plan-cache mode: `'on'` | `'assert'` | `'off'`. `'assert'` is the
|
|
186
|
+
* diagnostic to flip to if values ever look stale — see `CalcExecutor.planCacheMode`.
|
|
127
187
|
*/
|
|
128
|
-
|
|
188
|
+
_planCacheMode(mode?: 'off' | 'assert' | 'on'): 'off' | 'assert' | 'on';
|
|
129
189
|
/** @inheritdoc ICalculation.start */
|
|
130
190
|
start(): Promise<void>;
|
|
131
191
|
/**
|
|
@@ -137,7 +197,7 @@ export declare class Calculation extends AbstractModel<State, ICalculation.JSON,
|
|
|
137
197
|
*
|
|
138
198
|
* - `Starting` — held for `start()`'s drain, which always follows and loops until empty.
|
|
139
199
|
* - Inside a drain — picked up by the loop already running.
|
|
140
|
-
* - `
|
|
200
|
+
* - `Running` and settled — a microtask drain is posted (see {@link _scheduleDrain}).
|
|
141
201
|
*
|
|
142
202
|
* That last case is why this is no longer called `whenStarting`. It only ever handled work that
|
|
143
203
|
* arrived while starting: queuing scheduled nothing, and the array was pumped as a side effect of
|
|
@@ -151,13 +211,86 @@ export declare class Calculation extends AbstractModel<State, ICalculation.JSON,
|
|
|
151
211
|
* only inside a calculation. The drain is a safe point, not a synchronization point.
|
|
152
212
|
*/
|
|
153
213
|
_whenSafe(action: () => Promise<unknown>, priority?: boolean): void;
|
|
214
|
+
/**
|
|
215
|
+
* Sends a grid request through the channel (DESIGN-CALC-SERVICE §4): applied now on a `Running`
|
|
216
|
+
* engine, held in send order while `Starting`, and neither recorded nor sent on an `Off` one -
|
|
217
|
+
* the caller's own view is the truth there, and a start is seeded from it.
|
|
218
|
+
*/
|
|
219
|
+
protected _sendRequest(gridId: string, landingId: string | undefined, request: CalcRequest): Promise<ICalcGrid.Results>;
|
|
220
|
+
protected _sendRequestNow(gridId: string, landingId: string | undefined, request: CalcRequest): Promise<CalcResponse>;
|
|
221
|
+
/** Re-judges every held request: `dead` is what `isDead` answers for it now. */
|
|
222
|
+
protected _markHeld(isDead: (held: HeldRequest) => boolean): void;
|
|
223
|
+
/**
|
|
224
|
+
* A start that did not complete: what the channel held is resolved with nothing (the model
|
|
225
|
+
* keeps every write, and the next start is seeded from it), and whoever waited for the
|
|
226
|
+
* compiler is released.
|
|
227
|
+
*/
|
|
228
|
+
protected _abandonStart(): void;
|
|
229
|
+
protected _releaseCompilerWaiters(): void;
|
|
230
|
+
/**
|
|
231
|
+
* Runs the start batch under one operation on the model's store, folded into the commit the
|
|
232
|
+
* batch happens during.
|
|
233
|
+
*
|
|
234
|
+
* @remarks
|
|
235
|
+
* What the batch vends - a seed's record, a name body's answer - the model adopts as it is
|
|
236
|
+
* applied, and each adoption is a write to the model's store. Made as its own root commit, each
|
|
237
|
+
* write copies the store's whole state map into the record it keeps (a state per sheet model, and
|
|
238
|
+
* one per defined name's host), so a start that answers thousands of bodies cost thousands of
|
|
239
|
+
* such copies - the larger part of opening a legacy file. Under one open operation the writes
|
|
240
|
+
* join it, and the store copies once when it closes. Nothing of the model's changes here: the
|
|
241
|
+
* batch is the engine's answer to what the model already holds.
|
|
242
|
+
*/
|
|
243
|
+
protected _underOneModelOperation<R>(batch: () => R): R;
|
|
244
|
+
/**
|
|
245
|
+
* @internal
|
|
246
|
+
* Resolves once the engine can compile: at once when `Running`; when the batch has applied the
|
|
247
|
+
* seeds, ahead of the boot pass, while `Starting`; and, when `Off`, once something else starts
|
|
248
|
+
* it. It never starts the engine itself.
|
|
249
|
+
*
|
|
250
|
+
* @remarks
|
|
251
|
+
* What an owner that registers a formula asynchronously waits on (a condition formula's
|
|
252
|
+
* evaluation). Waiting on {@link ready} instead resolves after the boot pass, and the
|
|
253
|
+
* registration then costs a pass of its own (design §6.5: a boot owes one).
|
|
254
|
+
*
|
|
255
|
+
* An `Off` engine stays off (DESIGN-CALC-ON-LOAD: under `calcOnLoad: 'none'` a read starts
|
|
256
|
+
* nothing, and a conditional format or data validation evaluating on load is a read). Starting it
|
|
257
|
+
* here ran the boot pass, and the pass moved cached values — every volatile, every iterating
|
|
258
|
+
* cycle — in a workbook that was only being opened and saved. The waiter is released by the
|
|
259
|
+
* start the first mutation (or an explicit calculation) makes, and by {@link close}.
|
|
260
|
+
*/
|
|
261
|
+
_whenCanCompile(): Promise<void>;
|
|
262
|
+
/**
|
|
263
|
+
* The start batch (DESIGN-CALC-SERVICE §6.3), in the order the service owns: service-level
|
|
264
|
+
* content first (the names, wired from the priority queue), then the channel in send order
|
|
265
|
+
* (every seed and every request made while the engine was coming up), then the owners that
|
|
266
|
+
* hold a formula of their own (a host whose grid lost its body writes it again; a watch held for
|
|
267
|
+
* the engine registers inside `onReady`), then the one pass the boot owes.
|
|
268
|
+
*
|
|
269
|
+
* @remarks
|
|
270
|
+
* `isLoading()` holds for the whole batch, so a grid seeded here owes its pass rather than
|
|
271
|
+
* running one against siblings not yet seeded. The pass itself runs on a task of its own
|
|
272
|
+
* ({@link _runBoot}): a consumer whose registration chains through promises resolved here (a
|
|
273
|
+
* data validation's, a conditional format's) lands ahead of it, and N of them cost one pass.
|
|
274
|
+
*
|
|
275
|
+
* A held request lands under the engine's current commit: the snapshot it named has been
|
|
276
|
+
* mirrored already, so its writes belong to the tip, and the maps are versioned under that key.
|
|
277
|
+
* One whose snapshot the model has undone since is skipped.
|
|
278
|
+
*/
|
|
279
|
+
protected _boot(): Promise<void>;
|
|
280
|
+
/**
|
|
281
|
+
* Posts the boot pass on a task of its own, and answers the promise `start()`, `ready()` and a
|
|
282
|
+
* `calculate()` made meanwhile wait on. One at a time.
|
|
283
|
+
*/
|
|
284
|
+
protected _scheduleBoot(): Promise<void>;
|
|
285
|
+
/** The boot pass: what the batch, and the consumers that registered since, owe - once. */
|
|
286
|
+
protected _runBoot(): Promise<void>;
|
|
154
287
|
/**
|
|
155
288
|
* Posts a microtask drain, if one is not already coming.
|
|
156
289
|
*
|
|
157
290
|
* @remarks
|
|
158
291
|
* A no-op in the two cases where a drain is already guaranteed to reach this action:
|
|
159
292
|
*
|
|
160
|
-
* - not `
|
|
293
|
+
* - not `Running` — `start()` drains at the tail of its transition, and does so inline so
|
|
161
294
|
* `await start()` covers the queued work. Posting here would race that.
|
|
162
295
|
* - already draining — `_drainPending` loops until the queue is empty, so an action appended
|
|
163
296
|
* during a drain is picked up by the pass in flight.
|
|
@@ -186,8 +319,23 @@ export declare class Calculation extends AbstractModel<State, ICalculation.JSON,
|
|
|
186
319
|
* This is deliberately not folded into {@link _drainPending}. The other three sites would then
|
|
187
320
|
* calculate twice, and `start()` would calculate mid-load — which is the thing `isLoading()`
|
|
188
321
|
* exists to prevent.
|
|
322
|
+
*
|
|
323
|
+
* The pass is reactive whether or not a grid owed it, so manual mode holds it for `calculate()`.
|
|
324
|
+
* That includes the load: a manual-mode file opens with no pass, as Excel's does — its `ca`
|
|
325
|
+
* cells and value-less formulas stay dirty (`isCalculationRequired()`) until asked. A file whose
|
|
326
|
+
* `calcId` says it needs recalculating still gets one; that is the explicit full pass of
|
|
327
|
+
* `calcOnLoad: 'full'`.
|
|
189
328
|
*/
|
|
190
329
|
protected _drainStandalone(): Promise<void>;
|
|
330
|
+
/**
|
|
331
|
+
* Owe a reactive pass for `gridId`, to run once the current flush is over.
|
|
332
|
+
*
|
|
333
|
+
* @remarks
|
|
334
|
+
* The posted form of `calculateGrid`: the drain scheduler already coalesces everything owed at
|
|
335
|
+
* the end of a flush into one pass, and this is how a consumer asks for that pass without
|
|
336
|
+
* running one itself. See {@link IContextContainer.requestCalculateGrid}.
|
|
337
|
+
*/
|
|
338
|
+
protected _owePass(gridId: string): void;
|
|
191
339
|
/**
|
|
192
340
|
* Runs queued actions until the queue is empty. The one drain, used by every site that drains.
|
|
193
341
|
*
|
|
@@ -204,8 +352,8 @@ export declare class Calculation extends AbstractModel<State, ICalculation.JSON,
|
|
|
204
352
|
* shape, and got away with it only because it goes on to call `grid.calculate()` per dirty grid —
|
|
205
353
|
* which loop-drains. It held if something was dirty and did not if nothing was.
|
|
206
354
|
*
|
|
207
|
-
* `_draining`
|
|
208
|
-
* leaves the
|
|
355
|
+
* `_draining` stays set until the last run in flight finishes ({@link _drainDepth}), so a nested
|
|
356
|
+
* drain (an action that calculates) or an overlapping one leaves the other's window intact.
|
|
209
357
|
*
|
|
210
358
|
* **Call this under `if (this._pendingActions?.length)`, not unconditionally.** `await` on an
|
|
211
359
|
* async call yields to the microtask queue even when the callee does nothing, and a calculation
|
|
@@ -214,24 +362,272 @@ export declare class Calculation extends AbstractModel<State, ICalculation.JSON,
|
|
|
214
362
|
* between. An unconditional drain here pushes the whole pass past a microtask boundary and that
|
|
215
363
|
* read returns the raw text instead (`use-signs.test.ts`).
|
|
216
364
|
*/
|
|
217
|
-
protected _drainPending(): Promise<void>;
|
|
365
|
+
protected _drainPending(priorityOnly?: boolean): Promise<void>;
|
|
218
366
|
/** @inheritdoc ICalculation.calculate */
|
|
219
367
|
calculate(options?: ICalculation.CalculateOptions | boolean): Promise<ICalculation.Status>;
|
|
220
368
|
/**
|
|
221
369
|
* @returns The status the engine is in once the pass has run — `Starting` if the request was
|
|
222
|
-
* deferred to the start-up drain, and whatever non-`
|
|
370
|
+
* deferred to the start-up drain, and whatever non-`Running` status turned it away
|
|
223
371
|
* otherwise. Never `undefined`: it used to resolve that on every path including the
|
|
224
372
|
* successful one (the tail simply fell off the end), and two call sites cast the result
|
|
225
373
|
* to `Status` to satisfy {@link ICalculation.calculate}.
|
|
226
374
|
*/
|
|
227
375
|
protected _calculate(options?: ICalculation.CalculateOptions, gridId?: string): Promise<ICalculation.Status>;
|
|
228
|
-
|
|
229
|
-
protected
|
|
230
|
-
protected
|
|
376
|
+
/** A pass, counted while it runs: what the calculation state reads as a pass in flight. */
|
|
377
|
+
protected _calculateNow(options?: ICalculation.CalculateOptions, gridId?: string): Promise<ICalculation.Status>;
|
|
378
|
+
protected _runCalculation(options?: ICalculation.CalculateOptions, gridId?: string): Promise<ICalculation.Status>;
|
|
379
|
+
/**
|
|
380
|
+
* The model commit the last pass recalculated for, `null` before the first: what a sheet
|
|
381
|
+
* realizing the pass's results amends them into.
|
|
382
|
+
* @internal
|
|
383
|
+
*/
|
|
384
|
+
get _calculatedCommitId(): string | null;
|
|
385
|
+
/** A response's cycle: the engine's last pass, or none before there is an engine. */
|
|
386
|
+
protected get _cycleId(): number;
|
|
387
|
+
/**
|
|
388
|
+
* Formula text as a cell at `coords` would STORE it, without writing it anywhere.
|
|
389
|
+
*
|
|
390
|
+
* @remarks
|
|
391
|
+
* {@link createFormula} compiles for editing, which keeps what was typed. A committed cell is
|
|
392
|
+
* compiled for storage: `[#This Row]` becomes `@`, and an unqualified structured reference is
|
|
393
|
+
* given the name of the table it binds to - the one at `coords`. An owner that holds formula text
|
|
394
|
+
* apart from any cell (a table column's totals formula while its row is hidden) stores it
|
|
395
|
+
* through this, so it holds what a cell would.
|
|
396
|
+
*
|
|
397
|
+
* @param coords The cell the text is authored at, on the sheet `scope` names (by id or name).
|
|
398
|
+
* @throws When the engine is not Ready, or `scope` names no sheet.
|
|
399
|
+
* @internal
|
|
400
|
+
*/
|
|
401
|
+
_toStoredText(expression: string, coords: IRange.CellCoords & {
|
|
402
|
+
scope: string;
|
|
403
|
+
}): string;
|
|
404
|
+
/**
|
|
405
|
+
* Whether a grid under `id` is in the model as the store is now: a held formula's grid that came
|
|
406
|
+
* back with an undone delete is attached to rather than written again.
|
|
407
|
+
* @internal
|
|
408
|
+
*/
|
|
409
|
+
/**
|
|
410
|
+
* A grid that holds exactly one formula block, as a handle - see {@link FormulaHost}.
|
|
411
|
+
*
|
|
412
|
+
* @remarks
|
|
413
|
+
* Creates the grid unless the container already has one under `id` (a name's grid outlives a
|
|
414
|
+
* redefine and a delete), then answers a handle over it. The handle resolves the grid by id on
|
|
415
|
+
* every use, so it is safe to hold across snapshots.
|
|
416
|
+
*
|
|
417
|
+
* @internal
|
|
418
|
+
*/
|
|
419
|
+
_hasLiveGrid(id: string): boolean;
|
|
420
|
+
_createFormulaHost(options: Calculation.FormulaHostOptions): FormulaHost;
|
|
421
|
+
/**
|
|
422
|
+
* Evaluate an expression once over a block, through the engine.
|
|
423
|
+
*
|
|
424
|
+
* @remarks
|
|
425
|
+
* The implementation of {@link ICalculation.EvaluateOptions.block}: a watch with no lifetime.
|
|
426
|
+
* The body is written over `coords` in a grid that shadows the sheet, exactly as a watch's is
|
|
427
|
+
* (see `WatchAnchor`), one pass evaluates it, and the grid is dropped. What comes back reads over
|
|
428
|
+
* a copy-on-write clone of the dropped grid's values, taken before the drop, so it outlives the
|
|
429
|
+
* grid as a plain object.
|
|
430
|
+
*
|
|
431
|
+
* The grid and its body amend the current commit, as a watch's do: never an undo step. The
|
|
432
|
+
* pass is explicit and seeded from the one grid, so it runs under manual calculation without
|
|
433
|
+
* recalculating what the user has deferred.
|
|
434
|
+
* @internal
|
|
435
|
+
*/
|
|
436
|
+
protected _evaluateOver(options: Calculation.EvaluateOverOptions): Promise<IRange>;
|
|
437
|
+
/**
|
|
438
|
+
* A grid for a model to hold (DESIGN-CALC-SERVICE §13.23): the synchronous half, versioned in
|
|
439
|
+
* the model's store, forwarding every verb as a request. The engine's grid is made by the
|
|
440
|
+
* grid's first request, `create`, which an `Off` engine drops: a start makes it then, from this
|
|
441
|
+
* one. What the engine pushes reaches the owner through the grid's events. It opens empty: the
|
|
442
|
+
* owner attaches its listeners, then seeds it.
|
|
443
|
+
* @internal
|
|
444
|
+
*/
|
|
445
|
+
_createCalcGrid(options: Calculation.CalcGridOptions): CalcGrid;
|
|
446
|
+
/** What a `create` for a model grid carries: its description. */
|
|
447
|
+
protected _specOf(front: CalcGrid): CalcGridSpec;
|
|
448
|
+
/**
|
|
449
|
+
* Make the engine's grids from the model's (design §6.3): each live model grid's `create`, the
|
|
450
|
+
* hosts' first (a name's grid before any sheet's); each host's body sent again; then every grid
|
|
451
|
+
* a sheet owns seeded from what it holds now. Requests like any other: held while `Starting`,
|
|
452
|
+
* applied at once on a `Running` engine that is rebuilt.
|
|
453
|
+
*
|
|
454
|
+
* @param full The seeds ask for a full pass - a start's, which the boot keeps only when
|
|
455
|
+
* something was written while `Off`.
|
|
456
|
+
*/
|
|
457
|
+
protected _openEngineGrids(full: boolean): void;
|
|
458
|
+
/**
|
|
459
|
+
* The engine's graph and every grid in it, gone: what `stop()` leaves, and what a rebuild starts
|
|
460
|
+
* from. The model's grids are untouched.
|
|
461
|
+
*/
|
|
462
|
+
protected _dropEngine(): void;
|
|
463
|
+
/**
|
|
464
|
+
* The model restored itself to `commitId`: the engine restores its own history there, or - on a
|
|
465
|
+
* `Running` engine whose history does not reach it (a commit from before its start, or one
|
|
466
|
+
* trimmed since) - is rebuilt from the model's grids as they are there, at the next safe point.
|
|
467
|
+
*/
|
|
468
|
+
protected _followRestore(commitId: string): void;
|
|
469
|
+
/**
|
|
470
|
+
* Make the engine again from the model, as a start does: its replicas, its grids and their
|
|
471
|
+
* seeds, with the values the model holds trusted.
|
|
472
|
+
*/
|
|
473
|
+
protected _rebuildEngine(): void;
|
|
474
|
+
/**
|
|
475
|
+
* Report a failure of a request no caller awaits - a grid's seed - as this calculation's error.
|
|
476
|
+
* @internal
|
|
477
|
+
*/
|
|
478
|
+
_reportError(error: unknown): void;
|
|
479
|
+
/** The owner's sheet list as it last said ({@link _setSheets}): what a start seeds the replica from. */
|
|
480
|
+
protected _heldSheets(): Calculation.SheetList['sheets'];
|
|
481
|
+
/** One sheet of {@link _heldSheets} by its grid id, or `undefined` for a grid that is no sheet. */
|
|
482
|
+
protected _heldSheetAt(id: string): Calculation.SheetList['sheets'][number] | undefined;
|
|
483
|
+
/**
|
|
484
|
+
* The owner's sheet list as it is now: every sheet's grid id and name, in tab order, hidden ones
|
|
485
|
+
* included (DESIGN-CALC-SERVICE §8). The owner calls this whenever its list changes - a sheet
|
|
486
|
+
* added, deleted, moved, copied or renamed - and before any grid that names a sheet in it
|
|
487
|
+
* seeds. Not on a restore: this record is restored with the owner's own, and the engine's
|
|
488
|
+
* replica with the engine's store.
|
|
489
|
+
*
|
|
490
|
+
* @remarks
|
|
491
|
+
* Held in the caller's operation (folded into the current commit when none is open) and sent
|
|
492
|
+
* to the engine as one `sheets` message: applied at once on a `Running` engine, held in order
|
|
493
|
+
* while `Starting`. An `Off` engine is told nothing; its next start seeds the replica from this
|
|
494
|
+
* record, and owes a full pass only when a sheet already listed was renamed, moved or removed.
|
|
495
|
+
* @internal
|
|
496
|
+
*/
|
|
497
|
+
_setSheets(sheets: readonly (readonly [id: string, name: string | null, gridless?: boolean])[]): void;
|
|
498
|
+
/**
|
|
499
|
+
* Compiles every loaded name whose text mentions the sheet, ahead of a change a compiled body
|
|
500
|
+
* follows and text cannot: a shift of the sheet's cells, its rename, its removal. See
|
|
501
|
+
* {@link NamedFormulaCollection._materializeMentioning}. Nothing while `Off`: a body written
|
|
502
|
+
* then is sent at the next start, against the sheets as they are by then, as the text would be.
|
|
503
|
+
*/
|
|
504
|
+
protected _materializeNamesMentioning(sheetId: string, name?: string | null): void;
|
|
505
|
+
/** The model's tables as the replica holds them: by id, each table's name and columns. */
|
|
506
|
+
protected _liveTables(): Map<string, TableSymbols>;
|
|
507
|
+
/** The defined names as the replica holds them: by id, each name's spelling and scope sheet. */
|
|
508
|
+
protected _liveNames(): Map<string, NameSymbols>;
|
|
509
|
+
/**
|
|
510
|
+
* Tell the engine one table's name and columns as they are now, or that it is gone - from the
|
|
511
|
+
* model, at the moment it changes, inside the operation (the sheet's table callbacks). So the
|
|
512
|
+
* message is in the channel where the change happened, between the requests made before it and
|
|
513
|
+
* those made after, and a request held while `Starting` binds the names it was sent under. A
|
|
514
|
+
* restore changes nothing here: it reaches the engine as the revert of its own store. An `Off`
|
|
515
|
+
* engine is told nothing; a start seeds the replica from the model.
|
|
516
|
+
*
|
|
517
|
+
* @remarks
|
|
518
|
+
* Reads the table's own record only: a read of the sheet inside an open operation would make the
|
|
519
|
+
* writes a cell buffer holds.
|
|
520
|
+
* @internal
|
|
521
|
+
*/
|
|
522
|
+
_tableChanged(table: ITable, removed: boolean): void;
|
|
523
|
+
/** A name written, as {@link _tableChanged} tells a table. */
|
|
524
|
+
protected _nameWritten(written: NamedFormulaCollection.NamesWritten): void;
|
|
525
|
+
/**
|
|
526
|
+
* One change to a replica, as a message: sent to a `Starting` engine as it is (the channel holds
|
|
527
|
+
* it in order), and to a `Running` one only when the replica does not already say so.
|
|
528
|
+
*/
|
|
529
|
+
protected _sendSymbolChange<T>(kind: 'tables' | 'names', id: string, entry: T | null, same: (a: T | null | undefined, b: T | null) => boolean): void;
|
|
530
|
+
/**
|
|
531
|
+
* While `Starting`: per kind, the held symbol message a new symbol of that kind joins, and the
|
|
532
|
+
* ids every message of the start has told. Dropped with the channel - see {@link _sendSymbolChange}.
|
|
533
|
+
*/
|
|
534
|
+
protected _openSymbolMessages: Map<'tables' | 'names', HeldRequest> | null;
|
|
535
|
+
protected _symbolsTold: Map<'tables' | 'names', Set<string>> | null;
|
|
536
|
+
/** What a replica's change re-resolved - healed, renamed, gone - is marked for the next pass. */
|
|
537
|
+
protected _markDirtyReconciled(provider: {
|
|
538
|
+
reconcile(): string[];
|
|
539
|
+
} | null): void;
|
|
540
|
+
/**
|
|
541
|
+
* Whether the engine's replicas answer: not while `Off`, nor before the start has made the
|
|
542
|
+
* engine. An engine that has been told nothing reads the model.
|
|
543
|
+
*/
|
|
544
|
+
protected _hasReplicas(): boolean;
|
|
545
|
+
/** The table replica and its name index, or `null` when there is none (see {@link _hasReplicas}). */
|
|
546
|
+
protected _replicaTables(): {
|
|
547
|
+
of: ReadonlyMap<string, TableSymbols>;
|
|
548
|
+
idByName: Map<string, string>;
|
|
549
|
+
} | null;
|
|
550
|
+
/** The name replica and its spelling index, as {@link _replicaTables}. @internal */
|
|
551
|
+
_replicaNames(): {
|
|
552
|
+
of: ReadonlyMap<string, NameSymbols>;
|
|
553
|
+
idsByName: Map<string, string[]>;
|
|
554
|
+
} | null;
|
|
555
|
+
/**
|
|
556
|
+
* The name a spelling resolves to from `scope`, by the replica (see
|
|
557
|
+
* {@link CalcBackend.getReplicaNameId}). `undefined` when the replica cannot answer, and the
|
|
558
|
+
* collection is asked instead.
|
|
559
|
+
* @internal
|
|
560
|
+
*/
|
|
561
|
+
_replicaNameId(name: string, scope: string | null | undefined): string | undefined;
|
|
562
|
+
/** See {@link _modelSymbols}. */
|
|
563
|
+
protected _modelSymbolRegistry: ISymbolRegistry;
|
|
564
|
+
/**
|
|
565
|
+
* The model's symbol map (DESIGN-CALC-SERVICE §8): what the facade images the engine's records
|
|
566
|
+
* against. Sheets answer from the model's live list; the rest from the engine's providers.
|
|
567
|
+
* @internal
|
|
568
|
+
*/
|
|
569
|
+
_modelSymbols(): ISymbolRegistry;
|
|
570
|
+
/**
|
|
571
|
+
* What images a grid's records for the model (DESIGN-CALC-SERVICE §8): the model's symbol map,
|
|
572
|
+
* the grid as home scope, its bounds and the reader's locale, both read live so a rename or a
|
|
573
|
+
* locale switch shows without a recompile.
|
|
574
|
+
* @internal
|
|
575
|
+
*/
|
|
576
|
+
_imagerFor(gridId: string): FormulaImager;
|
|
577
|
+
/** Every sheet's grid id in tab order, from the replica. */
|
|
578
|
+
protected _sheetIds(): readonly string[];
|
|
579
|
+
/** A sheet's grid id by its name, as Excel reads sheet names: case-insensitively. `null` when none. */
|
|
580
|
+
protected _sheetIdByName(name: string): string | null;
|
|
581
|
+
/** A sheet's name by its grid id, or `null` for a grid that is no sheet. */
|
|
582
|
+
protected _sheetName(gridId: string): string | null;
|
|
231
583
|
/** @inheritdoc ICalculation.stop */
|
|
232
584
|
stop(): Promise<void>;
|
|
585
|
+
/**
|
|
586
|
+
* {@inheritDoc ITransaction.ITransactional.close}
|
|
587
|
+
*
|
|
588
|
+
* @remarks
|
|
589
|
+
* Brings the ENGINE down before the model goes away. The inherited close is a model close — it
|
|
590
|
+
* flips the closed flag and detaches the transaction listener — which left a closed calculation
|
|
591
|
+
* still reporting {@link ICalculation.Status.Running}, with `onStopping`/`onStop` never sent to
|
|
592
|
+
* listeners that were about to be discarded.
|
|
593
|
+
*
|
|
594
|
+
* {@link stop} resolves synchronously (it awaits nothing), so the `void` here loses no ordering;
|
|
595
|
+
* it is `async` only because the interface says so. It is also a no-op unless the status is
|
|
596
|
+
* `Running`, which is what makes closing a still-STARTING engine safe — `start()` observes the close
|
|
597
|
+
* at its own await points instead.
|
|
598
|
+
*/
|
|
599
|
+
close(): void;
|
|
600
|
+
/** A model holding writes for the engine makes them on this read (`ITransaction.Hooks.writes`). */
|
|
601
|
+
protected _flushModel(): void;
|
|
602
|
+
/** The model commits on the live history: the current one and its ancestors. */
|
|
603
|
+
protected _modelHistory(): Set<string>;
|
|
604
|
+
/**
|
|
605
|
+
* Whether a model commit landed: the model holds it, or did when a held request was judged
|
|
606
|
+
* against it. A snapshot that never landed (an amended root's) is not one a restore can undo.
|
|
607
|
+
*/
|
|
608
|
+
protected _hasLanded(commitId: string): boolean;
|
|
609
|
+
/**
|
|
610
|
+
* The landing of the model operation open now, which an engine write made during it lands in:
|
|
611
|
+
* the operation's root (`<id>:0`) or the nested savepoint open now. `null` outside an operation.
|
|
612
|
+
*/
|
|
613
|
+
protected _modelLanding(): string | null;
|
|
614
|
+
/**
|
|
615
|
+
* Hook the rollback of the savepoint a request goes out under, the first time one does: a
|
|
616
|
+
* `rollback` message follows, through the channel, if it rolls back. By a step that shares the
|
|
617
|
+
* savepoint and writes nothing - its outcome hooks pass to the savepoint when it closes. A
|
|
618
|
+
* request landing on the operation's own commit (`<id>:0`) needs none: a root rollback is seen by
|
|
619
|
+
* the engine's listener on the store.
|
|
620
|
+
*/
|
|
621
|
+
protected _hookRollback(landingId: string): void;
|
|
622
|
+
private _rollbackHooked;
|
|
233
623
|
/** @inheritdoc ICalculation.getStatus */
|
|
234
624
|
getStatus(): ICalculation.Status;
|
|
625
|
+
/**
|
|
626
|
+
* Resolves once every request sent to a grid has settled and its sender has handled the
|
|
627
|
+
* response. What a save waits for after `ready()`.
|
|
628
|
+
* @internal
|
|
629
|
+
*/
|
|
630
|
+
_whenRequestsSettled(): Promise<void>;
|
|
235
631
|
/** @inheritdoc ICalculation.getCalculationMode */
|
|
236
632
|
getCalculationMode(): ICalculation.CalculationMode;
|
|
237
633
|
/** @inheritdoc ICalculation.setCalculationMode */
|
|
@@ -246,19 +642,40 @@ export declare class Calculation extends AbstractModel<State, ICalculation.JSON,
|
|
|
246
642
|
toJSON(): ICalculation.JSON;
|
|
247
643
|
/** @inheritdoc ICalculation.ready */
|
|
248
644
|
ready(options?: ICalculation.CalculateOptions): Promise<ICalculation.Status>;
|
|
645
|
+
/** {@inheritDoc ICalculation.waitUntil} */
|
|
646
|
+
waitUntil<T>(work: Promise<T>): Promise<T>;
|
|
647
|
+
/** One round of `ready()`: up, drained, and the passes the dirty set owes (none in manual mode). */
|
|
648
|
+
protected _readyPass(full: boolean): Promise<void>;
|
|
649
|
+
/** @inheritdoc ICalculation.getCalculationState */
|
|
650
|
+
getCalculationState(): ICalculation.CalculationState;
|
|
651
|
+
/**
|
|
652
|
+
* Work in flight: answers owed to the model, a drain posted or running, deferred actions, a pass
|
|
653
|
+
* owed or running, the boot, and what consumers derive from the results ({@link waitUntil}) -
|
|
654
|
+
* except in manual mode, where the pass that work waits for runs only when asked. What `ready()`
|
|
655
|
+
* waits out.
|
|
656
|
+
*/
|
|
657
|
+
protected _isWorking(): boolean;
|
|
658
|
+
/**
|
|
659
|
+
* Checks the calculation state once the current flush is over: announces a change, and wakes
|
|
660
|
+
* every `ready()` waiting for work in flight to end. Called wherever that work starts or ends.
|
|
661
|
+
*/
|
|
662
|
+
protected _noteCalculationState(): void;
|
|
249
663
|
/**
|
|
250
664
|
* The locale-aware editing compiler, (re)built when the workbook locale (separators, Plane 1) or
|
|
251
665
|
* active spreadsheet-language pack (boolean literals, Plane 3) has changed since it was last built.
|
|
252
666
|
* Only the editing path uses locale-specific separators; the calc path (`_compiler`) is always
|
|
253
667
|
* canonical because it only ever parses stored/API text.
|
|
254
668
|
*/
|
|
255
|
-
protected _getEditingCompiler(): IFormulaCompiler;
|
|
669
|
+
protected _getEditingCompiler(target?: ICalculation.FormulaTarget): IFormulaCompiler;
|
|
256
670
|
/** @inheritdoc ICalculation.createFormula */
|
|
257
|
-
createFormula(expression: string, coords?: Partial<IRange.CellCoords
|
|
671
|
+
createFormula(expression: string, coords?: Partial<IRange.CellCoords>, options?: ICalculation.CreateFormulaOptions): ICalculation.IFormula;
|
|
672
|
+
protected _createFormula(expression: string, coords: Partial<IRange.CellCoords> | undefined, target: ICalculation.FormulaTarget): ICalculation.IFormula;
|
|
258
673
|
/** {@inheritDoc ICalculation.evaluate} */
|
|
259
|
-
evaluate(expression: string, options?: number | ICalculation.EvaluateOptions & Partial<IRange.CellCoords>): Promise<Scalar | IRange>;
|
|
674
|
+
evaluate(expression: string, options?: number | ICalculation.EvaluateOptions & Partial<IRange.CellCoords> & ICalculation.CreateFormulaOptions): Promise<Scalar | IRange>;
|
|
260
675
|
/** @inheritdoc ICalculation.getFunctions */
|
|
261
676
|
getFunctions(): IFunctionCollection;
|
|
677
|
+
/** @inheritdoc ICalculation.getExternalBooks */
|
|
678
|
+
getExternalBooks(): IExternalBookCollection;
|
|
262
679
|
/** @inheritdoc ICalculation.getNamedFormulas */
|
|
263
680
|
getNamedFormulas(): INamedFormulasCollection;
|
|
264
681
|
/**
|
|
@@ -288,6 +705,8 @@ export declare class Calculation extends AbstractModel<State, ICalculation.JSON,
|
|
|
288
705
|
protected _statusMessage(): string;
|
|
289
706
|
get [Symbol.toStringTag](): string;
|
|
290
707
|
toString(): string;
|
|
708
|
+
/** {@inheritDoc ICalculation.isICalculation} */
|
|
709
|
+
get isICalculation(): true;
|
|
291
710
|
}
|
|
292
711
|
/**
|
|
293
712
|
* Interfaces for creating `Calculation` items.
|
|
@@ -298,6 +717,62 @@ export declare class Calculation extends AbstractModel<State, ICalculation.JSON,
|
|
|
298
717
|
* {@link Calculation}
|
|
299
718
|
*/
|
|
300
719
|
export declare namespace Calculation {
|
|
720
|
+
/** See {@link Calculation._evaluateOver}. */
|
|
721
|
+
interface EvaluateOverOptions {
|
|
722
|
+
/** The sheet whose coordinate space the block is in. */
|
|
723
|
+
sheetGridId: string;
|
|
724
|
+
/** The block: the body is filled over it. */
|
|
725
|
+
coords: IRange.Coords;
|
|
726
|
+
/** The expression as authored, without a leading `=`. */
|
|
727
|
+
expression: string;
|
|
728
|
+
/** Where the expression is authored; `coords`' top-left for a plain fill. */
|
|
729
|
+
authoredAt: IRange.CellCoords;
|
|
730
|
+
/** Each cell of the block is its own 1x1 array-entered formula. See {@link ICalculation.EvaluateOptions.arrayFirstCell}. */
|
|
731
|
+
arrayFirstCell?: boolean;
|
|
732
|
+
}
|
|
733
|
+
/** See {@link Calculation._createFormulaHost}. */
|
|
734
|
+
interface FormulaHostOptions {
|
|
735
|
+
/** The grid's id; an existing grid under it is reused. */
|
|
736
|
+
id: string;
|
|
737
|
+
/** The sheet grid whose coordinate space the body lives in - a watch. See {@link ICalcGrid.getShadowOf}. */
|
|
738
|
+
shadowOf?: string;
|
|
739
|
+
/** `true` for a grid whose (0,0) is a synthetic anchor - a name. See {@link CalcGridBackend.ConstructorOptions.unanchored}. */
|
|
740
|
+
unanchored?: boolean;
|
|
741
|
+
/** `true` for a body whose every cell is its own 1x1 array-entered formula. See {@link ICalcGrid.isArrayFirstCell}. */
|
|
742
|
+
arrayFirstCell?: boolean;
|
|
743
|
+
/** `true` for a body whose blank region may be evaluated a tile at a time. See {@link FormulaHost.request}. */
|
|
744
|
+
paged?: boolean;
|
|
745
|
+
/** The grid's size: fixed, a name's. */
|
|
746
|
+
entireCoords?: IRange.Coords;
|
|
747
|
+
/** The grid whose size the body has, whatever it is then: a sheet's, for a body on it. */
|
|
748
|
+
sizeOf?: string;
|
|
749
|
+
/** Told after every pass that wrote the grid. */
|
|
750
|
+
onCalculated?: (results: ICalcGrid.Results) => void;
|
|
751
|
+
/** Told after a restore or revert has replaced the body under the host. */
|
|
752
|
+
onResync?: () => void;
|
|
753
|
+
}
|
|
754
|
+
/** The owner's sheet list as {@link Calculation._setSheets} holds it. */
|
|
755
|
+
interface SheetList {
|
|
756
|
+
/** Every sheet's grid id and name, in tab order, and `true` third for a sheet with no grid. */
|
|
757
|
+
readonly sheets: readonly (readonly [id: string, name: string | null, gridless?: boolean])[];
|
|
758
|
+
}
|
|
759
|
+
/** See {@link Calculation._createCalcGrid}. */
|
|
760
|
+
interface CalcGridOptions extends CalcGrid.HostOptions, Pick<CalcGrid.ConstructorOptions, 'valuesAxis'> {
|
|
761
|
+
/** The grid's id; a new one is made when absent. */
|
|
762
|
+
uuid?: string;
|
|
763
|
+
/** See {@link CalcGridSpec.shadowOf}. */
|
|
764
|
+
shadowOf?: string;
|
|
765
|
+
/** See {@link CalcGridSpec.unanchored}. */
|
|
766
|
+
unanchored?: boolean;
|
|
767
|
+
/** See {@link CalcGridSpec.arrayFirstCell}. */
|
|
768
|
+
arrayFirstCell?: boolean;
|
|
769
|
+
/** See {@link CalcGridSpec.paged}. */
|
|
770
|
+
paged?: boolean;
|
|
771
|
+
/** See {@link CalcGridSpec.entireCoords}. */
|
|
772
|
+
entireCoords?: IRange.Coords;
|
|
773
|
+
/** See {@link CalcGridSpec.sizeOf}. */
|
|
774
|
+
sizeOf?: string;
|
|
775
|
+
}
|
|
301
776
|
/**
|
|
302
777
|
* Options available when creating a Calculation Service.
|
|
303
778
|
*/
|
|
@@ -321,29 +796,21 @@ export declare namespace Calculation {
|
|
|
321
796
|
*/
|
|
322
797
|
getActiveCell?: () => IRange.CellCoords | null;
|
|
323
798
|
/**
|
|
324
|
-
*
|
|
799
|
+
* Whether defined names refuse edits, on top of the calculation's own read-only state. A
|
|
800
|
+
* workbook answers with its structure protection.
|
|
325
801
|
*/
|
|
802
|
+
isNamesReadOnly?: () => boolean;
|
|
326
803
|
/**
|
|
327
|
-
*
|
|
328
|
-
*
|
|
329
|
-
*
|
|
330
|
-
*
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
getId(): string;
|
|
334
|
-
getName(): string;
|
|
335
|
-
getEntireCoords: () => IRange.Coords | null;
|
|
336
|
-
getRange?: (address: ICellRange.Address, options?: ICellRange.GetRangeOptions) => ICellRange;
|
|
337
|
-
getRanges?: (address: ICellRanges.Address, options?: ICellRange.GetRangeOptions) => ICellRanges;
|
|
338
|
-
} | null;
|
|
339
|
-
/**
|
|
340
|
-
* Returns a sheet handle given a name.
|
|
804
|
+
* External books to hydrate at construction, in `IWorkbook.JSON.externalBooks` form — `[n]`
|
|
805
|
+
* order, `null` for a DDE/OLE gap.
|
|
806
|
+
*
|
|
807
|
+
* @remarks
|
|
808
|
+
* The engine owns the collection ({@link ICalculation.getExternalBooks}) for the reason it owns
|
|
809
|
+
* defined names: a book is a symbol formulas bind into, and its dependents are the engine's index.
|
|
341
810
|
*/
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
getEntireCoords: () => IRange.Coords | null;
|
|
346
|
-
} | null;
|
|
811
|
+
externalBooks?: (IExternalBook.JSON | null)[];
|
|
812
|
+
/** See {@link ICellContainerOptions.externalBookResolver}; held by the collection for the engine's life. */
|
|
813
|
+
externalBookResolver?: IExternalBook.IResolver;
|
|
347
814
|
/**
|
|
348
815
|
* Named item collection shared with the workbook.
|
|
349
816
|
*
|
|
@@ -362,12 +829,6 @@ export declare namespace Calculation {
|
|
|
362
829
|
* engine has no pre-load lifecycle state.
|
|
363
830
|
*/
|
|
364
831
|
names?: INamed.JSON[];
|
|
365
|
-
/**
|
|
366
|
-
* A structural transform applied to each hydrated name's expression as it compiles — the READ
|
|
367
|
-
* half of the format-dialect hook (see `IWorkbook.ConstructorOptions.formulaTransform`).
|
|
368
|
-
* Applies only to {@link names}; formulas added later compile without it.
|
|
369
|
-
*/
|
|
370
|
-
formulaTransform?: ICalculation.FormulaTransform;
|
|
371
832
|
getRanges?: (address: ICellRanges.Address, options?: ICellRange.GetRangeOptions) => ICellRanges;
|
|
372
833
|
getRange?: (address: ICellRange.Address, options?: ICellRange.GetRangeOptions) => ICellRange;
|
|
373
834
|
/**
|
|
@@ -381,7 +842,7 @@ export declare namespace Calculation {
|
|
|
381
842
|
* `INamedRange` — see DESIGN-NAMED-FORMULAS.md §4). Structural like `getRange`/`getRanges`,
|
|
382
843
|
* and like them supplied by the workbook. Without it, graph answers fall back to cells only.
|
|
383
844
|
*/
|
|
384
|
-
createGraphRanges?: (cells: readonly IRange.Coords[], names: readonly
|
|
845
|
+
createGraphRanges?: (cells: readonly IRange.Coords[], names: readonly NamedNodeInfo[]) => ICellRanges | null;
|
|
385
846
|
getSheetIndex?: (sheetName?: string) => number;
|
|
386
847
|
getSheetCount?: () => number;
|
|
387
848
|
strings?: IStringCollection;
|
|
@@ -396,7 +857,7 @@ export declare namespace Calculation {
|
|
|
396
857
|
*
|
|
397
858
|
* @defaultValue 100
|
|
398
859
|
*/
|
|
399
|
-
|
|
860
|
+
maxIteration?: number;
|
|
400
861
|
/**
|
|
401
862
|
* The maximum change allowed between iterations when performing iterative calculations.
|
|
402
863
|
*
|
|
@@ -408,47 +869,21 @@ export declare namespace Calculation {
|
|
|
408
869
|
/**
|
|
409
870
|
* Transaction State for Calculation
|
|
410
871
|
*/
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
/**
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
*
|
|
427
|
-
*/
|
|
428
|
-
precedentSpatial: ISpatialMap3D<PrecedentSpatialValue>;
|
|
429
|
-
/**
|
|
430
|
-
* Tracks dynamic precedents by block.
|
|
431
|
-
* Used to remove old dynamic precedents when a block is re-evaluated and to add new ones after evaluation.
|
|
432
|
-
*/
|
|
433
|
-
dynamicByBlock: Map<FormulaSpatialValue, ISpatialMap.Entry<PrecedentSpatialValue>[]>;
|
|
434
|
-
/**
|
|
435
|
-
* Dirty regions
|
|
436
|
-
*/
|
|
437
|
-
dirtySpatial: ISpatialMap3D;
|
|
438
|
-
/**
|
|
439
|
-
* If true, the next calculation will be a full calc regardless of dirty state. Used for example when the engine detects a circular dependency and needs to fallback to iterative calculation or when the user explicitly requests a full calc.
|
|
440
|
-
*/
|
|
441
|
-
isFullCalcRequired: boolean;
|
|
442
|
-
/**
|
|
443
|
-
* All registered grids.
|
|
444
|
-
*/
|
|
445
|
-
gridsAll: Map<string, ICalcGrid>;
|
|
446
|
-
/**
|
|
447
|
-
* Listeners to individual named items
|
|
448
|
-
*/
|
|
449
|
-
itemRemoveListeners: (() => void)[];
|
|
450
|
-
}
|
|
451
|
-
interface CommitView extends AbstractModel.CommitView {
|
|
872
|
+
/**
|
|
873
|
+
* A grid request the channel holds while the engine is `Starting` (DESIGN-CALC-SERVICE §4): the
|
|
874
|
+
* request as data, the snapshot it names, and the caller's continuation.
|
|
875
|
+
*/
|
|
876
|
+
interface HeldRequest {
|
|
877
|
+
gridId: string;
|
|
878
|
+
request: CalcRequest;
|
|
879
|
+
/** The engine commit it would have landed in; what a nested rollback names. */
|
|
880
|
+
landingId: string | undefined;
|
|
881
|
+
/** The model snapshot it was made at (`RequestOptions.commitId`); what a restore names. */
|
|
882
|
+
commitId: string | undefined;
|
|
883
|
+
/** The model has undone the snapshot it was made at: skipped when applied, unless a redo revives it. */
|
|
884
|
+
dead: boolean;
|
|
885
|
+
resolve: (response: CalcResponse | PromiseLike<CalcResponse>) => void;
|
|
886
|
+
reject: (error: unknown) => void;
|
|
452
887
|
}
|
|
453
888
|
export {};
|
|
454
889
|
//# sourceMappingURL=Calculation.d.ts.map
|