@shbernal/ts-xlsx 3.0.0 → 3.2.0
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 +34 -24
- package/dist/bytes.d.ts +10 -2
- package/dist/bytes.js +22 -0
- package/dist/core/address.d.ts +96 -2
- package/dist/core/address.js +87 -33
- package/dist/core/array-formula-ranges.d.ts +33 -0
- package/dist/core/array-formula-ranges.js +62 -0
- package/dist/core/autofilter.d.ts +4 -3
- package/dist/core/autofilter.js +31 -30
- package/dist/core/axis-handle.d.ts +2 -0
- package/dist/core/axis-handle.js +5 -2
- package/dist/core/cell.d.ts +4 -3
- package/dist/core/cell.js +4 -6
- package/dist/core/clone.d.ts +29 -0
- package/dist/core/clone.js +24 -0
- package/dist/core/color-resolution.js +4 -6
- package/dist/core/column.d.ts +1 -0
- package/dist/core/column.js +6 -2
- package/dist/core/comment-thread.d.ts +7 -3
- package/dist/core/comment-thread.js +2 -1
- package/dist/core/conditional-formatting-overlay.d.ts +11 -1
- package/dist/core/conditional-formatting-overlay.js +30 -3
- package/dist/core/conditional-formatting.d.ts +107 -11
- package/dist/core/conditional-formatting.js +76 -19
- package/dist/core/containers.d.ts +12 -0
- package/dist/core/containers.js +5 -0
- package/dist/core/data-validation-overlay.d.ts +7 -1
- package/dist/core/data-validation-overlay.js +19 -4
- package/dist/core/data-validation.d.ts +22 -0
- package/dist/core/data-validation.js +30 -4
- package/dist/core/date-format.d.ts +20 -0
- package/dist/core/date-format.js +170 -0
- package/dist/core/date.d.ts +43 -8
- package/dist/core/date.js +19 -3
- package/dist/core/formula-references.d.ts +26 -0
- package/dist/core/formula-references.js +173 -0
- package/dist/core/formula-scan.d.ts +2 -0
- package/dist/core/formula-scan.js +58 -0
- package/dist/core/formula.d.ts +76 -17
- package/dist/core/formula.js +87 -80
- package/dist/core/function-values.d.ts +4 -0
- package/dist/core/function-values.js +58 -0
- package/dist/core/future-functions.d.ts +3 -0
- package/dist/core/{modern-functions.js → future-functions.js} +119 -88
- package/dist/core/grid-edits.d.ts +30 -3
- package/dist/core/grid-edits.js +248 -81
- package/dist/core/grid-shift.d.ts +58 -9
- package/dist/core/grid-shift.js +26 -4
- package/dist/core/hyperlink.d.ts +39 -0
- package/dist/core/hyperlink.js +88 -0
- package/dist/core/image.d.ts +49 -14
- package/dist/core/image.js +16 -5
- package/dist/core/internal.d.ts +10 -2
- package/dist/core/limits.d.ts +25 -0
- package/dist/core/limits.js +4 -0
- package/dist/core/merge.d.ts +18 -4
- package/dist/core/merge.js +33 -20
- package/dist/core/page-setup.d.ts +26 -11
- package/dist/core/pivot-table.d.ts +49 -10
- package/dist/core/pivot-table.js +112 -60
- package/dist/core/protection.d.ts +66 -4
- package/dist/core/protection.js +6 -11
- package/dist/core/range.js +34 -30
- package/dist/core/row-input.js +2 -2
- package/dist/core/row.d.ts +1 -0
- package/dist/core/row.js +6 -2
- package/dist/core/structured-reference.d.ts +7 -0
- package/dist/core/structured-reference.js +7 -0
- package/dist/core/style.d.ts +85 -70
- package/dist/core/style.js +92 -28
- package/dist/core/table-style.d.ts +1 -1
- package/dist/core/table-style.js +4 -4
- package/dist/core/table.d.ts +64 -16
- package/dist/core/table.js +87 -40
- package/dist/core/theme.d.ts +2 -0
- package/dist/core/theme.js +9 -5
- package/dist/core/value.d.ts +60 -28
- package/dist/core/value.js +48 -43
- package/dist/core/workbook-media.d.ts +34 -0
- package/dist/core/workbook-media.js +44 -0
- package/dist/core/workbook-styles.d.ts +83 -1
- package/dist/core/workbook-styles.js +4 -0
- package/dist/core/workbook-theme.js +5 -3
- package/dist/core/workbook-vba.js +3 -2
- package/dist/core/workbook.d.ts +41 -3
- package/dist/core/workbook.js +46 -41
- package/dist/core/worksheet-comments.d.ts +2 -1
- package/dist/core/worksheet-comments.js +20 -13
- package/dist/core/worksheet-merges.d.ts +49 -0
- package/dist/core/worksheet-merges.js +65 -0
- package/dist/core/worksheet-model.d.ts +10 -2
- package/dist/core/worksheet-model.js +28 -9
- package/dist/core/worksheet-pictures.d.ts +3 -3
- package/dist/core/worksheet-pictures.js +7 -6
- package/dist/core/worksheet.d.ts +165 -27
- package/dist/core/worksheet.js +206 -89
- package/dist/customui/ribbon.js +2 -1
- package/dist/entries/core.d.ts +21 -14
- package/dist/entries/core.js +14 -7
- package/dist/entries/errors.d.ts +1 -0
- package/dist/entries/errors.js +1 -0
- package/dist/entries/xlsx.d.ts +1 -1
- package/dist/errors.d.ts +64 -0
- package/dist/errors.js +22 -0
- package/dist/hex.d.ts +8 -0
- package/dist/hex.js +3 -0
- package/dist/io/cell-metadata/metadata.d.ts +42 -0
- package/dist/io/cell-metadata/metadata.js +35 -0
- package/dist/io/cell-metadata/rich-values.d.ts +11 -0
- package/dist/io/cell-metadata/rich-values.js +80 -0
- package/dist/io/csv/delimiter.d.ts +21 -0
- package/dist/io/csv/delimiter.js +18 -0
- package/dist/io/csv/errors.d.ts +14 -0
- package/dist/io/csv/errors.js +5 -0
- package/dist/io/csv/read.d.ts +6 -1
- package/dist/io/csv/read.js +51 -22
- package/dist/io/csv/write.d.ts +19 -5
- package/dist/io/csv/write.js +24 -44
- package/dist/io/opc/inflate.js +14 -0
- package/dist/io/opc/namespaces.d.ts +16 -0
- package/dist/io/opc/namespaces.js +4 -0
- package/dist/io/opc/part-paths.d.ts +9 -0
- package/dist/io/opc/part-paths.js +5 -5
- package/dist/io/opc/read-opc.d.ts +58 -14
- package/dist/io/opc/read-opc.js +49 -21
- package/dist/io/opc/read-options.d.ts +5 -1
- package/dist/io/opc/sniff-format.d.ts +3 -3
- package/dist/io/opc/sniff-format.js +2 -2
- package/dist/io/opc/strict-relationships.d.ts +2 -0
- package/dist/io/opc/strict-relationships.js +12 -0
- package/dist/io/read-policy/column-budget.d.ts +26 -0
- package/dist/io/read-policy/column-budget.js +18 -0
- package/dist/io/read-policy/read-repair.d.ts +74 -0
- package/dist/io/read-policy/read-repair.js +119 -0
- package/dist/io/style/cell-style-resolution.d.ts +25 -0
- package/dist/io/style/cell-style-resolution.js +30 -0
- package/dist/io/style/xf-style.d.ts +23 -1
- package/dist/io/style/xf-style.js +8 -0
- package/dist/io/xlsb/formula.d.ts +2 -2
- package/dist/io/xlsb/formula.js +52 -35
- package/dist/io/xlsb/primitives.js +8 -14
- package/dist/io/xlsb/ptg-functions.d.ts +19 -10
- package/dist/io/xlsb/ptg-functions.js +495 -596
- package/dist/io/xlsb/read-metadata.d.ts +7 -0
- package/dist/io/xlsb/read-metadata.js +69 -0
- package/dist/io/xlsb/read-styles.js +45 -81
- package/dist/io/xlsb/read-worksheet.d.ts +26 -1
- package/dist/io/xlsb/read-worksheet.js +148 -106
- package/dist/io/xlsb/read.d.ts +6 -3
- package/dist/io/xlsb/read.js +70 -31
- package/dist/io/xlsb/record-stream.d.ts +30 -0
- package/dist/io/xlsb/record-stream.js +20 -0
- package/dist/io/xlsb/record-types.d.ts +14 -5
- package/dist/io/xlsb/record-types.js +14 -5
- package/dist/io/xlsb/sheet-protection.d.ts +20 -0
- package/dist/io/xlsb/sheet-protection.js +60 -0
- package/dist/io/xlsx/cell-accumulator.d.ts +24 -9
- package/dist/io/xlsx/cell-accumulator.js +74 -21
- package/dist/io/xlsx/cell-metadata.d.ts +39 -0
- package/dist/io/xlsx/cell-metadata.js +162 -0
- package/dist/io/xlsx/cell-value.d.ts +19 -5
- package/dist/io/xlsx/cell-value.js +45 -30
- package/dist/io/xlsx/color-xml.js +3 -2
- package/dist/io/xlsx/column-span.d.ts +11 -0
- package/dist/io/xlsx/column-span.js +9 -0
- package/dist/io/xlsx/comments.d.ts +9 -30
- package/dist/io/xlsx/comments.js +25 -83
- package/dist/io/xlsx/conditional-formatting.d.ts +43 -23
- package/dist/io/xlsx/conditional-formatting.js +437 -138
- package/dist/io/xlsx/data-validation.d.ts +12 -7
- package/dist/io/xlsx/data-validation.js +67 -53
- package/dist/io/xlsx/edit-vba.d.ts +7 -2
- package/dist/io/xlsx/edit-vba.js +52 -52
- package/dist/io/xlsx/font-xml.d.ts +7 -0
- package/dist/io/xlsx/font-xml.js +104 -0
- package/dist/io/xlsx/hyperlinks.d.ts +19 -21
- package/dist/io/xlsx/hyperlinks.js +12 -32
- package/dist/io/xlsx/images.d.ts +49 -16
- package/dist/io/xlsx/images.js +149 -50
- package/dist/io/xlsx/namespaces.d.ts +24 -0
- package/dist/io/xlsx/namespaces.js +11 -0
- package/dist/io/xlsx/package-plan.d.ts +60 -15
- package/dist/io/xlsx/package-plan.js +83 -18
- package/dist/io/xlsx/part-names.d.ts +6 -8
- package/dist/io/xlsx/part-names.js +3 -7
- package/dist/io/xlsx/pivot.d.ts +5 -5
- package/dist/io/xlsx/pivot.js +26 -24
- package/dist/io/xlsx/preserved-splices.d.ts +6 -0
- package/dist/io/xlsx/preserved-splices.js +74 -0
- package/dist/io/xlsx/read-comments.d.ts +29 -0
- package/dist/io/xlsx/read-comments.js +75 -0
- package/dist/io/xlsx/read-parts.d.ts +59 -0
- package/dist/io/xlsx/read-parts.js +259 -0
- package/dist/io/xlsx/read-pivot.js +11 -4
- package/dist/io/xlsx/{rich-runs.d.ts → read-rich-runs.d.ts} +8 -5
- package/dist/io/xlsx/{rich-runs.js → read-rich-runs.js} +24 -4
- package/dist/io/xlsx/read-rows.d.ts +35 -11
- package/dist/io/xlsx/read-rows.js +73 -49
- package/dist/io/xlsx/read-shared-strings.js +3 -2
- package/dist/io/xlsx/read-styles.d.ts +0 -30
- package/dist/io/xlsx/read-styles.js +45 -105
- package/dist/io/xlsx/read-workbook-xml.d.ts +42 -0
- package/dist/io/xlsx/read-workbook-xml.js +175 -0
- package/dist/io/xlsx/read-worksheet.d.ts +9 -3
- package/dist/io/xlsx/read-worksheet.js +70 -177
- package/dist/io/xlsx/read.d.ts +3 -14
- package/dist/io/xlsx/read.js +74 -411
- package/dist/io/xlsx/relationships.d.ts +3 -0
- package/dist/io/xlsx/relationships.js +4 -0
- package/dist/io/xlsx/rich-text.js +1 -1
- package/dist/io/xlsx/row-position.d.ts +20 -0
- package/dist/io/xlsx/row-position.js +11 -0
- package/dist/io/xlsx/row-xml.d.ts +139 -0
- package/dist/io/xlsx/row-xml.js +222 -0
- package/dist/io/xlsx/shared-formulas.js +2 -2
- package/dist/io/xlsx/sheet-properties.d.ts +10 -1
- package/dist/io/xlsx/sheet-properties.js +182 -20
- package/dist/io/xlsx/strict-parts.d.ts +7 -0
- package/dist/io/xlsx/strict-parts.js +171 -0
- package/dist/io/xlsx/style-elements.d.ts +41 -0
- package/dist/io/xlsx/style-elements.js +136 -0
- package/dist/io/xlsx/styles.d.ts +17 -3
- package/dist/io/xlsx/styles.js +13 -209
- package/dist/io/xlsx/tables.d.ts +10 -2
- package/dist/io/xlsx/tables.js +55 -52
- package/dist/io/xlsx/theme-xml.d.ts +32 -4
- package/dist/io/xlsx/theme-xml.js +106 -71
- package/dist/io/xlsx/threaded-comments.d.ts +14 -11
- package/dist/io/xlsx/threaded-comments.js +16 -8
- package/dist/io/xlsx/workbook-xml.d.ts +45 -6
- package/dist/io/xlsx/workbook-xml.js +62 -54
- package/dist/io/xlsx/worksheet-xml.d.ts +26 -70
- package/dist/io/xlsx/worksheet-xml.js +69 -282
- package/dist/io/xlsx/write-stream.d.ts +90 -19
- package/dist/io/xlsx/write-stream.js +80 -25
- package/dist/io/xlsx/write.d.ts +12 -6
- package/dist/io/xlsx/write.js +226 -123
- package/dist/rel-type.d.ts +25 -0
- package/dist/rel-type.js +9 -0
- package/dist/token-set.d.ts +13 -0
- package/dist/token-set.js +4 -1
- package/dist/vba/bytes.d.ts +16 -5
- package/dist/vba/bytes.js +27 -6
- package/dist/vba/cfb-format.d.ts +55 -0
- package/dist/vba/cfb-format.js +35 -0
- package/dist/vba/cfb-writer.d.ts +8 -0
- package/dist/vba/cfb-writer.js +40 -40
- package/dist/vba/cfb.d.ts +21 -4
- package/dist/vba/cfb.js +124 -90
- package/dist/vba/codepage.js +2 -1
- package/dist/vba/dir-records.d.ts +6 -0
- package/dist/vba/dir-records.js +10 -2
- package/dist/vba/errors.d.ts +11 -4
- package/dist/vba/index.d.ts +0 -2
- package/dist/vba/index.js +0 -2
- package/dist/vba/ms-ovba.d.ts +6 -2
- package/dist/vba/ms-ovba.js +66 -22
- package/dist/vba/project-editor.js +129 -119
- package/dist/vba/project.d.ts +15 -1
- package/dist/vba/project.js +38 -13
- package/dist/vba/vba-encoding.d.ts +4 -10
- package/dist/vba/vba-encoding.js +3 -17
- package/dist/xml/xml-attrs.d.ts +37 -0
- package/dist/xml/xml-attrs.js +30 -0
- package/dist/xml/xml-chars.d.ts +40 -0
- package/dist/xml/xml-chars.js +12 -0
- package/dist/xml/xml-namespaces.d.ts +31 -0
- package/dist/xml/xml-namespaces.js +50 -0
- package/dist/xml/xml-read.d.ts +101 -11
- package/dist/xml/xml-read.js +150 -18
- package/dist/xml/xml-scan.d.ts +25 -34
- package/dist/xml/xml-scan.js +69 -46
- package/dist/xml/xml.d.ts +59 -26
- package/dist/xml/xml.js +45 -23
- package/package.json +15 -9
- package/skills/ts-xlsx-upstream/SKILL.md +21 -13
- package/dist/core/modern-functions.d.ts +0 -1
|
@@ -1,148 +1,179 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
'SORT',
|
|
4
|
-
'SORTBY',
|
|
5
|
-
'UNIQUE',
|
|
6
|
-
'SEQUENCE',
|
|
7
|
-
'RANDARRAY',
|
|
8
|
-
'XLOOKUP',
|
|
9
|
-
'XMATCH',
|
|
10
|
-
'LAMBDA',
|
|
11
|
-
'LET',
|
|
12
|
-
'BYROW',
|
|
13
|
-
'BYCOL',
|
|
14
|
-
'MAKEARRAY',
|
|
15
|
-
'MAP',
|
|
16
|
-
'REDUCE',
|
|
17
|
-
'SCAN',
|
|
18
|
-
'ISOMITTED',
|
|
19
|
-
'VSTACK',
|
|
20
|
-
'HSTACK',
|
|
21
|
-
'TOROW',
|
|
22
|
-
'TOCOL',
|
|
23
|
-
'WRAPROWS',
|
|
24
|
-
'WRAPCOLS',
|
|
25
|
-
'TAKE',
|
|
26
|
-
'DROP',
|
|
27
|
-
'EXPAND',
|
|
28
|
-
'CHOOSEROWS',
|
|
29
|
-
'CHOOSECOLS',
|
|
30
|
-
'TEXTJOIN',
|
|
31
|
-
'CONCAT',
|
|
32
|
-
'TEXTBEFORE',
|
|
33
|
-
'TEXTAFTER',
|
|
34
|
-
'TEXTSPLIT',
|
|
35
|
-
'ARRAYTOTEXT',
|
|
36
|
-
'VALUETOTEXT',
|
|
37
|
-
'IFS',
|
|
38
|
-
'SWITCH',
|
|
39
|
-
'MAXIFS',
|
|
40
|
-
'MINIFS',
|
|
41
|
-
'AGGREGATE',
|
|
1
|
+
const WORKSHEET_ONLY_FUNCTIONS = ['FILTER', 'PY', 'SORT'];
|
|
2
|
+
const SPECIFIED_FUNCTIONS = [
|
|
42
3
|
'ACOT',
|
|
43
4
|
'ACOTH',
|
|
44
|
-
'
|
|
45
|
-
'COTH',
|
|
46
|
-
'CSC',
|
|
47
|
-
'CSCH',
|
|
48
|
-
'SEC',
|
|
49
|
-
'SECH',
|
|
5
|
+
'AGGREGATE',
|
|
50
6
|
'ARABIC',
|
|
51
7
|
'BASE',
|
|
52
|
-
'DECIMAL',
|
|
53
|
-
'COMBINA',
|
|
54
|
-
'PERMUTATIONA',
|
|
55
|
-
'GAMMA',
|
|
56
|
-
'GAUSS',
|
|
57
|
-
'PHI',
|
|
58
|
-
'MUNIT',
|
|
59
|
-
'BITAND',
|
|
60
|
-
'BITOR',
|
|
61
|
-
'BITXOR',
|
|
62
|
-
'BITLSHIFT',
|
|
63
|
-
'BITRSHIFT',
|
|
64
|
-
'IMCOSH',
|
|
65
|
-
'IMCOT',
|
|
66
|
-
'IMCSC',
|
|
67
|
-
'IMCSCH',
|
|
68
|
-
'IMSEC',
|
|
69
|
-
'IMSECH',
|
|
70
|
-
'IMSINH',
|
|
71
|
-
'IMTAN',
|
|
72
|
-
'DAYS',
|
|
73
|
-
'ISOWEEKNUM',
|
|
74
|
-
'IFNA',
|
|
75
|
-
'NUMBERVALUE',
|
|
76
|
-
'SHEET',
|
|
77
|
-
'SHEETS',
|
|
78
|
-
'FORMULATEXT',
|
|
79
|
-
'ISFORMULA',
|
|
80
|
-
'ENCODEURL',
|
|
81
|
-
'WEBSERVICE',
|
|
82
|
-
'FILTERXML',
|
|
83
|
-
'UNICHAR',
|
|
84
|
-
'UNICODE',
|
|
85
|
-
'XOR',
|
|
86
|
-
'PDURATION',
|
|
87
|
-
'RRI',
|
|
88
8
|
'BETA.DIST',
|
|
89
9
|
'BETA.INV',
|
|
90
10
|
'BINOM.DIST',
|
|
91
11
|
'BINOM.DIST.RANGE',
|
|
92
12
|
'BINOM.INV',
|
|
13
|
+
'BITAND',
|
|
14
|
+
'BITLSHIFT',
|
|
15
|
+
'BITOR',
|
|
16
|
+
'BITRSHIFT',
|
|
17
|
+
'BITXOR',
|
|
18
|
+
'BYCOL',
|
|
19
|
+
'BYROW',
|
|
20
|
+
'CEILING.MATH',
|
|
21
|
+
'CEILING.PRECISE',
|
|
93
22
|
'CHISQ.DIST',
|
|
94
23
|
'CHISQ.DIST.RT',
|
|
95
24
|
'CHISQ.INV',
|
|
96
25
|
'CHISQ.INV.RT',
|
|
97
26
|
'CHISQ.TEST',
|
|
27
|
+
'CHOOSECOLS',
|
|
28
|
+
'CHOOSEROWS',
|
|
29
|
+
'COMBINA',
|
|
30
|
+
'CONCAT',
|
|
98
31
|
'CONFIDENCE.NORM',
|
|
99
32
|
'CONFIDENCE.T',
|
|
33
|
+
'COT',
|
|
34
|
+
'COTH',
|
|
100
35
|
'COVARIANCE.P',
|
|
101
36
|
'COVARIANCE.S',
|
|
37
|
+
'CSC',
|
|
38
|
+
'CSCH',
|
|
39
|
+
'DAYS',
|
|
40
|
+
'DECIMAL',
|
|
41
|
+
'DROP',
|
|
42
|
+
'ERF.PRECISE',
|
|
43
|
+
'ERFC.PRECISE',
|
|
44
|
+
'EXPAND',
|
|
102
45
|
'EXPON.DIST',
|
|
103
46
|
'F.DIST',
|
|
104
47
|
'F.DIST.RT',
|
|
105
48
|
'F.INV',
|
|
106
49
|
'F.INV.RT',
|
|
107
50
|
'F.TEST',
|
|
51
|
+
'FIELDVALUE',
|
|
52
|
+
'FILTERXML',
|
|
53
|
+
'FLOOR.MATH',
|
|
54
|
+
'FLOOR.PRECISE',
|
|
55
|
+
'FORECAST.ETS',
|
|
56
|
+
'FORECAST.ETS.CONFINT',
|
|
57
|
+
'FORECAST.ETS.SEASONALITY',
|
|
58
|
+
'FORECAST.ETS.STAT',
|
|
59
|
+
'FORECAST.LINEAR',
|
|
60
|
+
'FORMULATEXT',
|
|
61
|
+
'GAMMA',
|
|
108
62
|
'GAMMA.DIST',
|
|
109
63
|
'GAMMA.INV',
|
|
110
64
|
'GAMMALN.PRECISE',
|
|
65
|
+
'GAUSS',
|
|
66
|
+
'HSTACK',
|
|
111
67
|
'HYPGEOM.DIST',
|
|
68
|
+
'IFNA',
|
|
69
|
+
'IFS',
|
|
70
|
+
'IMCOSH',
|
|
71
|
+
'IMCOT',
|
|
72
|
+
'IMCSC',
|
|
73
|
+
'IMCSCH',
|
|
74
|
+
'IMSEC',
|
|
75
|
+
'IMSECH',
|
|
76
|
+
'IMSINH',
|
|
77
|
+
'IMTAN',
|
|
78
|
+
'ISFORMULA',
|
|
79
|
+
'ISOMITTED',
|
|
80
|
+
'ISOWEEKNUM',
|
|
81
|
+
'LAMBDA',
|
|
82
|
+
'LET',
|
|
112
83
|
'LOGNORM.DIST',
|
|
113
84
|
'LOGNORM.INV',
|
|
85
|
+
'MAKEARRAY',
|
|
86
|
+
'MAP',
|
|
87
|
+
'MAXIFS',
|
|
88
|
+
'MINIFS',
|
|
114
89
|
'MODE.MULT',
|
|
115
90
|
'MODE.SNGL',
|
|
91
|
+
'MUNIT',
|
|
116
92
|
'NEGBINOM.DIST',
|
|
117
93
|
'NORM.DIST',
|
|
118
94
|
'NORM.INV',
|
|
119
95
|
'NORM.S.DIST',
|
|
120
96
|
'NORM.S.INV',
|
|
97
|
+
'NUMBERVALUE',
|
|
98
|
+
'PDURATION',
|
|
121
99
|
'PERCENTILE.EXC',
|
|
122
100
|
'PERCENTILE.INC',
|
|
123
101
|
'PERCENTRANK.EXC',
|
|
124
102
|
'PERCENTRANK.INC',
|
|
103
|
+
'PERMUTATIONA',
|
|
104
|
+
'PHI',
|
|
125
105
|
'POISSON.DIST',
|
|
106
|
+
'PQSOURCE',
|
|
107
|
+
'PYTHON_STR',
|
|
108
|
+
'PYTHON_TYPE',
|
|
109
|
+
'PYTHON_TYPENAME',
|
|
126
110
|
'QUARTILE.EXC',
|
|
127
111
|
'QUARTILE.INC',
|
|
112
|
+
'QUERYSTRING',
|
|
113
|
+
'RANDARRAY',
|
|
128
114
|
'RANK.AVG',
|
|
129
115
|
'RANK.EQ',
|
|
116
|
+
'REDUCE',
|
|
117
|
+
'RRI',
|
|
118
|
+
'SCAN',
|
|
119
|
+
'SEC',
|
|
120
|
+
'SECH',
|
|
121
|
+
'SEQUENCE',
|
|
122
|
+
'SHEET',
|
|
123
|
+
'SHEETS',
|
|
130
124
|
'SKEW.P',
|
|
125
|
+
'SORTBY',
|
|
131
126
|
'STDEV.P',
|
|
132
127
|
'STDEV.S',
|
|
128
|
+
'SWITCH',
|
|
133
129
|
'T.DIST',
|
|
134
130
|
'T.DIST.2T',
|
|
135
131
|
'T.DIST.RT',
|
|
136
132
|
'T.INV',
|
|
137
133
|
'T.INV.2T',
|
|
138
134
|
'T.TEST',
|
|
135
|
+
'TAKE',
|
|
136
|
+
'TEXTAFTER',
|
|
137
|
+
'TEXTBEFORE',
|
|
138
|
+
'TEXTJOIN',
|
|
139
|
+
'TEXTSPLIT',
|
|
140
|
+
'TOCOL',
|
|
141
|
+
'TOROW',
|
|
142
|
+
'UNICHAR',
|
|
143
|
+
'UNICODE',
|
|
144
|
+
'UNIQUE',
|
|
139
145
|
'VAR.P',
|
|
140
146
|
'VAR.S',
|
|
147
|
+
'VSTACK',
|
|
148
|
+
'WEBSERVICE',
|
|
141
149
|
'WEIBULL.DIST',
|
|
150
|
+
'WRAPCOLS',
|
|
151
|
+
'WRAPROWS',
|
|
152
|
+
'XLOOKUP',
|
|
153
|
+
'XOR',
|
|
142
154
|
'Z.TEST',
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
'
|
|
146
|
-
'
|
|
147
|
-
'
|
|
155
|
+
];
|
|
156
|
+
const OBSERVED_FUNCTIONS = [
|
|
157
|
+
'ANCHORARRAY',
|
|
158
|
+
'ARRAYTOTEXT',
|
|
159
|
+
'DETECTLANGUAGE',
|
|
160
|
+
'ENCODEURL',
|
|
161
|
+
'GROUPBY',
|
|
162
|
+
'IMAGE',
|
|
163
|
+
'PERCENTOF',
|
|
164
|
+
'PIVOTBY',
|
|
165
|
+
'REGEXEXTRACT',
|
|
166
|
+
'REGEXREPLACE',
|
|
167
|
+
'REGEXTEST',
|
|
168
|
+
'SINGLE',
|
|
169
|
+
'STOCKHISTORY',
|
|
170
|
+
'TRANSLATE',
|
|
171
|
+
'TRIMRANGE',
|
|
172
|
+
'VALUETOTEXT',
|
|
173
|
+
'XMATCH',
|
|
174
|
+
];
|
|
175
|
+
export const FUTURE_FUNCTION_PREFIXES = new Map([
|
|
176
|
+
...WORKSHEET_ONLY_FUNCTIONS.map((name) => [name, '_xlfn._xlws.']),
|
|
177
|
+
...SPECIFIED_FUNCTIONS.map((name) => [name, '_xlfn.']),
|
|
178
|
+
...OBSERVED_FUNCTIONS.map((name) => [name, '_xlfn.']),
|
|
148
179
|
]);
|
|
@@ -2,11 +2,15 @@ import { type AutoFilter } from './autofilter.ts';
|
|
|
2
2
|
import { Cell } from './cell.ts';
|
|
3
3
|
import type { ConditionalFormattingOverlay } from './conditional-formatting-overlay.ts';
|
|
4
4
|
import type { DataValidationOverlay } from './data-validation-overlay.ts';
|
|
5
|
+
import { type SheetSplice } from './formula-references.ts';
|
|
6
|
+
import type { HyperlinkOverlay } from './hyperlink.ts';
|
|
5
7
|
import { type AnchoredImage } from './image.ts';
|
|
6
|
-
import type {
|
|
8
|
+
import type { PageBreak } from './page-setup.ts';
|
|
9
|
+
import { type ParsedPivotTable, type PivotTable } from './pivot-table.ts';
|
|
7
10
|
import type { Table } from './table.ts';
|
|
8
11
|
import { type CellValue } from './value.ts';
|
|
9
12
|
import type { WorksheetComments } from './worksheet-comments.ts';
|
|
13
|
+
import type { WorksheetMerges } from './worksheet-merges.ts';
|
|
10
14
|
import type { ColumnProperties, RowProperties } from './worksheet.ts';
|
|
11
15
|
/**
|
|
12
16
|
* The sheet's autofilter, reached as a slot rather than held by reference like the containers beside
|
|
@@ -20,13 +24,24 @@ interface GridStorage {
|
|
|
20
24
|
readonly rows: Map<number, Map<number, Cell>>;
|
|
21
25
|
readonly rowProperties: Map<number, RowProperties>;
|
|
22
26
|
readonly columns: Map<number, ColumnProperties>;
|
|
23
|
-
readonly merges:
|
|
24
|
-
readonly mergeRects: MergeRect[];
|
|
27
|
+
readonly merges: WorksheetMerges;
|
|
25
28
|
readonly tables: Table[];
|
|
29
|
+
readonly pivotTables: readonly PivotTable[];
|
|
30
|
+
readonly loadedPivotTables: ParsedPivotTable[];
|
|
26
31
|
readonly images: AnchoredImage[];
|
|
27
32
|
readonly dataValidations: DataValidationOverlay;
|
|
28
33
|
readonly conditionalFormattings: ConditionalFormattingOverlay;
|
|
34
|
+
readonly hyperlinks: HyperlinkOverlay;
|
|
35
|
+
/** The sheet's name, which an unqualified reference in one of its formulas means. */
|
|
36
|
+
readonly sheetName: () => string;
|
|
37
|
+
/**
|
|
38
|
+
* What moves the formulas outside this sheet that name it: every other sheet's, and the workbook's
|
|
39
|
+
* defined names. `undefined` for a sheet no workbook holds.
|
|
40
|
+
*/
|
|
41
|
+
readonly formulaHost: () => ((edit: SheetSplice) => void) | undefined;
|
|
29
42
|
readonly comments: WorksheetComments;
|
|
43
|
+
readonly rowBreaks: PageBreak[];
|
|
44
|
+
readonly columnBreaks: PageBreak[];
|
|
30
45
|
readonly autoFilter: AutoFilterSlot;
|
|
31
46
|
}
|
|
32
47
|
export declare class GridEdits {
|
|
@@ -34,5 +49,17 @@ export declare class GridEdits {
|
|
|
34
49
|
constructor(storage: GridStorage);
|
|
35
50
|
spliceRows(start: number, count: number, inserted: Map<number, Cell>[]): void;
|
|
36
51
|
spliceColumns(start: number, count: number, inserts: CellValue[][]): void;
|
|
52
|
+
/**
|
|
53
|
+
* Move the references this sheet's formulas make to the sheet a splice changed, which may be this
|
|
54
|
+
* sheet or another: every cell formula, and every data validation's and conditional format's formula.
|
|
55
|
+
*
|
|
56
|
+
* A shared formula is described once, by its master, and each clone is that text translated to where
|
|
57
|
+
* the clone sits. A splice usually keeps that true, since the master, the clone and what they refer to
|
|
58
|
+
* all move together, but not always: an insert between the cells one clone refers to and the cells its
|
|
59
|
+
* master does grows one reference and not the other, and a delete can take the master and leave the
|
|
60
|
+
* clone. A clone the moved master no longer describes stops sharing and becomes a formula of its own,
|
|
61
|
+
* spelled as it was rewritten; the rest of the group keeps sharing.
|
|
62
|
+
*/
|
|
63
|
+
spliceFormulas(edit: SheetSplice): void;
|
|
37
64
|
}
|
|
38
65
|
export {};
|