@sheetxl/sdk 0.8.0-beta.1 → 0.8.0-beta.10
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/THIRD-PARTY-NOTICES.md +1 -1
- package/browser/esm/{B0HS42a7lga1k1U_.mjs → BEAY9XgKNx-bakXW.mjs} +2 -2
- package/browser/esm/BbSmt62FpFIpoVzu.mjs +392 -0
- package/browser/esm/BcHmrKHwMMOlzc9_.mjs +357 -0
- package/browser/esm/BgcZ-CoTbMfmyDJL.mjs +412 -0
- package/browser/esm/Bk7xxbdDpa7-sIwd.mjs +7 -0
- package/browser/esm/BqskM7wA8oPfFQue.mjs +20 -0
- package/browser/esm/Btg43M1Bf-ENDreu.mjs +540 -0
- package/browser/esm/BzLfNyc6OOShIErH.mjs +598 -0
- package/browser/esm/C9B0djuUarfNdoj0.mjs +466 -0
- package/browser/esm/{uyWBMSIxMlt8n5Z3.mjs → CSx9ed1JOs7K5BXO.mjs} +2 -2
- package/browser/esm/CYyv6uGjo10ig5FP.mjs +142 -0
- package/browser/esm/CZ5oa92wZEAXebgk.mjs +622 -0
- package/browser/esm/CdLZWVcH8cncBUPJ.mjs +849 -0
- package/browser/esm/Cgd5BnM3hg9RyUel.mjs +171 -0
- package/browser/esm/CjsUGJEQSbGjnH6R.mjs +1001 -0
- package/browser/esm/ClB5ix51roQOpZEr.mjs +7402 -0
- package/browser/esm/{DlPMeIyxT9tG_WDk.mjs → Cqr3knDsBvoVZ6MN.mjs} +179 -202
- package/browser/esm/D4uVlrG0xEFctsSM.mjs +905 -0
- package/browser/esm/DOMHmhYzPcLVcpAW.mjs +7 -0
- package/browser/esm/DUvUK61b2_4pf4tG.mjs +484 -0
- package/browser/esm/De175LygU7ot4nQm.mjs +441 -0
- package/browser/esm/DhKkrCVASZ6Isvz6.mjs +527 -0
- package/browser/esm/Di58Ji1n--3Mgc_2.mjs +607 -0
- package/browser/esm/Dtoyt8q5RyGAlxCp.mjs +1141 -0
- package/browser/esm/Y79I7Sm8kjaYexhf.mjs +167 -0
- package/browser/esm/index.mjs +1472 -1023
- package/browser/esm/o8MFgcVXns987D6_.mjs +400 -0
- package/browser/esm/zqJOaweiXE9D8RY1.mjs +66681 -0
- package/licenses/dependencies.txt +209 -209
- package/node/esm/B6D7sSetrcOWLsKj.mjs +1135 -0
- package/node/esm/B9ljpEIZg6wOTzRE.mjs +142 -0
- package/node/esm/BH1v-E4Ro3bR7Znw.mjs +962 -0
- package/node/esm/BN9j8V9gCExMjVtJ.mjs +540 -0
- package/node/esm/{Cku7XiUvw1xrRasi.mjs → Bh4dv6tMjXX3X4nI.mjs} +1 -1
- package/node/esm/Bqd62L8KFgdS0Vou.mjs +7 -0
- package/node/esm/Bsx9uijd4X_SKV3L.mjs +360 -0
- package/node/esm/BtuY37FumvLE7EBo.mjs +629 -0
- package/node/esm/C6ZXsNyLXI6zA63X.mjs +402 -0
- package/node/esm/CCouEwT37f08qO3V.mjs +7 -0
- package/node/esm/CD9wbvufChVYYkrI.mjs +451 -0
- package/node/esm/CImNvdz1iP-lUlro.mjs +610 -0
- package/node/esm/CT0CN82y0_Qgoryk.mjs +7568 -0
- package/node/esm/CUQi5ZtMO02nhG0W.mjs +596 -0
- package/node/esm/CUUoseJmFsCf82bb.mjs +28 -0
- package/node/esm/CnSQ7MTXAUAyBOoS.mjs +911 -0
- package/node/esm/D7MfcID2Wf6l6VpC.mjs +171 -0
- package/node/esm/DCplLG93GfTs1vNw.mjs +1860 -0
- package/node/esm/DHUADiCmxNQS1ARz.mjs +417 -0
- package/node/esm/DMD12JUh7HJw2-jl.mjs +638 -0
- package/node/esm/DdFgXl-Ux2cMBTs_.mjs +15 -0
- package/node/esm/DefYISWfdZJFx57m.mjs +255 -0
- package/node/esm/Ds0d8zXzmgOu3MGx.mjs +403 -0
- package/node/esm/MiU4rDOiocmJ-9Ry.mjs +1783 -0
- package/node/esm/index.mjs +51616 -39665
- package/package.json +15 -16
- package/resources/contents.json +64 -0
- package/resources/fonts/arial-bold-italic.metrics.json +139 -0
- package/resources/fonts/arial-bold.metrics.json +139 -0
- package/resources/fonts/arial-italic.metrics.json +139 -0
- package/resources/fonts/arial-regular.metrics.json +139 -0
- package/resources/fonts/calibri-bold-italic.metrics.json +137 -0
- package/resources/fonts/calibri-bold.metrics.json +137 -0
- package/resources/fonts/calibri-italic.metrics.json +137 -0
- package/resources/fonts/calibri-regular.metrics.json +137 -0
- package/resources/fonts/cambria-bold-italic.metrics.json +66 -0
- package/resources/fonts/cambria-bold.metrics.json +66 -0
- package/resources/fonts/cambria-italic.metrics.json +66 -0
- package/resources/fonts/cambria-regular.metrics.json +66 -0
- package/resources/fonts/contents.json +126 -0
- package/resources/fonts/courier-new-bold-italic.metrics.json +143 -0
- package/resources/fonts/courier-new-bold.metrics.json +143 -0
- package/resources/fonts/courier-new-italic.metrics.json +143 -0
- package/resources/fonts/courier-new-regular.metrics.json +143 -0
- package/resources/fonts/times-new-roman-bold-italic.metrics.json +141 -0
- package/resources/fonts/times-new-roman-bold.metrics.json +141 -0
- package/resources/fonts/times-new-roman-italic.metrics.json +143 -0
- package/resources/fonts/times-new-roman-regular.metrics.json +141 -0
- package/resources/locales/de/model.msg.json +112 -12
- package/resources/locales/en/model.msg.json +119 -13
- package/types/scripting-api.json +8048 -0
- package/types/scripting-enums.json +277 -110
- package/types/scripting.d.ts +13077 -3224
- 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} +42 -41
- package/types/src/border/index.d.ts +1 -1
- package/types/src/calculation/Calculation.d.ts +754 -49
- package/types/src/calculation/ExternalBookBindings.d.ts +118 -0
- package/types/src/calculation/FormulaText.d.ts +82 -0
- package/types/src/calculation/ICalculation.d.ts +318 -81
- package/types/src/calculation/INamedFormulasCollection.d.ts +5 -8
- package/types/src/calculation/NamedFormulaCollection.d.ts +139 -107
- 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/_TableRename.d.ts +13 -0
- package/types/src/calculation/compiler/ASTTypes.d.ts +71 -0
- package/types/src/calculation/compiler/CompilerUtils.d.ts +135 -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 +26 -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/executor/CalcExecutor.d.ts +312 -33
- package/types/src/calculation/executor/CalcExecutorUtils.d.ts +43 -2
- package/types/src/calculation/executor/CircularReference.d.ts +2 -0
- package/types/src/calculation/formula/Formula.d.ts +58 -21
- package/types/src/calculation/formula/FormulaBlock.d.ts +125 -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 +261 -67
- package/types/src/calculation/formula/LambdaValue.d.ts +46 -23
- 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 +31 -0
- package/types/src/calculation/functions/Operators.d.ts +8 -0
- package/types/src/calculation/functions/initializeFunctions.d.ts +15 -2
- package/types/src/calculation/grid/CalcGrid.d.ts +407 -158
- package/types/src/calculation/grid/CalcGridBackend.d.ts +493 -0
- package/types/src/calculation/grid/CalcGridProxy.d.ts +133 -0
- package/types/src/calculation/grid/CalcGridUtils.d.ts +62 -12
- package/types/src/calculation/grid/FormulaEntry.d.ts +129 -0
- package/types/src/calculation/grid/FormulaHost.d.ts +239 -0
- package/types/src/calculation/grid/ICalcGrid.d.ts +499 -141
- package/types/src/calculation/grid/_CalcRequest.d.ts +289 -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 +339 -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 +37 -0
- package/types/src/calculation/state/CalcState.d.ts +22 -1
- package/types/src/calculation/state/CalculationContext.d.ts +50 -3
- package/types/src/calculation/state/IContextContainer.d.ts +129 -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/cell/ICell.d.ts +104 -29
- package/types/src/cell/ICellHeader.d.ts +24 -2
- package/types/src/cell/ICellProtection.d.ts +50 -10
- package/types/src/cellRange/ICellRange.d.ts +419 -79
- package/types/src/cellRange/ICellRanges.d.ts +23 -21
- package/types/src/chart/Chart.d.ts +41 -13
- package/types/src/chart/ChartCollection.d.ts +26 -0
- package/types/src/chart/IChart.d.ts +166 -12
- package/types/src/chart/IChartCollection.d.ts +25 -0
- package/types/src/chart/_ChartXml.d.ts +70 -0
- package/types/src/chart/index.d.ts +1 -3
- 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/OverlappingRangeIterator.d.ts +13 -17
- 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 +1 -1
- package/types/src/collections/SpatialMap.d.ts +13 -21
- package/types/src/collections/Tuple.d.ts +128 -16
- package/types/src/collections/_GridUtils.d.ts +19 -6
- package/types/src/collections/_RangeSweep.d.ts +97 -0
- package/types/src/collections/_SpatialUtils.d.ts +20 -2
- package/types/src/collections/index.d.ts +1 -0
- package/types/src/color/_BuiltInIndexDefs.d.ts +6 -0
- package/types/src/comment/Comment.d.ts +223 -0
- package/types/src/comment/CommentCollection.d.ts +40 -0
- package/types/src/comment/IComment.d.ts +340 -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 +50 -0
- package/types/src/comment/index.d.ts +1 -0
- package/types/src/condition/AnchoredConditional.d.ts +82 -17
- 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 +293 -73
- 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 +25 -14
- package/types/src/conditionalFormat/ConditionalFormatCollection.d.ts +19 -8
- package/types/src/conditionalFormat/IConditionalFormat.d.ts +12 -10
- package/types/src/conditionalFormat/IConditionalFormatCollection.d.ts +2 -0
- package/types/src/dataValidation/DataValidation.d.ts +69 -3
- package/types/src/dataValidation/DataValidationCollection.d.ts +20 -9
- package/types/src/dataValidation/IDataValidation.d.ts +149 -30
- package/types/src/dataValidation/IDataValidationCollection.d.ts +10 -2
- package/types/src/date/DateUtils.d.ts +20 -0
- package/types/src/date/_DateUtils.d.ts +91 -7
- 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 +170 -18
- 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 +123 -78
- package/types/src/fill/IStroke.d.ts +190 -64
- 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 +1 -0
- package/types/src/filter/IFilter.d.ts +188 -5
- package/types/src/font/AdvanceBuilder.d.ts +25 -0
- package/types/src/font/AdvanceTable.d.ts +114 -0
- package/types/src/font/FontCollection.d.ts +57 -0
- package/types/src/font/IFont.d.ts +17 -0
- package/types/src/font/IFontCollection.d.ts +120 -22
- package/types/src/font/TableFileAdvanceBuilder.d.ts +27 -0
- package/types/src/font/_BuiltinFontTables.d.ts +10 -0
- package/types/src/font/index.d.ts +4 -1
- package/types/src/group/Group.d.ts +136 -0
- package/types/src/group/GroupMovableCollection.d.ts +37 -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 +3 -2
- package/types/src/hyperlink/IHyperlink.d.ts +13 -0
- package/types/src/hyperlink/_Hyperlink.d.ts +5 -1
- package/types/src/i18n/LanguagePack.d.ts +12 -4
- package/types/src/index.d.ts +5 -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 +4 -1
- package/types/src/license/Types.d.ts +38 -0
- package/types/src/license/_Utils.d.ts +22 -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 +41 -0
- package/types/src/{lib/utils/utils.node.d.ts → license/runtime.node.d.ts} +9 -12
- package/types/src/listener/IListener.d.ts +12 -7
- package/types/src/listener/ListenerEmitter.d.ts +46 -5
- 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 +378 -46
- package/types/src/movable/IMovableCollection.d.ts +63 -3
- package/types/src/movable/Movable.d.ts +149 -49
- package/types/src/movable/MovableCollection.d.ts +15 -8
- 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 +28 -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 +4 -1
- package/types/src/named/INamedCollection.d.ts +26 -0
- package/types/src/named/NamedCollection.d.ts +16 -15
- package/types/src/numFmt/BuiltInFormats.d.ts +20 -7
- package/types/src/numFmt/IFormatEngine.d.ts +2 -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 +33 -3
- package/types/src/picture/Picture.d.ts +33 -13
- 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/IPrint.d.ts +0 -22
- package/types/src/protectedRange/IProtectedRange.d.ts +4 -0
- 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 +36 -2
- 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/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 +28 -26
- 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 +49 -0
- package/types/src/scripting/declarations.node.d.ts +9 -0
- package/types/src/scripting/index.d.ts +3 -0
- package/types/src/selection/IMovableSelection.d.ts +148 -0
- package/types/src/selection/IRangeSelection.d.ts +9 -4
- package/types/src/selection/MovableSelection.d.ts +48 -0
- package/types/src/selection/RangeSelection.d.ts +15 -0
- package/types/src/selection/index.d.ts +1 -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 +341 -194
- package/types/src/shape/IShapeStyle.d.ts +135 -0
- package/types/src/shape/Shape.d.ts +107 -21
- package/types/src/shape/ShapeStyleUtils.d.ts +54 -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 +70 -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 +3 -0
- package/types/src/sheet/CellRegion.d.ts +6 -0
- package/types/src/sheet/ICellContainerOptions.d.ts +50 -0
- package/types/src/sheet/ISheet.d.ts +197 -50
- package/types/src/sheet/ISheetCollection.d.ts +2 -5
- package/types/src/sheet/NamedCellRange.d.ts +16 -7
- package/types/src/sheet/NamedRange.d.ts +8 -0
- package/types/src/sheet/Sheet.d.ts +915 -138
- package/types/src/sheet/SheetCell.d.ts +92 -32
- package/types/src/sheet/SheetCollection.d.ts +19 -8
- package/types/src/sheet/SheetRange.d.ts +90 -18
- package/types/src/sheet/SheetRanges.d.ts +22 -9
- package/types/src/sheet/_CellBuffer.d.ts +214 -0
- package/types/src/sheet/_HeldFormula.d.ts +69 -0
- package/types/src/sheet/_InvalidSheetRange.d.ts +7 -7
- package/types/src/sheet/_ListenerAnchor.d.ts +104 -0
- package/types/src/sheet/_RangeStateSweep.d.ts +16 -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 +2 -2
- package/types/src/sheet/_SheetEvents.d.ts +43 -0
- package/types/src/sheet/_SheetFilterUtils.d.ts +49 -1
- package/types/src/sheet/_SheetIntents.d.ts +296 -0
- package/types/src/sheet/_SheetMutations.d.ts +182 -62
- package/types/src/sheet/_SheetStateReader.d.ts +19 -13
- package/types/src/sheet/_SheetStateTypes.d.ts +83 -78
- package/types/src/sheet/_SheetUtils.d.ts +39 -22
- package/types/src/sheet/_WatchAnchor.d.ts +93 -0
- 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 +209 -304
- package/types/src/sheet/style/SheetDirectStyle.d.ts +30 -19
- package/types/src/sheet/style/SheetNamedStyle.d.ts +17 -17
- package/types/src/sheet/style/SheetTableStyle.d.ts +5 -5
- package/types/src/sheet/style/_Resolvers.d.ts +14 -8
- package/types/src/sheet/style/_StyleUtils.d.ts +38 -8
- package/types/src/sheetHeader/ISheetHeader.d.ts +94 -53
- package/types/src/sheetHeader/SheetCellHeader.d.ts +4 -0
- package/types/src/sheetHeader/SheetHeader.d.ts +42 -22
- package/types/src/sheetHeader/_HeaderMetrics.d.ts +37 -0
- package/types/src/sheetHeader/_HeaderUtils.d.ts +5 -3
- package/types/src/sheetProtection/ISheetProtection.d.ts +41 -7
- package/types/src/sheetProtection/SheetProtection.d.ts +12 -0
- package/types/src/sheetView/ISheetView.d.ts +69 -15
- package/types/src/sheetView/SheetView.d.ts +20 -11
- 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 +4 -2
- 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} +72 -52
- 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 +6 -6
- 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 +701 -72
- package/types/src/table/AutoTable.d.ts +7 -5
- package/types/src/table/ITable.d.ts +261 -34
- 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 +17 -1
- package/types/src/table/_NamedTableSource.d.ts +1 -0
- 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 +182 -0
- package/types/src/text/ITextFrame.d.ts +110 -1
- package/types/src/text/TextBoxAlignment.d.ts +25 -16
- package/types/src/text/TextFrame.d.ts +4 -0
- 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 +9 -0
- package/types/src/text/TextStacked.d.ts +83 -0
- package/types/src/text/index.d.ts +1 -0
- package/types/src/text/richtext/IRichText.d.ts +36 -0
- package/types/src/text/richtext/IStyledFont.d.ts +18 -18
- package/types/src/text/richtext/index.d.ts +1 -0
- package/types/src/theme/ITheme.d.ts +45 -4
- package/types/src/theme/IThemeCollection.d.ts +2 -0
- package/types/src/theme/ThemeCollection.d.ts +11 -7
- package/types/src/theme/_OfficeFormatScheme.d.ts +3 -0
- package/types/src/transaction/ITransaction.d.ts +258 -45
- package/types/src/transaction/Transaction.d.ts +101 -11
- package/types/src/transaction/TransactionUndoManager.d.ts +4 -1
- package/types/src/type/AbstractCollection.d.ts +101 -0
- package/types/src/type/ICollection.d.ts +117 -0
- 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 +3 -3
- package/types/src/wasm/_sdkWasm.d.ts +7 -0
- package/types/src/wasm/index.d.ts +2 -0
- package/types/src/wasm/sdkWasm.d.ts +29 -0
- package/types/src/workbook/IWorkbook.d.ts +180 -40
- package/types/src/workbook/Workbook.d.ts +123 -10
- package/types/src/workbook/_WorkbookIntents.d.ts +36 -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 +12 -0
- package/types/src/workbookView/WorkbookView.d.ts +5 -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/browser/esm/f2G3QRgEbvFJcoa2.mjs +0 -4436
- 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/condition/BuiltinSelectors/ListSelector.d.ts +0 -12
- package/types/src/dataValidation/_Utils.d.ts +0 -10
- 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/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/{lib/utils → license}/banner.d.ts +0 -0
|
@@ -1,209 +1,458 @@
|
|
|
1
|
-
import { IRange,
|
|
1
|
+
import { IRange, Scalar, IRuntime, FormulaError } from '@sheetxl/primitives';
|
|
2
|
+
import { CoordUtils, RunCoords } from '@sheetxl/utils';
|
|
3
|
+
import { ITypes } from '../../type';
|
|
2
4
|
import { IListener } from '../../listener';
|
|
3
5
|
import { ListenerEmitter } from '../../listener/ListenerEmitter';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { IFormulaBlock } from '../formula';
|
|
8
|
-
import { ReferenceCoords } from '../Types';
|
|
6
|
+
import { ITransaction } from '../../transaction';
|
|
7
|
+
import { ISpatialMap, ISpatialQuery, ISparseGrid, Tuple } from '../../collections';
|
|
8
|
+
import { RangeStats } from '../../primitives/RangeStats';
|
|
9
9
|
import { ICalculation } from '../ICalculation';
|
|
10
|
+
import { IFormulaBlockView } from '../formula';
|
|
11
|
+
import { NamedReference } from '../Types';
|
|
12
|
+
import { ContentfulSpatialValue, SpillEntry, CircularEntry } from '../spatial';
|
|
10
13
|
import { ICalcGrid } from './ICalcGrid';
|
|
14
|
+
import { FormulaEntry } from './FormulaEntry';
|
|
11
15
|
/**
|
|
12
|
-
*
|
|
16
|
+
* The grid as the model holds it (DESIGN-CALC-SERVICE §13.23, §13.24): the synchronous half of
|
|
17
|
+
* every implementation, in front of a backend that answers late or not at all.
|
|
18
|
+
*
|
|
19
|
+
* @remarks
|
|
20
|
+
* Owns what a cell holds - the formulas as the model wrote them, text per run; the values, both
|
|
21
|
+
* the literals it entered and the answers the engine vended; and the indexes over them (the
|
|
22
|
+
* contentful summary, the array extents, the error values, the calc status) - versioned in the
|
|
23
|
+
* model's own transaction store, so an undo restores them with everything else the operation
|
|
24
|
+
* wrote. Each formula entry carries the view of the compiled block the backend vends for it.
|
|
25
|
+
* Every write lands here first, in the caller's transaction, and is then forwarded to the backend
|
|
26
|
+
* as the same verb; what the backend answers with is folded into the snapshot the request named
|
|
27
|
+
* and every later one, where what the request was made against is still there, and dropped where
|
|
28
|
+
* something newer wrote ({@link _adopt}, {@link _applyValueVend}). So an undo lands on maps that
|
|
29
|
+
* already carry the engine's answer for them, with no round trip.
|
|
30
|
+
*
|
|
31
|
+
* The backend is an {@link ICalcGrid.Backend}: the in-process engine grid, a message-passing
|
|
32
|
+
* proxy under a worker, and nothing at all is what an `Off` engine amounts to (the channel
|
|
33
|
+
* records nothing, so the text here is the whole truth until a start seeds the engine from it).
|
|
34
|
+
* The same code in every case; only the delegate differs.
|
|
13
35
|
*/
|
|
14
36
|
export declare class CalcGrid implements ICalcGrid {
|
|
37
|
+
protected readonly _backend: ICalcGrid.Backend;
|
|
38
|
+
protected readonly _calculation: ICalculation | null;
|
|
39
|
+
protected readonly _transactions: ITransaction.IStore;
|
|
40
|
+
protected readonly _stateId: string;
|
|
41
|
+
protected readonly _host: CalcGrid.HostOptions;
|
|
42
|
+
protected readonly _valuesAxis: IRange.Axis;
|
|
43
|
+
protected readonly _runtime: IRuntime;
|
|
44
|
+
/** See {@link CalcGrid.ConstructorOptions.sizeOf}. */
|
|
45
|
+
protected readonly _sizeOf: string | undefined;
|
|
46
|
+
/** The aggregate cache over the values; bound to the map INSTANCE, so it follows every clone. */
|
|
47
|
+
protected _rangeStats: RangeStats;
|
|
15
48
|
/**
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
_gridId: string;
|
|
35
|
-
_options: CalcGrid.ConstructorOptions;
|
|
36
|
-
_getEntireCoords: () => IRange.Coords;
|
|
37
|
-
/**
|
|
38
|
-
* @see CalcGrid.ConstructorOptions.unanchored
|
|
39
|
-
*/
|
|
40
|
-
readonly _unanchored: boolean;
|
|
41
|
-
_container: IContextContainer;
|
|
42
|
-
_context: IFormulaContext;
|
|
43
|
-
_calculation: ICalculation | null;
|
|
49
|
+
* Bumped whenever the value map is mutated IN PLACE (a vend that landed on this grid's own
|
|
50
|
+
* instance, a load): what {@link getErrorValues} invalidates its cached view by, since the
|
|
51
|
+
* map's identity does not change then.
|
|
52
|
+
*/
|
|
53
|
+
protected _errorEpoch: number;
|
|
54
|
+
/** The reconciled error-VALUE view; see {@link getErrorValues}. */
|
|
55
|
+
protected _errorReconciled: {
|
|
56
|
+
values: ISparseGrid<Scalar>;
|
|
57
|
+
epoch: number;
|
|
58
|
+
spatial: ISpatialMap<boolean>;
|
|
59
|
+
} | null;
|
|
60
|
+
/** Savepoints a write was made under that rolled back since: their answers are dropped. */
|
|
61
|
+
protected _deadSavepoints: Set<string> | null;
|
|
62
|
+
/**
|
|
63
|
+
* Its own store, never open, so every event is delivered as it happens: what an
|
|
64
|
+
* `onInputsWritten` listener writes has to join the operation still open, and every answer is
|
|
65
|
+
* told, not merged into the first.
|
|
66
|
+
*/
|
|
44
67
|
protected _emitter: ListenerEmitter<ICalcGrid, ICalcGrid.IListeners> | null;
|
|
45
|
-
protected
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
/** {@inheritDoc ICalcGrid.
|
|
73
|
-
|
|
74
|
-
/** @inheritdoc ICalcGrid.getValues */
|
|
75
|
-
getValues(): ISparseGrid<Scalar>;
|
|
76
|
-
/** {@inheritDoc ICalcGrid.getDirtyRegions} */
|
|
77
|
-
getDirtyRegions(): ISpatialQuery;
|
|
68
|
+
protected _closed: boolean;
|
|
69
|
+
constructor(options: CalcGrid.ConstructorOptions);
|
|
70
|
+
/**
|
|
71
|
+
* Open this grid's maps from a content record, replacing what they hold: the formulas, the
|
|
72
|
+
* values, their contentful summary, the error ones among them, the array extents the record
|
|
73
|
+
* carries and the volatile regions it lists. The same record the backend is opened from.
|
|
74
|
+
*/
|
|
75
|
+
protected _loadContent(json: ICalcGrid.JSON, write: CalcGrid.Writer): void;
|
|
76
|
+
/** The backend this grid forwards to. @internal */
|
|
77
|
+
_getBackend(): ICalcGrid.Backend;
|
|
78
|
+
/** {@inheritDoc ICalcGrid.getStateId} */
|
|
79
|
+
getStateId(): string;
|
|
80
|
+
/**
|
|
81
|
+
* This grid's record: the current one, or the one `transaction` sees.
|
|
82
|
+
*
|
|
83
|
+
* @remarks
|
|
84
|
+
* A read through the store makes the writes a cell buffer holds first ({@link getStateId} is
|
|
85
|
+
* in its list), which is what keeps a reader from seeing the sheet without them. The paths that
|
|
86
|
+
* answer a cell FROM those held writes must not make them, so they read through the buffer's
|
|
87
|
+
* own transaction.
|
|
88
|
+
*/
|
|
89
|
+
protected _getState(transaction?: ITransaction | null): Readonly<CalcGrid.State>;
|
|
90
|
+
/**
|
|
91
|
+
* This grid's record as it was at a commit; the current one for the operation in progress;
|
|
92
|
+
* `undefined` for a commit the store no longer has on its live history.
|
|
93
|
+
*/
|
|
94
|
+
protected _getStateAt(commitId: string): Readonly<CalcGrid.State> | undefined;
|
|
95
|
+
/** {@inheritDoc ICalcGrid.getFormulaAt} */
|
|
96
|
+
getFormulaAt(row: number, column: number): FormulaEntry | null;
|
|
78
97
|
/** {@inheritDoc ICalcGrid.getFormulas} */
|
|
79
|
-
getFormulas(): ISpatialQuery<
|
|
98
|
+
getFormulas(transaction?: ITransaction | null): ISpatialQuery<FormulaEntry>;
|
|
99
|
+
/** {@inheritDoc ICalcGrid.getValues} */
|
|
100
|
+
getValues(transaction?: ITransaction | null): ISparseGrid<Scalar>;
|
|
101
|
+
/** {@inheritDoc ICalcGrid.getContentful} */
|
|
102
|
+
getContentful(transaction?: ITransaction | null): ISpatialMap<ContentfulSpatialValue>;
|
|
80
103
|
/** {@inheritDoc ICalcGrid.getSpills} */
|
|
81
|
-
getSpills():
|
|
82
|
-
/** {@inheritDoc ICalcGrid.
|
|
83
|
-
|
|
84
|
-
/** {@inheritDoc ICalcGrid.
|
|
85
|
-
|
|
86
|
-
/** {@inheritDoc ICalcGrid.
|
|
87
|
-
|
|
104
|
+
getSpills(transaction?: ITransaction | null): ISpatialMap<SpillEntry>;
|
|
105
|
+
/** {@inheritDoc ICalcGrid.getPending} */
|
|
106
|
+
getPending(transaction?: ITransaction | null): ISpatialMap<boolean>;
|
|
107
|
+
/** {@inheritDoc ICalcGrid.getCalcErrors} */
|
|
108
|
+
getCalcErrors(transaction?: ITransaction | null): ISpatialMap<string>;
|
|
109
|
+
/** {@inheritDoc ICalcGrid.getCirculars} */
|
|
110
|
+
getCirculars(transaction?: ITransaction | null): ISpatialMap<CircularEntry>;
|
|
111
|
+
/** {@inheritDoc ICalcGrid.getVolatileRegions} */
|
|
112
|
+
getVolatileRegions(): IRange.Address[] | null;
|
|
113
|
+
/** {@inheritDoc ICalcGrid.getRangeStats} */
|
|
114
|
+
getRangeStats(): RangeStats;
|
|
115
|
+
/** {@inheritDoc ICalcGrid.getErrorValues} */
|
|
116
|
+
getErrorValues(): ISpatialMap<boolean>;
|
|
88
117
|
/**
|
|
89
|
-
*
|
|
118
|
+
* A write to this grid's own maps, in the caller's transaction: each map the write asks for is
|
|
119
|
+
* cloned once, and a map the open savepoint has already cloned is handed back and updated in
|
|
120
|
+
* place. Nothing asked for is nothing copied.
|
|
90
121
|
*
|
|
91
122
|
* @remarks
|
|
92
|
-
*
|
|
93
|
-
*
|
|
94
|
-
*
|
|
95
|
-
* reads a different cell entirely. Results come back bare-relative to the grid that produced
|
|
96
|
-
* them, so they are re-expressed against the walk's own anchor before being handed back.
|
|
123
|
+
* The model's own mutation paths take the writer directly ({@link _beginWrite}): a literal
|
|
124
|
+
* entry, a clear or a shift writes the values beside what it writes of its own, in one
|
|
125
|
+
* transaction, and cannot be expressed as one call.
|
|
97
126
|
* @internal
|
|
98
127
|
*/
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
|
|
102
|
-
/**
|
|
103
|
-
|
|
104
|
-
/** {@inheritDoc ICalcGrid.
|
|
105
|
-
|
|
106
|
-
/**
|
|
107
|
-
|
|
128
|
+
_beginWrite(options?: ICalcGrid.RequestOptions, isInput?: boolean): CalcGrid.Writer;
|
|
129
|
+
/** One write, begun and committed: what the verbs use. */
|
|
130
|
+
protected _write(mutate: (write: CalcGrid.Writer) => void, options?: ICalcGrid.RequestOptions, isInput?: boolean): void;
|
|
131
|
+
/** A bookkeeping write: folded into the commit the store is at, or the operation in progress. */
|
|
132
|
+
protected _amend(update: Partial<CalcGrid.State>): void;
|
|
133
|
+
/** {@inheritDoc ICalcGrid.setInputs} */
|
|
134
|
+
setInputs(values: Tuple.Region<Scalar> | null, formulas: readonly ISpatialMap.Entry<string>[] | null, options?: ICalcGrid.SetInputsOptions): Promise<ICalcGrid.Results>;
|
|
135
|
+
/**
|
|
136
|
+
* What a write of inputs changes beside the formulas: the values, which cells hold one, the
|
|
137
|
+
* array extents the write replaces or enters, and the error and cycle indexes over the cells.
|
|
138
|
+
*/
|
|
139
|
+
protected _writeInputValues(write: CalcGrid.Writer, tuples: Tuple.GridTuple<Scalar> | undefined, formulas: readonly ISpatialMap.Entry<string>[] | null, arrayFixed: IRange.Coords | undefined): void;
|
|
140
|
+
/**
|
|
141
|
+
* What emptying cells changes beside the formulas: the values go, and with them their
|
|
142
|
+
* contentful summary, the error and cycle indexes over them, and the extent of an array
|
|
143
|
+
* anchored among them.
|
|
144
|
+
*/
|
|
145
|
+
protected _removeInputValues(write: CalcGrid.Writer, coords: IRange.Coords): void;
|
|
146
|
+
/** {@inheritDoc ICalcGrid.remove} */
|
|
147
|
+
remove(coords: IRange.Coords, options?: ICalcGrid.RemoveOptions): Promise<ICalcGrid.Results>;
|
|
148
|
+
/**
|
|
149
|
+
* What a shift moves beside the formulas: the values and their contentful summary, the array
|
|
150
|
+
* extents - a fixed array the range touches is set aside and put back where the shift takes it -
|
|
151
|
+
* and the error values. An insert refuses to push content off the grid.
|
|
152
|
+
*/
|
|
153
|
+
protected _shiftInputValues(write: CalcGrid.Writer, range: IRange.Coords, direction: IRange.Direction): void;
|
|
154
|
+
/** What an insert checks every extent it moves against: the grid's own bounds. */
|
|
155
|
+
protected _insertValidator(): CoordUtils.CoordValidator;
|
|
156
|
+
/** {@inheritDoc ICalcGrid.shift} */
|
|
157
|
+
shift(options: ICalcGrid.ShiftOptions): Promise<ICalcGrid.Results>;
|
|
158
|
+
/** {@inheritDoc ICalcGrid.autoFill} */
|
|
159
|
+
autoFill(template: IRange.Coords | string, destination: IRange.Coords | string, options?: ICalcGrid.RequestOptions): Promise<ICalcGrid.Results>;
|
|
160
|
+
/** {@inheritDoc ICalcGrid.getSnapshot} */
|
|
161
|
+
getSnapshot(options?: ICalcGrid.GetSnapshotOptions): ICalcGrid.ISnapshot;
|
|
162
|
+
/**
|
|
163
|
+
* Copy the entries over `from` in `snapshot` into this grid's map at `to`, in the current
|
|
164
|
+
* transaction, and return them as the text the backend is handed.
|
|
165
|
+
* @internal
|
|
166
|
+
*/
|
|
167
|
+
_copyFormulaEntries(snapshot: ISpatialMap<FormulaEntry>, from: IRange.Coords, to: IRange.Coords, copyOptions: FormulaEntry.CopyOptions, options?: ICalcGrid.RequestOptions): ISpatialMap.Entry<string>[];
|
|
168
|
+
/** {@inheritDoc ICalcGrid.seed} */
|
|
169
|
+
seed(json: ICalcGrid.JSON, options?: ICalcGrid.SeedOptions): Promise<ICalcGrid.Results>;
|
|
170
|
+
/** {@inheritDoc ICalcGrid.revert} */
|
|
171
|
+
revert(options: ICalcGrid.RevertOptions): Promise<ICalcGrid.Results>;
|
|
172
|
+
/** {@inheritDoc ICalcGrid.delete} */
|
|
173
|
+
delete(options?: ICalcGrid.RequestOptions): void;
|
|
174
|
+
/**
|
|
175
|
+
* Whether the grid is in the model as the store is now: not closed, made at or before the
|
|
176
|
+
* current snapshot, and not deleted there.
|
|
177
|
+
* @internal
|
|
178
|
+
*/
|
|
179
|
+
_isLive(): boolean;
|
|
108
180
|
/** {@inheritDoc ICalcGrid.setReferenceAt} */
|
|
109
|
-
setReferenceAt(row: number, column: number, index: number, precedent: IRange.FixableCoords | IRange.FixableCellCoords | FormulaError.Ref):
|
|
181
|
+
setReferenceAt(row: number, column: number, index: number, precedent: IRange.FixableCoords | IRange.FixableCellCoords | NamedReference | FormulaError.Ref): Promise<IFormulaBlockView | null>;
|
|
182
|
+
/** {@inheritDoc ICalcGrid.setReferenceModeAt} */
|
|
183
|
+
setReferenceModeAt(row: number, column: number, index: number, side?: ICalculation.ReferenceSide, mode?: number): Promise<IFormulaBlockView | null>;
|
|
184
|
+
/** {@inheritDoc ICalcGrid.calculate} */
|
|
185
|
+
calculate(full?: boolean): Promise<ICalculation.Status>;
|
|
186
|
+
/** {@inheritDoc ICalcGrid.markDirtyRegions} */
|
|
187
|
+
markDirtyRegions(coords: IRange.Coords[]): void;
|
|
188
|
+
/**
|
|
189
|
+
* Send a formula this grid holds to the engine again, without writing it here: an engine grid
|
|
190
|
+
* made since it was written. The answer lands as any answer does.
|
|
191
|
+
* @internal
|
|
192
|
+
*/
|
|
193
|
+
_resendFormula(coords: IRange.Coords, text: string): Promise<ICalcGrid.Results>;
|
|
194
|
+
/** Whether a sheet owns this grid: see {@link CalcGrid.HostOptions.isOwned}. @internal */
|
|
195
|
+
_isOwned(): boolean;
|
|
196
|
+
/** {@inheritDoc ICalcGrid.Backend.requestPass} @internal */
|
|
197
|
+
_requestPass(): void;
|
|
198
|
+
/** {@inheritDoc ICalcGrid.getGraphNeighborsAt} */
|
|
199
|
+
getGraphNeighborsAt(coords: IRange.Coords, kind: 'precedents' | 'dependents', direct: boolean): Promise<ICalcGrid.GraphNeighbors>;
|
|
200
|
+
/** {@inheritDoc ICalcGrid.Backend.getNameGraph} @internal */
|
|
201
|
+
_getNameGraph(kind: 'precedents' | 'dependents', direct: boolean): Promise<ICalcGrid.GraphNeighbors>;
|
|
202
|
+
/** {@inheritDoc ICalcGrid.evaluateAt} */
|
|
203
|
+
evaluateAt(row: number, column: number, options?: number | ICalculation.EvaluateOptions): Promise<Scalar | IRange>;
|
|
204
|
+
/** `true` once closed: its state is gone. @internal */
|
|
205
|
+
_isClosed(): boolean;
|
|
206
|
+
/**
|
|
207
|
+
* Whether the snapshot the store is at holds this grid's maps: a restore to a commit older than
|
|
208
|
+
* the grid leaves it none. @internal
|
|
209
|
+
*/
|
|
210
|
+
_hasState(): boolean;
|
|
211
|
+
/** {@inheritDoc ICalcGrid.Backend.evaluateScalarAt} @internal */
|
|
212
|
+
_evaluateScalarAt(row: number, column: number, evalIndex?: number): Promise<Scalar>;
|
|
213
|
+
/**
|
|
214
|
+
* Write a body as authored: the engine anchors it and answers with the record, which lands here
|
|
215
|
+
* as any answer does. Nothing is written here first - the text is the engine's to make.
|
|
216
|
+
* @internal
|
|
217
|
+
*/
|
|
218
|
+
_setBody(options: ICalcGrid.BodyOptions): Promise<ICalcGrid.Results>;
|
|
110
219
|
/** {@inheritDoc ICalcGrid.isVolatileAt} */
|
|
111
|
-
isVolatileAt(row: number, column: number): boolean
|
|
112
|
-
|
|
220
|
+
isVolatileAt(row: number, column: number): Promise<boolean>;
|
|
221
|
+
/** {@inheritDoc ICalcGrid.addListeners} */
|
|
222
|
+
addListeners(listeners: ICalcGrid.IListeners, options?: IListener.Options): IListener.Remove;
|
|
223
|
+
protected _notify<T>(key: keyof ICalcGrid.Events, params: T): void;
|
|
224
|
+
/** {@inheritDoc ICalcGrid.getEntireCoords} */
|
|
225
|
+
getEntireCoords(): IRange.Coords;
|
|
226
|
+
/** {@inheritDoc ICalcGrid.resize} */
|
|
227
|
+
resize(entireCoords: IRange.Coords, options?: ICalcGrid.RequestOptions): void;
|
|
228
|
+
/** {@inheritDoc ICalcGrid.setHidden} */
|
|
229
|
+
setHidden(axis: IRange.Axis, runs: readonly RunCoords[], options?: ICalcGrid.RequestOptions): void;
|
|
230
|
+
/** {@inheritDoc ICalcGrid.setFiltered} */
|
|
231
|
+
setFiltered(filtered: boolean, options?: ICalcGrid.RequestOptions): void;
|
|
232
|
+
/**
|
|
233
|
+
* Holds what the owner says of itself - its size, what it hides, whether it is filtered - in the
|
|
234
|
+
* caller's operation: an undo restores it with whatever changed it.
|
|
235
|
+
*/
|
|
236
|
+
protected _holdOwnerState(update: Pick<Partial<CalcGrid.State>, 'hiddenRows' | 'hiddenColumns' | 'filtered' | 'entireCoords'>): void;
|
|
237
|
+
/** {@inheritDoc ICalcGrid.getId} */
|
|
238
|
+
getId(): string;
|
|
239
|
+
/** {@inheritDoc ICalcGrid.toJSON} */
|
|
240
|
+
toJSON(options?: ICalcGrid.ToJSONOptions): Promise<ICalcGrid.JSON | null>;
|
|
113
241
|
/**
|
|
114
|
-
*
|
|
242
|
+
* What a start seeds the backend from: this map's formulas and every value the host holds. A
|
|
243
|
+
* host with nothing yet still seeds (an empty record), so the engine runs its full pass and
|
|
244
|
+
* answers for it.
|
|
245
|
+
* @internal
|
|
115
246
|
*/
|
|
116
|
-
|
|
247
|
+
_seedContent(): ICalcGrid.JSON | null;
|
|
117
248
|
/**
|
|
118
|
-
*
|
|
119
|
-
*
|
|
249
|
+
* This grid's content as its calc JSON (DESIGN-CALC-SERVICE §6.6): the same record a save
|
|
250
|
+
* writes, and what a start opens the backend from. The formulas, the array extents, the
|
|
251
|
+
* volatile regions, the rows and columns the owner hides and - with `includeData` - the values
|
|
252
|
+
* are all this grid's own; a volatile region is kept only where a formula still sits.
|
|
120
253
|
*
|
|
121
|
-
*
|
|
122
|
-
*
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
254
|
+
* A pending entry is written as its own text; a compiled one images its block where it sits.
|
|
255
|
+
* @internal
|
|
256
|
+
*/
|
|
257
|
+
_content(options?: ICalcGrid.ToJSONOptions): ICalcGrid.JSON | null;
|
|
258
|
+
/** The array extents a load carries, as spill entries. */
|
|
259
|
+
protected _spillsFromJSON(formulaArray: readonly IRange.JSONReferenceTuple<ITypes.FormulaArrayKind>[]): ISpatialMap.Entry<SpillEntry>[];
|
|
260
|
+
protected _entriesFromJSON(formulas: readonly IRange.JSONReferenceTuple<string>[]): ISpatialMap.Entry<FormulaEntry>[];
|
|
261
|
+
/**
|
|
262
|
+
* What the backend pushed (a pass's results, a seed's): the formula half is adopted here, then
|
|
263
|
+
* the host hears the whole record.
|
|
264
|
+
* @internal
|
|
265
|
+
*/
|
|
266
|
+
_onCalculated(results: ICalcGrid.Results): void;
|
|
267
|
+
/**
|
|
268
|
+
* What a verb's answer goes through: the formula half adopted, unless the savepoint the
|
|
269
|
+
* request was made under (read now, as the request is made) has rolled back since.
|
|
270
|
+
*/
|
|
271
|
+
protected _adopter(): (results: ICalcGrid.Results) => ICalcGrid.Results;
|
|
272
|
+
/**
|
|
273
|
+
* The block a reference edit answered with, adopted into the entry over that cell, inside the
|
|
274
|
+
* batch that asked for the edit.
|
|
275
|
+
*/
|
|
276
|
+
protected _adoptAt(row: number, column: number, block: IFormulaBlockView | null): IFormulaBlockView | null;
|
|
277
|
+
/**
|
|
278
|
+
* The snapshots a record lands in, oldest first: the one it names, every later one on the
|
|
279
|
+
* live history, and the operation in progress if there is one.
|
|
126
280
|
*
|
|
127
|
-
* @
|
|
128
|
-
*
|
|
281
|
+
* @returns `null` when the record answers for a snapshot off the live history (undone, rolled
|
|
282
|
+
* back, pruned) or one this grid did not exist at: nothing it says is true anywhere. A record
|
|
283
|
+
* naming no snapshot, or the operation in progress, is current by construction.
|
|
129
284
|
*/
|
|
130
|
-
protected
|
|
285
|
+
protected _vendSnapshots(commitId: string | undefined): VendSnapshot[] | null;
|
|
131
286
|
/**
|
|
132
|
-
*
|
|
133
|
-
*
|
|
287
|
+
* The snapshot before the one a record names, or `null` when it is the first: a map instance
|
|
288
|
+
* the record's snapshots share with it is history's, and is cloned before the record lands.
|
|
134
289
|
*/
|
|
135
|
-
protected
|
|
290
|
+
protected _vendParentState(requested: VendSnapshot): Readonly<CalcGrid.State> | null;
|
|
291
|
+
/** Fold a vend's maps into a snapshot: a bookkeeping write, never an edit. */
|
|
292
|
+
protected _writeVend(snapshot: VendSnapshot, update: Partial<CalcGrid.State>): void;
|
|
136
293
|
/**
|
|
137
|
-
*
|
|
294
|
+
* Adopt the formula half of a result record: the views the backend vends, onto the entries
|
|
295
|
+
* they were compiled for.
|
|
296
|
+
*
|
|
297
|
+
* @remarks
|
|
298
|
+
* A block that spells the entry's formula (`sum(a1)` compiled to `SUM(A1)`, or the same block
|
|
299
|
+
* vended again on a full pass) is patched into the entry IN PLACE: it is the same formula, so
|
|
300
|
+
* every snapshot that holds the entry carries it, and a handle taken before the vend reads
|
|
301
|
+
* the block through the same object. A block whose formula differs - a reference re-imaged
|
|
302
|
+
* by a shift, a `#REF!` - or a change to the map's shape (a split, a cleared region, a block
|
|
303
|
+
* minted where the map held nothing) is model state: it is written to a clone of the map and
|
|
304
|
+
* folded into the snapshot the record names, so an undo restores the map as it was before the
|
|
305
|
+
* operation that caused it, and never the pending text of a request that has been answered.
|
|
306
|
+
*
|
|
307
|
+
* The record is applied to the snapshot it names first, then to every later snapshot on the
|
|
308
|
+
* live history, where it changes only what nothing newer has written: an entry is settled
|
|
309
|
+
* when the named snapshot holds the same entry at the same cells, and a region is settled when
|
|
310
|
+
* every entry over it is - the newer write's own resolution carries the truth for the rest. A
|
|
311
|
+
* record naming a snapshot off the live history is dropped whole: the backend's revert
|
|
312
|
+
* re-vends every block a restore exposes. On a full record every entry's block is dropped
|
|
313
|
+
* first; the record lists every block.
|
|
138
314
|
*/
|
|
139
|
-
protected
|
|
140
|
-
protected _notifyCalculated(cycleId: number, options: ICalculation.CalculateOptions | boolean): Promise<ICalcGrid.Results>;
|
|
141
|
-
protected _setInputs(values: Tuple.BoundedTuples<Scalar> | null, formulas: readonly ISpatialMap.Entry<string>[] | null, deleteRange?: IRange.Coords): IRange.Coords[];
|
|
315
|
+
protected _adopt(results: ICalcGrid.Results, vended?: readonly VendSnapshot[]): void;
|
|
142
316
|
/**
|
|
143
|
-
*
|
|
317
|
+
* Land the value half of a record - values, spills, errors, pending and circular marks - in the
|
|
318
|
+
* snapshots it answers for, by ownership (DESIGN-CALC-SERVICE §13.18).
|
|
319
|
+
*
|
|
320
|
+
* @remarks
|
|
321
|
+
* Every item has one owner, and a snapshot's formula map says which: a cell holding a formula
|
|
322
|
+
* entry is the engine's, one holding none is the model's, a spill cell is the engine's through
|
|
323
|
+
* its anchor. So an item lands in a snapshot where that snapshot's map holds, over the item,
|
|
324
|
+
* what the requested snapshot's map held: the requested snapshot itself everywhere, a later one
|
|
325
|
+
* wherever nothing newer wrote. An item that a later write cut into is split at the ownership
|
|
326
|
+
* boundary when its payload is per cell (a value run, a pending or error mark, which the maps
|
|
327
|
+
* merge across neighbors) and left whole when it is one thing (a spill extent, a cycle). A full
|
|
328
|
+
* record clears an engine-owned map, keeping what a later snapshot owns.
|
|
329
|
+
*
|
|
330
|
+
* The maps are the snapshots' own instances, shared by reference until a write clones them, so
|
|
331
|
+
* each distinct instance is written once, settled for every snapshot that holds it. In-process
|
|
332
|
+
* the list is the requested snapshot alone and this is one write, as it always was. Nothing
|
|
333
|
+
* here goes through the caller's transaction: these are the backend's answers, regenerated by
|
|
334
|
+
* any pass.
|
|
144
335
|
*/
|
|
145
|
-
protected
|
|
146
|
-
/** {@inheritDoc ICalcGrid.
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
toJSON(options?: ICalcGrid.ToJSONOptions): Promise<ICalcGrid.JSON | null>;
|
|
336
|
+
protected _applyValueVend(results: ICalcGrid.Results, snapshots: readonly VendSnapshot[]): void;
|
|
337
|
+
/** {@inheritDoc ICalcGrid.close} */
|
|
338
|
+
close(): void;
|
|
339
|
+
get [Symbol.toStringTag](): string;
|
|
150
340
|
}
|
|
151
341
|
export declare namespace CalcGrid {
|
|
152
342
|
/**
|
|
153
|
-
*
|
|
343
|
+
* Everything the grid holds for the model, versioned in the model's own store
|
|
344
|
+
* (DESIGN-CALC-SERVICE §13.23, §13.24): what the model wrote and what the backend answered
|
|
345
|
+
* with, one record per commit, so an undo restores them with the operation that wrote them.
|
|
154
346
|
*/
|
|
155
|
-
interface
|
|
156
|
-
/**
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
347
|
+
interface State {
|
|
348
|
+
/** The formulas as the model wrote them, one entry per run, with the backend's view where it has vended one. */
|
|
349
|
+
formulaSpatial: ISpatialMap<FormulaEntry>;
|
|
350
|
+
/** The values: the literals the model entered and the answers the engine vended, one map. */
|
|
351
|
+
cellValuesGrid: ISparseGrid<Scalar>;
|
|
352
|
+
/** Which cells hold a value, per run: the summary index over {@link cellValuesGrid}. */
|
|
353
|
+
contentfulSpatial: ISpatialMap<ContentfulSpatialValue>;
|
|
354
|
+
/** The array extents: what the file said, what an array entry wrote, what the engine vended. */
|
|
355
|
+
spillSpatial: ISpatialMap<SpillEntry>;
|
|
163
356
|
/**
|
|
164
|
-
*
|
|
165
|
-
*
|
|
166
|
-
*
|
|
167
|
-
* The container contains information shared across all grids
|
|
357
|
+
* The volatile regions the file listed: what an `Off` save writes back and a seed carries,
|
|
358
|
+
* kept where a formula still sits under them. What the engine knows once it is up it answers
|
|
359
|
+
* itself; this list is not shifted by a structural change.
|
|
168
360
|
*/
|
|
169
|
-
|
|
361
|
+
volatile: IRange.Address[] | null;
|
|
362
|
+
/** Cells the engine has not answered for yet. */
|
|
363
|
+
pendingSpatial: ISpatialMap<boolean>;
|
|
364
|
+
/** Engine FAILURES by cell, as a message. Not error values - those are in the values. */
|
|
365
|
+
calcErrorsSpatial: ISpatialMap<string>;
|
|
170
366
|
/**
|
|
171
|
-
*
|
|
367
|
+
* Cells in a reference cycle or downstream of one, by cycle (DESIGN-CIRCULAR-CALC.md §7.2).
|
|
368
|
+
* Maintained from the executor's deltas, like {@link pendingSpatial}.
|
|
172
369
|
*/
|
|
173
|
-
|
|
370
|
+
circularSpatial: ISpatialMap<CircularEntry>;
|
|
174
371
|
/**
|
|
175
|
-
*
|
|
176
|
-
*
|
|
177
|
-
*
|
|
178
|
-
*
|
|
372
|
+
* Error VALUES by cell, as the WRITE path knows them: fresh for what the model entered and
|
|
373
|
+
* stale for formula cells, which is why {@link CalcGrid.getErrorValues} reconciles it against
|
|
374
|
+
* the values rather than answering from it. It collapses into the values once the executor
|
|
375
|
+
* emits error deltas.
|
|
179
376
|
*/
|
|
180
|
-
|
|
377
|
+
errorSpatial: ISpatialMap<boolean>;
|
|
378
|
+
/** The grid was deleted - a sheet's removal - in this snapshot or before it. */
|
|
379
|
+
deleted: boolean;
|
|
380
|
+
/** The rows the owner hides, ascending and disjoint; `null` for none. See {@link ICalcGrid.setHidden}. */
|
|
381
|
+
hiddenRows: readonly RunCoords[] | null;
|
|
382
|
+
/** The columns the owner hides, as {@link hiddenRows}. */
|
|
383
|
+
hiddenColumns: readonly RunCoords[] | null;
|
|
384
|
+
/** Whether the owner is filtered. See {@link ICalcGrid.setFiltered}. */
|
|
385
|
+
filtered: boolean;
|
|
386
|
+
/** The grid's size; `null` for one that has the size of its {@link ConstructorOptions.sizeOf} grid. See {@link ICalcGrid.resize}. */
|
|
387
|
+
entireCoords: IRange.Coords | null;
|
|
388
|
+
}
|
|
389
|
+
/**
|
|
390
|
+
* The maps a write may change. Each is cloned once, on first ask, under the caller's key; a map
|
|
391
|
+
* the write never asks for is left as it is and copies nothing.
|
|
392
|
+
*/
|
|
393
|
+
interface Writer {
|
|
394
|
+
/** The maps as they stand, for the reads a write makes on its way. Never clones. */
|
|
395
|
+
readonly current: Readonly<State>;
|
|
181
396
|
/**
|
|
182
|
-
*
|
|
397
|
+
* Reading one clones it, once; assigning one replaces it, for the shifts and rebuilds that
|
|
398
|
+
* answer with a map rather than editing the one they were given.
|
|
183
399
|
*/
|
|
184
|
-
|
|
400
|
+
formulas: ISpatialMap<FormulaEntry>;
|
|
401
|
+
values: ISparseGrid<Scalar>;
|
|
402
|
+
contentful: ISpatialMap<ContentfulSpatialValue>;
|
|
403
|
+
spills: ISpatialMap<SpillEntry>;
|
|
404
|
+
pending: ISpatialMap<boolean>;
|
|
405
|
+
calcErrors: ISpatialMap<string>;
|
|
406
|
+
circulars: ISpatialMap<CircularEntry>;
|
|
407
|
+
errorValues: ISpatialMap<boolean>;
|
|
408
|
+
/** The volatile regions are a list, not a map: replaced, never edited. */
|
|
409
|
+
volatile: IRange.Address[] | null;
|
|
410
|
+
/** An array extent the write set aside, moved or put back: reported with it. */
|
|
411
|
+
noteArray(extent: IRange.Coords): void;
|
|
185
412
|
/**
|
|
186
|
-
*
|
|
187
|
-
*
|
|
413
|
+
* Land what was asked for, in the caller's transaction. A write that lands more than once -
|
|
414
|
+
* a shift, which commits per range so a table sees what moved - lands the same maps again,
|
|
415
|
+
* as they stand.
|
|
188
416
|
*/
|
|
189
|
-
|
|
417
|
+
commit(): void;
|
|
418
|
+
}
|
|
419
|
+
/** What the host of a grid supplies: the sheet, for a grid that is a sheet's. */
|
|
420
|
+
interface HostOptions {
|
|
190
421
|
/**
|
|
191
|
-
*
|
|
192
|
-
*
|
|
193
|
-
*
|
|
194
|
-
* @remarks
|
|
195
|
-
* Stamped onto every {@link FormulaSpatialValue} this grid creates; see
|
|
196
|
-
* `FormulaSpatialValue.unanchored` for what it buys. Defaults to `false` (a sheet).
|
|
422
|
+
* This grid has an owner in the model - a sheet. It seeds the engine at a start even when it
|
|
423
|
+
* holds nothing, so the engine runs its full pass and answers for it; a grid the engine made
|
|
424
|
+
* for itself (a name's host, a conditional format's body) does not.
|
|
197
425
|
*/
|
|
198
|
-
|
|
426
|
+
isOwned?: boolean;
|
|
427
|
+
/** The grid a copy lands on, by id: another sheet's, or this one. */
|
|
428
|
+
getGrid?: (gridId: string) => CalcGrid | null;
|
|
429
|
+
}
|
|
430
|
+
interface ConstructorOptions extends HostOptions {
|
|
431
|
+
/** What the verbs forward to, and what answers. */
|
|
432
|
+
backend: ICalcGrid.Backend;
|
|
433
|
+
/** For the engine's status: an `Off` save is answered from this map. */
|
|
434
|
+
calculation?: ICalculation | null;
|
|
435
|
+
/** The model's store; every map this grid holds versions in it. A transient one with no model. */
|
|
436
|
+
transactions?: ITransaction.IStore;
|
|
437
|
+
/** What the aggregate cache over the values measures with. */
|
|
438
|
+
runtime: IRuntime;
|
|
439
|
+
/** The orientation of the value tuples a write carries. */
|
|
440
|
+
valuesAxis?: IRange.Axis;
|
|
441
|
+
/** The grid's size, until a seed or a {@link ICalcGrid.resize} says otherwise: a name's fixed one. */
|
|
442
|
+
entireCoords?: IRange.Coords;
|
|
443
|
+
/** The grid whose size this one has, whatever it is then: a body on a sheet. Ignored with {@link entireCoords}. */
|
|
444
|
+
sizeOf?: string;
|
|
199
445
|
}
|
|
200
446
|
}
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
447
|
+
/** A snapshot a vend lands in: this grid's record there, and whether it is the operation in progress. */
|
|
448
|
+
interface VendSnapshot {
|
|
449
|
+
id: string;
|
|
450
|
+
state: Readonly<CalcGrid.State>;
|
|
451
|
+
open: boolean;
|
|
206
452
|
}
|
|
207
|
-
|
|
453
|
+
/** Whether `map` holds this very entry at these cells: what nothing newer has written. @internal */
|
|
454
|
+
export declare const holdsFormulaEntry: (map: ISpatialMap<FormulaEntry>, hit: ISpatialMap.Entry<FormulaEntry>) => boolean;
|
|
455
|
+
/** Whether `map` holds, over `region`, exactly the entries `requested` holds there. @internal */
|
|
456
|
+
export declare const sameFormulaEntries: (requested: ISpatialMap<FormulaEntry>, map: ISpatialMap<FormulaEntry>, region: IRange.Coords) => boolean;
|
|
208
457
|
export {};
|
|
209
458
|
//# sourceMappingURL=CalcGrid.d.ts.map
|