@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,13 +1,20 @@
|
|
|
1
|
-
import { IRange } from '@sheetxl/primitives';
|
|
1
|
+
import { IRange, Scalar } from '@sheetxl/primitives';
|
|
2
|
+
import { RunCoordValue } from '@sheetxl/utils';
|
|
2
3
|
import { ITransaction } from '../transaction';
|
|
3
4
|
import { ICondition } from '../condition';
|
|
4
5
|
import { ICellRange } from '../cellRange';
|
|
5
6
|
/**
|
|
6
7
|
* Filters are used to hide spans (rows or columns). that do not match a set of conditions.
|
|
8
|
+
*
|
|
9
|
+
* @remarks
|
|
10
|
+
* A column's filter ANDs with the other columns' (Excel's AutoFilter): setting one leaves the
|
|
11
|
+
* rest in place unless `replace` says otherwise. Every write returns a Promise that resolves once
|
|
12
|
+
* the rows are hidden; the criteria are written in the same transaction, so an `await` is what
|
|
13
|
+
* makes a read after the call see them.
|
|
7
14
|
*/
|
|
8
15
|
export interface IFilter extends ICondition.Stateful, IFilter.IFilterable {
|
|
9
16
|
/**
|
|
10
|
-
* Returns the range this filter applies to.
|
|
17
|
+
* Returns the range this filter applies to: the column's data rows, header and totals excluded.
|
|
11
18
|
*
|
|
12
19
|
* @remarks
|
|
13
20
|
* A filter is exactly one column of its table, which is why the singular is declared here rather
|
|
@@ -15,9 +22,24 @@ export interface IFilter extends ICondition.Stateful, IFilter.IFilterable {
|
|
|
15
22
|
*/
|
|
16
23
|
getRange(): ICellRange;
|
|
17
24
|
/**
|
|
18
|
-
* Set the condition.
|
|
25
|
+
* Set the condition, `null` to clear this column's.
|
|
26
|
+
*
|
|
27
|
+
* @param condition The condition, or `null` to clear.
|
|
28
|
+
* @param replace If `true`, every other column's filter is dropped; omitted, they stay and this
|
|
29
|
+
* one ANDs with them. A column already filtered keeps its place in the level order.
|
|
30
|
+
* @param options Transaction options.
|
|
31
|
+
*
|
|
32
|
+
* @returns Resolves once the rows are hidden; one transaction, one undo step.
|
|
33
|
+
*/
|
|
34
|
+
setCondition(condition: ICondition.Input | null, replace?: boolean, options?: ITransaction.OperationOptions): Promise<this>;
|
|
35
|
+
/**
|
|
36
|
+
* Re-runs every filter on the table with its current criteria.
|
|
37
|
+
*/
|
|
38
|
+
apply(options?: ITransaction.OperationOptions): Promise<this>;
|
|
39
|
+
/**
|
|
40
|
+
* Clears this column's condition. The other columns' filters stay.
|
|
19
41
|
*/
|
|
20
|
-
|
|
42
|
+
delete(options?: ITransaction.OperationOptions): Promise<this>;
|
|
21
43
|
/**
|
|
22
44
|
* The offset index from the range
|
|
23
45
|
*
|
|
@@ -25,6 +47,50 @@ export interface IFilter extends ICondition.Stateful, IFilter.IFilterable {
|
|
|
25
47
|
* This is relative to the table.
|
|
26
48
|
*/
|
|
27
49
|
getIndex(): number;
|
|
50
|
+
/**
|
|
51
|
+
* The column's distinct values, as a filter menu lists them.
|
|
52
|
+
*
|
|
53
|
+
* @param options See {@link IFilter.GetItemsOptions}.
|
|
54
|
+
*
|
|
55
|
+
* @remarks
|
|
56
|
+
* Under the default scope, which rows are read depends on the column:
|
|
57
|
+
* - With no condition on it, the rows that are showing. A row hidden by another column's filter,
|
|
58
|
+
* or by hand, is not listed.
|
|
59
|
+
* - With a condition on it, the rows every *other* column's filter passes, so a value this
|
|
60
|
+
* column's own condition hides is listed too, unchecked.
|
|
61
|
+
*
|
|
62
|
+
* An item is `checked` when at least one row holding it passes the filters, so a column filtered
|
|
63
|
+
* by any condition (`> 5`, say) lists the passing values checked. A row hidden by hand does not
|
|
64
|
+
* uncheck its value.
|
|
65
|
+
*
|
|
66
|
+
* Under the `'column'` scope every row is read, and each item also says whether it passes the
|
|
67
|
+
* other columns' filters ({@link IFilter.Item.passesOthers}).
|
|
68
|
+
*
|
|
69
|
+
* Reads the stored values in one pass; the cost follows the column's content, not its extent.
|
|
70
|
+
*
|
|
71
|
+
* @example
|
|
72
|
+
* ```ts
|
|
73
|
+
* const filter = table.getColumnAt(1).getFilter();
|
|
74
|
+
* const { items } = await filter.getItems();
|
|
75
|
+
* // keep the first two values
|
|
76
|
+
* await filter.setCondition({
|
|
77
|
+
* operator: ICondition.BuiltInOperatorNames.InSet,
|
|
78
|
+
* param: { items: items.slice(0, 2).map((item) => item.text) }
|
|
79
|
+
* });
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
getItems(options?: IFilter.GetItemsOptions): Promise<IFilter.Items>;
|
|
83
|
+
/**
|
|
84
|
+
* The texts `values` show as in this column's data rows, each once, in column order: what a
|
|
85
|
+
* list by displayed text would hold for them, and what the xlsx writer spells a value list as,
|
|
86
|
+
* since OOXML's list holds displayed text. A value no cell holds contributes nothing.
|
|
87
|
+
*
|
|
88
|
+
* @remarks
|
|
89
|
+
* Synchronous: it reads the number-format runs and the column's statistics, not its cells.
|
|
90
|
+
*/
|
|
91
|
+
getDisplayTexts(values: readonly Scalar[]): readonly string[];
|
|
92
|
+
/** For runtime type checking. */
|
|
93
|
+
readonly isIFilter: true;
|
|
28
94
|
}
|
|
29
95
|
/**
|
|
30
96
|
* {@inheritDoc IFilter}
|
|
@@ -38,6 +104,121 @@ export declare namespace IFilter {
|
|
|
38
104
|
conditions?: ICondition.JSON[];
|
|
39
105
|
axis?: IRange.Axis;
|
|
40
106
|
}
|
|
107
|
+
/**
|
|
108
|
+
* Options for {@link IFilter.getItems}.
|
|
109
|
+
*/
|
|
110
|
+
interface GetItemsOptions {
|
|
111
|
+
/**
|
|
112
|
+
* The distinct values to stop at.
|
|
113
|
+
*
|
|
114
|
+
* @defaultValue `10000`
|
|
115
|
+
*/
|
|
116
|
+
limit?: number;
|
|
117
|
+
/**
|
|
118
|
+
* The selector the column is read under, as the condition's will be. Under
|
|
119
|
+
* {@link ICondition.BuiltInSelectorNames.Display} the column is grouped by the text its cells
|
|
120
|
+
* SHOW, as a spreadsheet's filter list does: `1` under `$0` and under `0%` are two items, and
|
|
121
|
+
* a string of only spaces is a blank. The items are then the texts an `inSet` under Display
|
|
122
|
+
* holds. Any other selector lists the distinct values.
|
|
123
|
+
*
|
|
124
|
+
* @defaultValue `null` — by value, the identity {@link ICondition.InSetOption.items} has
|
|
125
|
+
* under no selector.
|
|
126
|
+
*/
|
|
127
|
+
selector?: string | ICondition.ISelector | null;
|
|
128
|
+
/**
|
|
129
|
+
* Which rows are listed.
|
|
130
|
+
*
|
|
131
|
+
* - `'visible'`: as a filter menu lists them (see {@link IFilter.getItems}).
|
|
132
|
+
* - `'column'`: every row of the column, hidden or not, so a value every row of which another
|
|
133
|
+
* column's filter hides is listed too, with {@link Item.passesOthers} saying so. What a
|
|
134
|
+
* slicer lists.
|
|
135
|
+
*
|
|
136
|
+
* @defaultValue `'visible'`
|
|
137
|
+
*/
|
|
138
|
+
scope?: 'visible' | 'column';
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* One distinct value of a filtered column.
|
|
142
|
+
*/
|
|
143
|
+
interface Item {
|
|
144
|
+
/**
|
|
145
|
+
* The item's label: by value, the value as `General` shows it (a date as its date format
|
|
146
|
+
* does); under Display, the text the cells show, which is then the item an `inSet` under
|
|
147
|
+
* Display holds.
|
|
148
|
+
*/
|
|
149
|
+
text: string;
|
|
150
|
+
/** The value, or by display the value of the first cell showing `text`; the item's place in the order. */
|
|
151
|
+
value: Scalar;
|
|
152
|
+
/** The rows holding the value. */
|
|
153
|
+
count: number;
|
|
154
|
+
/** Whether at least one row holding the value passes the filters. */
|
|
155
|
+
checked: boolean;
|
|
156
|
+
/**
|
|
157
|
+
* Whether at least one row holding the value passes every *other* column's filter: a slicer's
|
|
158
|
+
* "has data". Read under {@link GetItemsOptions.scope} `'column'` only.
|
|
159
|
+
*/
|
|
160
|
+
passesOthers?: boolean;
|
|
161
|
+
/** The sheet row of the first listed row holding the value. */
|
|
162
|
+
firstRow: number;
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* One level of the date tree {@link Items.dates}: the nodes, each the run of items it spans,
|
|
166
|
+
* in the order the items are listed.
|
|
167
|
+
*/
|
|
168
|
+
interface DateLevel {
|
|
169
|
+
/** The part this level groups by. */
|
|
170
|
+
group: ICondition.DateItemGroupingType;
|
|
171
|
+
/**
|
|
172
|
+
* The nodes. A run's `value` is the group item selecting exactly its items: the parts down
|
|
173
|
+
* to this level (`{ group: 'month', year: 1995, month: 10 }`).
|
|
174
|
+
*/
|
|
175
|
+
runs: readonly RunCoordValue<ICondition.DateGroupItem>[];
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* What {@link IFilter.getItems} answers.
|
|
179
|
+
*/
|
|
180
|
+
interface Items {
|
|
181
|
+
/**
|
|
182
|
+
* The distinct values, or the distinct texts under Display. The dates come first (the tree in {@link dates}), newest year first
|
|
183
|
+
* and ascending within a year, as Excel's date tree lists them; the rest follow, ascending
|
|
184
|
+
* by the workbook's comparison of their values. Values that show alike are one item. Blanks
|
|
185
|
+
* are not an item.
|
|
186
|
+
*/
|
|
187
|
+
items: readonly Item[];
|
|
188
|
+
/**
|
|
189
|
+
* The date tree over the leading items, one level per entry: year, month and day, then hour,
|
|
190
|
+
* minute and second when a date carries a time. Absent when the column shows no date.
|
|
191
|
+
*
|
|
192
|
+
* @remarks
|
|
193
|
+
* A date is a number shown under a date format; a time-only format is a number. Every level
|
|
194
|
+
* covers the same items, `0` to the last date, and a finer level's runs nest inside the
|
|
195
|
+
* coarser's. A node's checkbox is the state of its items; a checked node is written as its
|
|
196
|
+
* run's value, in {@link ICondition.InSetOption.dateGroups}.
|
|
197
|
+
*/
|
|
198
|
+
dates?: readonly DateLevel[];
|
|
199
|
+
/**
|
|
200
|
+
* Whether a listed row is blank: empty, or showing nothing (a `""` result, a string of only
|
|
201
|
+
* spaces). The same rows `includeBlanks` keeps.
|
|
202
|
+
*/
|
|
203
|
+
hasBlanks: boolean;
|
|
204
|
+
/** Whether at least one blank row passes the filters. */
|
|
205
|
+
blanksChecked: boolean;
|
|
206
|
+
/**
|
|
207
|
+
* Whether at least one blank row passes every other column's filter. Read under
|
|
208
|
+
* {@link GetItemsOptions.scope} `'column'` only.
|
|
209
|
+
*/
|
|
210
|
+
blanksPassOthers?: boolean;
|
|
211
|
+
/** Whether the column has more distinct values than `limit`; the rest are not listed. */
|
|
212
|
+
truncated: boolean;
|
|
213
|
+
/** The rows read. */
|
|
214
|
+
total: number;
|
|
215
|
+
/**
|
|
216
|
+
* The selector the list was read under, so a caller writes the items back under the same
|
|
217
|
+
* one: `{ selector, operator: 'inSet', param: { items } }`. A list read by value fed back as
|
|
218
|
+
* texts under Display would match nothing for a number.
|
|
219
|
+
*/
|
|
220
|
+
selector: string | null;
|
|
221
|
+
}
|
|
41
222
|
/**
|
|
42
223
|
* Interface indicating the ability to filter data.
|
|
43
224
|
*/
|
|
@@ -76,8 +257,10 @@ export declare namespace IFilter {
|
|
|
76
257
|
* ``` ts
|
|
77
258
|
* sheet.getRange('E:E').filter('>= 30');
|
|
78
259
|
* ```
|
|
260
|
+
*
|
|
261
|
+
* @returns Resolves once the rows are hidden.
|
|
79
262
|
*/
|
|
80
|
-
filter(condition?: ICondition.Input, options?: ITransaction.OperationOptions): this
|
|
263
|
+
filter(condition?: ICondition.Input, options?: ITransaction.OperationOptions): Promise<this>;
|
|
81
264
|
}
|
|
82
265
|
}
|
|
83
266
|
//# sourceMappingURL=IFilter.d.ts.map
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { AdvanceTable } from './AdvanceTable';
|
|
2
|
+
/**
|
|
3
|
+
* Makes the {@link AdvanceTable} for a face from one source: a shipped `.metrics.json`, a canvas,
|
|
4
|
+
* a font's bytes.
|
|
5
|
+
*
|
|
6
|
+
* @remarks
|
|
7
|
+
* A platform has several, tried in order; the first that answers wins. One build serves every size
|
|
8
|
+
* of the face, so a builder runs once per family, weight and style.
|
|
9
|
+
*/
|
|
10
|
+
export interface AdvanceBuilder {
|
|
11
|
+
/** The builder's name, for diagnostics. */
|
|
12
|
+
readonly name: string;
|
|
13
|
+
/**
|
|
14
|
+
* `'table'` when the advances were captured ahead of time (possibly from a metric-compatible
|
|
15
|
+
* twin), `'exact'` when they are read from the face itself as installed.
|
|
16
|
+
*/
|
|
17
|
+
readonly kind: 'table' | 'exact';
|
|
18
|
+
/**
|
|
19
|
+
* The table for `face`, or `null` when this builder has no source for it.
|
|
20
|
+
*
|
|
21
|
+
* @throws when a source exists but cannot be read as a table.
|
|
22
|
+
*/
|
|
23
|
+
build(face: AdvanceTable.Face): Promise<AdvanceTable | null>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=AdvanceBuilder.d.ts.map
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { IFont } from './IFont';
|
|
2
|
+
/**
|
|
3
|
+
* One face's advances and vertical metrics, per em: one table per family, weight and style that
|
|
4
|
+
* serves every size.
|
|
5
|
+
*
|
|
6
|
+
* @remarks
|
|
7
|
+
* The TypeScript twin of `AdvanceTable` in the `sheetxl-text` crate, with the same rules, so a
|
|
8
|
+
* table measures alike before the wasm loads and after it. Advances are per em
|
|
9
|
+
* (`advance / unitsPerEm` from a font, `advance / px` from a canvas). A character with no advance
|
|
10
|
+
* measures as a space when it is white space and as nothing otherwise.
|
|
11
|
+
*
|
|
12
|
+
* Vertical metrics follow GDI: the font is realized at a whole-pixel em (`round(px)`), and the
|
|
13
|
+
* OS/2 `winAscent` and `winDescent` are scaled to it and rounded.
|
|
14
|
+
*/
|
|
15
|
+
export declare class AdvanceTable {
|
|
16
|
+
/** The family the table measures, as a style names it (`Calibri`, not its twin `Carlito`). */
|
|
17
|
+
readonly family: string;
|
|
18
|
+
/** The CSS weight, 400 regular and 700 bold. */
|
|
19
|
+
readonly weight: number;
|
|
20
|
+
readonly italic: boolean;
|
|
21
|
+
private readonly _vertical;
|
|
22
|
+
private readonly _perEm;
|
|
23
|
+
constructor(face: AdvanceTable.Face, vertical: AdvanceTable.VerticalPerEm);
|
|
24
|
+
/**
|
|
25
|
+
* A table from a captured `.metrics.json` (format `sheetxl-font-metrics/1`).
|
|
26
|
+
*
|
|
27
|
+
* @throws when the format is not one this reads.
|
|
28
|
+
*/
|
|
29
|
+
static fromJSON(json: AdvanceTable.JSON): AdvanceTable;
|
|
30
|
+
/** The number of characters with an advance. */
|
|
31
|
+
get size(): number;
|
|
32
|
+
/** The advance of `codepoint` per em, or `undefined` when the table has none. */
|
|
33
|
+
advance(codepoint: number): number | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* Records advances per em by codepoint, replacing earlier values: how a builder that measures
|
|
36
|
+
* (a canvas) fills a table.
|
|
37
|
+
*/
|
|
38
|
+
set(entries: Iterable<readonly [codepoint: number, perEm: number]>): void;
|
|
39
|
+
/** The characters of `text` with no advance, each once, in first-seen order. */
|
|
40
|
+
missing(text: string): string[];
|
|
41
|
+
/**
|
|
42
|
+
* The advance width of `text` in px at `px` pixels per em: the advances summed, then the
|
|
43
|
+
* super/subscript scale, then `letterSpacing` between characters.
|
|
44
|
+
*/
|
|
45
|
+
width(text: string, px: number, options?: AdvanceTable.WidthOptions): number;
|
|
46
|
+
/** The face's whole-px vertical metrics at `px` pixels per em. */
|
|
47
|
+
metrics(px: number): IFont.Metrics;
|
|
48
|
+
/**
|
|
49
|
+
* The underline at `px`: its center's offset above the baseline (negative below) and its
|
|
50
|
+
* thickness, in px; `null` when the source did not record one.
|
|
51
|
+
*/
|
|
52
|
+
underline(px: number): AdvanceTable.LineRule | null;
|
|
53
|
+
/** The strikeout at `px`, as {@link underline}. */
|
|
54
|
+
strikeout(px: number): AdvanceTable.LineRule | null;
|
|
55
|
+
/** {@link width} and {@link metrics} together, the shape `TextWrapper` measures with. */
|
|
56
|
+
measure(text: string, px: number, options?: AdvanceTable.WidthOptions): IFont.ExtendedMetrics;
|
|
57
|
+
}
|
|
58
|
+
export declare namespace AdvanceTable {
|
|
59
|
+
/** The `format` of a `.metrics.json` this version reads. */
|
|
60
|
+
const FORMAT = "sheetxl-font-metrics/1";
|
|
61
|
+
/** Which face a table measures. */
|
|
62
|
+
interface Face {
|
|
63
|
+
family: string;
|
|
64
|
+
weight: number;
|
|
65
|
+
italic: boolean;
|
|
66
|
+
}
|
|
67
|
+
interface WidthOptions {
|
|
68
|
+
/** Px added between characters. */
|
|
69
|
+
letterSpacing?: number;
|
|
70
|
+
/** Measure as superscript or subscript text. */
|
|
71
|
+
superSub?: boolean;
|
|
72
|
+
}
|
|
73
|
+
/** A horizontal rule (underline, strikeout): offset above the baseline and thickness. */
|
|
74
|
+
interface LineRule {
|
|
75
|
+
readonly position: number;
|
|
76
|
+
readonly thickness: number;
|
|
77
|
+
}
|
|
78
|
+
/** Vertical metrics per em. */
|
|
79
|
+
interface VerticalPerEm {
|
|
80
|
+
/** OS/2 `winAscent` per em. */
|
|
81
|
+
ascent: number;
|
|
82
|
+
/** OS/2 `winDescent` per em, positive below the baseline. */
|
|
83
|
+
descent: number;
|
|
84
|
+
underline?: LineRule | null;
|
|
85
|
+
strikeout?: LineRule | null;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* A captured `.metrics.json`: the advances and vertical metrics of one face, in design units,
|
|
89
|
+
* with the font it was captured from.
|
|
90
|
+
*/
|
|
91
|
+
interface JSON {
|
|
92
|
+
format: typeof FORMAT;
|
|
93
|
+
family: string;
|
|
94
|
+
weight: number;
|
|
95
|
+
italic: boolean;
|
|
96
|
+
/** The font measured, when it is a metric-compatible twin of `family`, and its license. */
|
|
97
|
+
source?: {
|
|
98
|
+
family: string;
|
|
99
|
+
version?: string;
|
|
100
|
+
license?: string;
|
|
101
|
+
notice?: string;
|
|
102
|
+
};
|
|
103
|
+
unitsPerEm: number;
|
|
104
|
+
winAscent: number;
|
|
105
|
+
winDescent: number;
|
|
106
|
+
/** `[position, thickness]` in design units. */
|
|
107
|
+
underline?: [number, number];
|
|
108
|
+
/** `[position, thickness]` in design units. */
|
|
109
|
+
strikeout?: [number, number];
|
|
110
|
+
/** Runs of consecutive codepoints: `[first codepoint, advances in design units]`. */
|
|
111
|
+
advances: [number, number[]][];
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
//# sourceMappingURL=AdvanceTable.d.ts.map
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { IListener } from '../listener';
|
|
2
|
+
import { IFont } from './IFont';
|
|
3
|
+
import { IFontCollection } from './IFontCollection';
|
|
4
|
+
import { AdvanceBuilder } from './AdvanceBuilder';
|
|
5
|
+
/**
|
|
6
|
+
* {@link IFontCollection}: the resolved tables behind measuring, and the families offered for
|
|
7
|
+
* choosing.
|
|
8
|
+
*
|
|
9
|
+
* @remarks
|
|
10
|
+
* A table is built once per family, weight and style, by the first {@link AdvanceBuilder} with a
|
|
11
|
+
* source for it. A face with no table yet starts loading on the lookup that misses it and is
|
|
12
|
+
* answered meanwhile by a related family's table or a built-in one, the way a browser paints with
|
|
13
|
+
* a fallback until a web font arrives. Each load that settles is a collection change: cached
|
|
14
|
+
* answers are dropped and listeners told, so measurements can be taken again.
|
|
15
|
+
*/
|
|
16
|
+
export declare class FontCollection implements IFontCollection {
|
|
17
|
+
private static _shared;
|
|
18
|
+
/** {@inheritDoc IFontCollection.getShared} */
|
|
19
|
+
static getShared(): FontCollection;
|
|
20
|
+
private _builders;
|
|
21
|
+
private readonly _entries;
|
|
22
|
+
private readonly _resolutions;
|
|
23
|
+
private readonly _loading;
|
|
24
|
+
private _builtins;
|
|
25
|
+
private readonly _emitter;
|
|
26
|
+
private _fontList;
|
|
27
|
+
private readonly _fontsByFamily;
|
|
28
|
+
private readonly _bestMatches;
|
|
29
|
+
/**
|
|
30
|
+
* @param builders Where tables come from, tried in order.
|
|
31
|
+
*/
|
|
32
|
+
constructor(builders: readonly AdvanceBuilder[]);
|
|
33
|
+
/** {@inheritDoc IFontCollection.getByName} */
|
|
34
|
+
getByName(family: string, options?: IFontCollection.GetByNameOptions): IFontCollection.Resolution;
|
|
35
|
+
/** {@inheritDoc IFontCollection.load} */
|
|
36
|
+
load(faces: readonly (string | IFontCollection.FaceRequest)[]): Promise<void>;
|
|
37
|
+
/** {@inheritDoc IFontCollection.whenReady} */
|
|
38
|
+
whenReady(): Promise<void>;
|
|
39
|
+
/** {@inheritDoc IFontCollection.isLoading} */
|
|
40
|
+
isLoading(): boolean;
|
|
41
|
+
/** {@inheritDoc IFontCollection.setAdvanceBuilders} */
|
|
42
|
+
setAdvanceBuilders(builders: readonly AdvanceBuilder[]): void;
|
|
43
|
+
/** {@inheritDoc IFontCollection.getFontList} */
|
|
44
|
+
getFontList(): readonly IFontCollection.FontHandle[];
|
|
45
|
+
/** {@inheritDoc IFontCollection.setFontList} */
|
|
46
|
+
setFontList(fontList: IFont.IFontFace[] | string[] | null): void;
|
|
47
|
+
/** {@inheritDoc IFontCollection.findBestMatch} */
|
|
48
|
+
findBestMatch(fontName: string, options?: IFontCollection.FindBestMatchOptions): IFontCollection.FontHandle | null;
|
|
49
|
+
/** {@inheritDoc IListener.ISource.addListeners} */
|
|
50
|
+
addListeners(listeners: IFontCollection.IListeners, options?: IListener.Options): IListener.Remove;
|
|
51
|
+
get isIFontCollection(): true;
|
|
52
|
+
private _seedBuiltins;
|
|
53
|
+
private _resolve;
|
|
54
|
+
private _ensure;
|
|
55
|
+
private _changed;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=FontCollection.d.ts.map
|
|
@@ -152,9 +152,26 @@ export declare namespace IFont {
|
|
|
152
152
|
readonly strikePosition?: number;
|
|
153
153
|
readonly strikeThickness?: number;
|
|
154
154
|
readonly italicAngle?: number;
|
|
155
|
+
/**
|
|
156
|
+
* The line pitch in px — what a line of this font advances by, and the height of a row sized
|
|
157
|
+
* to it: `ascent + descent + 2` (Excel's standard row height for the font; the 2 is the
|
|
158
|
+
* gridline gutter above and below the font box). Includes {@link lineGap}.
|
|
159
|
+
*/
|
|
155
160
|
readonly lineHeight: number;
|
|
161
|
+
/**
|
|
162
|
+
* The baseline's offset from the top of a {@link lineHeight} box, in px: where a renderer that
|
|
163
|
+
* paints the line as a box (a CSS line box) puts the alphabetic baseline.
|
|
164
|
+
*/
|
|
156
165
|
readonly baseline: number;
|
|
157
166
|
readonly lineGap: number;
|
|
167
|
+
/**
|
|
168
|
+
* The font's ascent above the baseline in whole px at the measured size — GDI's `tmAscent`,
|
|
169
|
+
* which is what Excel lays text out with (the OS/2 `winAscent`, hinted where the font has a
|
|
170
|
+
* VDMX table).
|
|
171
|
+
*/
|
|
172
|
+
readonly ascent: number;
|
|
173
|
+
/** The font's descent below the baseline in whole px — GDI's `tmDescent` (OS/2 `winDescent`). */
|
|
174
|
+
readonly descent: number;
|
|
158
175
|
}
|
|
159
176
|
interface MetricOptions {
|
|
160
177
|
isBold?: boolean;
|
|
@@ -1,31 +1,129 @@
|
|
|
1
|
+
import { IListener } from '../listener';
|
|
1
2
|
import { IFont } from './IFont';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
3
|
+
import { AdvanceBuilder } from './AdvanceBuilder';
|
|
4
|
+
import { AdvanceTable } from './AdvanceTable';
|
|
5
|
+
/**
|
|
6
|
+
* The fonts text is measured with: one table per family, weight and style, shared by every
|
|
7
|
+
* workbook, the way a browser's `document.fonts` is shared by a page.
|
|
8
|
+
*
|
|
9
|
+
* @remarks
|
|
10
|
+
* Measuring never waits. {@link getByName} answers at once with the closest table available and a
|
|
11
|
+
* {@link IFontCollection.Resolution.status | status} that says whether a closer one is loading;
|
|
12
|
+
* {@link whenReady} waits for those loads, and {@link IFontCollection.Events.onCollectionChange}
|
|
13
|
+
* fires as each settles. A workbook reaches it through `IWorkbook.getFonts()`.
|
|
14
|
+
*/
|
|
15
|
+
export interface IFontCollection extends IListener.ISource<IFontCollection, IFontCollection.Events> {
|
|
16
|
+
/**
|
|
17
|
+
* The table to measure a face with, now.
|
|
18
|
+
*
|
|
19
|
+
* @param family The family as a style names it, or a CSS generic name (`sans-serif`).
|
|
20
|
+
* @param options {@link IFontCollection.GetByNameOptions}
|
|
21
|
+
*
|
|
22
|
+
* @remarks
|
|
23
|
+
* Never waits and never fails. A face with no table yet starts loading and is answered with the
|
|
24
|
+
* closest table available, its `status` `'loading'`. The answer is cached until the collection
|
|
25
|
+
* changes, so asking again is cheap.
|
|
26
|
+
*/
|
|
27
|
+
getByName(family: string, options?: IFontCollection.GetByNameOptions): IFontCollection.Resolution;
|
|
10
28
|
/**
|
|
11
|
-
*
|
|
29
|
+
* Starts loading these faces ahead of their first use.
|
|
30
|
+
*
|
|
31
|
+
* @returns Resolves when each has settled, with a table or without one.
|
|
12
32
|
*/
|
|
13
|
-
|
|
33
|
+
load(faces: readonly (string | IFontCollection.FaceRequest)[]): Promise<void>;
|
|
34
|
+
/** Resolves when no face is loading, including loads started while it waited. */
|
|
35
|
+
whenReady(): Promise<void>;
|
|
36
|
+
/** Whether a face is loading. */
|
|
37
|
+
isLoading(): boolean;
|
|
14
38
|
/**
|
|
15
|
-
*
|
|
39
|
+
* Replaces where tables come from, tried in order, and forgets every table built before; the
|
|
40
|
+
* built-in Calibri and Arial stay.
|
|
41
|
+
*
|
|
42
|
+
* @remarks
|
|
43
|
+
* For hosts that capture or ship their own tables, and for tests that pin measurement to the
|
|
44
|
+
* shipped tables.
|
|
16
45
|
*/
|
|
17
|
-
|
|
46
|
+
setAdvanceBuilders(builders: readonly AdvanceBuilder[]): void;
|
|
47
|
+
/** The families offered for choosing, as a font picker lists them. */
|
|
48
|
+
getFontList(): readonly IFontCollection.FontHandle[];
|
|
49
|
+
/** Replaces the families offered for choosing; `null` restores the default list. */
|
|
50
|
+
setFontList(fontList: IFont.IFontFace[] | string[] | null): void;
|
|
18
51
|
/**
|
|
19
|
-
*
|
|
52
|
+
* The offered family that matches `fontName`, else the first of `options.fallbacks` that does
|
|
53
|
+
* (a CSS generic name matches a family of its class), else `null`.
|
|
20
54
|
*/
|
|
21
|
-
|
|
22
|
-
|
|
55
|
+
findBestMatch(fontName: string, options?: IFontCollection.FindBestMatchOptions): IFontCollection.FontHandle | null;
|
|
56
|
+
/** For runtime type checking. */
|
|
57
|
+
readonly isIFontCollection: true;
|
|
58
|
+
}
|
|
59
|
+
export declare namespace IFontCollection {
|
|
60
|
+
/**
|
|
61
|
+
* The collection every workbook measures with, the one `IWorkbook.getFonts()` returns: for
|
|
62
|
+
* code with no workbook at hand.
|
|
63
|
+
*/
|
|
64
|
+
function getShared(): IFontCollection;
|
|
65
|
+
/** How a {@link Resolution}'s table relates to the face that was asked for. */
|
|
66
|
+
const ResolutionKind: {
|
|
67
|
+
/** The family's own captured table (possibly measured from a metric-compatible twin). */
|
|
68
|
+
readonly Table: "table";
|
|
69
|
+
/** Read from the face itself as installed. */
|
|
70
|
+
readonly Exact: "exact";
|
|
71
|
+
/** A related family's table: a twin, a near relation, or one of the class a generic name names. */
|
|
72
|
+
readonly Classified: "classified";
|
|
73
|
+
/** A built-in table, because nothing closer is available yet or at all. */
|
|
74
|
+
readonly Generic: "generic";
|
|
75
|
+
};
|
|
76
|
+
type ResolutionKind = typeof ResolutionKind[keyof typeof ResolutionKind];
|
|
77
|
+
/** Whether a {@link Resolution} can still change, as `FontFace.status` in a browser. */
|
|
78
|
+
const FontStatus: {
|
|
79
|
+
/** A closer table is loading; the answer will change when it arrives. */
|
|
80
|
+
readonly Loading: "loading";
|
|
81
|
+
/** Settled: this is the best table there will be. */
|
|
82
|
+
readonly Loaded: "loaded";
|
|
83
|
+
/** Loading the face failed; the answer is a fallback and will not change. */
|
|
84
|
+
readonly Error: "error";
|
|
85
|
+
};
|
|
86
|
+
type FontStatus = typeof FontStatus[keyof typeof FontStatus];
|
|
87
|
+
/** The table a face is measured with, and how good an answer it is. */
|
|
88
|
+
interface Resolution {
|
|
89
|
+
/** Measures and wraps text in the face. */
|
|
90
|
+
readonly table: AdvanceTable;
|
|
91
|
+
readonly kind: ResolutionKind;
|
|
92
|
+
readonly status: FontStatus;
|
|
93
|
+
/** The face that was asked for. */
|
|
94
|
+
readonly requested: AdvanceTable.Face;
|
|
95
|
+
}
|
|
96
|
+
interface GetByNameOptions {
|
|
97
|
+
/** Defaults to `false`. */
|
|
98
|
+
bold?: boolean;
|
|
99
|
+
/** Defaults to `false`. */
|
|
100
|
+
italic?: boolean;
|
|
101
|
+
}
|
|
102
|
+
/** A face to {@link IFontCollection.load | load}. */
|
|
103
|
+
interface FaceRequest extends GetByNameOptions {
|
|
104
|
+
family: string;
|
|
105
|
+
}
|
|
106
|
+
interface FontHandle {
|
|
107
|
+
/** `null` is used as a cached 'no match' sentinel (see {@link IFontCollection.findBestMatch}). */
|
|
108
|
+
fontRef: IFont.IFontFace | null;
|
|
109
|
+
loaded: boolean;
|
|
110
|
+
}
|
|
111
|
+
interface FindBestMatchOptions {
|
|
112
|
+
/** Defaults to `false`. */
|
|
113
|
+
bold?: boolean;
|
|
114
|
+
/** Defaults to `false`. */
|
|
115
|
+
italic?: boolean;
|
|
116
|
+
/** Font names or generic family names to try after `fontName`. */
|
|
117
|
+
fallbacks?: string[];
|
|
118
|
+
panose?: string;
|
|
119
|
+
}
|
|
120
|
+
interface Events {
|
|
121
|
+
/**
|
|
122
|
+
* A load settled, with a table or without one: measurements taken before may differ now.
|
|
123
|
+
*/
|
|
124
|
+
onCollectionChange?(source: IFontCollection): void;
|
|
125
|
+
}
|
|
126
|
+
interface IListeners extends IListener.Callbacks<IFontCollection, IFontCollection.Events> {
|
|
127
|
+
}
|
|
23
128
|
}
|
|
24
|
-
/**
|
|
25
|
-
* Tries to find a font that match the fontName exactly. If this is not found then it will use the fallback
|
|
26
|
-
* options if provided. If there is no font and no font fallback it will return null.
|
|
27
|
-
* @param fontName The font name to find
|
|
28
|
-
* @returns The FontHandle
|
|
29
|
-
*/
|
|
30
|
-
export declare function findBestMatch(fontName: string, options?: FindBestMatchOptions): FontHandle | null;
|
|
31
129
|
//# sourceMappingURL=IFontCollection.d.ts.map
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { AdvanceBuilder } from './AdvanceBuilder';
|
|
2
|
+
import { AdvanceTable } from './AdvanceTable';
|
|
3
|
+
/**
|
|
4
|
+
* The resource path of a face's table: `calibri-bold-italic.metrics.json`.
|
|
5
|
+
*
|
|
6
|
+
* @remarks
|
|
7
|
+
* The family is lowercased and its spaces become hyphens; a weight of 600 or more reads as bold,
|
|
8
|
+
* the only weight spreadsheets name.
|
|
9
|
+
*/
|
|
10
|
+
export declare function metricsFileName(face: AdvanceTable.Face): string;
|
|
11
|
+
/**
|
|
12
|
+
* Builds tables from `.metrics.json` files in the `fonts` resource kind: the SDK's shipped tables,
|
|
13
|
+
* and any a user captured into a resource root, which take precedence.
|
|
14
|
+
*/
|
|
15
|
+
export declare class TableFileAdvanceBuilder implements AdvanceBuilder {
|
|
16
|
+
readonly name = "table-file";
|
|
17
|
+
readonly kind = "table";
|
|
18
|
+
private readonly _base;
|
|
19
|
+
private readonly _pending;
|
|
20
|
+
/**
|
|
21
|
+
* @param base A base to search after the user resource roots, or `null` for none (the default).
|
|
22
|
+
*/
|
|
23
|
+
constructor(base?: string | null);
|
|
24
|
+
build(face: AdvanceTable.Face): Promise<AdvanceTable | null>;
|
|
25
|
+
private _load;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=TableFileAdvanceBuilder.d.ts.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AdvanceTable } from './AdvanceTable';
|
|
2
|
+
/**
|
|
3
|
+
* The tables measuring works with before anything loads: Calibri (Excel's default before Aptos, and
|
|
4
|
+
* Aptos's stand-in) and Arial (the generic sans-serif), regular and bold. About 15 KB gzip.
|
|
5
|
+
*
|
|
6
|
+
* Imported as text (`?raw`, declared in `global.d.ts`) and parsed when the shared collection is
|
|
7
|
+
* first made.
|
|
8
|
+
*/
|
|
9
|
+
export declare function builtinFontTables(): AdvanceTable[];
|
|
10
|
+
//# sourceMappingURL=_BuiltinFontTables.d.ts.map
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
export *
|
|
1
|
+
export * from './IFontCollection';
|
|
2
2
|
export * from './IFont';
|
|
3
3
|
export * from './Font';
|
|
4
|
+
export * from './AdvanceTable';
|
|
5
|
+
export { type AdvanceBuilder } from './AdvanceBuilder';
|
|
6
|
+
export { TableFileAdvanceBuilder } from './TableFileAdvanceBuilder';
|
|
4
7
|
export * as FontUtils from './FontUtils';
|
|
5
8
|
//# sourceMappingURL=index.d.ts.map
|