@sheetxl/sdk 0.8.0-beta.10 → 0.8.0-beta.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/browser/esm/B7aUIvgUjncMMD_i.mjs +394 -0
- package/browser/esm/{Cgd5BnM3hg9RyUel.mjs → BFagR2JeWs74iAG3.mjs} +1 -1
- package/browser/esm/BGOFfpxr2jPIdqmV.mjs +40 -0
- package/browser/esm/{CdLZWVcH8cncBUPJ.mjs → BLoUBId2xZpXAK_H.mjs} +110 -261
- package/browser/esm/BMyDRQ716j79h_bH.mjs +86 -0
- package/browser/esm/{o8MFgcVXns987D6_.mjs → BVDiOXGMc5_FMGfy.mjs} +6 -6
- package/browser/esm/{BzLfNyc6OOShIErH.mjs → BjkCiv5Jz6WYKZeu.mjs} +2 -2
- package/browser/esm/{De175LygU7ot4nQm.mjs → BkBhLS0l6z8sxI6D.mjs} +2 -2
- package/browser/esm/{Y79I7Sm8kjaYexhf.mjs → BnG31I6Oj_HEtSPS.mjs} +1 -1
- package/browser/esm/BoV6zPBnfqCBCqZ7.mjs +7729 -0
- package/browser/esm/{CYyv6uGjo10ig5FP.mjs → BpgskG1Er_lGQ_yS.mjs} +1 -1
- package/browser/esm/{C9B0djuUarfNdoj0.mjs → BtvLTTfSBdAKplVG.mjs} +1 -1
- package/browser/esm/{zqJOaweiXE9D8RY1.mjs → C16ycKja6zG0crV_.mjs} +27687 -38788
- package/browser/esm/C2VbEI_XVAoseAwa.mjs +1552 -0
- package/browser/esm/{Btg43M1Bf-ENDreu.mjs → C4MqfLn9Dm-l3OIk.mjs} +1 -1
- package/browser/esm/C5E6zSGAALWf61n4.mjs +199 -0
- package/browser/esm/{CjsUGJEQSbGjnH6R.mjs → CHU6iu_WGlm7fLET.mjs} +1 -1
- package/browser/esm/{DhKkrCVASZ6Isvz6.mjs → CQYjO777cmAznUzK.mjs} +1 -1
- package/browser/esm/{D4uVlrG0xEFctsSM.mjs → CU3DmJ-YnVVrC1_k.mjs} +285 -67
- package/browser/esm/{ClB5ix51roQOpZEr.mjs → CV5EGEjG5_-CPpP0.mjs} +2877 -2067
- package/browser/esm/{CSx9ed1JOs7K5BXO.mjs → CaB7J-xgfKO2uAkG.mjs} +2 -2
- package/browser/esm/CkxWugaJFjDGZNZ-.mjs +12 -0
- package/browser/esm/{CZ5oa92wZEAXebgk.mjs → ClPfI4lODvCece29.mjs} +32 -22
- package/browser/esm/ClbvFbFzFzXLBKNN.mjs +193 -0
- package/browser/esm/{Cqr3knDsBvoVZ6MN.mjs → Ctjb0SsxV4K4MMqG.mjs} +2 -2
- package/browser/esm/{Bk7xxbdDpa7-sIwd.mjs → D5np__Jb1euAyaLw.mjs} +2 -2
- package/browser/esm/{Di58Ji1n--3Mgc_2.mjs → DEiPS3Dr-s4fPbVZ.mjs} +1 -1
- package/browser/esm/DLLE0FZNsKxbBzRn.mjs +128 -0
- package/browser/esm/{BqskM7wA8oPfFQue.mjs → DWNzqw7DUKwoxjri.mjs} +2 -2
- package/browser/esm/{BEAY9XgKNx-bakXW.mjs → Dlmig06rIo7cInRk.mjs} +1 -1
- package/browser/esm/DvAaxH6z_tGvrRzl.mjs +5132 -0
- package/browser/esm/Dyq_ivuHvlXLwPCl.mjs +12831 -0
- package/browser/esm/{Dtoyt8q5RyGAlxCp.mjs → PcHFjNzQsE54POri.mjs} +1 -1
- package/browser/esm/S2dNNx1a5ydRnARM.mjs +367 -0
- package/browser/esm/f1IoRb7tEb0QmCSt.mjs +110 -0
- package/browser/esm/gssVX_FH1XFN-twD.mjs +210 -0
- package/browser/esm/index.mjs +999 -850
- package/browser/esm/nvU0ClAbf0g94YBK.mjs +1695 -0
- package/browser/esm/{BcHmrKHwMMOlzc9_.mjs → zlLuW405RSguy4Kn.mjs} +34 -34
- package/licenses/dependencies.txt +75 -75
- package/node/esm/{CnSQ7MTXAUAyBOoS.mjs → 2Kihw_-5lVTEnwMa.mjs} +285 -64
- package/node/esm/857CIBgQgGpnqrXk.mjs +199 -0
- package/node/esm/B084DssTcdBheTp_.mjs +7966 -0
- package/node/esm/B21JjOLghRoDOrkx.mjs +134 -0
- package/node/esm/{CImNvdz1iP-lUlro.mjs → BIRq1kT7lLRzns9t.mjs} +181 -181
- package/node/esm/{CD9wbvufChVYYkrI.mjs → BIwObuhTJYf0jpUa.mjs} +2 -2
- package/node/esm/Bbf1Pm9Gk7YpLTvg.mjs +12 -0
- package/node/esm/{B6D7sSetrcOWLsKj.mjs → BqiexuA89caYnAPz.mjs} +1 -1
- package/node/esm/{BH1v-E4Ro3bR7Znw.mjs → BrCKGFRsX_ezFJ4B.mjs} +151 -302
- package/node/esm/CCN5vD410obwdz38.mjs +405 -0
- package/node/esm/{Bh4dv6tMjXX3X4nI.mjs → CDHdgJXH2vS71WMc.mjs} +1 -1
- package/node/esm/{DCplLG93GfTs1vNw.mjs → CGp6VZL-gZa9Uezx.mjs} +1 -1
- package/node/esm/{B9ljpEIZg6wOTzRE.mjs → CNCNJNg890KdgkWh.mjs} +1 -1
- package/node/esm/{Bqd62L8KFgdS0Vou.mjs → CZICGK_ss0HoGHCP.mjs} +2 -2
- package/node/esm/{D7MfcID2Wf6l6VpC.mjs → CZiqiay42tFTrLI4.mjs} +1 -1
- package/node/esm/{Bsx9uijd4X_SKV3L.mjs → CdJHUJSBRHZoryPe.mjs} +41 -41
- package/node/esm/Ct3h15sCus4Tgt6M.mjs +1762 -0
- package/node/esm/CwePQwTILHHjGDkZ.mjs +1033 -0
- package/node/esm/{CUUoseJmFsCf82bb.mjs → CzXT00vrQa1_gvW9.mjs} +1 -1
- package/node/esm/{C6ZXsNyLXI6zA63X.mjs → D1TKBVmoKGAXf37B.mjs} +9 -9
- package/node/esm/{BN9j8V9gCExMjVtJ.mjs → D2KBymQJd1XhpeQD.mjs} +1 -1
- package/node/esm/{MiU4rDOiocmJ-9Ry.mjs → D6e2z7eZpxOJXHc7.mjs} +1 -1
- package/node/esm/{BtuY37FumvLE7EBo.mjs → D8zEN-6ZdDqDvTxM.mjs} +156 -146
- package/node/esm/DNRhGK-8Tr9xcRyc.mjs +8320 -0
- package/node/esm/DOU54VsOjG-m-NyQ.mjs +210 -0
- package/node/esm/DUTskXCXref-IJnI.mjs +133 -0
- package/node/esm/{DMD12JUh7HJw2-jl.mjs → D_t5AUxSm7_icjzq.mjs} +1 -1
- package/node/esm/Db0v7zXNnyjBIjjI.mjs +372 -0
- package/node/esm/{CUQi5ZtMO02nhG0W.mjs → De2IONBxQhz-Qbyh.mjs} +1 -1
- package/node/esm/Df1bL6VFvrqIdSLB.mjs +40 -0
- package/node/esm/DkwIPzKc3UwdUIfM.mjs +86 -0
- package/node/esm/DrTZbfemSLq2mseG.mjs +111 -0
- package/node/esm/OVfaSb506tNSIvbv.mjs +57107 -0
- package/node/esm/{DefYISWfdZJFx57m.mjs → cGwrLA1RCE-WhJ7w.mjs} +1 -1
- package/node/esm/index.mjs +2657 -65664
- package/node/esm/mFiBSM7XgBHV9AY7.mjs +13010 -0
- package/node/esm/{DdFgXl-Ux2cMBTs_.mjs → yavzZOiZW_EjG9lE.mjs} +1 -1
- package/package.json +6 -7
- package/resources/contents.json +120 -0
- package/resources/fonts/arial-bold-italic.hinted.json +125 -0
- package/resources/fonts/arial-bold-italic.metrics.json +13 -13
- package/resources/fonts/arial-bold-italic.rows.json +9 -0
- package/resources/fonts/arial-bold.hinted.json +125 -0
- package/resources/fonts/arial-bold.metrics.json +12 -12
- package/resources/fonts/arial-bold.rows.json +9 -0
- package/resources/fonts/arial-italic.hinted.json +125 -0
- package/resources/fonts/arial-italic.metrics.json +13 -13
- package/resources/fonts/arial-italic.rows.json +9 -0
- package/resources/fonts/arial-regular.hinted.json +125 -0
- package/resources/fonts/arial-regular.metrics.json +12 -12
- package/resources/fonts/arial-regular.rows.json +9 -0
- package/resources/fonts/calibri-bold-italic.hinted.json +122 -0
- package/resources/fonts/calibri-bold-italic.metrics.json +2 -2
- package/resources/fonts/calibri-bold-italic.rows.json +9 -0
- package/resources/fonts/calibri-bold.hinted.json +122 -0
- package/resources/fonts/calibri-bold.metrics.json +1 -1
- package/resources/fonts/calibri-bold.rows.json +9 -0
- package/resources/fonts/calibri-italic.hinted.json +121 -0
- package/resources/fonts/calibri-italic.metrics.json +2 -2
- package/resources/fonts/calibri-italic.rows.json +9 -0
- package/resources/fonts/calibri-regular.hinted.json +121 -0
- package/resources/fonts/calibri-regular.metrics.json +1 -1
- package/resources/fonts/calibri-regular.rows.json +9 -0
- package/resources/fonts/cambria-bold-italic.hinted.json +105 -0
- package/resources/fonts/cambria-bold-italic.metrics.json +26 -26
- package/resources/fonts/cambria-bold-italic.rows.json +9 -0
- package/resources/fonts/cambria-bold.hinted.json +108 -0
- package/resources/fonts/cambria-bold.metrics.json +19 -19
- package/resources/fonts/cambria-bold.rows.json +9 -0
- package/resources/fonts/cambria-italic.hinted.json +102 -0
- package/resources/fonts/cambria-italic.metrics.json +23 -23
- package/resources/fonts/cambria-italic.rows.json +9 -0
- package/resources/fonts/cambria-regular.hinted.json +110 -0
- package/resources/fonts/cambria-regular.metrics.json +18 -18
- package/resources/fonts/cambria-regular.rows.json +9 -0
- package/resources/fonts/contents.json +280 -0
- package/resources/fonts/courier-new-bold-italic.hinted.json +11 -0
- package/resources/fonts/courier-new-bold-italic.metrics.json +12 -12
- package/resources/fonts/courier-new-bold-italic.rows.json +9 -0
- package/resources/fonts/courier-new-bold.hinted.json +11 -0
- package/resources/fonts/courier-new-bold.metrics.json +12 -12
- package/resources/fonts/courier-new-bold.rows.json +9 -0
- package/resources/fonts/courier-new-italic.hinted.json +11 -0
- package/resources/fonts/courier-new-italic.metrics.json +12 -12
- package/resources/fonts/courier-new-italic.rows.json +9 -0
- package/resources/fonts/courier-new-regular.hinted.json +11 -0
- package/resources/fonts/courier-new-regular.metrics.json +12 -12
- package/resources/fonts/courier-new-regular.rows.json +9 -0
- package/resources/fonts/times-new-roman-bold-italic.hinted.json +125 -0
- package/resources/fonts/times-new-roman-bold-italic.metrics.json +15 -15
- package/resources/fonts/times-new-roman-bold-italic.rows.json +9 -0
- package/resources/fonts/times-new-roman-bold.hinted.json +125 -0
- package/resources/fonts/times-new-roman-bold.metrics.json +12 -12
- package/resources/fonts/times-new-roman-bold.rows.json +9 -0
- package/resources/fonts/times-new-roman-italic.hinted.json +125 -0
- package/resources/fonts/times-new-roman-italic.metrics.json +16 -16
- package/resources/fonts/times-new-roman-italic.rows.json +9 -0
- package/resources/fonts/times-new-roman-regular.hinted.json +125 -0
- package/resources/fonts/times-new-roman-regular.metrics.json +16 -16
- package/resources/fonts/times-new-roman-regular.rows.json +9 -0
- package/resources/locales/de/model.msg.json +87 -9
- package/resources/locales/en/model.msg.json +88 -10
- package/types/scripting-api.json +10636 -8021
- package/types/scripting-enums.json +181 -43
- package/types/scripting.d.ts +15886 -8459
- package/types/src/.generated/wasm/fonts.d.ts +161 -0
- package/types/src/.generated/wasm/fonts_bg.inline.d.ts +3 -0
- package/types/src/.generated/wasm/sdk.d.ts +122 -0
- package/types/src/.generated/wasm/sdk_bg.inline.d.ts +3 -0
- package/types/src/address/AddressUtils.d.ts +10 -1
- package/types/src/address/_StructuredAddress.d.ts +58 -0
- package/types/src/border/IBorders.d.ts +16 -0
- package/types/src/calculation/Calculation.d.ts +93 -363
- package/types/src/calculation/FormulaLiterals.d.ts +2 -1
- package/types/src/calculation/FormulaText.d.ts +18 -2
- package/types/src/calculation/ICalculation.d.ts +37 -9
- package/types/src/calculation/INamedFormulasCollection.d.ts +4 -0
- package/types/src/calculation/NamedFormulaCollection.d.ts +190 -15
- package/types/src/calculation/_FormulaToolkit.d.ts +9 -0
- package/types/src/calculation/_TableExtent.d.ts +60 -0
- package/types/src/calculation/compiler/CompilerUtils.d.ts +17 -0
- package/types/src/calculation/compiler/ParserUtils.d.ts +16 -0
- package/types/src/calculation/compiler/Types.d.ts +1 -1
- package/types/src/calculation/engine/CalcBackend.d.ts +855 -0
- package/types/src/calculation/engine/index.d.ts +10 -0
- package/types/src/calculation/executor/CalcExecutor.d.ts +21 -2
- package/types/src/calculation/executor/CalcExecutorUtils.d.ts +6 -0
- package/types/src/calculation/formula/Formula.d.ts +9 -0
- package/types/src/calculation/formula/FormulaBlock.d.ts +6 -0
- package/types/src/calculation/formula/IFormulaBlock.d.ts +16 -0
- package/types/src/calculation/formula/LambdaValue.d.ts +5 -3
- package/types/src/calculation/functions/FunctionDeclarations.d.ts +5 -1
- package/types/src/calculation/functions/expandDeclaration.d.ts +15 -0
- package/types/src/calculation/functions/initializeFunctions.d.ts +0 -12
- package/types/src/calculation/grid/CalcGrid.d.ts +40 -4
- package/types/src/calculation/grid/CalcGridBackend.d.ts +30 -0
- package/types/src/calculation/grid/CalcGridProxy.d.ts +2 -0
- package/types/src/calculation/grid/CalcGridUtils.d.ts +8 -1
- package/types/src/calculation/grid/FormulaHost.d.ts +51 -6
- package/types/src/calculation/grid/ICalcGrid.d.ts +35 -6
- package/types/src/calculation/grid/_CalcRequest.d.ts +11 -1
- package/types/src/calculation/grid/_CellValueRun.d.ts +21 -0
- package/types/src/calculation/spatial/FormulaSpatialValue.d.ts +27 -2
- package/types/src/calculation/state/CalcScope.d.ts +15 -6
- package/types/src/calculation/state/CalcState.d.ts +10 -0
- package/types/src/calculation/state/CalculationContext.d.ts +2 -2
- package/types/src/calculation/state/IContextContainer.d.ts +12 -0
- package/types/src/calculation/toolkit/FormulaLiteralReader.d.ts +4 -0
- package/types/src/calculation/toolkit/FormulaTextParser.d.ts +10 -0
- package/types/src/calculation/toolkit/FunctionDeclarationTable.d.ts +4 -0
- package/types/src/calculation/toolkit/index.d.ts +12 -0
- package/types/src/cell/ICell.d.ts +256 -7
- package/types/src/cell/ICellHeader.d.ts +7 -6
- package/types/src/cell/ICellProtection.d.ts +1 -1
- package/types/src/cellRange/ICellHeaderRange.d.ts +6 -9
- package/types/src/cellRange/ICellHeaderRanges.d.ts +5 -0
- package/types/src/cellRange/ICellRange.d.ts +322 -55
- package/types/src/cellRange/ICellRanges.d.ts +8 -3
- package/types/src/chart/Chart.d.ts +217 -15
- package/types/src/chart/ChartCollection.d.ts +7 -2
- package/types/src/chart/IChart.d.ts +1921 -35
- package/types/src/chart/IChartCollection.d.ts +27 -2
- package/types/src/chart/_ChartParts.d.ts +1066 -0
- package/types/src/chart/_ChartSource.d.ts +47 -0
- package/types/src/chart/createChart.d.ts +26 -0
- package/types/src/chart/index.d.ts +4 -0
- package/types/src/chart/kinds/ChartKind.d.ts +252 -0
- package/types/src/chart/kinds/_Area.d.ts +3 -0
- package/types/src/chart/kinds/_Bar.d.ts +4 -0
- package/types/src/chart/kinds/_BoxWhisker.d.ts +4 -0
- package/types/src/chart/kinds/_Bubble.d.ts +3 -0
- package/types/src/chart/kinds/_Funnel.d.ts +4 -0
- package/types/src/chart/kinds/_Hierarchy.d.ts +31 -0
- package/types/src/chart/kinds/_Histogram.d.ts +4 -0
- package/types/src/chart/kinds/_HitKinds.d.ts +23 -0
- package/types/src/chart/kinds/_Line.d.ts +4 -0
- package/types/src/chart/kinds/_OfPie.d.ts +4 -0
- package/types/src/chart/kinds/_Pie.d.ts +4 -0
- package/types/src/chart/kinds/_Placeholder.d.ts +6 -0
- package/types/src/chart/kinds/_Radar.d.ts +4 -0
- package/types/src/chart/kinds/_Scatter.d.ts +8 -0
- package/types/src/chart/kinds/_Sunburst.d.ts +4 -0
- package/types/src/chart/kinds/_Surface.d.ts +4 -0
- package/types/src/chart/kinds/_Treemap.d.ts +4 -0
- package/types/src/chart/kinds/_Waterfall.d.ts +18 -0
- package/types/src/chart/kinds/_builtIns.d.ts +11 -0
- package/types/src/chart/layout/ChartLayout.d.ts +825 -0
- package/types/src/chart/layout/TextMeasurer.d.ts +38 -0
- package/types/src/chart/layout/_HitGeometry.d.ts +50 -0
- package/types/src/chart/layout/_HitTest.d.ts +36 -0
- package/types/src/chart/layout/_Layout.d.ts +25 -0
- package/types/src/chart/layout/_LayoutUtils.d.ts +97 -0
- package/types/src/chart/math/BoxStats.d.ts +35 -0
- package/types/src/chart/math/DateUnitCalcs.d.ts +80 -0
- package/types/src/chart/math/DisplayUnits.d.ts +53 -0
- package/types/src/chart/math/Histogram.d.ts +48 -0
- package/types/src/chart/math/OrdUnitCalcs.d.ts +166 -0
- package/types/src/chart/math/Treemap.d.ts +28 -0
- package/types/src/chart/math/Trendlines.d.ts +71 -0
- package/types/src/chart/math/UnitCalcs.d.ts +98 -0
- package/types/src/chart/model/ChartModel.d.ts +681 -0
- package/types/src/chart/model/_ChartType.d.ts +14 -0
- package/types/src/chart/model/_Edits.d.ts +489 -0
- package/types/src/chart/model/_Grouping.d.ts +83 -0
- package/types/src/chart/model/_Inference.d.ts +52 -0
- package/types/src/chart/model/_ModelFacts.d.ts +112 -0
- package/types/src/chart/model/_NewChart.d.ts +208 -0
- package/types/src/chart/model/_OfPie.d.ts +18 -0
- package/types/src/chart/resolve/_LegacyStyles.d.ts +48 -0
- package/types/src/chart/resolve/_Resolve.d.ts +51 -0
- package/types/src/chart/resolve/_ResolvedChart.d.ts +444 -0
- package/types/src/collections/RTree.d.ts +116 -36
- package/types/src/collections/SparseGrid.d.ts +6 -3
- package/types/src/collections/SpatialMap.d.ts +2 -8
- package/types/src/collections/SpatialMap3D.d.ts +2 -0
- package/types/src/collections/index.d.ts +1 -1
- package/types/src/comment/Comment.d.ts +32 -9
- package/types/src/comment/IComment.d.ts +41 -4
- package/types/src/comment/_NoteBox.d.ts +19 -2
- package/types/src/condition/AnchoredConditional.d.ts +28 -2
- package/types/src/condition/ICondition.d.ts +3 -2
- package/types/src/conditionalFormat/ConditionalFormat.d.ts +9 -3
- package/types/src/conditionalFormat/IConditionalFormat.d.ts +4 -3
- package/types/src/dataTable/DataTable.d.ts +67 -0
- package/types/src/dataTable/DataTableCollection.d.ts +19 -0
- package/types/src/dataTable/IDataTable.d.ts +99 -0
- package/types/src/dataTable/IDataTableCollection.d.ts +18 -0
- package/types/src/dataTable/index.d.ts +6 -0
- package/types/src/dataValidation/DataValidation.d.ts +1 -1
- package/types/src/dataValidation/DataValidationCollection.d.ts +4 -1
- package/types/src/dataValidation/IDataValidation.d.ts +1 -1
- package/types/src/dataValidation/IDataValidationCollection.d.ts +24 -0
- package/types/src/documentProperties/DocumentProperties.d.ts +66 -0
- package/types/src/documentProperties/ICustomProperty.d.ts +69 -0
- package/types/src/documentProperties/IDocumentProperties.d.ts +110 -0
- package/types/src/documentProperties/index.d.ts +3 -0
- package/types/src/externalBook/IExternalBook.d.ts +1 -1
- package/types/src/fill/IFill.d.ts +7 -0
- package/types/src/fill/IFillable.d.ts +47 -0
- package/types/src/fill/IStroke.d.ts +15 -1
- package/types/src/fill/PaintUtils.d.ts +22 -0
- package/types/src/fill/index.d.ts +2 -0
- package/types/src/font/AdvanceBuilder.d.ts +34 -0
- package/types/src/font/AdvanceTable.d.ts +128 -14
- package/types/src/font/CanvasAdvanceBuilder.d.ts +54 -0
- package/types/src/font/FontCapture.d.ts +4 -0
- package/types/src/font/FontCollection.d.ts +53 -2
- package/types/src/font/FontPlatform.d.ts +20 -0
- package/types/src/font/FontUtils.d.ts +5 -0
- package/types/src/font/IFont.d.ts +191 -61
- package/types/src/font/IFontCollection.d.ts +20 -14
- package/types/src/font/IFontStyle.d.ts +207 -0
- package/types/src/font/TableFileAdvanceBuilder.d.ts +9 -0
- package/types/src/font/_FontUtils.d.ts +11 -4
- package/types/src/font/_FontsVersion.d.ts +7 -0
- package/types/src/font/index.d.ts +1 -3
- package/types/src/font/platform.browser.d.ts +15 -0
- package/types/src/font/platform.node.d.ts +5 -0
- package/types/src/group/Group.d.ts +5 -0
- package/types/src/group/GroupMovableCollection.d.ts +4 -0
- package/types/src/history/IHistory.d.ts +19 -2
- package/types/src/hyperlink/IHyperlink.d.ts +7 -1
- package/types/src/index.d.ts +3 -0
- package/types/src/license/LicenseManager.d.ts +21 -0
- package/types/src/license/_Utils.d.ts +18 -1
- package/types/src/license/runtime.browser.d.ts +5 -0
- package/types/src/license/runtime.node.d.ts +10 -0
- package/types/src/listener/IListener.d.ts +14 -2
- package/types/src/listener/ListenerEmitter.d.ts +11 -3
- package/types/src/movable/IMovable.d.ts +28 -15
- package/types/src/movable/IMovableCollection.d.ts +1 -1
- package/types/src/movable/Movable.d.ts +12 -1
- package/types/src/movable/MovableCollection.d.ts +7 -3
- package/types/src/movable/_InsertableCollection.d.ts +16 -5
- package/types/src/named/INamed.d.ts +30 -0
- package/types/src/named/INamedCollection.d.ts +2 -2
- package/types/src/named/NamedCollection.d.ts +16 -4
- package/types/src/numFmt/NumberFormatParser.d.ts +5 -0
- package/types/src/outline/IOutline.d.ts +1 -1
- package/types/src/outline/Outline.d.ts +2 -2
- package/types/src/picture/IPicture.d.ts +98 -1
- package/types/src/picture/Picture.d.ts +15 -7
- package/types/src/pivot/IPivotTable.d.ts +2 -2
- package/types/src/pivot/PivotTable.d.ts +5 -5
- package/types/src/primitives/ReferenceRange.d.ts +2 -2
- package/types/src/print/IPageLayout.d.ts +635 -0
- package/types/src/print/PageLayout.d.ts +258 -0
- package/types/src/print/index.d.ts +1 -1
- package/types/src/protectedRange/IProtectedRange.d.ts +2 -2
- package/types/src/protection/IProtection.d.ts +6 -0
- package/types/src/protection/PasswordHasher.d.ts +13 -0
- package/types/src/richData/IRichDataKind.d.ts +22 -0
- package/types/src/richData/RichDataRegistry.d.ts +57 -0
- package/types/src/richData/RichText.d.ts +59 -0
- package/types/src/richData/index.d.ts +3 -0
- package/types/src/scripting/IModule.d.ts +3 -3
- package/types/src/scripting/IScript.d.ts +2 -2
- package/types/src/scripting/ITypedFunction.d.ts +1 -1
- package/types/src/scripting/declarations.d.ts +3 -0
- package/types/src/selection/ChartElementSelection.d.ts +39 -0
- package/types/src/selection/IChartElementSelection.d.ts +103 -0
- package/types/src/selection/IItemSelection.d.ts +131 -0
- package/types/src/selection/IMovableSelection.d.ts +6 -34
- package/types/src/selection/IRangeSelection.d.ts +4 -4
- package/types/src/selection/ItemSelection.d.ts +49 -0
- package/types/src/selection/MovableSelection.d.ts +11 -30
- package/types/src/selection/RangeSelection.d.ts +4 -4
- package/types/src/selection/index.d.ts +3 -0
- package/types/src/shape/IShape.d.ts +2 -1
- package/types/src/shape/IShapeStyle.d.ts +5 -31
- package/types/src/shape/ITextBoxStyle.d.ts +85 -0
- package/types/src/shape/ShapeStyleUtils.d.ts +13 -1
- package/types/src/shape/_Connectors.d.ts +9 -9
- package/types/src/shape/_ShapeStyle.d.ts +9 -0
- package/types/src/shape/index.d.ts +1 -0
- package/types/src/sheet/CellRegion.d.ts +37 -3
- package/types/src/sheet/IOpaqueSheet.d.ts +46 -0
- package/types/src/sheet/ISheet.d.ts +81 -1078
- package/types/src/sheet/IWorksheet.d.ts +1514 -0
- package/types/src/sheet/{ISheetCollection.d.ts → IWorksheetCollection.d.ts} +37 -12
- package/types/src/sheet/NamedCellRange.d.ts +2 -2
- package/types/src/sheet/NamedRange.d.ts +2 -2
- package/types/src/sheet/OpaqueSheet.d.ts +114 -0
- package/types/src/sheet/SheetCell.d.ts +24 -27
- package/types/src/sheet/SheetRange.d.ts +42 -11
- package/types/src/sheet/SheetRanges.d.ts +12 -10
- package/types/src/sheet/{Sheet.d.ts → Worksheet.d.ts} +510 -144
- package/types/src/sheet/WorksheetCollection.d.ts +39 -0
- package/types/src/sheet/_Anomalies.d.ts +109 -0
- package/types/src/sheet/_AnomalyFormulaChecks.d.ts +125 -0
- package/types/src/sheet/_AnomalyLabelChecks.d.ts +21 -0
- package/types/src/sheet/_CellBuffer.d.ts +11 -1
- package/types/src/sheet/_CopyUtils.d.ts +13 -6
- package/types/src/sheet/_IgnoredErrors.d.ts +46 -0
- package/types/src/sheet/_InvalidSheetRange.d.ts +3 -2
- package/types/src/sheet/_Kinds.d.ts +34 -0
- package/types/src/sheet/_Labels.d.ts +38 -0
- package/types/src/sheet/_RangeStateSweep.d.ts +2 -3
- package/types/src/sheet/_ScalarListFactory.d.ts +1 -1
- package/types/src/sheet/_SheetAutoFillUtils.d.ts +3 -3
- package/types/src/sheet/_SheetAutoFitUtils.d.ts +3 -3
- package/types/src/sheet/_SheetChangeEvent.d.ts +72 -0
- package/types/src/sheet/_SheetCoords.d.ts +3 -3
- package/types/src/sheet/_SheetEvents.d.ts +1 -1
- package/types/src/sheet/_SheetFilterUtils.d.ts +6 -6
- package/types/src/sheet/_SheetIntents.d.ts +32 -14
- package/types/src/sheet/_SheetMessages.d.ts +1 -1
- package/types/src/sheet/_SheetMutations.d.ts +7 -8
- package/types/src/sheet/_SheetSortUtils.d.ts +2 -2
- package/types/src/sheet/_SheetStateReader.d.ts +18 -0
- package/types/src/sheet/_SheetStateTypes.d.ts +60 -1
- package/types/src/sheet/_SheetUtils.d.ts +20 -19
- package/types/src/sheet/_WatchAnchor.d.ts +15 -2
- package/types/src/sheet/clipboard/RangeClipboardItems.d.ts +4 -4
- package/types/src/sheet/clipboard/SheetHTMLTableParser.d.ts +3 -3
- package/types/src/sheet/clipboard/SheetHTMLTableWriter.d.ts +3 -3
- package/types/src/sheet/index.d.ts +5 -2
- package/types/src/sheet/style/SheetCellStyle.d.ts +67 -86
- package/types/src/sheet/style/SheetDirectStyle.d.ts +3 -3
- package/types/src/sheet/style/SheetNamedStyle.d.ts +2 -0
- package/types/src/sheet/style/_DigitWidth.d.ts +7 -0
- package/types/src/sheet/style/_Resolvers.d.ts +3 -2
- package/types/src/sheet/style/_StyleUtils.d.ts +7 -43
- package/types/src/sheetHeader/ISheetHeader.d.ts +2 -2
- package/types/src/sheetHeader/SheetCellHeader.d.ts +2 -0
- package/types/src/sheetHeader/SheetCellHeaderRange.d.ts +2 -0
- package/types/src/sheetHeader/SheetCellHeaderRanges.d.ts +2 -0
- package/types/src/sheetHeader/SheetHeader.d.ts +7 -6
- package/types/src/sheetHeader/_HeaderUtils.d.ts +2 -3
- package/types/src/sheetProtection/{ISheetProtection.d.ts → IWorksheetProtection.d.ts} +28 -28
- package/types/src/sheetProtection/WorksheetProtection.d.ts +51 -0
- package/types/src/sheetProtection/index.d.ts +1 -1
- package/types/src/sheetView/{ISheetView.d.ts → IWorksheetView.d.ts} +168 -61
- package/types/src/sheetView/WorksheetView.d.ts +139 -0
- package/types/src/sheetView/_SheetViewUtils.d.ts +5 -3
- package/types/src/sheetView/index.d.ts +1 -1
- package/types/src/slicer/ISlicer.d.ts +2 -2
- package/types/src/sort/ISort.d.ts +35 -5
- package/types/src/style/ICellStyle.d.ts +56 -44
- package/types/src/style/_BuiltInStyleDefs.d.ts +4 -3
- package/types/src/table/AnchoredTable.d.ts +23 -7
- package/types/src/table/AutoTable.d.ts +1 -1
- package/types/src/table/ITable.d.ts +32 -19
- package/types/src/table/_NamedTable.d.ts +3 -3
- package/types/src/table/_NamedTableSource.d.ts +2 -2
- package/types/src/text/IText.d.ts +4 -51
- package/types/src/text/TextEngine.d.ts +34 -0
- package/types/src/text/TextFrame.d.ts +4 -2
- package/types/src/text/TextRun.d.ts +3 -2
- package/types/src/text/TextWrapper.d.ts +32 -26
- package/types/src/text/_TextUtils.d.ts +5 -5
- package/types/src/text/_TextWrapperFallback.d.ts +49 -0
- package/types/src/text/impl/TabStrategy.d.ts +3 -1
- package/types/src/text/richtext/IRichText.d.ts +16 -2
- package/types/src/text/richtext/index.d.ts +0 -1
- package/types/src/theme/ITheme.d.ts +108 -7
- package/types/src/theme/ThemeCollection.d.ts +5 -0
- package/types/src/theme/_OfficeFontScheme.d.ts +8 -0
- package/types/src/transaction/ITransaction.d.ts +20 -1
- package/types/src/transaction/Transaction.d.ts +8 -1
- package/types/src/transaction/_BatchHandle.d.ts +118 -0
- package/types/src/type/AbstractCollection.d.ts +4 -13
- package/types/src/type/ICollection.d.ts +17 -4
- package/types/src/type/IProperties.d.ts +1 -1
- package/types/src/utils/_CSSUtils.d.ts +1 -1
- package/types/src/wasm/_fontsWasm.d.ts +7 -0
- package/types/src/wasm/_sdkWasm.d.ts +1 -1
- package/types/src/wasm/fontsWasm.d.ts +32 -0
- package/types/src/wasm/index.d.ts +1 -0
- package/types/src/wasm/loader.browser.d.ts +9 -0
- package/types/src/wasm/loader.node.d.ts +9 -0
- package/types/src/wasm/sdkWasm.d.ts +6 -3
- package/types/src/workbook/IWorkbook.d.ts +229 -38
- package/types/src/workbook/Workbook.d.ts +77 -22
- package/types/src/workbook/WorkbookRange.d.ts +2 -2
- package/types/src/workbook/WorkbookRanges.d.ts +2 -2
- package/types/src/workbook/_WorkbookIntents.d.ts +2 -2
- package/types/src/workbook/_WorkbookMessages.d.ts +5 -0
- package/types/src/workbookView/IWorkbookView.d.ts +82 -0
- package/types/src/workbookView/WorkbookView.d.ts +21 -0
- package/browser/esm/BbSmt62FpFIpoVzu.mjs +0 -392
- package/browser/esm/BgcZ-CoTbMfmyDJL.mjs +0 -412
- package/browser/esm/DOMHmhYzPcLVcpAW.mjs +0 -7
- package/browser/esm/DUvUK61b2_4pf4tG.mjs +0 -484
- package/node/esm/CCouEwT37f08qO3V.mjs +0 -7
- package/node/esm/CT0CN82y0_Qgoryk.mjs +0 -7568
- package/node/esm/DHUADiCmxNQS1ARz.mjs +0 -417
- package/node/esm/Ds0d8zXzmgOu3MGx.mjs +0 -403
- package/types/src/chart/_ChartXml.d.ts +0 -70
- package/types/src/collections/OverlappingRangeIterator.d.ts +0 -87
- package/types/src/collections/_RangeSweep.d.ts +0 -97
- package/types/src/font/CanvasFontMeasurer.d.ts +0 -25
- package/types/src/font/FontKitFontMeasurer.d.ts +0 -11
- package/types/src/font/SimpleFontMeasurer.d.ts +0 -4
- package/types/src/print/IPrint.d.ts +0 -212
- package/types/src/sheet/SheetCollection.d.ts +0 -29
- package/types/src/sheetProtection/SheetProtection.d.ts +0 -51
- package/types/src/sheetView/SheetView.d.ts +0 -122
- package/types/src/text/richtext/IStyledFont.d.ts +0 -330
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { IFont } from './IFont';
|
|
2
|
+
import { SdkWasmExports } from '../wasm';
|
|
2
3
|
/**
|
|
3
4
|
* One face's advances and vertical metrics, per em: one table per family, weight and style that
|
|
4
5
|
* serves every size.
|
|
@@ -11,8 +12,12 @@ import { IFont } from './IFont';
|
|
|
11
12
|
*
|
|
12
13
|
* Vertical metrics follow GDI: the font is realized at a whole-pixel em (`round(px)`), and the
|
|
13
14
|
* OS/2 `winAscent` and `winDescent` are scaled to it and rounded.
|
|
15
|
+
*
|
|
16
|
+
* A table given its `.hinted.json` ({@link applyHinting}) measures widths as GDI does too, and so
|
|
17
|
+
* as Excel does: each character's design-unit advance rounded at that whole-pixel em, plus the
|
|
18
|
+
* delta the original font's hinting moves it by there. Without one, widths are fractional.
|
|
14
19
|
*/
|
|
15
|
-
export declare class AdvanceTable {
|
|
20
|
+
export declare class AdvanceTable implements IFont.AdvanceTable {
|
|
16
21
|
/** The family the table measures, as a style names it (`Calibri`, not its twin `Carlito`). */
|
|
17
22
|
readonly family: string;
|
|
18
23
|
/** The CSS weight, 400 regular and 700 bold. */
|
|
@@ -20,6 +25,19 @@ export declare class AdvanceTable {
|
|
|
20
25
|
readonly italic: boolean;
|
|
21
26
|
private readonly _vertical;
|
|
22
27
|
private readonly _perEm;
|
|
28
|
+
/** Design-unit advances, kept from a `.metrics.json`: what hinted widths round from. */
|
|
29
|
+
private readonly _units;
|
|
30
|
+
private _unitsPerEm;
|
|
31
|
+
/** Hinted deltas by ppem, then by codepoint; set once {@link applyHinting} has run. */
|
|
32
|
+
private _hinting;
|
|
33
|
+
/** Measures a character the table lacks, per em; see {@link setMeasureMissing}. */
|
|
34
|
+
private _measureMissing;
|
|
35
|
+
/** Excel's row pitch per integer ppem from `first`; set once {@link applyRows} has run. */
|
|
36
|
+
private _rows;
|
|
37
|
+
/** The table in the wasm, built on first ask from this table's data; see {@link native}. */
|
|
38
|
+
private _native;
|
|
39
|
+
/** Per-em advances recorded since the twin was built, written to it on the next ask. */
|
|
40
|
+
private _nativePending;
|
|
23
41
|
constructor(face: AdvanceTable.Face, vertical: AdvanceTable.VerticalPerEm);
|
|
24
42
|
/**
|
|
25
43
|
* A table from a captured `.metrics.json` (format `sheetxl-font-metrics/1`).
|
|
@@ -27,6 +45,26 @@ export declare class AdvanceTable {
|
|
|
27
45
|
* @throws when the format is not one this reads.
|
|
28
46
|
*/
|
|
29
47
|
static fromJSON(json: AdvanceTable.JSON): AdvanceTable;
|
|
48
|
+
/**
|
|
49
|
+
* Makes this a hinted table: widths from now on are GDI's whole pixels, from the companion
|
|
50
|
+
* `.hinted.json` (format `sheetxl-font-hinting/1`) captured from the original font.
|
|
51
|
+
*
|
|
52
|
+
* @throws when the format is not one this reads, or the file is for another face.
|
|
53
|
+
*/
|
|
54
|
+
applyHinting(json: AdvanceTable.HintedJSON): void;
|
|
55
|
+
/** Whether widths are GDI's hinted whole pixels ({@link applyHinting}). */
|
|
56
|
+
get isHinted(): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Gives the table Excel's own row heights, from the companion `.rows.json` (format
|
|
59
|
+
* `sheetxl-font-rows/1`) captured from Excel: {@link metrics} then reports the pitch Excel
|
|
60
|
+
* autofits a row of this face to at each size. GDI's box plus 2 is Excel's up to about 22 pt
|
|
61
|
+
* and runs under it from there, by a per-font amount no table predicts.
|
|
62
|
+
*
|
|
63
|
+
* @throws when the format is not one this reads, or fewer than two sizes are listed.
|
|
64
|
+
*/
|
|
65
|
+
applyRows(json: AdvanceTable.RowsJSON): void;
|
|
66
|
+
/** Whether row heights are Excel's captured ones ({@link applyRows}). */
|
|
67
|
+
get hasRows(): boolean;
|
|
30
68
|
/** The number of characters with an advance. */
|
|
31
69
|
get size(): number;
|
|
32
70
|
/** The advance of `codepoint` per em, or `undefined` when the table has none. */
|
|
@@ -36,6 +74,33 @@ export declare class AdvanceTable {
|
|
|
36
74
|
* (a canvas) fills a table.
|
|
37
75
|
*/
|
|
38
76
|
set(entries: Iterable<readonly [codepoint: number, perEm: number]>): void;
|
|
77
|
+
/** Records one per-em advance, and queues it for the wasm twin when there is one. */
|
|
78
|
+
private _record;
|
|
79
|
+
/**
|
|
80
|
+
* This table in the wasm (the binding's `MetricsTable`), for the Rust wrapper to measure from:
|
|
81
|
+
* filled once from the same advances, hinted deltas and row pitches, and kept in step with them
|
|
82
|
+
* afterwards, so the wrapper measures exactly what {@link width} and {@link metrics} do. The
|
|
83
|
+
* table stays the owner; the twin is its view, freed by {@link release}.
|
|
84
|
+
*
|
|
85
|
+
* @param text Measured in first, character by character, when the table grows on demand
|
|
86
|
+
* ({@link setMeasureMissing}): the twin cannot ask back across the boundary.
|
|
87
|
+
*/
|
|
88
|
+
native(wasm: SdkWasmExports, text?: string): AdvanceTable.Native;
|
|
89
|
+
/** Whether {@link native} has built the wasm twin. */
|
|
90
|
+
get hasNative(): boolean;
|
|
91
|
+
/**
|
|
92
|
+
* Frees the wasm twin, if there is one; the next {@link native} builds it again. The wasm has
|
|
93
|
+
* no garbage collector, so a table that changes what it would answer ({@link applyHinting},
|
|
94
|
+
* {@link applyRows}) or goes out of use lets its twin go here.
|
|
95
|
+
*/
|
|
96
|
+
release(): void;
|
|
97
|
+
private _buildNative;
|
|
98
|
+
/**
|
|
99
|
+
* Makes the table grow on demand: a character it lacks is measured by `measure` (its advance per
|
|
100
|
+
* em, or `undefined` when it cannot say) the first time it is asked for, and remembered. How a
|
|
101
|
+
* canvas fills a table, since no table built from one can list every character up front.
|
|
102
|
+
*/
|
|
103
|
+
setMeasureMissing(measure: ((text: string) => number | undefined) | null): void;
|
|
39
104
|
/** The characters of `text` with no advance, each once, in first-seen order. */
|
|
40
105
|
missing(text: string): string[];
|
|
41
106
|
/**
|
|
@@ -43,6 +108,8 @@ export declare class AdvanceTable {
|
|
|
43
108
|
* super/subscript scale, then `letterSpacing` between characters.
|
|
44
109
|
*/
|
|
45
110
|
width(text: string, px: number, options?: AdvanceTable.WidthOptions): number;
|
|
111
|
+
/** One character's advance in px: hinted whole pixels when the table is hinted. */
|
|
112
|
+
private _advancePx;
|
|
46
113
|
/** The face's whole-px vertical metrics at `px` pixels per em. */
|
|
47
114
|
metrics(px: number): IFont.Metrics;
|
|
48
115
|
/**
|
|
@@ -52,29 +119,76 @@ export declare class AdvanceTable {
|
|
|
52
119
|
underline(px: number): AdvanceTable.LineRule | null;
|
|
53
120
|
/** The strikeout at `px`, as {@link underline}. */
|
|
54
121
|
strikeout(px: number): AdvanceTable.LineRule | null;
|
|
55
|
-
/**
|
|
56
|
-
|
|
122
|
+
/**
|
|
123
|
+
* {@link width} and {@link metrics} together, with the underline and strikeout thickness in
|
|
124
|
+
* whole px as they are drawn (at least 1).
|
|
125
|
+
*/
|
|
126
|
+
measure(text: string, px: number, options?: AdvanceTable.MeasureOptions): IFont.ExtendedMetrics;
|
|
127
|
+
/**
|
|
128
|
+
* The letter-spacing that paints `text` at `width` when the platform paints it with
|
|
129
|
+
* `options.paint`'s advances: the difference spread between the characters (CSS spacing is
|
|
130
|
+
* added after each character but the last, as {@link width} counts it).
|
|
131
|
+
*/
|
|
132
|
+
private _renderLetterSpacing;
|
|
57
133
|
}
|
|
58
134
|
export declare namespace AdvanceTable {
|
|
59
135
|
/** The `format` of a `.metrics.json` this version reads. */
|
|
60
136
|
const FORMAT = "sheetxl-font-metrics/1";
|
|
61
|
-
/**
|
|
62
|
-
|
|
137
|
+
/** The `format` of a `.hinted.json` this version reads. */
|
|
138
|
+
const HINTED_FORMAT = "sheetxl-font-hinting/1";
|
|
139
|
+
/**
|
|
140
|
+
* A captured `.hinted.json`, the companion of a `.metrics.json`: where the original font's
|
|
141
|
+
* hinting moves an advance off its rounded value, by size.
|
|
142
|
+
*/
|
|
143
|
+
interface HintedJSON {
|
|
144
|
+
format: typeof HINTED_FORMAT;
|
|
63
145
|
family: string;
|
|
64
146
|
weight: number;
|
|
65
147
|
italic: boolean;
|
|
148
|
+
/** The original font the hinting programs were run from. */
|
|
149
|
+
source?: {
|
|
150
|
+
family: string;
|
|
151
|
+
version?: string;
|
|
152
|
+
};
|
|
153
|
+
/** The units the table's advances are in; must match the table's. */
|
|
154
|
+
unitsPerEm: number;
|
|
155
|
+
/**
|
|
156
|
+
* `[ppem, [codepoint, delta, codepoint, delta, ...]]`: whole px over the advance rounded at
|
|
157
|
+
* that ppem. A size not listed moves no advance.
|
|
158
|
+
*/
|
|
159
|
+
sizes: [number, number[]][];
|
|
66
160
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
161
|
+
/** The `format` of a `.rows.json` this version reads. */
|
|
162
|
+
const ROWS_FORMAT = "sheetxl-font-rows/1";
|
|
163
|
+
/**
|
|
164
|
+
* A captured `.rows.json`, the companion of a `.metrics.json`: Excel's autofit row height for
|
|
165
|
+
* the face, in px at 96 dpi, at every integer ppem from `firstPpem` up to where the row reaches
|
|
166
|
+
* Excel's 409 pt cap (`private-assets/design/rust/tools/capture-excel-row-heights.ps1`).
|
|
167
|
+
*/
|
|
168
|
+
interface RowsJSON {
|
|
169
|
+
format: typeof ROWS_FORMAT;
|
|
170
|
+
family: string;
|
|
171
|
+
weight: number;
|
|
172
|
+
italic: boolean;
|
|
173
|
+
source?: {
|
|
174
|
+
application?: string;
|
|
175
|
+
dpi?: number;
|
|
176
|
+
};
|
|
177
|
+
firstPpem: number;
|
|
178
|
+
/** `pitches[i]` is the pitch at `firstPpem + i`. */
|
|
179
|
+
pitches: number[];
|
|
72
180
|
}
|
|
73
|
-
/**
|
|
74
|
-
interface
|
|
75
|
-
readonly
|
|
76
|
-
readonly
|
|
181
|
+
/** Excel's row pitch per integer ppem, from `first` on. */
|
|
182
|
+
interface RowPitches {
|
|
183
|
+
readonly first: number;
|
|
184
|
+
readonly pitches: readonly number[];
|
|
77
185
|
}
|
|
186
|
+
/** A table's twin in the wasm: the binding's `MetricsTable` (`crates/sheetxl-wasm-sdk`). */
|
|
187
|
+
type Native = InstanceType<SdkWasmExports['MetricsTable']>;
|
|
188
|
+
type Face = IFont.AdvanceTable.Face;
|
|
189
|
+
type WidthOptions = IFont.AdvanceTable.WidthOptions;
|
|
190
|
+
type MeasureOptions = IFont.AdvanceTable.MeasureOptions;
|
|
191
|
+
type LineRule = IFont.AdvanceTable.LineRule;
|
|
78
192
|
/** Vertical metrics per em. */
|
|
79
193
|
interface VerticalPerEm {
|
|
80
194
|
/** OS/2 `winAscent` per em. */
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { AdvanceBuilder } from './AdvanceBuilder';
|
|
2
|
+
import { AdvanceTable } from './AdvanceTable';
|
|
3
|
+
/** The part of a 2D context the builder uses. */
|
|
4
|
+
export interface MeasureContext {
|
|
5
|
+
font: string;
|
|
6
|
+
measureText(text: string): {
|
|
7
|
+
width: number;
|
|
8
|
+
fontBoundingBoxAscent?: number;
|
|
9
|
+
fontBoundingBoxDescent?: number;
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Builds tables in a browser for families we have no captured table for, by
|
|
14
|
+
* measuring with a canvas: each character once, at one size, stored per em, so the table serves
|
|
15
|
+
* every size. Characters beyond printable ASCII are measured the first time text uses them.
|
|
16
|
+
*
|
|
17
|
+
* @remarks
|
|
18
|
+
* Advances are the browser's own (unhinted, fractional), which is what it paints with. The vertical
|
|
19
|
+
* metrics come from the canvas's font box and are the only approximate numbers: a canvas does not
|
|
20
|
+
* expose the OS/2 `win` metrics Excel sizes rows with.
|
|
21
|
+
*
|
|
22
|
+
* A family the browser does not have gets no table. Cells are painted by the style's family list,
|
|
23
|
+
* so the browser paints such a family as the first fallback it has, while the bare name measures
|
|
24
|
+
* as the browser's default face (Michael's `testing_b`: measured as Times New Roman, painted as
|
|
25
|
+
* Arial, clipped). The collection measures the fallbacks instead, in the browser's order, and a
|
|
26
|
+
* CSS generic name among them is built here as the face the browser paints for it.
|
|
27
|
+
*/
|
|
28
|
+
export declare class CanvasAdvanceBuilder implements AdvanceBuilder {
|
|
29
|
+
readonly name = "canvas";
|
|
30
|
+
readonly kind = "exact";
|
|
31
|
+
private readonly _createContext;
|
|
32
|
+
private _context;
|
|
33
|
+
/**
|
|
34
|
+
* @param createContext Where to measure; a 2D context of an offscreen canvas by default.
|
|
35
|
+
*/
|
|
36
|
+
constructor(createContext?: () => MeasureContext | null);
|
|
37
|
+
build(face: AdvanceTable.Face): Promise<AdvanceTable | null>;
|
|
38
|
+
/**
|
|
39
|
+
* What the browser paints `face` with when a cell names `families`: the same canvas measure, of
|
|
40
|
+
* the whole CSS stack, with no question asked about which face answers. Where the cell's own
|
|
41
|
+
* table is Excel's hinted one, this is what the hinted widths are reconciled to.
|
|
42
|
+
*/
|
|
43
|
+
paint(face: AdvanceTable.Face, families: readonly string[]): Promise<AdvanceTable | null>;
|
|
44
|
+
/**
|
|
45
|
+
* Measures a character a captured table lacks as the browser paints it in `face`: the face
|
|
46
|
+
* itself when installed, or the browser's fallback for that character.
|
|
47
|
+
*/
|
|
48
|
+
measureMissing(face: AdvanceTable.Face): ((text: string) => number | undefined) | null;
|
|
49
|
+
/** Whether the browser has `family`, by the same telltale {@link build} uses; a CSS generic always. */
|
|
50
|
+
isInstalled(family: string): boolean | undefined;
|
|
51
|
+
private _measure;
|
|
52
|
+
private _ctx;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=CanvasAdvanceBuilder.d.ts.map
|
|
@@ -20,8 +20,9 @@ export declare class FontCollection implements IFontCollection {
|
|
|
20
20
|
private _builders;
|
|
21
21
|
private readonly _entries;
|
|
22
22
|
private readonly _resolutions;
|
|
23
|
+
/** What the platform paints each requested stack with, by stack; see {@link _paint}. */
|
|
24
|
+
private readonly _paints;
|
|
23
25
|
private readonly _loading;
|
|
24
|
-
private _builtins;
|
|
25
26
|
private readonly _emitter;
|
|
26
27
|
private _fontList;
|
|
27
28
|
private readonly _fontsByFamily;
|
|
@@ -30,15 +31,35 @@ export declare class FontCollection implements IFontCollection {
|
|
|
30
31
|
* @param builders Where tables come from, tried in order.
|
|
31
32
|
*/
|
|
32
33
|
constructor(builders: readonly AdvanceBuilder[]);
|
|
34
|
+
/**
|
|
35
|
+
* Starts the text engine loading (the sdk's wasm, or the TypeScript wrapper where that cannot
|
|
36
|
+
* load), as one of the loads {@link whenReady} waits for: nothing wraps text until one of them
|
|
37
|
+
* is there, and every table here gets its twin in the wasm on first use. Its arrival changes no
|
|
38
|
+
* size, so it is not a collection change.
|
|
39
|
+
*/
|
|
40
|
+
private _loadNative;
|
|
33
41
|
/** {@inheritDoc IFontCollection.getByName} */
|
|
34
42
|
getByName(family: string, options?: IFontCollection.GetByNameOptions): IFontCollection.Resolution;
|
|
43
|
+
private _loadingAnswers;
|
|
44
|
+
/** Counts the answers given while their face was still loading; see {@link loadingAnswers}. */
|
|
45
|
+
private _answer;
|
|
46
|
+
/**
|
|
47
|
+
* How many lookups so far were answered with a stand-in because the face was loading. A
|
|
48
|
+
* measurement that reads this before and after knows whether it used one, and so whether it
|
|
49
|
+
* is to be taken again when the face lands (a sheet's pending autofits).
|
|
50
|
+
*/
|
|
51
|
+
get loadingAnswers(): number;
|
|
35
52
|
/** {@inheritDoc IFontCollection.load} */
|
|
36
53
|
load(faces: readonly (string | IFontCollection.FaceRequest)[]): Promise<void>;
|
|
37
54
|
/** {@inheritDoc IFontCollection.whenReady} */
|
|
38
55
|
whenReady(): Promise<void>;
|
|
39
56
|
/** {@inheritDoc IFontCollection.isLoading} */
|
|
40
57
|
isLoading(): boolean;
|
|
41
|
-
/**
|
|
58
|
+
/**
|
|
59
|
+
* Replaces where tables come from, tried in order, and forgets every table built before; the
|
|
60
|
+
* built-in Calibri and Arial stay. Not on the interface: tables are the sdk's to make, and this
|
|
61
|
+
* is for tests that pin measurement to a source.
|
|
62
|
+
*/
|
|
42
63
|
setAdvanceBuilders(builders: readonly AdvanceBuilder[]): void;
|
|
43
64
|
/** {@inheritDoc IFontCollection.getFontList} */
|
|
44
65
|
getFontList(): readonly IFontCollection.FontHandle[];
|
|
@@ -49,9 +70,39 @@ export declare class FontCollection implements IFontCollection {
|
|
|
49
70
|
/** {@inheritDoc IListener.ISource.addListeners} */
|
|
50
71
|
addListeners(listeners: IFontCollection.IListeners, options?: IListener.Options): IListener.Remove;
|
|
51
72
|
get isIFontCollection(): true;
|
|
73
|
+
/**
|
|
74
|
+
* Whether the platform paints `family` as itself, as the first builder that can tell says (a
|
|
75
|
+
* browser's canvas); available where none can (Node paints nothing).
|
|
76
|
+
*/
|
|
77
|
+
private _isInstalled;
|
|
52
78
|
private _seedBuiltins;
|
|
79
|
+
/**
|
|
80
|
+
* Refines a built-in table the first time it is used: its hinted widths and Excel's row heights
|
|
81
|
+
* from the shipped resources. Where those cannot be reached (a browser that serves no resource
|
|
82
|
+
* root), the platform's own measure of the family, if it has the family installed, replaces it:
|
|
83
|
+
* the widths the browser paints with, a pixel or so off Excel's, rather than the bare unhinted
|
|
84
|
+
* table.
|
|
85
|
+
*/
|
|
86
|
+
private _refine;
|
|
53
87
|
private _resolve;
|
|
88
|
+
/**
|
|
89
|
+
* The first family with a table of its own, then the first family's relation, then the first
|
|
90
|
+
* fallback with any table but a built-in one; failing all, the first family's built-in answer.
|
|
91
|
+
*/
|
|
92
|
+
private _resolveFirst;
|
|
54
93
|
private _ensure;
|
|
94
|
+
/**
|
|
95
|
+
* Lets a captured table measure the characters it lacks on the platform, when a builder can:
|
|
96
|
+
* otherwise a character outside the captured font (a symbol, an emoji) measures as nothing.
|
|
97
|
+
*/
|
|
98
|
+
private _measureMissing;
|
|
55
99
|
private _changed;
|
|
100
|
+
/**
|
|
101
|
+
* `measured` with what the platform paints the requested stack with, when a builder can see
|
|
102
|
+
* that and it is not the measure itself: a table measured from the platform's own paint
|
|
103
|
+
* (`'exact'`) needs none. The paint loads once per stack, weight and style, and the resolution
|
|
104
|
+
* is `'loading'` until it lands, like any closer answer.
|
|
105
|
+
*/
|
|
106
|
+
private _withPaint;
|
|
56
107
|
}
|
|
57
108
|
//# sourceMappingURL=FontCollection.d.ts.map
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { AdvanceBuilder } from './AdvanceBuilder';
|
|
2
|
+
/**
|
|
3
|
+
* What a font platform module provides. The `@sheetxl/sdk/font/platform` conditional export
|
|
4
|
+
* resolves to `platform.node.ts` (`node`, `default`) or `platform.browser.ts` (`browser`); the
|
|
5
|
+
* facade below is the one place the sdk reads it, the way `LicenseManager` reads
|
|
6
|
+
* `license/runtime`. Nothing outside the package imports the subpath.
|
|
7
|
+
*/
|
|
8
|
+
export interface FontPlatformModule {
|
|
9
|
+
/** The device scale for the current environment. */
|
|
10
|
+
getDeviceScale(): number;
|
|
11
|
+
/** The table builders this platform adds beyond the shipped tables, tried after them in order. */
|
|
12
|
+
getAdvanceBuilders(): AdvanceBuilder[];
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* The font platform the sdk runs on, behind one facade: the device scale, and the table builders
|
|
16
|
+
* the platform adds (a canvas in a browser, none in Node yet). Internal: measuring goes through
|
|
17
|
+
* `IFontCollection`, and `IFont.getDeviceScale` is the public face of the scale.
|
|
18
|
+
*/
|
|
19
|
+
export declare const FontPlatform: FontPlatformModule;
|
|
20
|
+
//# sourceMappingURL=FontPlatform.d.ts.map
|
|
@@ -6,4 +6,9 @@ export declare const DefaultFontSizes: readonly number[];
|
|
|
6
6
|
* Searches an array of numbers for the next value.
|
|
7
7
|
*/
|
|
8
8
|
export declare function findNextFontSize(size: number, increase?: boolean, steps?: readonly number[]): number;
|
|
9
|
+
/**
|
|
10
|
+
* The size, as a fraction of the font's, that superscript and subscript text (a nonzero
|
|
11
|
+
* {@link IFontStyle.getBaseline | baseline}) is drawn at.
|
|
12
|
+
*/
|
|
13
|
+
export declare const SuperSubScale: number;
|
|
9
14
|
//# sourceMappingURL=FontUtils.d.ts.map
|