@bilig/excel-import 0.14.14
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/LICENSE +1 -0
- package/README.md +165 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.js +748 -0
- package/dist/index.js.map +1 -0
- package/dist/workbook-import-content-types.d.ts +10 -0
- package/dist/workbook-import-content-types.js +30 -0
- package/dist/workbook-import-content-types.js.map +1 -0
- package/dist/workbook-import-helpers.d.ts +21 -0
- package/dist/workbook-import-helpers.js +77 -0
- package/dist/workbook-import-helpers.js.map +1 -0
- package/dist/workbook-import-preview.d.ts +19 -0
- package/dist/workbook-import-preview.js +12 -0
- package/dist/workbook-import-preview.js.map +1 -0
- package/dist/xlsx-array-formulas.d.ts +6 -0
- package/dist/xlsx-array-formulas.js +186 -0
- package/dist/xlsx-array-formulas.js.map +1 -0
- package/dist/xlsx-axis-entries.d.ts +3 -0
- package/dist/xlsx-axis-entries.js +90 -0
- package/dist/xlsx-axis-entries.js.map +1 -0
- package/dist/xlsx-calculation-settings.d.ts +9 -0
- package/dist/xlsx-calculation-settings.js +198 -0
- package/dist/xlsx-calculation-settings.js.map +1 -0
- package/dist/xlsx-cell-insertion.d.ts +11 -0
- package/dist/xlsx-cell-insertion.js +164 -0
- package/dist/xlsx-cell-insertion.js.map +1 -0
- package/dist/xlsx-cell-metadata.d.ts +15 -0
- package/dist/xlsx-cell-metadata.js +380 -0
- package/dist/xlsx-cell-metadata.js.map +1 -0
- package/dist/xlsx-chart-artifacts.d.ts +7 -0
- package/dist/xlsx-chart-artifacts.js +327 -0
- package/dist/xlsx-chart-artifacts.js.map +1 -0
- package/dist/xlsx-charts.d.ts +4 -0
- package/dist/xlsx-charts.js +671 -0
- package/dist/xlsx-charts.js.map +1 -0
- package/dist/xlsx-comment-vml.d.ts +11 -0
- package/dist/xlsx-comment-vml.js +292 -0
- package/dist/xlsx-comment-vml.js.map +1 -0
- package/dist/xlsx-comments.d.ts +7 -0
- package/dist/xlsx-comments.js +120 -0
- package/dist/xlsx-comments.js.map +1 -0
- package/dist/xlsx-conditional-formats.d.ts +5 -0
- package/dist/xlsx-conditional-formats.js +513 -0
- package/dist/xlsx-conditional-formats.js.map +1 -0
- package/dist/xlsx-control-artifacts.d.ts +7 -0
- package/dist/xlsx-control-artifacts.js +404 -0
- package/dist/xlsx-control-artifacts.js.map +1 -0
- package/dist/xlsx-data-model-artifacts.d.ts +4 -0
- package/dist/xlsx-data-model-artifacts.js +240 -0
- package/dist/xlsx-data-model-artifacts.js.map +1 -0
- package/dist/xlsx-data-table-formulas.d.ts +4 -0
- package/dist/xlsx-data-table-formulas.js +138 -0
- package/dist/xlsx-data-table-formulas.js.map +1 -0
- package/dist/xlsx-defined-names.d.ts +7 -0
- package/dist/xlsx-defined-names.js +292 -0
- package/dist/xlsx-defined-names.js.map +1 -0
- package/dist/xlsx-dimensions.d.ts +4 -0
- package/dist/xlsx-dimensions.js +495 -0
- package/dist/xlsx-dimensions.js.map +1 -0
- package/dist/xlsx-drawing-artifacts.d.ts +7 -0
- package/dist/xlsx-drawing-artifacts.js +477 -0
- package/dist/xlsx-drawing-artifacts.js.map +1 -0
- package/dist/xlsx-escaped-text.d.ts +2 -0
- package/dist/xlsx-escaped-text.js +22 -0
- package/dist/xlsx-escaped-text.js.map +1 -0
- package/dist/xlsx-export-xml.d.ts +8 -0
- package/dist/xlsx-export-xml.js +99 -0
- package/dist/xlsx-export-xml.js.map +1 -0
- package/dist/xlsx-export.d.ts +2 -0
- package/dist/xlsx-export.js +800 -0
- package/dist/xlsx-export.js.map +1 -0
- package/dist/xlsx-external-link-artifacts.d.ts +4 -0
- package/dist/xlsx-external-link-artifacts.js +317 -0
- package/dist/xlsx-external-link-artifacts.js.map +1 -0
- package/dist/xlsx-external-references.d.ts +29 -0
- package/dist/xlsx-external-references.js +356 -0
- package/dist/xlsx-external-references.js.map +1 -0
- package/dist/xlsx-filters.d.ts +4 -0
- package/dist/xlsx-filters.js +273 -0
- package/dist/xlsx-filters.js.map +1 -0
- package/dist/xlsx-formula-translation.d.ts +10 -0
- package/dist/xlsx-formula-translation.js +391 -0
- package/dist/xlsx-formula-translation.js.map +1 -0
- package/dist/xlsx-formulas.d.ts +2 -0
- package/dist/xlsx-formulas.js +136 -0
- package/dist/xlsx-formulas.js.map +1 -0
- package/dist/xlsx-freeze-panes.d.ts +4 -0
- package/dist/xlsx-freeze-panes.js +206 -0
- package/dist/xlsx-freeze-panes.js.map +1 -0
- package/dist/xlsx-hyperlinks.d.ts +5 -0
- package/dist/xlsx-hyperlinks.js +64 -0
- package/dist/xlsx-hyperlinks.js.map +1 -0
- package/dist/xlsx-ignored-errors.d.ts +4 -0
- package/dist/xlsx-ignored-errors.js +106 -0
- package/dist/xlsx-ignored-errors.js.map +1 -0
- package/dist/xlsx-import-cell-styles.d.ts +8 -0
- package/dist/xlsx-import-cell-styles.js +255 -0
- package/dist/xlsx-import-cell-styles.js.map +1 -0
- package/dist/xlsx-import-sheet-metadata.d.ts +40 -0
- package/dist/xlsx-import-sheet-metadata.js +41 -0
- package/dist/xlsx-import-sheet-metadata.js.map +1 -0
- package/dist/xlsx-import-warnings.d.ts +8 -0
- package/dist/xlsx-import-warnings.js +44 -0
- package/dist/xlsx-import-warnings.js.map +1 -0
- package/dist/xlsx-import-workbook-metadata.d.ts +28 -0
- package/dist/xlsx-import-workbook-metadata.js +29 -0
- package/dist/xlsx-import-workbook-metadata.js.map +1 -0
- package/dist/xlsx-macros.d.ts +10 -0
- package/dist/xlsx-macros.js +63 -0
- package/dist/xlsx-macros.js.map +1 -0
- package/dist/xlsx-merge-entries.d.ts +3 -0
- package/dist/xlsx-merge-entries.js +17 -0
- package/dist/xlsx-merge-entries.js.map +1 -0
- package/dist/xlsx-number-formats.d.ts +7 -0
- package/dist/xlsx-number-formats.js +222 -0
- package/dist/xlsx-number-formats.js.map +1 -0
- package/dist/xlsx-pivot-artifacts.d.ts +29 -0
- package/dist/xlsx-pivot-artifacts.js +292 -0
- package/dist/xlsx-pivot-artifacts.js.map +1 -0
- package/dist/xlsx-pivots.d.ts +10 -0
- package/dist/xlsx-pivots.js +589 -0
- package/dist/xlsx-pivots.js.map +1 -0
- package/dist/xlsx-print-page-setup.d.ts +6 -0
- package/dist/xlsx-print-page-setup.js +224 -0
- package/dist/xlsx-print-page-setup.js.map +1 -0
- package/dist/xlsx-printer-settings.d.ts +4 -0
- package/dist/xlsx-printer-settings.js +279 -0
- package/dist/xlsx-printer-settings.js.map +1 -0
- package/dist/xlsx-protected-ranges.d.ts +4 -0
- package/dist/xlsx-protected-ranges.js +183 -0
- package/dist/xlsx-protected-ranges.js.map +1 -0
- package/dist/xlsx-rich-text-artifacts.d.ts +4 -0
- package/dist/xlsx-rich-text-artifacts.js +303 -0
- package/dist/xlsx-rich-text-artifacts.js.map +1 -0
- package/dist/xlsx-sheet-properties.d.ts +4 -0
- package/dist/xlsx-sheet-properties.js +89 -0
- package/dist/xlsx-sheet-properties.js.map +1 -0
- package/dist/xlsx-sheet-protection.d.ts +4 -0
- package/dist/xlsx-sheet-protection.js +153 -0
- package/dist/xlsx-sheet-protection.js.map +1 -0
- package/dist/xlsx-sheet-visibility.d.ts +4 -0
- package/dist/xlsx-sheet-visibility.js +53 -0
- package/dist/xlsx-sheet-visibility.js.map +1 -0
- package/dist/xlsx-slicer-connection-artifacts.d.ts +4 -0
- package/dist/xlsx-slicer-connection-artifacts.js +426 -0
- package/dist/xlsx-slicer-connection-artifacts.js.map +1 -0
- package/dist/xlsx-sorts.d.ts +5 -0
- package/dist/xlsx-sorts.js +216 -0
- package/dist/xlsx-sorts.js.map +1 -0
- package/dist/xlsx-sparklines.d.ts +4 -0
- package/dist/xlsx-sparklines.js +115 -0
- package/dist/xlsx-sparklines.js.map +1 -0
- package/dist/xlsx-style-only-blank-cells.d.ts +3 -0
- package/dist/xlsx-style-only-blank-cells.js +96 -0
- package/dist/xlsx-style-only-blank-cells.js.map +1 -0
- package/dist/xlsx-style-runs.d.ts +12 -0
- package/dist/xlsx-style-runs.js +35 -0
- package/dist/xlsx-style-runs.js.map +1 -0
- package/dist/xlsx-styles.d.ts +25 -0
- package/dist/xlsx-styles.js +857 -0
- package/dist/xlsx-styles.js.map +1 -0
- package/dist/xlsx-tab-colors.d.ts +4 -0
- package/dist/xlsx-tab-colors.js +166 -0
- package/dist/xlsx-tab-colors.js.map +1 -0
- package/dist/xlsx-tables.d.ts +4 -0
- package/dist/xlsx-tables.js +371 -0
- package/dist/xlsx-tables.js.map +1 -0
- package/dist/xlsx-theme-artifacts.d.ts +6 -0
- package/dist/xlsx-theme-artifacts.js +126 -0
- package/dist/xlsx-theme-artifacts.js.map +1 -0
- package/dist/xlsx-threaded-comment-artifacts.d.ts +8 -0
- package/dist/xlsx-threaded-comment-artifacts.js +329 -0
- package/dist/xlsx-threaded-comment-artifacts.js.map +1 -0
- package/dist/xlsx-validations.d.ts +4 -0
- package/dist/xlsx-validations.js +542 -0
- package/dist/xlsx-validations.js.map +1 -0
- package/dist/xlsx-view-state.d.ts +8 -0
- package/dist/xlsx-view-state.js +144 -0
- package/dist/xlsx-view-state.js.map +1 -0
- package/dist/xlsx-workbook-properties.d.ts +5 -0
- package/dist/xlsx-workbook-properties.js +388 -0
- package/dist/xlsx-workbook-properties.js.map +1 -0
- package/dist/xlsx-workbook-protection.d.ts +4 -0
- package/dist/xlsx-workbook-protection.js +147 -0
- package/dist/xlsx-workbook-protection.js.map +1 -0
- package/dist/xlsx-workbook-sheet-paths.d.ts +4 -0
- package/dist/xlsx-workbook-sheet-paths.js +96 -0
- package/dist/xlsx-workbook-sheet-paths.js.map +1 -0
- package/dist/xlsx-worksheet-cells.d.ts +16 -0
- package/dist/xlsx-worksheet-cells.js +104 -0
- package/dist/xlsx-worksheet-cells.js.map +1 -0
- package/dist/xlsx-worksheet-text-values.d.ts +2 -0
- package/dist/xlsx-worksheet-text-values.js +136 -0
- package/dist/xlsx-worksheet-text-values.js.map +1 -0
- package/dist/xlsx-zip.d.ts +6 -0
- package/dist/xlsx-zip.js +12 -0
- package/dist/xlsx-zip.js.map +1 -0
- package/package.json +56 -0
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
import * as XLSX from 'xlsx';
|
|
2
|
+
function normalizeA1Address(value) {
|
|
3
|
+
const normalized = value.trim().replace(/\$/g, '').toUpperCase();
|
|
4
|
+
if (!/^[A-Z]+[1-9][0-9]*$/.test(normalized)) {
|
|
5
|
+
return null;
|
|
6
|
+
}
|
|
7
|
+
try {
|
|
8
|
+
return XLSX.utils.encode_cell(XLSX.utils.decode_cell(normalized));
|
|
9
|
+
}
|
|
10
|
+
catch {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
function absoluteA1Address(value) {
|
|
15
|
+
const normalized = normalizeA1Address(value);
|
|
16
|
+
if (!normalized) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
const match = /^([A-Z]+)([1-9][0-9]*)$/.exec(normalized);
|
|
20
|
+
return match ? `$${match[1]}$${match[2]}` : null;
|
|
21
|
+
}
|
|
22
|
+
function parseQuotedSheetReference(value) {
|
|
23
|
+
if (!value.startsWith("'")) {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
let sheetName = '';
|
|
27
|
+
for (let index = 1; index < value.length; index += 1) {
|
|
28
|
+
const character = value[index];
|
|
29
|
+
if (character === "'" && value[index + 1] === "'") {
|
|
30
|
+
sheetName += "'";
|
|
31
|
+
index += 1;
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
if (character === "'" && value[index + 1] === '!') {
|
|
35
|
+
const reference = value.slice(index + 2).trim();
|
|
36
|
+
return sheetName.trim().length > 0 && reference.length > 0 ? { sheetName, reference } : null;
|
|
37
|
+
}
|
|
38
|
+
sheetName += character;
|
|
39
|
+
}
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
function parseSheetReference(value) {
|
|
43
|
+
const quoted = parseQuotedSheetReference(value);
|
|
44
|
+
if (quoted) {
|
|
45
|
+
return quoted;
|
|
46
|
+
}
|
|
47
|
+
const separatorIndex = value.indexOf('!');
|
|
48
|
+
if (separatorIndex <= 0) {
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
const sheetName = value.slice(0, separatorIndex).trim();
|
|
52
|
+
const reference = value.slice(separatorIndex + 1).trim();
|
|
53
|
+
return sheetName.length > 0 && reference.length > 0 ? { sheetName, reference } : null;
|
|
54
|
+
}
|
|
55
|
+
function normalizeColumnReference(value) {
|
|
56
|
+
const normalized = value.trim().replace(/\$/g, '').toUpperCase();
|
|
57
|
+
if (!/^[A-Z]+$/.test(normalized)) {
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
try {
|
|
61
|
+
return XLSX.utils.encode_col(XLSX.utils.decode_col(normalized));
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
function normalizeRowReference(value) {
|
|
68
|
+
const normalized = value.trim().replace(/\$/g, '');
|
|
69
|
+
if (!/^[1-9][0-9]*$/.test(normalized)) {
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
const row = Number.parseInt(normalized, 10);
|
|
73
|
+
return Number.isSafeInteger(row) && row > 0 ? row : null;
|
|
74
|
+
}
|
|
75
|
+
function readImportedSheetBounds(workbook) {
|
|
76
|
+
const bounds = new Map();
|
|
77
|
+
for (const sheetName of workbook.SheetNames) {
|
|
78
|
+
const sheet = workbook.Sheets[sheetName];
|
|
79
|
+
if (!sheet?.['!ref']) {
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
try {
|
|
83
|
+
const decoded = XLSX.utils.decode_range(sheet['!ref']);
|
|
84
|
+
bounds.set(sheetName, {
|
|
85
|
+
endRow: Math.max(decoded.e.r, 0),
|
|
86
|
+
endCol: Math.max(decoded.e.c, 0),
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
catch {
|
|
90
|
+
// Invalid worksheet dimensions should not prevent formula-preserving name import.
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return bounds;
|
|
94
|
+
}
|
|
95
|
+
function parseBoundedWholeColumnReference(sheetName, start, end, sheetBoundsByName) {
|
|
96
|
+
const startColumn = normalizeColumnReference(start);
|
|
97
|
+
const endColumn = normalizeColumnReference(end);
|
|
98
|
+
const sheetBounds = sheetBoundsByName.get(sheetName);
|
|
99
|
+
if (!startColumn || !endColumn || !sheetBounds) {
|
|
100
|
+
return null;
|
|
101
|
+
}
|
|
102
|
+
return {
|
|
103
|
+
kind: 'range-ref',
|
|
104
|
+
sheetName,
|
|
105
|
+
startAddress: `${startColumn}1`,
|
|
106
|
+
endAddress: XLSX.utils.encode_cell({ r: sheetBounds.endRow, c: XLSX.utils.decode_col(endColumn) }),
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
function parseBoundedWholeRowReference(sheetName, start, end, sheetBoundsByName) {
|
|
110
|
+
const startRow = normalizeRowReference(start);
|
|
111
|
+
const endRow = normalizeRowReference(end);
|
|
112
|
+
const sheetBounds = sheetBoundsByName.get(sheetName);
|
|
113
|
+
if (!startRow || !endRow || !sheetBounds) {
|
|
114
|
+
return null;
|
|
115
|
+
}
|
|
116
|
+
return {
|
|
117
|
+
kind: 'range-ref',
|
|
118
|
+
sheetName,
|
|
119
|
+
startAddress: XLSX.utils.encode_cell({ r: startRow - 1, c: 0 }),
|
|
120
|
+
endAddress: XLSX.utils.encode_cell({ r: endRow - 1, c: sheetBounds.endCol }),
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
function parseDefinedNameReferenceValue(sheetName, reference, sheetBoundsByName) {
|
|
124
|
+
const parts = reference.split(':');
|
|
125
|
+
if (parts.length === 1) {
|
|
126
|
+
const address = normalizeA1Address(parts[0] ?? '');
|
|
127
|
+
return address ? { kind: 'cell-ref', sheetName, address } : null;
|
|
128
|
+
}
|
|
129
|
+
if (parts.length === 2) {
|
|
130
|
+
const startAddress = normalizeA1Address(parts[0] ?? '');
|
|
131
|
+
const endAddress = normalizeA1Address(parts[1] ?? '');
|
|
132
|
+
if (startAddress && endAddress) {
|
|
133
|
+
return { kind: 'range-ref', sheetName, startAddress, endAddress };
|
|
134
|
+
}
|
|
135
|
+
return (parseBoundedWholeColumnReference(sheetName, parts[0] ?? '', parts[1] ?? '', sheetBoundsByName) ??
|
|
136
|
+
parseBoundedWholeRowReference(sheetName, parts[0] ?? '', parts[1] ?? '', sheetBoundsByName));
|
|
137
|
+
}
|
|
138
|
+
return null;
|
|
139
|
+
}
|
|
140
|
+
function parseDefinedNameScalarValue(value) {
|
|
141
|
+
const trimmed = value.trim();
|
|
142
|
+
if (/^[+-]?(?:(?:[0-9]+(?:\.[0-9]*)?)|(?:\.[0-9]+))(?:[eE][+-]?[0-9]+)?$/.test(trimmed)) {
|
|
143
|
+
const numberValue = Number(trimmed);
|
|
144
|
+
return Number.isFinite(numberValue) ? { kind: 'scalar', value: numberValue } : null;
|
|
145
|
+
}
|
|
146
|
+
if (/^TRUE$/i.test(trimmed)) {
|
|
147
|
+
return { kind: 'scalar', value: true };
|
|
148
|
+
}
|
|
149
|
+
if (/^FALSE$/i.test(trimmed)) {
|
|
150
|
+
return { kind: 'scalar', value: false };
|
|
151
|
+
}
|
|
152
|
+
if (trimmed.startsWith('"') && trimmed.endsWith('"')) {
|
|
153
|
+
return { kind: 'scalar', value: trimmed.slice(1, -1).replace(/""/g, '"') };
|
|
154
|
+
}
|
|
155
|
+
return null;
|
|
156
|
+
}
|
|
157
|
+
function parseImportedDefinedNameValue(ref, sheetBoundsByName) {
|
|
158
|
+
const trimmed = ref.trim();
|
|
159
|
+
if (trimmed.length === 0) {
|
|
160
|
+
return null;
|
|
161
|
+
}
|
|
162
|
+
const expression = trimmed.startsWith('=') ? trimmed.slice(1).trim() : trimmed;
|
|
163
|
+
const sheetReference = parseSheetReference(expression);
|
|
164
|
+
if (sheetReference && !sheetReference.sheetName.startsWith('[')) {
|
|
165
|
+
const parsedReference = parseDefinedNameReferenceValue(sheetReference.sheetName, sheetReference.reference, sheetBoundsByName);
|
|
166
|
+
if (parsedReference) {
|
|
167
|
+
return parsedReference;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
const scalar = parseDefinedNameScalarValue(expression);
|
|
171
|
+
if (scalar) {
|
|
172
|
+
return scalar;
|
|
173
|
+
}
|
|
174
|
+
return { kind: 'formula', formula: trimmed.startsWith('=') ? trimmed : `=${trimmed}` };
|
|
175
|
+
}
|
|
176
|
+
function isBuiltInPrintDefinedName(name) {
|
|
177
|
+
const normalized = name.trim().toLocaleLowerCase('en-US');
|
|
178
|
+
return normalized === '_xlnm.print_area' || normalized === '_xlnm.print_titles';
|
|
179
|
+
}
|
|
180
|
+
function parseImportedPrintDefinedNameValue(ref) {
|
|
181
|
+
const trimmed = ref.trim();
|
|
182
|
+
return trimmed.length > 0 ? { kind: 'formula', formula: trimmed.startsWith('=') ? trimmed : `=${trimmed}` } : null;
|
|
183
|
+
}
|
|
184
|
+
function importedDefinedNameKey(name, scopeSheetName) {
|
|
185
|
+
return `${scopeSheetName ?? '<workbook>'}\u0000${name.toUpperCase()}`;
|
|
186
|
+
}
|
|
187
|
+
function compareImportedDefinedNames(left, right) {
|
|
188
|
+
return left.name.localeCompare(right.name) || (left.scopeSheetName ?? '').localeCompare(right.scopeSheetName ?? '');
|
|
189
|
+
}
|
|
190
|
+
export function readImportedDefinedNames(workbook) {
|
|
191
|
+
const entries = workbook.Workbook?.Names;
|
|
192
|
+
if (!Array.isArray(entries) || entries.length === 0) {
|
|
193
|
+
return { definedNames: undefined, ignoredCount: 0 };
|
|
194
|
+
}
|
|
195
|
+
const definedNamesByKey = new Map();
|
|
196
|
+
const sheetBoundsByName = readImportedSheetBounds(workbook);
|
|
197
|
+
let ignoredCount = 0;
|
|
198
|
+
for (const entry of entries) {
|
|
199
|
+
const name = typeof entry.Name === 'string' ? entry.Name.trim() : '';
|
|
200
|
+
const ref = typeof entry.Ref === 'string' ? entry.Ref.trim() : '';
|
|
201
|
+
const scopeSheetName = typeof entry.Sheet === 'number' ? workbook.SheetNames[entry.Sheet] : undefined;
|
|
202
|
+
if (name.length === 0 || ref.length === 0 || (typeof entry.Sheet === 'number' && scopeSheetName === undefined)) {
|
|
203
|
+
ignoredCount += 1;
|
|
204
|
+
continue;
|
|
205
|
+
}
|
|
206
|
+
const value = isBuiltInPrintDefinedName(name)
|
|
207
|
+
? parseImportedPrintDefinedNameValue(ref)
|
|
208
|
+
: parseImportedDefinedNameValue(ref, sheetBoundsByName);
|
|
209
|
+
if (!value) {
|
|
210
|
+
ignoredCount += 1;
|
|
211
|
+
continue;
|
|
212
|
+
}
|
|
213
|
+
definedNamesByKey.set(importedDefinedNameKey(name, scopeSheetName), {
|
|
214
|
+
name,
|
|
215
|
+
...(scopeSheetName !== undefined ? { scopeSheetName } : {}),
|
|
216
|
+
value,
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
const definedNames = [...definedNamesByKey.values()].toSorted(compareImportedDefinedNames);
|
|
220
|
+
return {
|
|
221
|
+
definedNames: definedNames.length > 0 ? definedNames : undefined,
|
|
222
|
+
ignoredCount,
|
|
223
|
+
};
|
|
224
|
+
}
|
|
225
|
+
function quoteDefinedNameSheetName(sheetName) {
|
|
226
|
+
return `'${sheetName.replace(/'/g, "''")}'`;
|
|
227
|
+
}
|
|
228
|
+
function exportDefinedNameSheetReference(sheetName, reference, exportSheetNamesByOriginalName) {
|
|
229
|
+
const exportSheetName = exportSheetNamesByOriginalName.get(sheetName);
|
|
230
|
+
return exportSheetName ? `${quoteDefinedNameSheetName(exportSheetName)}!${reference}` : null;
|
|
231
|
+
}
|
|
232
|
+
function formatExportLiteralDefinedNameValue(value) {
|
|
233
|
+
if (typeof value === 'number') {
|
|
234
|
+
return Number.isFinite(value) ? String(value) : null;
|
|
235
|
+
}
|
|
236
|
+
if (typeof value === 'boolean') {
|
|
237
|
+
return value ? 'TRUE' : 'FALSE';
|
|
238
|
+
}
|
|
239
|
+
if (typeof value === 'string') {
|
|
240
|
+
if (value.startsWith('=')) {
|
|
241
|
+
return value.slice(1).trim();
|
|
242
|
+
}
|
|
243
|
+
return `"${value.replace(/"/g, '""')}"`;
|
|
244
|
+
}
|
|
245
|
+
return '""';
|
|
246
|
+
}
|
|
247
|
+
function formatExportDefinedNameValue(value, exportSheetNamesByOriginalName) {
|
|
248
|
+
if (typeof value !== 'object' || value === null) {
|
|
249
|
+
return formatExportLiteralDefinedNameValue(value);
|
|
250
|
+
}
|
|
251
|
+
switch (value.kind) {
|
|
252
|
+
case 'scalar':
|
|
253
|
+
return formatExportLiteralDefinedNameValue(value.value);
|
|
254
|
+
case 'cell-ref': {
|
|
255
|
+
const address = absoluteA1Address(value.address);
|
|
256
|
+
return address ? exportDefinedNameSheetReference(value.sheetName, address, exportSheetNamesByOriginalName) : null;
|
|
257
|
+
}
|
|
258
|
+
case 'range-ref': {
|
|
259
|
+
const startAddress = absoluteA1Address(value.startAddress);
|
|
260
|
+
const endAddress = absoluteA1Address(value.endAddress);
|
|
261
|
+
return startAddress && endAddress
|
|
262
|
+
? exportDefinedNameSheetReference(value.sheetName, `${startAddress}:${endAddress}`, exportSheetNamesByOriginalName)
|
|
263
|
+
: null;
|
|
264
|
+
}
|
|
265
|
+
case 'formula':
|
|
266
|
+
return value.formula.startsWith('=') ? value.formula.slice(1).trim() : value.formula.trim();
|
|
267
|
+
case 'structured-ref':
|
|
268
|
+
return value.columnName.trim().length > 0 ? `${value.tableName}[${value.columnName}]` : value.tableName;
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
export function buildExportDefinedNames(definedNames, exportSheetNamesByOriginalName, exportSheetIndexesByOriginalName) {
|
|
272
|
+
if (!definedNames || definedNames.length === 0) {
|
|
273
|
+
return undefined;
|
|
274
|
+
}
|
|
275
|
+
const output = [];
|
|
276
|
+
for (const definedName of definedNames) {
|
|
277
|
+
const name = definedName.name.trim();
|
|
278
|
+
if (name.length === 0) {
|
|
279
|
+
continue;
|
|
280
|
+
}
|
|
281
|
+
const ref = formatExportDefinedNameValue(definedName.value, exportSheetNamesByOriginalName);
|
|
282
|
+
if (ref && ref.length > 0) {
|
|
283
|
+
const scopeSheetIndex = definedName.scopeSheetName ? exportSheetIndexesByOriginalName.get(definedName.scopeSheetName) : undefined;
|
|
284
|
+
if (definedName.scopeSheetName && scopeSheetIndex === undefined) {
|
|
285
|
+
continue;
|
|
286
|
+
}
|
|
287
|
+
output.push({ Name: name, Ref: ref, ...(scopeSheetIndex !== undefined ? { Sheet: scopeSheetIndex } : {}) });
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
return output.length > 0 ? output : undefined;
|
|
291
|
+
}
|
|
292
|
+
//# sourceMappingURL=xlsx-defined-names.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xlsx-defined-names.js","sourceRoot":"","sources":["../src/xlsx-defined-names.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { SheetMetadataSnapshot, WorkbookSnapshot } from '@bilig/protocol';
|
|
2
|
+
export declare function hasExportWorksheetDimensions(snapshot: WorkbookSnapshot): boolean;
|
|
3
|
+
export declare function applyExportWorksheetDimensionsToWorksheetXml(sheetXml: string, metadata: SheetMetadataSnapshot | undefined): string;
|
|
4
|
+
export declare function addExportWorksheetDimensionsToXlsxBytes(bytes: Uint8Array, snapshot: WorkbookSnapshot): Uint8Array;
|