@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
|
@@ -6,6 +6,9 @@ import { INamed } from '../named';
|
|
|
6
6
|
import { ICalculation } from './ICalculation';
|
|
7
7
|
/**
|
|
8
8
|
* Collection of named formulas available in the calculation engine.
|
|
9
|
+
*
|
|
10
|
+
* @remarks
|
|
11
|
+
* Keyed by the formula's id, not ordered: iteration order is unspecified.
|
|
9
12
|
*/
|
|
10
13
|
export interface INamedFormulasCollection extends ICollection<ICalculation.INamedFormula> {
|
|
11
14
|
/**
|
|
@@ -46,6 +49,8 @@ export interface INamedFormulasCollection extends ICollection<ICalculation.IName
|
|
|
46
49
|
* registries — tables among them — and is not.
|
|
47
50
|
*/
|
|
48
51
|
toJSON(): INamed.JSON[] | null;
|
|
52
|
+
/** For runtime type checking. */
|
|
53
|
+
readonly isINamedFormulasCollection: true;
|
|
49
54
|
}
|
|
50
55
|
/**
|
|
51
56
|
* {@inheritDoc INamedFormulasCollection}
|
|
@@ -98,14 +103,6 @@ export declare namespace INamedFormulasCollection {
|
|
|
98
103
|
* expression on the floor.
|
|
99
104
|
*/
|
|
100
105
|
replaceExisting?: boolean;
|
|
101
|
-
/**
|
|
102
|
-
* A structural transform applied when this name's expression compiles — the READ half of the
|
|
103
|
-
* format-dialect hook, supplied by format loads (hydration) so a legacy on-disk spelling
|
|
104
|
-
* normalizes. Kept for the item's lifetime so an undo back to the loaded text re-applies it.
|
|
105
|
-
*
|
|
106
|
-
* @see {@link ICalculation.FormulaTransform}
|
|
107
|
-
*/
|
|
108
|
-
formulaTransform?: ICalculation.FormulaTransform;
|
|
109
106
|
}
|
|
110
107
|
/**
|
|
111
108
|
* Options for getting items from the collection.
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { IRange, Scalar, IFormulaContext } from '@sheetxl/primitives';
|
|
2
2
|
import { ITransaction } from '../transaction';
|
|
3
3
|
import { IListener } from '../listener';
|
|
4
|
-
import { ListenerEmitter } from '../listener/ListenerEmitter';
|
|
5
4
|
import { ICellRange, ICellRanges } from '../cellRange';
|
|
6
|
-
import {
|
|
5
|
+
import { NamedNodeInfo, ReferenceCoords } from './Types';
|
|
7
6
|
import { INamed } from '../named';
|
|
8
|
-
import { ITypes } from '../type';
|
|
7
|
+
import { ITypes, AbstractCollection } from '../type';
|
|
9
8
|
import { IContextContainer } from './state';
|
|
10
|
-
import {
|
|
9
|
+
import { FormulaHost } from './grid';
|
|
10
|
+
import { Formula, IFormulaBlockView } from './formula';
|
|
11
11
|
import { ICalculation } from './ICalculation';
|
|
12
12
|
import { INamedFormulasCollection } from './INamedFormulasCollection';
|
|
13
13
|
interface State {
|
|
@@ -28,20 +28,25 @@ interface State {
|
|
|
28
28
|
/**
|
|
29
29
|
* Implementation for {@link INamedFormulasCollection}.
|
|
30
30
|
*/
|
|
31
|
-
export declare class NamedFormulaCollection implements INamedFormulasCollection {
|
|
32
|
-
protected
|
|
33
|
-
private _transactions;
|
|
31
|
+
export declare class NamedFormulaCollection extends AbstractCollection<ICalculation.INamedFormula, INamedFormulasCollection.GetItemsOptions> implements INamedFormulasCollection {
|
|
32
|
+
protected _transactions: ITransaction.IStore;
|
|
34
33
|
private _stateId;
|
|
35
34
|
private _transactionsRemoveListener;
|
|
36
|
-
|
|
35
|
+
/**
|
|
36
|
+
* `json.names` held until {@link hydrate}, and answered by {@link toJSON} meanwhile — so a save
|
|
37
|
+
* before the engine starts (`ICellContainerOptions.calcOnLoad` `'none'`) writes the names
|
|
38
|
+
* exactly as they were read.
|
|
39
|
+
*/
|
|
40
|
+
private _pendingJSON;
|
|
37
41
|
protected _container: IContextContainer | null;
|
|
42
|
+
protected _bindSheet: ((scope: string) => string | null) | null;
|
|
38
43
|
protected _context: IFormulaContext | null;
|
|
39
44
|
protected _ready: (() => Promise<ICalculation.Status>) | null;
|
|
40
45
|
protected _getActiveCell: () => IRange.CellCoords | null;
|
|
41
|
-
protected
|
|
46
|
+
protected _createHost: ((gridId: string) => FormulaHost) | null;
|
|
42
47
|
protected _getRange: ((address: ICellRange.Address) => ICellRange) | undefined;
|
|
43
48
|
protected _getRanges: ((address: ICellRanges.Address) => ICellRanges) | undefined;
|
|
44
|
-
protected _createGraphRanges: ((cells: readonly IRange.Coords[], names: readonly
|
|
49
|
+
protected _createGraphRanges: ((cells: readonly IRange.Coords[], names: readonly NamedNodeInfo[]) => ICellRanges | null) | undefined;
|
|
45
50
|
protected _resolveSheetScope: ((stableId: string) => string | null) | null;
|
|
46
51
|
protected _isReadOnly: (() => boolean) | null;
|
|
47
52
|
protected _getOrBindProxyFakeId: ((name: string, scope: string | null) => string | null) | null;
|
|
@@ -53,6 +58,11 @@ export declare class NamedFormulaCollection implements INamedFormulasCollection
|
|
|
53
58
|
private _wiringDirty;
|
|
54
59
|
/** Nesting depth of {@link _beginWiringBatch}; the flush happens on the way out of the last one. */
|
|
55
60
|
private _wiringBatchDepth;
|
|
61
|
+
/**
|
|
62
|
+
* The names written, told as each is written - see {@link _addNamesWrittenListener}. Its own
|
|
63
|
+
* store, never open, so nothing waits for the operation to land.
|
|
64
|
+
*/
|
|
65
|
+
private _namesEmitter;
|
|
56
66
|
constructor(options?: NamedFormulaCollection.ConstructorOptions);
|
|
57
67
|
/**
|
|
58
68
|
* Hydrates from `IWorkbook.JSON.names`. A malformed entry is warned and skipped rather than
|
|
@@ -66,7 +76,9 @@ export declare class NamedFormulaCollection implements INamedFormulasCollection
|
|
|
66
76
|
*
|
|
67
77
|
* Not on `INamedFormulasCollection`: hydration belongs to whoever constructs the engine.
|
|
68
78
|
*/
|
|
69
|
-
hydrate(json: INamed.JSON[] | undefined
|
|
79
|
+
hydrate(json: INamed.JSON[] | undefined): void;
|
|
80
|
+
/** Set while {@link hydrate} runs, so the read-only refusal in {@link add} stands down. */
|
|
81
|
+
private _hydrating;
|
|
70
82
|
/**
|
|
71
83
|
* Serializes to `IWorkbook.JSON.names` form, sorted by scope+name so output is stable across
|
|
72
84
|
* saves.
|
|
@@ -87,6 +99,8 @@ export declare class NamedFormulaCollection implements INamedFormulasCollection
|
|
|
87
99
|
* against), so serializing it would lose the sheet. An unwired item falls back to its raw
|
|
88
100
|
* expression — it has nothing better to offer.
|
|
89
101
|
*/
|
|
102
|
+
/** Retains names not yet hydrated for {@link toJSON}; see `Calculation.hydrateNames`. */
|
|
103
|
+
setPendingJSON(json: INamed.JSON[] | null | undefined): void;
|
|
90
104
|
toJSON(): INamed.JSON[] | null;
|
|
91
105
|
/** {@inheritDoc INamedFormulasCollection.add} */
|
|
92
106
|
add(options: INamedFormulasCollection.AddOptions): ICalculation.INamedFormula;
|
|
@@ -110,21 +124,6 @@ export declare class NamedFormulaCollection implements INamedFormulasCollection
|
|
|
110
124
|
* and a listener that re-reads the collection would otherwise do it once per name.
|
|
111
125
|
*/
|
|
112
126
|
protected _markWired(): void;
|
|
113
|
-
/**
|
|
114
|
-
* The graph node for a name id, or `null` — the sheet layer's door for minting name nodes into
|
|
115
|
-
* a CELL's graph answers.
|
|
116
|
-
*
|
|
117
|
-
* @internal
|
|
118
|
-
*
|
|
119
|
-
* @remarks
|
|
120
|
-
* `live` applies the phase-5 liveness rule (TODO-RENDER-DEPENDENCIES.md): a name is reported as
|
|
121
|
-
* a cell's DEPENDENT only when it has a dependent of its own — `_xlnm.Print_Area` reads every
|
|
122
|
-
* cell in the area and nothing reads it, so it is dead by construction and minting it would put
|
|
123
|
-
* a phantom on every cell it covers. No prefix special-casing: `=SUM(_xlnm.Print_Area)` makes
|
|
124
|
-
* it genuinely live and it SHOULD show. The PRECEDENT direction never gates: a name the cell's
|
|
125
|
-
* own formula mentions is in use by that very fact.
|
|
126
|
-
*/
|
|
127
|
-
_graphNode(id: string, live?: boolean): _NamedGraphNode | null;
|
|
128
127
|
/**
|
|
129
128
|
* Announces that what this collection PRESENTS has changed, without its own state having moved.
|
|
130
129
|
*
|
|
@@ -162,10 +161,8 @@ export declare class NamedFormulaCollection implements INamedFormulasCollection
|
|
|
162
161
|
*/
|
|
163
162
|
private _endWiringBatch;
|
|
164
163
|
protected _flushWired(): void;
|
|
165
|
-
/** {@inheritDoc
|
|
166
|
-
|
|
167
|
-
/** {@inheritDoc INamedFormulasCollection.getItems} */
|
|
168
|
-
getItems(options?: INamedFormulasCollection.GetItemsOptions): ICalculation.INamedFormula[];
|
|
164
|
+
/** {@inheritDoc AbstractCollection._getItems} */
|
|
165
|
+
protected _getItems(options?: INamedFormulasCollection.GetItemsOptions): ICalculation.INamedFormula[];
|
|
169
166
|
/**
|
|
170
167
|
* {@inheritDoc INamedFormulasCollection.getByName}
|
|
171
168
|
*
|
|
@@ -187,8 +184,12 @@ export declare class NamedFormulaCollection implements INamedFormulasCollection
|
|
|
187
184
|
addListeners(listeners: INamedFormulasCollection.IListeners, options?: IListener.Options): IListener.Remove;
|
|
188
185
|
/**
|
|
189
186
|
* Look up a named formula by its stable id.
|
|
187
|
+
*
|
|
188
|
+
* @remarks
|
|
189
|
+
* Narrower than {@link INamedFormulasCollection.getById} declares, because the store holds the
|
|
190
|
+
* concrete item. Callers inside the calculation get the internals without a cast.
|
|
190
191
|
*/
|
|
191
|
-
getById(id: string):
|
|
192
|
+
getById(id: string): NamedFormula | null;
|
|
192
193
|
/**
|
|
193
194
|
* The item holding this exact identity — the (name, sheet) pair — or `null`.
|
|
194
195
|
*
|
|
@@ -215,18 +216,48 @@ export declare class NamedFormulaCollection implements INamedFormulasCollection
|
|
|
215
216
|
* so a name loaded from a file that references a sheet the file does not contain still reports
|
|
216
217
|
* the scope it was written with instead of silently becoming global.
|
|
217
218
|
*/
|
|
219
|
+
/** A sheet's name or id to its stable id: see {@link NamedFormulaCollection.ConstructorOptions.bindSheet}. */
|
|
220
|
+
protected _bindSheetScope(scope: string): string | null;
|
|
218
221
|
protected _resolveScopeInput(scope: string | null): string | null;
|
|
219
222
|
/** A scope id as the sheet's current display name — see {@link NamedFormula.getScope}. */
|
|
220
223
|
protected _resolveScopeName(scopeId: string | null): string | null;
|
|
221
224
|
protected _remove(id: string): void;
|
|
222
|
-
|
|
225
|
+
/**
|
|
226
|
+
* Hears every name added, renamed or removed, as it is written: inside the operation, in the
|
|
227
|
+
* order the writes are made. A restore writes nothing here; what it brings back is whatever the
|
|
228
|
+
* store held.
|
|
229
|
+
*
|
|
230
|
+
* @internal The calculation's: what its engine is told of the names.
|
|
231
|
+
*/
|
|
232
|
+
_addNamesWrittenListener(listeners: IListener.Callbacks<NamedFormulaCollection, NamedFormulaCollection.NamesWrittenEvents>): IListener.Remove;
|
|
233
|
+
protected _notifyNamesWritten(item: NamedFormula, removed: boolean): void;
|
|
234
|
+
/**
|
|
235
|
+
* Every name as {@link _addNamesWrittenListener} tells one: what a listener starts from.
|
|
236
|
+
* @internal
|
|
237
|
+
*/
|
|
238
|
+
_namesAsWritten(): NamedFormulaCollection.NamesWritten[];
|
|
223
239
|
close(): void;
|
|
224
240
|
protected _getState(): State | null;
|
|
225
241
|
protected _beginCommit(options?: string | ITransaction.OperationOptions): ITransaction;
|
|
226
|
-
protected _updateState(state: Partial<State> | ((prevState: State) => State), description?: string, options?: ITransaction.StoreOperationOptions<
|
|
242
|
+
protected _updateState(state: Partial<State> | ((prevState: State) => State), description?: string, options?: ITransaction.StoreOperationOptions<Partial<State>>): void;
|
|
227
243
|
protected _initState(): void;
|
|
244
|
+
/** {@inheritDoc INamedFormulasCollection.isINamedFormulasCollection} */
|
|
245
|
+
get isINamedFormulasCollection(): true;
|
|
228
246
|
}
|
|
229
247
|
export declare namespace NamedFormulaCollection {
|
|
248
|
+
/** What {@link NamesWrittenEvents.onNamesWritten} tells of one name, as it is now. */
|
|
249
|
+
interface NamesWritten {
|
|
250
|
+
id: string;
|
|
251
|
+
name: string;
|
|
252
|
+
/** The sheet the name is private to, as the sheet's id; `null` for a global name. */
|
|
253
|
+
scopeId: string | null;
|
|
254
|
+
/** The name has left the collection. */
|
|
255
|
+
removed: boolean;
|
|
256
|
+
}
|
|
257
|
+
/** See {@link NamedFormulaCollection._addNamesWrittenListener}. */
|
|
258
|
+
interface NamesWrittenEvents {
|
|
259
|
+
onNamesWritten?(source: NamedFormulaCollection, written: NamesWritten): void;
|
|
260
|
+
}
|
|
230
261
|
interface ConstructorOptions {
|
|
231
262
|
/**
|
|
232
263
|
* Named items to hydrate at construction, in `IWorkbook.JSON.names` form — `ref` carries the
|
|
@@ -250,14 +281,23 @@ export declare namespace NamedFormulaCollection {
|
|
|
250
281
|
* ({@link ICalculation.INamedFormula.getDirectDependents} and friends) whenever a defined name
|
|
251
282
|
* belongs in one; without it those answers fall back to cells only.
|
|
252
283
|
*/
|
|
253
|
-
createGraphRanges?: (cells: readonly IRange.Coords[], names: readonly
|
|
284
|
+
createGraphRanges?: (cells: readonly IRange.Coords[], names: readonly NamedNodeInfo[]) => ICellRanges | null;
|
|
254
285
|
/** Resolves a sheet stableId to its display name — calc refs carry stableId scopes. */
|
|
255
286
|
resolveSheetScope?: (stableId: string) => string | null;
|
|
287
|
+
/**
|
|
288
|
+
* A sheet's name or stable id to its stable id, as the model holds its sheets now - not as the
|
|
289
|
+
* engine's replica has been told. Falls back to the container's symbols when absent.
|
|
290
|
+
*/
|
|
291
|
+
bindSheet?: (scope: string) => string | null;
|
|
256
292
|
/** Backs {@link INamed.isReadOnly} on each item. Defaults to not read-only. */
|
|
257
293
|
isReadOnly?: () => boolean;
|
|
258
294
|
getActiveCell?: () => IRange.CellCoords | null;
|
|
259
|
-
|
|
260
|
-
|
|
295
|
+
/**
|
|
296
|
+
* The host a name compiles its body into, created on first ask and answered again for the same
|
|
297
|
+
* id thereafter (a redefine rebinds to the same id; a deleted name keeps its grid).
|
|
298
|
+
*/
|
|
299
|
+
createHost?: (gridId: string) => FormulaHost;
|
|
300
|
+
/** The grid a name compiles into. Keyed by name AND scope — see `add`. */
|
|
261
301
|
getOrBindProxyFakeId?: (name: string, scope: string | null) => string | null;
|
|
262
302
|
queuePendingAction?: (action: () => Promise<void>) => void;
|
|
263
303
|
/**
|
|
@@ -274,6 +314,8 @@ export declare namespace NamedFormulaCollection {
|
|
|
274
314
|
interface NamedFormulaWireOptions {
|
|
275
315
|
container: IContextContainer;
|
|
276
316
|
context: IFormulaContext;
|
|
317
|
+
/** Holds the body. `null` for a name that has no grid (no proxy id was bound for it). */
|
|
318
|
+
host: FormulaHost | null;
|
|
277
319
|
ready: () => Promise<ICalculation.Status>;
|
|
278
320
|
/** Returns the scope's sheet gridId (for reference resolution). Resolved after ready(). */
|
|
279
321
|
getScopeGridId: () => string | null;
|
|
@@ -295,7 +337,7 @@ interface NamedFormulaWireOptions {
|
|
|
295
337
|
getRanges?: (address: ICellRanges.Address) => ICellRanges;
|
|
296
338
|
getRange?: (address: ICellRange.Address) => ICellRange;
|
|
297
339
|
/** Mixed graph answers (cells + name nodes) — see the collection option of the same name. */
|
|
298
|
-
createGraphRanges?: (cells: readonly IRange.Coords[], names: readonly
|
|
340
|
+
createGraphRanges?: (cells: readonly IRange.Coords[], names: readonly NamedNodeInfo[]) => ICellRanges | null;
|
|
299
341
|
/** Resolves a sheet stableId to its display name — calc refs carry stableId scopes. */
|
|
300
342
|
resolveSheetScope?: (stableId: string) => string | null;
|
|
301
343
|
/**
|
|
@@ -343,17 +385,31 @@ declare class NamedFormula extends Formula implements ICalculation.INamedFormula
|
|
|
343
385
|
* rendering `getItems()`.
|
|
344
386
|
*/
|
|
345
387
|
private readonly _notifyCollection;
|
|
346
|
-
/**
|
|
347
|
-
private readonly
|
|
388
|
+
/** The collection's {@link NamedFormulaCollection._addNamesWrittenListener}, for a rename. */
|
|
389
|
+
private readonly _notifyNameWritten;
|
|
348
390
|
private _emitter;
|
|
349
391
|
private _transactionsRemoveListener;
|
|
350
392
|
private _closed;
|
|
351
393
|
/**
|
|
352
|
-
*
|
|
394
|
+
* What this name resolved to the last time its readers were reconciled with it: the body block
|
|
395
|
+
* (identity — the store keeps the compiled block object, so a version that did not touch the
|
|
396
|
+
* body hands back the same one) and the state that decides whether there is a body to read.
|
|
397
|
+
* Recorded after wiring and after every revert; `onRestoreOrRevert` invalidates readers only
|
|
398
|
+
* when the restored version differs. The restore event is dispatched to EVERY state of a
|
|
399
|
+
* commit, not only the ones that changed, so without this an undo of any cell value re-marked
|
|
400
|
+
* every reader of every name — on a template, the whole workbook, in a pass of its own.
|
|
401
|
+
*/
|
|
402
|
+
private _seenBlock;
|
|
403
|
+
private _seenDeleted;
|
|
404
|
+
private _seenExpression;
|
|
405
|
+
/** Holds the body; `null` for a name without a grid. See {@link _block}. */
|
|
406
|
+
private readonly _host;
|
|
407
|
+
/**
|
|
408
|
+
* The compiled body, read LIVE from this name's host on every access.
|
|
353
409
|
*
|
|
354
410
|
* @remarks
|
|
355
411
|
* Deliberately not a captured instance. A name's body is versioned state like any other formula —
|
|
356
|
-
* it lives at (0,0) of the
|
|
412
|
+
* it lives at (0,0) of the host's grid in the ONE shared `formulaSpatial` that also holds every
|
|
357
413
|
* cell formula, inside `Calculation`'s transactional state. So the store already tracks it, and
|
|
358
414
|
* anything holding a second copy is holding a snapshot:
|
|
359
415
|
*
|
|
@@ -368,19 +424,21 @@ declare class NamedFormula extends Formula implements ICalculation.INamedFormula
|
|
|
368
424
|
* `undefined` (no grid, or nothing compiled at its origin) is the pre-wire state, which every
|
|
369
425
|
* accessor below already has a fallback for.
|
|
370
426
|
*/
|
|
371
|
-
protected get _block():
|
|
372
|
-
constructor(coords: IRange.CellCoords | null, options: INamedFormulasCollection.AddOptions, deleteFromCollection: () => void, wire: NamedFormulaWireOptions | null, gridId?: string | null, checkRename?: (nextName: string) => void, transactions?: ITransaction.IStore, isReadOnly?: (() => boolean) | null, resolveSheetScope?: (stableId: string) => string | null, notifyCollection?: () => void);
|
|
427
|
+
protected get _block(): IFormulaBlockView;
|
|
428
|
+
constructor(coords: IRange.CellCoords | null, options: INamedFormulasCollection.AddOptions, deleteFromCollection: () => void, wire: NamedFormulaWireOptions | null, gridId?: string | null, checkRename?: (nextName: string) => void, transactions?: ITransaction.IStore, isReadOnly?: (() => boolean) | null, resolveSheetScope?: (stableId: string) => string | null, notifyCollection?: () => void, notifyNameWritten?: () => void);
|
|
373
429
|
/**
|
|
374
|
-
*
|
|
430
|
+
* Writes this name's body, which binds it to the region its expression designates once the
|
|
431
|
+
* engine answers.
|
|
375
432
|
*
|
|
376
433
|
* @internal
|
|
377
434
|
*
|
|
378
435
|
* @remarks
|
|
379
|
-
* Called by the collection once the item is IN the collection, so the notification
|
|
380
|
-
*
|
|
381
|
-
* completes before it returns and `getRanges()` answers immediately afterwards.
|
|
436
|
+
* Called by the collection once the item is IN the collection, so the notification the answer
|
|
437
|
+
* brings describes a set that already contains it. `getRanges()` answers once the engine has.
|
|
382
438
|
*/
|
|
383
439
|
_wireNow(): void;
|
|
440
|
+
/** Records what the readers have been reconciled with — see `_seenBlock`. */
|
|
441
|
+
private _recordSeen;
|
|
384
442
|
/**
|
|
385
443
|
* {@inheritDoc INamed.getId}
|
|
386
444
|
*
|
|
@@ -560,9 +618,9 @@ declare class NamedFormula extends Formula implements ICalculation.INamedFormula
|
|
|
560
618
|
*/
|
|
561
619
|
getRanges(): ICellRanges | null;
|
|
562
620
|
/** {@inheritDoc ICalculation.INamedFormula.getDirectDependents} */
|
|
563
|
-
getDirectDependents(): ICellRanges | null
|
|
621
|
+
getDirectDependents(): Promise<ICellRanges | null>;
|
|
564
622
|
/** {@inheritDoc ICalculation.INamedFormula.getDependents} */
|
|
565
|
-
getDependents(): ICellRanges | null
|
|
623
|
+
getDependents(): Promise<ICellRanges | null>;
|
|
566
624
|
/**
|
|
567
625
|
* This name as a graph NODE — the backing a {@link NamedCellRange} delegates to.
|
|
568
626
|
*
|
|
@@ -574,57 +632,24 @@ declare class NamedFormula extends Formula implements ICalculation.INamedFormula
|
|
|
574
632
|
* falls to the name's scope sheet and finally to `null` (the consumer defaults it) — the same
|
|
575
633
|
* "self-consistent but arbitrary" anchor the body was compiled against (design doc §7).
|
|
576
634
|
*/
|
|
577
|
-
|
|
635
|
+
_asNodeInfo(): NamedNodeInfo;
|
|
578
636
|
/** {@inheritDoc ICalculation.INamedFormula.getDirectPrecedents} */
|
|
579
|
-
getDirectPrecedents(): ICellRanges | null
|
|
637
|
+
getDirectPrecedents(): Promise<ICellRanges | null>;
|
|
580
638
|
/** {@inheritDoc ICalculation.INamedFormula.getPrecedents} */
|
|
581
|
-
getPrecedents(): ICellRanges | null
|
|
582
|
-
/**
|
|
583
|
-
* The precedents of this NAME — cells and names, ONE answer; the mirror of
|
|
584
|
-
* {@link _dependentRanges}.
|
|
585
|
-
*
|
|
586
|
-
* @remarks
|
|
587
|
-
* The cell half is the ordinary precedent graph: a body is a real formula on its virtual grid,
|
|
588
|
-
* and its references registered precedent ranges like any cell's — so the grid answers, one hop
|
|
589
|
-
* or deep, and only scope translation is needed. The name half is the body's `getNamedIds`:
|
|
590
|
-
* apply-at-eval means a name the body reads has no precedent edge, so the symbol list is the
|
|
591
|
-
* only carrier — one hop for `direct`, the downward closure (cycle-guarded) for the deep form,
|
|
592
|
-
* each closure member contributing its own grid's cell walk.
|
|
593
|
-
*
|
|
594
|
-
* The deep form does not take the symbol hop from UPSTREAM CELLS: with `X = A1*2` and
|
|
595
|
-
* `A1 = SomeName`, `A1` is listed and `SomeName`'s inputs are not — that hop belongs to `A1`,
|
|
596
|
-
* whose own `getDirectPrecedents` reports the `SomeName` node, which is how a TREE walk crosses
|
|
597
|
-
* it. Flattening it here would mean scanning every landed region's blocks; the tree gets it for
|
|
598
|
-
* free, one hop at a time.
|
|
599
|
-
*
|
|
600
|
-
* Everything resolves at the DEFINING anchor (the body's own compilation site) — the same
|
|
601
|
-
* answer the Name Manager gives, and the §4.1 rule for a name that is not in use.
|
|
602
|
-
*/
|
|
603
|
-
private _precedentRanges;
|
|
639
|
+
getPrecedents(): Promise<ICellRanges | null>;
|
|
604
640
|
/**
|
|
605
|
-
* The dependents of this NAME — cells and names, ONE answer
|
|
641
|
+
* The precedents or dependents of this NAME — cells and names, ONE answer — as the engine walks
|
|
642
|
+
* them over its body's grid (see `CalcGridBackend._nameGraphNow` for the walk: the symbol edges
|
|
643
|
+
* names ride on, and the cell graph between them).
|
|
606
644
|
*
|
|
607
645
|
* @remarks
|
|
608
|
-
*
|
|
609
|
-
*
|
|
610
|
-
*
|
|
611
|
-
*
|
|
612
|
-
*
|
|
613
|
-
* `container.getNamedDependents` (bucketed and memoized there — see its docs).
|
|
614
|
-
*
|
|
615
|
-
* The **cell** edge is the ordinary precedent graph, and it already carries everything downstream
|
|
616
|
-
* of those blocks. So `direct` is one hop of the first graph; the transitive form takes that hop,
|
|
617
|
-
* then hands each landing block to the grid it lives on.
|
|
618
|
-
*
|
|
619
|
-
* A block on a VIRTUAL grid is another NAME reading this one. It is not a cell — it is a NODE,
|
|
620
|
-
* and it rides in the same answer as an anchored `INamedRange` (design doc §4): one node per
|
|
621
|
-
* name, whatever the walk direction found it by, since dependents are anchor-independent. The
|
|
622
|
-
* transitive walk still passes THROUGH it on the symbol closure (`getNamedDependentNames`, the
|
|
623
|
-
* same closure the engine invalidates against), or `Base`'s dependents would stop at `Plus1`
|
|
624
|
-
* and miss every cell reading `Plus1`. This name itself is listed only when a true cycle leads
|
|
625
|
-
* back to it.
|
|
646
|
+
* What is left here is the translation out of calc currency: a cell on no addressable sheet
|
|
647
|
+
* drops, and the rest are reduced to regions, not a list of blocks - two formulas naming this
|
|
648
|
+
* name in adjacent cells are one range, and the deep walk can reach one block down two paths.
|
|
649
|
+
* Everything resolves at the DEFINING anchor (the body's own compilation site): the answer the
|
|
650
|
+
* Name Manager gives. Name nodes lead, cells follow.
|
|
626
651
|
*/
|
|
627
|
-
private
|
|
652
|
+
private _graphRanges;
|
|
628
653
|
/**
|
|
629
654
|
* {@inheritDoc IModel.delete}
|
|
630
655
|
*
|
|
@@ -645,25 +670,32 @@ declare class NamedFormula extends Formula implements ICalculation.INamedFormula
|
|
|
645
670
|
* the {@link getReferences} override.
|
|
646
671
|
*/
|
|
647
672
|
getExpression(options?: ICalculation.FormulaTextOptions): string;
|
|
673
|
+
/**
|
|
674
|
+
* The root of the compiled body, for the engine's own side: what a formula dialect reads a name
|
|
675
|
+
* through ({@link ICalculation.FormulaDialectContext.getNamedRoot}).
|
|
676
|
+
* @internal
|
|
677
|
+
*/
|
|
678
|
+
_getBodyNode(): ICalculation.FormulaNode | null;
|
|
648
679
|
/** Pre-wire fallback: return empty array before block is compiled. */
|
|
649
680
|
getTokens(evalIndex?: number): readonly ICalculation.FormulaToken[];
|
|
650
681
|
/** Pre-wire fallback: return false before block is compiled. */
|
|
651
682
|
isReferenceOnly(): boolean;
|
|
652
683
|
/**
|
|
653
|
-
*
|
|
654
|
-
*
|
|
655
|
-
*
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
*/
|
|
662
|
-
getReferences(): ICellRanges | null;
|
|
663
|
-
setReferenceAt(_index: number, _reference: any, _options?: any): this;
|
|
664
|
-
setReferenceModeAt(_index: number, _side?: ICalculation.ReferenceSide, _mode?: number, _options?: any): this;
|
|
665
|
-
private _wireAsync;
|
|
684
|
+
* Anchored at the virtual grid's origin. `this._coords` is the *defining* cell (the active cell
|
|
685
|
+
* when the name was added), which exists only so relative refs encode their R1C1 offsets from
|
|
686
|
+
* there; the compiled block lives at (0,0) of the name's own grid.
|
|
687
|
+
*/
|
|
688
|
+
protected _referencesAt(): ReferenceCoords[] | null;
|
|
689
|
+
setReferenceAt(_index: number, _reference: any, _options?: any): Promise<this>;
|
|
690
|
+
setReferenceModeAt(_index: number, _side?: ICalculation.ReferenceSide, _mode?: number, _options?: any): Promise<this>;
|
|
691
|
+
/** Writes the body as authored, inside the operation that asked (the host amends the current commit when none is open). */
|
|
666
692
|
private _doWireCore;
|
|
693
|
+
/**
|
|
694
|
+
* The engine answered with the body: only now does the name designate anything - `getRanges()`
|
|
695
|
+
* was null up to here. Both the item and the collection announce it; a spatial consumer listens
|
|
696
|
+
* to the collection, which is the only place it can hear about a name it does not already hold.
|
|
697
|
+
*/
|
|
698
|
+
private _bodyAnswered;
|
|
667
699
|
toString(): string;
|
|
668
700
|
get [Symbol.toStringTag](): string;
|
|
669
701
|
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { TypedFunction } from '../scripting/TypedFunction';
|
|
2
|
+
import { ICalculation } from './ICalculation';
|
|
3
|
+
/**
|
|
4
|
+
* A defined name whose body is `LAMBDA(…)`, answered by `IFunctionCollection.getByName` as a function
|
|
5
|
+
* so that a signature or help lookup can describe it.
|
|
6
|
+
*
|
|
7
|
+
* @remarks
|
|
8
|
+
* Not registered and never executed. The engine's own function lookups skip `isLambda()`, so a call to
|
|
9
|
+
* the name still compiles as an application of the NAME — its dependency edge, `#NAME?` healing,
|
|
10
|
+
* recursion and `LET` shadowing are all the name's. `execute` answers `#CALC!`, a lambda's verdict
|
|
11
|
+
* wherever it is not applied.
|
|
12
|
+
*/
|
|
13
|
+
export declare class NamedLambdaFunction extends TypedFunction {
|
|
14
|
+
/** @inheritdoc IFunction.isLambda */
|
|
15
|
+
isLambda(): boolean;
|
|
16
|
+
}
|
|
17
|
+
/** The category a named lambda is listed under — beside the built-in categories, in search and pickers. */
|
|
18
|
+
export declare const LAMBDA_CATEGORY = "Lambda";
|
|
19
|
+
/**
|
|
20
|
+
* The function a lambda-valued defined name exports, or `null` when its body is not a `LAMBDA`.
|
|
21
|
+
*
|
|
22
|
+
* @remarks
|
|
23
|
+
* The parameters are the ROOT lambda's declarations — `LAMBDA(n,LAMBDA(x,x+n))` takes `n` — with
|
|
24
|
+
* optional ones flagged, and the summary is the name's comment, or its formula when it has none. One
|
|
25
|
+
* instance per name while those stay the same.
|
|
26
|
+
*/
|
|
27
|
+
export declare const namedLambdaFunction: (item: ICalculation.INamedFormula) => NamedLambdaFunction | null;
|
|
28
|
+
//# sourceMappingURL=NamedLambdaFunction.d.ts.map
|
|
@@ -86,6 +86,15 @@ export declare const TokenType: {
|
|
|
86
86
|
* A named formula reference, e.g. `TotalRevenue`.
|
|
87
87
|
*/
|
|
88
88
|
readonly Named: "named";
|
|
89
|
+
/**
|
|
90
|
+
* A `LET` / `LAMBDA` name — its declaration (`x` in `LET(x,1,x+1)`) or a use bound to it. `value` is
|
|
91
|
+
* a {@link ICalculation.NamedRef} whose `declaration` flag marks the declaration.
|
|
92
|
+
*
|
|
93
|
+
* @remarks
|
|
94
|
+
* Token-only: in a formula tree these remain `named` nodes. Unlike a `named` token it never resolves
|
|
95
|
+
* against the workbook — its scope is the formula itself.
|
|
96
|
+
*/
|
|
97
|
+
readonly Parameter: "parameter";
|
|
89
98
|
/**
|
|
90
99
|
* Tokens related to structured reference parsing. (e.g. Table[])
|
|
91
100
|
*
|
|
@@ -30,6 +30,20 @@ export interface NamedReference {
|
|
|
30
30
|
*/
|
|
31
31
|
readonly optional?: boolean;
|
|
32
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* An error reference — the `value` of an error REFERENCE AST node (`#REF!`, `#NAME?`): the error
|
|
35
|
+
* itself, and the sheet the dead reference named. INTERNAL, as {@link NamedReference} is.
|
|
36
|
+
*
|
|
37
|
+
* @remarks
|
|
38
|
+
* `scope` is the sheet's stableId once linked, the raw sheet name before. The public counterpart is
|
|
39
|
+
* {@link ICalculation.ErrorRef}, the `value` of an `error` {@link ICalculation.FormulaToken}, which
|
|
40
|
+
* carries the error as its label so that the token is plain data; `generateFormulaTokens` projects
|
|
41
|
+
* this onto that.
|
|
42
|
+
*/
|
|
43
|
+
export interface ErrorReference {
|
|
44
|
+
readonly error: FormulaError.Known;
|
|
45
|
+
readonly scope?: string | null;
|
|
46
|
+
}
|
|
33
47
|
/**
|
|
34
48
|
* Pre-computed structured reference (table) query.
|
|
35
49
|
*
|
|
@@ -84,11 +98,51 @@ export interface StructuredReference {
|
|
|
84
98
|
* - `IRange.FixableCellCoords` — a single *cell* reference (`colIndex`/`rowIndex`). Passing this REPLACES
|
|
85
99
|
* the reference's shape: an existing range collapses to a lone cell (`A1:B2` → `A1`). This is how a
|
|
86
100
|
* caller says "I mean a cell" without a side-channel flag — the type carries the intent.
|
|
101
|
+
* - `TableReferenceCoords` — a structured reference, resolved (distinguish via `'tableId' in ref`)
|
|
87
102
|
* - `NamedReference` — a named formula reference (distinguish via `'nameId' in ref`)
|
|
88
103
|
* - `FormulaError.Ref` — a broken reference (`#REF!`)
|
|
89
104
|
* - `null` — no reference at this slot
|
|
90
105
|
*/
|
|
91
|
-
export type ReferenceCoords = IRange.FixableCoords | IRange.FixableCellCoords | NamedReference | FormulaError.Ref | null;
|
|
106
|
+
export type ReferenceCoords = IRange.FixableCoords | IRange.FixableCellCoords | TableReferenceCoords | NamedReference | FormulaError.Ref | null;
|
|
107
|
+
/**
|
|
108
|
+
* The cells a structured reference designates, marked with the table that designates them.
|
|
109
|
+
*
|
|
110
|
+
* @remarks
|
|
111
|
+
* A structured reference names a table, not cells: the table re-resolves it after every structural
|
|
112
|
+
* change, so a shift that moves cells must leave the reference alone. Without the mark the resolved
|
|
113
|
+
* coordinates are indistinguishable from an absolute range (every axis is `$`) and the shift paths
|
|
114
|
+
* rewrote the reference into one. Distinguish via `'tableId' in ref`, as `'nameId' in ref` does for
|
|
115
|
+
* a name.
|
|
116
|
+
*/
|
|
117
|
+
export interface TableReferenceCoords extends IRange.FixableCoords {
|
|
118
|
+
/** The stable id of the table. */
|
|
119
|
+
tableId: string;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* A named formula as a NODE in a graph answer - everything needed to build the range object
|
|
123
|
+
* that carries it, and nothing that needs the engine.
|
|
124
|
+
*
|
|
125
|
+
* @remarks
|
|
126
|
+
* The calculation layer knows the graph; the model layer knows how to be a range. This struct is
|
|
127
|
+
* the seam, and it is deliberately plain data: a name crossing into the model used to arrive as an
|
|
128
|
+
* object carrying lazy graph queries as closures, which meant the model reached into the
|
|
129
|
+
* calculation to get one and could not have received it over a wire at all. The queries are
|
|
130
|
+
* public on {@link ICalculation.INamedFormula}, resolved from {@link id} when asked.
|
|
131
|
+
*/
|
|
132
|
+
export interface NamedNodeInfo {
|
|
133
|
+
/** The name's stable id - also the id of the virtual grid its body compiles into. */
|
|
134
|
+
id: string;
|
|
135
|
+
/** The name as authored, unqualified. Scope qualification is the view's job, led by the id. */
|
|
136
|
+
name: string;
|
|
137
|
+
/**
|
|
138
|
+
* The anchor sheet's display NAME, or `null` when it cannot be resolved (a file-loaded name
|
|
139
|
+
* whose defining sheet is unknowable) - the consumer picks a default sheet then.
|
|
140
|
+
*/
|
|
141
|
+
sheetName: string | null;
|
|
142
|
+
/** The anchor cell - the name's defining cell (the active cell at authoring time). */
|
|
143
|
+
rowIndex: number;
|
|
144
|
+
colIndex: number;
|
|
145
|
+
}
|
|
92
146
|
/**
|
|
93
147
|
* Options for `IFormulaBlock.setReferenceAt`.
|
|
94
148
|
*/
|
|
@@ -101,10 +155,37 @@ export interface SetReferenceOptions {
|
|
|
101
155
|
* Measured in Excel: a row/area delete leaves the qualified form (`Data!#REF!`), which is the
|
|
102
156
|
* breadcrumb naming whose cells went; deleting the sheet itself leaves a bare `#REF!`, since
|
|
103
157
|
* there is no longer a sheet to name. Only the caller knows which of the two it is performing —
|
|
104
|
-
* `
|
|
158
|
+
* `CalcGridBackend.delete` is walking the precedents OF the grid it is about to drop, while every
|
|
105
159
|
* shift path is deleting rows within a sheet that survives. It cannot be inferred here: the
|
|
106
160
|
* sheet is still registered when this rewrite runs, so resolving the qualifier still succeeds.
|
|
107
161
|
*/
|
|
108
162
|
scopeDeleted?: boolean;
|
|
109
163
|
}
|
|
164
|
+
/**
|
|
165
|
+
* A block's static precedent edges in RELATIVE form — one entry per edge, in the order
|
|
166
|
+
* `resolvedPrecedentsAt` returns them — for the blocks whose edges are the same rects at every
|
|
167
|
+
* cell's own offset. See {@link IFormulaBlock.getPrecedentTemplate}.
|
|
168
|
+
*/
|
|
169
|
+
export interface PrecedentTemplate {
|
|
170
|
+
/**
|
|
171
|
+
* The stored reference behind each edge, translated against the asking cell — or the error the
|
|
172
|
+
* edge IS (`#REF!`), which is the same at every cell and translates to nothing. The resolver
|
|
173
|
+
* answers the same error in that slot, so a block whose only reference is broken still has an
|
|
174
|
+
* edge list it can share, and the blank-aware predicate treats it as an input that does not vary.
|
|
175
|
+
*/
|
|
176
|
+
readonly relative: readonly (IRange.FixableCoords | FormulaError.Known)[];
|
|
177
|
+
/**
|
|
178
|
+
* The SECOND endpoint of an edge written as a range (`A1:B4` — a `:` operator over two cell
|
|
179
|
+
* leaves, which is how the compiler stores every range); `null` where the edge is one
|
|
180
|
+
* reference. The edge is then the union of the two translated endpoints, exactly as
|
|
181
|
+
* `resolvedPrecedentsAt`'s range-operator branch forms it.
|
|
182
|
+
*/
|
|
183
|
+
readonly second: readonly (IRange.FixableCoords | null)[];
|
|
184
|
+
/**
|
|
185
|
+
* Per edge, the compiler's per-axis anchoring — what `resolvedPrecedentsAt` stamps onto the
|
|
186
|
+
* coords it hands back. Constant for the block, so a materialized buffer is stamped once.
|
|
187
|
+
*/
|
|
188
|
+
readonly verticalAbs: readonly boolean[];
|
|
189
|
+
readonly horizontalAbs: readonly boolean[];
|
|
190
|
+
}
|
|
110
191
|
//# sourceMappingURL=Types.d.ts.map
|