@omegagrid/plugin-xlsx 0.6.26 → 0.6.28
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/dist/editorPlugin.js +1 -27
- package/dist/export.d.ts.map +1 -1
- package/dist/export.js +1 -378
- package/dist/export.js.map +1 -1
- package/dist/import.js +1 -182
- package/dist/index.js +1 -8
- package/dist/loader.d.ts +0 -1
- package/dist/loader.d.ts.map +1 -1
- package/dist/loader.js +1 -21
- package/dist/loader.js.map +1 -1
- package/dist/types.js +1 -3
- package/package.json +4 -4
package/dist/editorPlugin.js
CHANGED
|
@@ -1,27 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { createModel } from './import';
|
|
3
|
-
import { createWorkbook, exportXLSX } from './export';
|
|
4
|
-
import { SheetjsLoader } from './loader';
|
|
5
|
-
export class XlsxEditorPlugin extends Plugin {
|
|
6
|
-
init(editor) {
|
|
7
|
-
SheetjsLoader.get();
|
|
8
|
-
editor.commands.register({
|
|
9
|
-
section: 'plugin',
|
|
10
|
-
name: 'export xlsx',
|
|
11
|
-
fn: async () => {
|
|
12
|
-
const models = editor.getGridContainer().model.models;
|
|
13
|
-
const wb = await createWorkbook(Array.from(models, item => item[1]));
|
|
14
|
-
exportXLSX(wb, 'export.xlsx');
|
|
15
|
-
}
|
|
16
|
-
});
|
|
17
|
-
editor.addEventListener('drop', async (e) => {
|
|
18
|
-
e.preventDefault();
|
|
19
|
-
if (e.dataTransfer.files.length) {
|
|
20
|
-
const file = e.dataTransfer.files[0];
|
|
21
|
-
editor.setSourceData(await createModel(file));
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
XlsxEditorPlugin.pluginName = 'xlsx';
|
|
27
|
-
//# sourceMappingURL=editorPlugin.js.map
|
|
1
|
+
import{Plugin}from"@omegagrid/core";import{createModel}from"./import";import{createWorkbook,exportXLSX}from"./export";import{SheetjsLoader}from"./loader";export class XlsxEditorPlugin extends Plugin{init(e){SheetjsLoader.get(),e.commands.register({section:"plugin",name:"export xlsx",fn:async()=>{const r=e.getGridContainer().model.models,o=await createWorkbook(Array.from(r,(e=>e[1])));exportXLSX(o,"export.xlsx")}}),e.addEventListener("drop",(async r=>{if(r.preventDefault(),r.dataTransfer.files.length){const o=r.dataTransfer.files[0];e.setSourceData(await createModel(o))}}))}}XlsxEditorPlugin.pluginName="xlsx";
|
package/dist/export.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../src/export.ts"],"names":[],"mappings":"AACA,OAAO,EACQ,SAAS,EACvB,KAAK,IAAI,OAAO,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,KAAK,EAA8B,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAGnH,OAAO,KAAK,MAAM,MAAM,MAAM,CAAC;AAC/B,OAAO,KAAK,EACX,UAAU,EAAE,OAAO,EAAiB,KAAK,EAAE,OAAO,EAClD,QAAQ,EAAE,SAAS,EACnB,MAAM,MAAM,CAAC;AAsCd,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,GAAI,OAAO,EAAE,CAO9F;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,GAAI,OAAO,EAAE,CAW3F;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,GAAI,KAAK,EAAE,CA0B3F;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,GAAI,UAAU,EAAE,EAAE,CAyBvG;AAsBD,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CA0BlD;AAgBD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,aAAa,GAAI,UAAU,EAAE,EAAE,CAsFlG;AAYD,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,SAAS,GAAI,iBAAiB,EAAE,CAiBrF;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,SAAS,GAAI,OAAO,GAAG,OAAO,CAO9E;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,SAAS,GAAI,MAAM,GAAG,OAAO,CAOhF;AAQD,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,aAAa,GAAI,SAAS,
|
|
1
|
+
{"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../src/export.ts"],"names":[],"mappings":"AACA,OAAO,EACQ,SAAS,EACvB,KAAK,IAAI,OAAO,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,KAAK,EAA8B,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAGnH,OAAO,KAAK,MAAM,MAAM,MAAM,CAAC;AAC/B,OAAO,KAAK,EACX,UAAU,EAAE,OAAO,EAAiB,KAAK,EAAE,OAAO,EAClD,QAAQ,EAAE,SAAS,EACnB,MAAM,MAAM,CAAC;AAsCd,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,GAAI,OAAO,EAAE,CAO9F;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,GAAI,OAAO,EAAE,CAW3F;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,GAAI,KAAK,EAAE,CA0B3F;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,GAAI,UAAU,EAAE,EAAE,CAyBvG;AAsBD,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CA0BlD;AAgBD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,aAAa,GAAI,UAAU,EAAE,EAAE,CAsFlG;AAYD,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,SAAS,GAAI,iBAAiB,EAAE,CAiBrF;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,SAAS,GAAI,OAAO,GAAG,OAAO,CAO9E;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,SAAS,GAAI,MAAM,GAAG,OAAO,CAOhF;AAQD,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,aAAa,GAAI,SAAS,CA2B3F;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,mBAAmB,EAAE,EAAE,aAAa,CAAC,EAAE,aAAa,4BAyBhG;AAED,wBAAsB,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAE,MAAa,gBAMrE"}
|
package/dist/export.js
CHANGED
|
@@ -1,378 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { encodeColumn, CalculationModel, isLogicalOperator, CellRange } from '@omegagrid/grid';
|
|
3
|
-
import { SheetjsLoader } from './loader';
|
|
4
|
-
const DEFAULT_BORDER_COLOR = 'aaaaaa';
|
|
5
|
-
const DEFAULT_BORDER_STYLE = {
|
|
6
|
-
bottom: { style: 'thin', color: DEFAULT_BORDER_COLOR },
|
|
7
|
-
top: { style: 'thin', color: DEFAULT_BORDER_COLOR },
|
|
8
|
-
right: { style: 'thin', color: DEFAULT_BORDER_COLOR },
|
|
9
|
-
left: { style: 'thin', color: DEFAULT_BORDER_COLOR }
|
|
10
|
-
};
|
|
11
|
-
const DEFAULT_EXPORT_OPTIONS = {
|
|
12
|
-
exportHiddenRows: true,
|
|
13
|
-
exportHiddenColumns: true,
|
|
14
|
-
gridLines: true,
|
|
15
|
-
defaultBorders: false,
|
|
16
|
-
dropdownCells: 'value'
|
|
17
|
-
};
|
|
18
|
-
const headerCellStyle = {
|
|
19
|
-
alignment: { vertical: 'center', horizontal: 'center' },
|
|
20
|
-
bold: true
|
|
21
|
-
};
|
|
22
|
-
const cellTypeMap = {
|
|
23
|
-
'g': 'n',
|
|
24
|
-
'b': 'b',
|
|
25
|
-
't': 's',
|
|
26
|
-
'n': 'n',
|
|
27
|
-
'd': 'd',
|
|
28
|
-
'dt': 'd',
|
|
29
|
-
's': 's',
|
|
30
|
-
'm': 's',
|
|
31
|
-
'tm': 's',
|
|
32
|
-
'h': 's',
|
|
33
|
-
'a': 'z',
|
|
34
|
-
};
|
|
35
|
-
export function getWorksheetColumns(model, exportOptions) {
|
|
36
|
-
const sourceColumns = exportOptions.exportHiddenColumns ? model.columns : model.visibleColumns;
|
|
37
|
-
return sourceColumns.map(column => ({
|
|
38
|
-
level: column.level,
|
|
39
|
-
wpx: column.width,
|
|
40
|
-
hidden: column.visibleIndex == null || model.visibleColumns[column.visibleIndex] != column
|
|
41
|
-
}));
|
|
42
|
-
}
|
|
43
|
-
export function getWorksheetRows(model, exportOptions) {
|
|
44
|
-
const sourceRows = exportOptions.exportHiddenRows ? model.rows : model.visibleRows;
|
|
45
|
-
const offset = model.headerCount;
|
|
46
|
-
const rows = new Array(sourceRows.length + offset);
|
|
47
|
-
[...Array(offset).keys()].map(r => rows[r] = { level: 0 });
|
|
48
|
-
sourceRows.map((row, r) => rows[r + offset] = {
|
|
49
|
-
level: row.level,
|
|
50
|
-
hpt: row.height * 0.75,
|
|
51
|
-
hidden: row.visibleIndex == null || model.visibleRows[row.visibleIndex] != row
|
|
52
|
-
});
|
|
53
|
-
return rows;
|
|
54
|
-
}
|
|
55
|
-
export function getWorksheetMerges(model, exportOptions) {
|
|
56
|
-
const offset = model.headerCount;
|
|
57
|
-
// TODO - add same logic for rows
|
|
58
|
-
const colIndex = exportOptions.exportHiddenColumns
|
|
59
|
-
? (cell) => cell.c
|
|
60
|
-
: (cell) => model.columns[cell.c].visibleIndex;
|
|
61
|
-
const hiddenCells = model.hiddenCells;
|
|
62
|
-
const mergedCells = [];
|
|
63
|
-
model.mergedCells.forEach(cell => {
|
|
64
|
-
if (hiddenCells.get(cell.r)?.get(cell.c))
|
|
65
|
-
return;
|
|
66
|
-
mergedCells.push({
|
|
67
|
-
s: { c: colIndex(cell), r: cell.r + offset },
|
|
68
|
-
e: { c: colIndex(cell) + cell.cs - 1, r: cell.r + offset + cell.rs - 1 }
|
|
69
|
-
});
|
|
70
|
-
});
|
|
71
|
-
model.mergedHeaders.forEach(cell => {
|
|
72
|
-
if (cell.h?.hidden)
|
|
73
|
-
return;
|
|
74
|
-
mergedCells.push({
|
|
75
|
-
s: { c: colIndex(cell), r: cell.r },
|
|
76
|
-
e: { c: colIndex(cell) + cell.cs - 1, r: cell.r + cell.rs - 1 }
|
|
77
|
-
});
|
|
78
|
-
});
|
|
79
|
-
return mergedCells;
|
|
80
|
-
}
|
|
81
|
-
export function getWorksheetHeaderCells(model, exportOptions) {
|
|
82
|
-
const count = model.headerCount;
|
|
83
|
-
const sourceColumns = exportOptions.exportHiddenColumns ? model.columns : model.visibleColumns;
|
|
84
|
-
const defaultBorder = getDefaultBorderStyle(exportOptions);
|
|
85
|
-
return [...Array(count).keys()].map(r => sourceColumns.map((column) => {
|
|
86
|
-
const header = column.header[r];
|
|
87
|
-
const cell = { t: header ? 's' : 'z', s: headerCellStyle };
|
|
88
|
-
if (header) {
|
|
89
|
-
if (header.html)
|
|
90
|
-
cell.h = `<span>${header.label}</span>`;
|
|
91
|
-
else if (header.label != null)
|
|
92
|
-
cell.v = header.label;
|
|
93
|
-
else
|
|
94
|
-
cell.t = 'z';
|
|
95
|
-
}
|
|
96
|
-
if (defaultBorder) {
|
|
97
|
-
if (!cell.s)
|
|
98
|
-
cell.s = {};
|
|
99
|
-
cell.s = Object.assign({}, defaultBorder, cell.s);
|
|
100
|
-
}
|
|
101
|
-
if (header._style != null) {
|
|
102
|
-
cell.s = Object.assign({}, cell.s, convertStyle(model.styles.get(header._style)));
|
|
103
|
-
}
|
|
104
|
-
return cell;
|
|
105
|
-
}));
|
|
106
|
-
}
|
|
107
|
-
function convertStyleColor(color) {
|
|
108
|
-
return { rgb: color };
|
|
109
|
-
}
|
|
110
|
-
function convertStyleBorder(border) {
|
|
111
|
-
return {
|
|
112
|
-
style: border.style,
|
|
113
|
-
color: convertStyleColor(border.color)
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
function convertStyleCellBorder(border) {
|
|
117
|
-
const s = {};
|
|
118
|
-
if (border.bottom)
|
|
119
|
-
s.bottom = convertStyleBorder(border.bottom);
|
|
120
|
-
if (border.top)
|
|
121
|
-
s.top = convertStyleBorder(border.top);
|
|
122
|
-
if (border.right)
|
|
123
|
-
s.right = convertStyleBorder(border.right);
|
|
124
|
-
if (border.left)
|
|
125
|
-
s.left = convertStyleBorder(border.left);
|
|
126
|
-
return s;
|
|
127
|
-
}
|
|
128
|
-
export function convertStyle(style) {
|
|
129
|
-
const s = {};
|
|
130
|
-
if (style.color)
|
|
131
|
-
s.color = convertStyleColor(style.color);
|
|
132
|
-
if (style.bgColor)
|
|
133
|
-
s.bgColor = convertStyleColor(style.bgColor);
|
|
134
|
-
if (style.fgColor)
|
|
135
|
-
s.fgColor = convertStyleColor(style.fgColor);
|
|
136
|
-
if (style.patternType)
|
|
137
|
-
s.patternType = style.patternType;
|
|
138
|
-
if (style.alignment)
|
|
139
|
-
s.alignment = style.alignment;
|
|
140
|
-
if (style.bold != null)
|
|
141
|
-
s.bold = style.bold;
|
|
142
|
-
if (style.sz)
|
|
143
|
-
s.sz = style.sz;
|
|
144
|
-
if (style.bottom)
|
|
145
|
-
s.bottom = convertStyleBorder(style.bottom);
|
|
146
|
-
if (style.top)
|
|
147
|
-
s.top = convertStyleBorder(style.top);
|
|
148
|
-
if (style.right)
|
|
149
|
-
s.right = convertStyleBorder(style.right);
|
|
150
|
-
if (style.left)
|
|
151
|
-
s.left = convertStyleBorder(style.left);
|
|
152
|
-
if (style.angle != null)
|
|
153
|
-
s.angle = style.angle;
|
|
154
|
-
if (style.stops)
|
|
155
|
-
s.stops = style.stops.map(stop => ({
|
|
156
|
-
v: stop.v,
|
|
157
|
-
rgb: stop.rgb
|
|
158
|
-
}));
|
|
159
|
-
return s;
|
|
160
|
-
}
|
|
161
|
-
function updateIndent(cellModel, cell) {
|
|
162
|
-
const indent = cellModel.calculatedIndent;
|
|
163
|
-
if (indent > 0) {
|
|
164
|
-
if (!cell.s)
|
|
165
|
-
cell.s = {};
|
|
166
|
-
if (!cell.s.alignment)
|
|
167
|
-
cell.s.alignment = {};
|
|
168
|
-
cell.s.alignment.indent = indent;
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
function getDefaultBorderStyle(exportOptions) {
|
|
172
|
-
const defaultBorder = exportOptions.defaultBorders === true ? DEFAULT_BORDER_STYLE : exportOptions.defaultBorders;
|
|
173
|
-
return defaultBorder ? convertStyleCellBorder(defaultBorder) : null;
|
|
174
|
-
}
|
|
175
|
-
export function getWorksheetCells(model, exportOptions) {
|
|
176
|
-
exportOptions = getExportOptions(exportOptions);
|
|
177
|
-
const hOffset = model.headerCount;
|
|
178
|
-
const calculations = new CalculationModel(model);
|
|
179
|
-
const data = new Array(hOffset + model.rows.length);
|
|
180
|
-
const styles = new Map();
|
|
181
|
-
const defaultBorder = getDefaultBorderStyle(exportOptions);
|
|
182
|
-
const defaultDateFormat = model.options.dateFormat || 'yyyy-MM-dd';
|
|
183
|
-
const dropdowDisplayValue = exportOptions.dropdownCells == 'displayValue';
|
|
184
|
-
getWorksheetHeaderCells(model, exportOptions).forEach((row, r) => data[r] = row);
|
|
185
|
-
const sourceRows = exportOptions.exportHiddenRows ? model.rows : model.visibleRows;
|
|
186
|
-
const sourceColumns = exportOptions.exportHiddenColumns ? model.columns : model.visibleColumns;
|
|
187
|
-
sourceRows.forEach((row, r) => data[r + hOffset] = sourceColumns.map((column) => {
|
|
188
|
-
const cellModel = row.cell(column.index);
|
|
189
|
-
const t = cellTypeMap[cellModel.type];
|
|
190
|
-
const cellObj = { t: cellModel.hasValue ? t : 'z' };
|
|
191
|
-
if (cellModel.hasFormula) {
|
|
192
|
-
if (hOffset > 0) {
|
|
193
|
-
// TODO - shift connected models
|
|
194
|
-
cellObj.f = calculations.getFormula(cellModel).clone().shift({ index: 0, offset: hOffset, direction: 'down' }).toExcelString();
|
|
195
|
-
}
|
|
196
|
-
else {
|
|
197
|
-
cellObj.f = (calculations
|
|
198
|
-
? calculations.getFormula(cellModel).toExcelString()
|
|
199
|
-
: cellModel.formula);
|
|
200
|
-
}
|
|
201
|
-
}
|
|
202
|
-
else if (cellModel.hasValue && !cellModel.isSpilled) {
|
|
203
|
-
if (cellObj.t == 's') {
|
|
204
|
-
cellObj.v = dropdowDisplayValue ? cellModel.formattedValue.toString() : cellModel.value.toString();
|
|
205
|
-
}
|
|
206
|
-
else if (cellObj.t != 'z') {
|
|
207
|
-
cellObj.v = cellModel.value;
|
|
208
|
-
}
|
|
209
|
-
if (cellModel.type == 'g') {
|
|
210
|
-
if (utils.isString(cellObj.v)) {
|
|
211
|
-
cellObj.t = 's';
|
|
212
|
-
}
|
|
213
|
-
else {
|
|
214
|
-
cellObj.t = 'n';
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
else if (cellModel.type == 'd') {
|
|
218
|
-
if (utils.isNumber(cellObj.v)) {
|
|
219
|
-
cellObj.t = 'n';
|
|
220
|
-
cellObj.z = defaultDateFormat;
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
// html: cell.h = `<span>${cellModel.value}</span>`;
|
|
224
|
-
}
|
|
225
|
-
const style = cellModel.composedStyle;
|
|
226
|
-
if (style) {
|
|
227
|
-
if (!styles.has(style.id))
|
|
228
|
-
styles.set(style.id, convertStyle(style));
|
|
229
|
-
cellObj.s = { ...styles.get(style.id) };
|
|
230
|
-
}
|
|
231
|
-
updateIndent(cellModel, cellObj);
|
|
232
|
-
if (cellModel.hasComment) {
|
|
233
|
-
const comments = cellModel.model.comments.get(cellModel.address);
|
|
234
|
-
cellObj.c = comments.filter(comment => (comment.text ?? "").length > 0).map(comment => ({
|
|
235
|
-
a: comment.author ? (comment.author.name ?? comment.author.id) : '',
|
|
236
|
-
t: comment.text
|
|
237
|
-
}));
|
|
238
|
-
cellObj.c.hidden = true;
|
|
239
|
-
} // else if (cellModel.hasTooltip) {}
|
|
240
|
-
if (cellObj.z == null) {
|
|
241
|
-
if (cellObj.t == 'n') {
|
|
242
|
-
cellObj.z = cellModel.format ?? 'General';
|
|
243
|
-
}
|
|
244
|
-
else if (cellObj.t == 'd') {
|
|
245
|
-
cellObj.z = cellModel.format ?? defaultDateFormat;
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
if ((cellObj.t == 'n' || cellObj.t == 'd') && cellObj.z == null) {
|
|
249
|
-
cellObj.z = cellModel.format ?? (cellObj.t == 'd' ? defaultDateFormat : 'General');
|
|
250
|
-
}
|
|
251
|
-
if (defaultBorder) {
|
|
252
|
-
if (!cellObj.s)
|
|
253
|
-
cellObj.s = {};
|
|
254
|
-
cellObj.s = Object.assign({}, defaultBorder, cellObj.s);
|
|
255
|
-
}
|
|
256
|
-
return cellObj;
|
|
257
|
-
}));
|
|
258
|
-
return data;
|
|
259
|
-
}
|
|
260
|
-
function convertConditionalFormatBoundry(cb, def) {
|
|
261
|
-
if (!cb && !def)
|
|
262
|
-
return null;
|
|
263
|
-
cb = Object.assign({}, def, cb);
|
|
264
|
-
return {
|
|
265
|
-
t: cb.t,
|
|
266
|
-
v: cb.v,
|
|
267
|
-
color: convertStyleColor(cb.color)
|
|
268
|
-
};
|
|
269
|
-
}
|
|
270
|
-
export function getWorksheetConditionalFormats(model) {
|
|
271
|
-
const hOffset = model.headerCount;
|
|
272
|
-
return model.conditionalFormats.getSourceData().map((item) => {
|
|
273
|
-
return {
|
|
274
|
-
ref: CellRange.fromA1s(item.ranges).map(range => range.shiftDown(0, hOffset, null, true).A1).join(' '),
|
|
275
|
-
t: item.type,
|
|
276
|
-
f: item.condition && isLogicalOperator(item.condition[0]) ? ('A1' + item.condition) : (item.condition ?? null),
|
|
277
|
-
s: item.style ? convertStyle(item.style) : null,
|
|
278
|
-
stop: item.stop,
|
|
279
|
-
cmin: convertConditionalFormatBoundry(item.cmin, (item.type == 'bar' ? { t: 'min', color: item.color } : null)),
|
|
280
|
-
cmid: item.cmid ? convertConditionalFormatBoundry(item.cmid, { v: 50, t: 'percentile' }) : null,
|
|
281
|
-
cmax: convertConditionalFormatBoundry(item.cmax, (item.type == 'bar' ? { t: 'max', color: item.color } : null)),
|
|
282
|
-
color: convertStyleColor(item.color),
|
|
283
|
-
v: item.v,
|
|
284
|
-
thresh: item.thresh
|
|
285
|
-
};
|
|
286
|
-
});
|
|
287
|
-
}
|
|
288
|
-
export function detectOutlineRowDirection(model) {
|
|
289
|
-
if (model.options.rowTree.reversed == null) {
|
|
290
|
-
if (model.rows.length < 2)
|
|
291
|
-
return 'above';
|
|
292
|
-
return model.rows[0].level > model.rows[1].level ? 'below' : 'above';
|
|
293
|
-
}
|
|
294
|
-
else {
|
|
295
|
-
return model.options.rowTree.reversed ? 'below' : 'above';
|
|
296
|
-
}
|
|
297
|
-
}
|
|
298
|
-
export function detectOutlineColumnDirection(model) {
|
|
299
|
-
if (model.options.columnTree.reversed == null) {
|
|
300
|
-
if (model.columns.length < 2)
|
|
301
|
-
return 'left';
|
|
302
|
-
return model.columns[0].level > model.columns[1].level ? 'right' : 'left';
|
|
303
|
-
}
|
|
304
|
-
else {
|
|
305
|
-
return model.options.columnTree.reversed ? 'right' : 'left';
|
|
306
|
-
}
|
|
307
|
-
}
|
|
308
|
-
const getExportOptions = (exportOptions) => {
|
|
309
|
-
const options = Object.assign({}, DEFAULT_EXPORT_OPTIONS, exportOptions);
|
|
310
|
-
if (options.defaultBorders)
|
|
311
|
-
options.defaultBorders = DEFAULT_BORDER_STYLE;
|
|
312
|
-
return options;
|
|
313
|
-
};
|
|
314
|
-
export function createWorksheet(model, exportOptions) {
|
|
315
|
-
exportOptions = getExportOptions(exportOptions);
|
|
316
|
-
const ws = {};
|
|
317
|
-
ws['!cols'] = getWorksheetColumns(model, exportOptions);
|
|
318
|
-
ws['!rows'] = getWorksheetRows(model, exportOptions);
|
|
319
|
-
ws['!merges'] = getWorksheetMerges(model, exportOptions);
|
|
320
|
-
ws['!condfmt'] = getWorksheetConditionalFormats(model);
|
|
321
|
-
ws['!outline'] = {
|
|
322
|
-
'above': detectOutlineRowDirection(model) == 'above',
|
|
323
|
-
'left': detectOutlineColumnDirection(model) == 'left'
|
|
324
|
-
};
|
|
325
|
-
if (model.options.freezeLeft || model.options.freezeTop) {
|
|
326
|
-
ws['!freeze'] = `${encodeColumn(model.options.freezeLeft)}${model.headerCount + model.options.freezeTop + 1}`;
|
|
327
|
-
}
|
|
328
|
-
else if (model.headerCount > 0) {
|
|
329
|
-
ws['!freeze'] = `A${model.headerCount + 1}`;
|
|
330
|
-
}
|
|
331
|
-
ws['!gridlines'] = exportOptions.gridLines;
|
|
332
|
-
ws['!print'] = {};
|
|
333
|
-
// if (model.tab?.color) ws['!tabcolor'] = convertStyleColor(model.tab.color); // does not work?
|
|
334
|
-
// if (autoFilterStart) {
|
|
335
|
-
// ws['!autofilter'] = {ref: autoFilterStart + ":" + autoFilterEnd};
|
|
336
|
-
// }
|
|
337
|
-
return ws;
|
|
338
|
-
}
|
|
339
|
-
export async function createWorkbook(models, exportOptions) {
|
|
340
|
-
const sheetjsPromise = SheetjsLoader.get();
|
|
341
|
-
const XLSX = sheetjsPromise instanceof Promise ? await sheetjsPromise : sheetjsPromise;
|
|
342
|
-
exportOptions = getExportOptions(exportOptions);
|
|
343
|
-
const wb = XLSX.utils.book_new();
|
|
344
|
-
models.forEach((m, i) => {
|
|
345
|
-
m.calculations.evaluateAll();
|
|
346
|
-
const modelExportOptions = { ...exportOptions, ...m.exportOptions };
|
|
347
|
-
const ws = XLSX.utils.sheet_add_aoa(createWorksheet(m, modelExportOptions), getWorksheetCells(m, modelExportOptions));
|
|
348
|
-
// ws["!protect"] = {};
|
|
349
|
-
let name = m.name || `Sheet${i + 1}`;
|
|
350
|
-
m.name = name;
|
|
351
|
-
if (name.length > 31)
|
|
352
|
-
name = name.substring(0, 31);
|
|
353
|
-
XLSX.utils.book_append_sheet(wb, ws, name);
|
|
354
|
-
});
|
|
355
|
-
wb.Workbook = wb.Workbook || {};
|
|
356
|
-
// wb.Workbook.Protection = { lockStructure: true };
|
|
357
|
-
// worksheet properties within workbook
|
|
358
|
-
models.forEach(m => {
|
|
359
|
-
const index = wb.SheetNames.indexOf(m.name);
|
|
360
|
-
if (index < 0)
|
|
361
|
-
return;
|
|
362
|
-
if (!wb.Workbook.Sheets)
|
|
363
|
-
wb.Workbook.Sheets = [];
|
|
364
|
-
if (!wb.Workbook.Sheets[index])
|
|
365
|
-
wb.Workbook.Sheets[index] = {};
|
|
366
|
-
if (m.tab?.hidden)
|
|
367
|
-
wb.Workbook.Sheets[index].Hidden = 1;
|
|
368
|
-
});
|
|
369
|
-
return wb;
|
|
370
|
-
}
|
|
371
|
-
export async function exportXLSX(wb, filename = null) {
|
|
372
|
-
const sheetjsPromise = SheetjsLoader.get();
|
|
373
|
-
const XLSX = sheetjsPromise instanceof Promise ? await sheetjsPromise : sheetjsPromise;
|
|
374
|
-
return filename
|
|
375
|
-
? XLSX.writeFile(wb, filename, { cellStyles: true, bookSST: true })
|
|
376
|
-
: XLSX.writeXLSX(wb, { cellStyles: true, bookSST: true, type: 'buffer' });
|
|
377
|
-
}
|
|
378
|
-
//# sourceMappingURL=export.js.map
|
|
1
|
+
import{utils}from"@omegagrid/core";import{encodeColumn,CalculationModel,isLogicalOperator,CellRange}from"@omegagrid/grid";import{SheetjsLoader}from"./loader";const DEFAULT_BORDER_COLOR="aaaaaa",DEFAULT_BORDER_STYLE={bottom:{style:"thin",color:"aaaaaa"},top:{style:"thin",color:"aaaaaa"},right:{style:"thin",color:"aaaaaa"},left:{style:"thin",color:"aaaaaa"}},DEFAULT_EXPORT_OPTIONS={exportHiddenRows:!0,exportHiddenColumns:!0,gridLines:!0,defaultBorders:!1,dropdownCells:"value"},headerCellStyle={alignment:{vertical:"center",horizontal:"center"},bold:!0},cellTypeMap={g:"n",b:"b",t:"s",n:"n",d:"d",dt:"d",s:"s",m:"s",tm:"s",h:"s",a:"z"};export function getWorksheetColumns(e,t){return(t.exportHiddenColumns?e.columns:e.visibleColumns).map((t=>({level:t.level,wpx:t.width,hidden:null==t.visibleIndex||e.visibleColumns[t.visibleIndex]!=t})))}export function getWorksheetRows(e,t){const o=t.exportHiddenRows?e.rows:e.visibleRows,r=e.headerCount,n=new Array(o.length+r);return[...Array(r).keys()].map((e=>n[e]={level:0})),o.map(((t,o)=>n[o+r]={level:t.level,hpt:.75*t.height,hidden:null==t.visibleIndex||e.visibleRows[t.visibleIndex]!=t})),n}export function getWorksheetMerges(e,t){const o=e.headerCount,r=t.exportHiddenColumns?e=>e.c:t=>e.columns[t.c].visibleIndex,n=e.hiddenCells,l=[];return e.mergedCells.forEach((e=>{n.get(e.r)?.get(e.c)||l.push({s:{c:r(e),r:e.r+o},e:{c:r(e)+e.cs-1,r:e.r+o+e.rs-1}})})),e.mergedHeaders.forEach((e=>{e.h?.hidden||l.push({s:{c:r(e),r:e.r},e:{c:r(e)+e.cs-1,r:e.r+e.rs-1}})})),l}export function getWorksheetHeaderCells(e,t){const o=e.headerCount,r=t.exportHiddenColumns?e.columns:e.visibleColumns,n=getDefaultBorderStyle(t);return[...Array(o).keys()].map((t=>r.map((o=>{const r=o.header[t],l={t:r?"s":"z",s:headerCellStyle};return r&&(r.html?l.h=`<span>${r.label}</span>`:null!=r.label?l.v=r.label:l.t="z"),n&&(l.s||(l.s={}),l.s=Object.assign({},n,l.s)),null!=r._style&&(l.s=Object.assign({},l.s,convertStyle(e.styles.get(r._style)))),l}))))}function convertStyleColor(e){return{rgb:e}}function convertStyleBorder(e){return{style:e.style,color:convertStyleColor(e.color)}}function convertStyleCellBorder(e){const t={};return e.bottom&&(t.bottom=convertStyleBorder(e.bottom)),e.top&&(t.top=convertStyleBorder(e.top)),e.right&&(t.right=convertStyleBorder(e.right)),e.left&&(t.left=convertStyleBorder(e.left)),t}export function convertStyle(e){const t={};return e.color&&(t.color=convertStyleColor(e.color)),e.bgColor&&(t.bgColor=convertStyleColor(e.bgColor)),e.fgColor&&(t.fgColor=convertStyleColor(e.fgColor)),e.patternType&&(t.patternType=e.patternType),e.alignment&&(t.alignment=e.alignment),null!=e.bold&&(t.bold=e.bold),e.sz&&(t.sz=e.sz),e.bottom&&(t.bottom=convertStyleBorder(e.bottom)),e.top&&(t.top=convertStyleBorder(e.top)),e.right&&(t.right=convertStyleBorder(e.right)),e.left&&(t.left=convertStyleBorder(e.left)),null!=e.angle&&(t.angle=e.angle),e.stops&&(t.stops=e.stops.map((e=>({v:e.v,rgb:e.rgb})))),t}function updateIndent(e,t){const o=e.calculatedIndent;o>0&&(t.s||(t.s={}),t.s.alignment||(t.s.alignment={}),t.s.alignment.indent=o)}function getDefaultBorderStyle(e){const t=!0===e.defaultBorders?DEFAULT_BORDER_STYLE:e.defaultBorders;return t?convertStyleCellBorder(t):null}export function getWorksheetCells(e,t){t=getExportOptions(t);const o=e.headerCount,r=new CalculationModel(e),n=new Array(o+e.rows.length),l=new Map,s=getDefaultBorderStyle(t),i=e.options.dateFormat||"yyyy-MM-dd",a="displayValue"==t.dropdownCells;getWorksheetHeaderCells(e,t).forEach(((e,t)=>n[t]=e));const c=t.exportHiddenRows?e.rows:e.visibleRows,d=t.exportHiddenColumns?e.columns:e.visibleColumns;return c.forEach(((e,t)=>n[t+o]=d.map((t=>{const n=e.cell(t.index),c=cellTypeMap[n.type],d={t:n.hasValue?c:"z"};n.hasFormula?d.f=o>0?r.getFormula(n).clone().shift({index:0,offset:o,direction:"down"}).toExcelString():r?r.getFormula(n).toExcelString():n.formula:n.hasValue&&!n.isSpilled&&("s"==d.t?d.v=a?n.formattedValue.toString():n.value.toString():"z"!=d.t&&(d.v=n.value),"g"==n.type?utils.isString(d.v)?d.t="s":d.t="n":"d"==n.type&&utils.isNumber(d.v)&&(d.t="n",d.z=i));const u=n.composedStyle;if(u&&(l.has(u.id)||l.set(u.id,convertStyle(u)),d.s={...l.get(u.id)}),updateIndent(n,d),n.hasComment){const e=n.model.comments.get(n.address);d.c=e.filter((e=>(e.text??"").length>0)).map((e=>({a:e.author?e.author.name??e.author.id:"",t:e.text}))),d.c.hidden=!0}return null==d.z&&("n"==d.t?d.z=n.format??"General":"d"==d.t&&(d.z=n.format??i)),"n"!=d.t&&"d"!=d.t||null!=d.z||(d.z=n.format??("d"==d.t?i:"General")),s&&(d.s||(d.s={}),d.s=Object.assign({},s,d.s)),d})))),n}function convertConditionalFormatBoundry(e,t){return e||t?{t:(e=Object.assign({},t,e)).t,v:e.v,color:convertStyleColor(e.color)}:null}export function getWorksheetConditionalFormats(e){const t=e.headerCount;return e.conditionalFormats.getSourceData().map((e=>({ref:CellRange.fromA1s(e.ranges).map((e=>e.shiftDown(0,t,null,!0).A1)).join(" "),t:e.type,f:e.condition&&isLogicalOperator(e.condition[0])?"A1"+e.condition:e.condition??null,s:e.style?convertStyle(e.style):null,stop:e.stop,cmin:convertConditionalFormatBoundry(e.cmin,"bar"==e.type?{t:"min",color:e.color}:null),cmid:e.cmid?convertConditionalFormatBoundry(e.cmid,{v:50,t:"percentile"}):null,cmax:convertConditionalFormatBoundry(e.cmax,"bar"==e.type?{t:"max",color:e.color}:null),color:convertStyleColor(e.color),v:e.v,thresh:e.thresh})))}export function detectOutlineRowDirection(e){return null==e.options.rowTree.reversed?e.rows.length<2?"above":e.rows[0].level>e.rows[1].level?"below":"above":e.options.rowTree.reversed?"below":"above"}export function detectOutlineColumnDirection(e){return null==e.options.columnTree.reversed?e.columns.length<2?"left":e.columns[0].level>e.columns[1].level?"right":"left":e.options.columnTree.reversed?"right":"left"}const getExportOptions=e=>{const t=Object.assign({},DEFAULT_EXPORT_OPTIONS,e);return t.defaultBorders&&(t.defaultBorders=DEFAULT_BORDER_STYLE),t};export function createWorksheet(e,t){t=getExportOptions(t);const o={};return o["!cols"]=getWorksheetColumns(e,t),o["!rows"]=getWorksheetRows(e,t),o["!merges"]=getWorksheetMerges(e,t),o["!condfmt"]=getWorksheetConditionalFormats(e),o["!outline"]={above:"above"==detectOutlineRowDirection(e),left:"left"==detectOutlineColumnDirection(e)},e.options.freezeLeft||e.options.freezeTop?o["!freeze"]=`${encodeColumn(e.options.freezeLeft)}${e.headerCount+e.options.freezeTop+1}`:e.headerCount>0&&(o["!freeze"]=`A${e.headerCount+1}`),o["!gridlines"]=t.gridLines,o["!print"]={},o}export async function createWorkbook(e,t){const o=SheetjsLoader.get(),r=o instanceof Promise?await o:o;t=getExportOptions(t);const n=r.utils.book_new();return e.forEach(((e,o)=>{e.calculations.evaluateAll();const l={...t,...e.exportOptions},s=r.utils.sheet_add_aoa(createWorksheet(e,l),getWorksheetCells(e,l));let i=e.name||`Sheet${o+1}`;i.length>31&&(i=i.substring(0,31)),r.utils.book_append_sheet(n,s,i)})),n.Workbook=n.Workbook||{},n}export async function exportXLSX(e,t=null){const o=SheetjsLoader.get(),r=o instanceof Promise?await o:o;return t?r.writeFile(e,t,{cellStyles:!0,bookSST:!0}):r.writeXLSX(e,{cellStyles:!0,bookSST:!0,type:"buffer"})}
|
package/dist/export.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.js","sourceRoot":"","sources":["../src/export.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../src/export.ts"],"names":[],"mappings":"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"}
|
package/dist/import.js
CHANGED
|
@@ -1,182 +1 @@
|
|
|
1
|
-
import { numbers }
|
|
2
|
-
import { SheetjsLoader } from './loader';
|
|
3
|
-
import { CellRange, stripFormulaPrefix } from '@omegagrid/grid';
|
|
4
|
-
const cellTypeMap = {
|
|
5
|
-
'b': 'b',
|
|
6
|
-
's': 't',
|
|
7
|
-
'n': 'n',
|
|
8
|
-
'd': 'd',
|
|
9
|
-
'z': 'g',
|
|
10
|
-
'e': 't'
|
|
11
|
-
};
|
|
12
|
-
function convertStyleColor(color) {
|
|
13
|
-
return color.rgb;
|
|
14
|
-
}
|
|
15
|
-
function convertStyleBorder(border) {
|
|
16
|
-
return {
|
|
17
|
-
color: convertStyleColor(border.color),
|
|
18
|
-
style: border.style
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
function convertStyle(style) {
|
|
22
|
-
const s = {};
|
|
23
|
-
if (style.color)
|
|
24
|
-
s.color = convertStyleColor(style.color);
|
|
25
|
-
if (style.bgColor)
|
|
26
|
-
s.bgColor = convertStyleColor(style.bgColor);
|
|
27
|
-
if (style.fgColor)
|
|
28
|
-
s.fgColor = convertStyleColor(style.fgColor);
|
|
29
|
-
if (!s.fgColor && s.color == '000000')
|
|
30
|
-
s.color = null;
|
|
31
|
-
if (style.alignment)
|
|
32
|
-
s.alignment = style.alignment;
|
|
33
|
-
if (style.bold)
|
|
34
|
-
s.bold = style.bold;
|
|
35
|
-
if (style.sz)
|
|
36
|
-
s.sz = style.sz;
|
|
37
|
-
if (style.top)
|
|
38
|
-
s.top = convertStyleBorder(style.top);
|
|
39
|
-
if (style.bottom)
|
|
40
|
-
s.bottom = convertStyleBorder(style.bottom);
|
|
41
|
-
if (style.left)
|
|
42
|
-
s.left = convertStyleBorder(style.left);
|
|
43
|
-
if (style.right)
|
|
44
|
-
s.right = convertStyleBorder(style.right);
|
|
45
|
-
return s;
|
|
46
|
-
}
|
|
47
|
-
function getGridCells(ws) {
|
|
48
|
-
const cells = [];
|
|
49
|
-
const merges = new Map();
|
|
50
|
-
(ws['!merges'] ?? []).forEach(m => {
|
|
51
|
-
const range = new CellRange(m.s.c, m.s.r);
|
|
52
|
-
merges.set(range.A1, { c: m.s.c, cs: m.e.c - m.s.c + 1, r: m.s.r, rs: m.e.r - m.s.r + 1 });
|
|
53
|
-
});
|
|
54
|
-
for (const address in ws) {
|
|
55
|
-
if (address[0] == '!')
|
|
56
|
-
continue;
|
|
57
|
-
const cellObj = ws[address];
|
|
58
|
-
const range = CellRange.fromA1(address);
|
|
59
|
-
const cell = { r: range.r1, c: range.c1, t: cellTypeMap[cellObj.t] };
|
|
60
|
-
const merge = merges.get(address);
|
|
61
|
-
if (merge) {
|
|
62
|
-
cell.cs = merge.cs;
|
|
63
|
-
cell.rs = merge.rs;
|
|
64
|
-
}
|
|
65
|
-
if (cellObj.s)
|
|
66
|
-
cell.s = convertStyle(cellObj.s);
|
|
67
|
-
if (cellObj.f)
|
|
68
|
-
cell.f = stripFormulaPrefix(cellObj.f);
|
|
69
|
-
else
|
|
70
|
-
cell.v = cellObj.v;
|
|
71
|
-
if (['n', 'd'].includes(cellObj.t) && cellObj.z != null && cellObj.z != 'General') {
|
|
72
|
-
cell.z = numbers.fixNumberFormat(cellObj.z, 'd');
|
|
73
|
-
}
|
|
74
|
-
cells.push(cell);
|
|
75
|
-
}
|
|
76
|
-
return cells;
|
|
77
|
-
}
|
|
78
|
-
function getGridRows(ws, count) {
|
|
79
|
-
const srcRows = ws['!rows'] ?? [];
|
|
80
|
-
const rows = new Array(count);
|
|
81
|
-
let row;
|
|
82
|
-
for (let r = 0; r < count; r++) {
|
|
83
|
-
row = srcRows[r];
|
|
84
|
-
rows[r] = { l: (row ? row.level : 0) || 0, h: row ? row.hpx : null };
|
|
85
|
-
}
|
|
86
|
-
return rows;
|
|
87
|
-
}
|
|
88
|
-
function getGridColumns(ws, count) {
|
|
89
|
-
const srcCols = ws['!cols'] ?? [];
|
|
90
|
-
const columns = new Array(count);
|
|
91
|
-
let col;
|
|
92
|
-
for (let c = 0; c < count; c++) {
|
|
93
|
-
col = srcCols[c];
|
|
94
|
-
columns[c] = { l: (col ? col.level : 0) || 0, w: col ? col.wpx : null };
|
|
95
|
-
}
|
|
96
|
-
return columns;
|
|
97
|
-
}
|
|
98
|
-
function getConditionalStyles(ws) {
|
|
99
|
-
return ws['!condfmt']?.filter((item) => ['formula', 'scale', 'bar'].includes(item.t)).map((item) => {
|
|
100
|
-
const rule = {
|
|
101
|
-
type: item.t,
|
|
102
|
-
ranges: item.ref.toString().replace(/\s/g, ';')
|
|
103
|
-
};
|
|
104
|
-
rule.style = item.s ? convertStyle(item.s) : null;
|
|
105
|
-
rule.cmin = item.cmin ? { t: item.cmin.t, color: item.cmin.color ? convertStyleColor(item.cmin.color) : null } : null;
|
|
106
|
-
rule.cmid = item.cmid ? { t: item.cmid.t, color: item.cmid.color ? convertStyleColor(item.cmid.color) : null } : null;
|
|
107
|
-
rule.cmax = item.cmax ? { t: item.cmax.t, color: item.cmax.color ? convertStyleColor(item.cmax.color) : null } : null;
|
|
108
|
-
rule.color = item.color ? convertStyleColor(item.color) : null;
|
|
109
|
-
rule.condition = item.f;
|
|
110
|
-
rule.stop = true;
|
|
111
|
-
return rule;
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
function createGridModel(ws, names) {
|
|
115
|
-
const range = ws['!ref'] ? CellRange.fromA1(ws['!ref']) : CellRange.fromA1('A1:T100');
|
|
116
|
-
const source = {};
|
|
117
|
-
const options = {};
|
|
118
|
-
if (ws['!freeze']) {
|
|
119
|
-
const freezeRange = CellRange.fromA1(ws['!freeze']);
|
|
120
|
-
options.freezeLeft = freezeRange.c1;
|
|
121
|
-
options.freezeTop = freezeRange.r1;
|
|
122
|
-
}
|
|
123
|
-
source.options = options;
|
|
124
|
-
source.rows = getGridRows(ws, range.r2 + 1);
|
|
125
|
-
source.columns = getGridColumns(ws, range.c2 + 1);
|
|
126
|
-
source.cells = getGridCells(ws);
|
|
127
|
-
source.names = names;
|
|
128
|
-
source.rules = getConditionalStyles(ws);
|
|
129
|
-
return source;
|
|
130
|
-
}
|
|
131
|
-
export function getWorkbookNames(wb) {
|
|
132
|
-
const names = new Map();
|
|
133
|
-
wb.Workbook.Names.forEach(({ Name, Ref }) => {
|
|
134
|
-
const [sheet, address] = Ref.split('!');
|
|
135
|
-
if (!address)
|
|
136
|
-
return;
|
|
137
|
-
let map = names.get(sheet);
|
|
138
|
-
if (!map)
|
|
139
|
-
names.set(sheet, map = []);
|
|
140
|
-
const range = CellRange.fromA1(address);
|
|
141
|
-
if (range.c1Anchor && !range.r1Anchor) {
|
|
142
|
-
range.r1 = 0;
|
|
143
|
-
range.r2 = Infinity;
|
|
144
|
-
}
|
|
145
|
-
else if (!range.c1Anchor && range.r1Anchor) {
|
|
146
|
-
range.c1 = 0;
|
|
147
|
-
range.c2 = Infinity;
|
|
148
|
-
}
|
|
149
|
-
range.removeAnchors();
|
|
150
|
-
map.push({ name: Name, ref: range.A1 });
|
|
151
|
-
});
|
|
152
|
-
return names;
|
|
153
|
-
}
|
|
154
|
-
export async function createModel(file, options) {
|
|
155
|
-
performance.mark('start_import');
|
|
156
|
-
return createModelFromArrayBuffer(await file.arrayBuffer(), options);
|
|
157
|
-
}
|
|
158
|
-
export function createModelFromWorkbook(wb) {
|
|
159
|
-
const names = getWorkbookNames(wb);
|
|
160
|
-
performance.mark('sheets_start');
|
|
161
|
-
const modelSource = { models: [], layout: { items: [{ tabs: [] }] } };
|
|
162
|
-
for (const sheetName in wb.Sheets) {
|
|
163
|
-
performance.mark(`sheet_start_${sheetName}`);
|
|
164
|
-
modelSource.layout.items[0].tabs.push({ id: sheetName });
|
|
165
|
-
modelSource.models.push({
|
|
166
|
-
...createGridModel(wb.Sheets[sheetName], names.get(sheetName)),
|
|
167
|
-
name: sheetName
|
|
168
|
-
});
|
|
169
|
-
performance.mark(`sheet_end_${sheetName}`);
|
|
170
|
-
}
|
|
171
|
-
performance.mark('sheets_end');
|
|
172
|
-
return modelSource;
|
|
173
|
-
}
|
|
174
|
-
export async function createModelFromArrayBuffer(data, options) {
|
|
175
|
-
performance.mark('array_buffer');
|
|
176
|
-
const bytes = data instanceof ArrayBuffer ? new Uint8Array(data) : data;
|
|
177
|
-
const XLSX = await SheetjsLoader.get();
|
|
178
|
-
const wb = XLSX.read(bytes, Object.assign({ cellNF: true, cellText: false, cellStyles: true, type: 'buffer' }, options || {}));
|
|
179
|
-
performance.mark('wb_read');
|
|
180
|
-
return createModelFromWorkbook(wb);
|
|
181
|
-
}
|
|
182
|
-
//# sourceMappingURL=import.js.map
|
|
1
|
+
import{numbers}from"@omegagrid/core";import{SheetjsLoader}from"./loader";import{CellRange,stripFormulaPrefix}from"@omegagrid/grid";const cellTypeMap={b:"b",s:"t",n:"n",d:"d",z:"g",e:"t"};function convertStyleColor(e){return e.rgb}function convertStyleBorder(e){return{color:convertStyleColor(e.color),style:e.style}}function convertStyle(e){const r={};return e.color&&(r.color=convertStyleColor(e.color)),e.bgColor&&(r.bgColor=convertStyleColor(e.bgColor)),e.fgColor&&(r.fgColor=convertStyleColor(e.fgColor)),r.fgColor||"000000"!=r.color||(r.color=null),e.alignment&&(r.alignment=e.alignment),e.bold&&(r.bold=e.bold),e.sz&&(r.sz=e.sz),e.top&&(r.top=convertStyleBorder(e.top)),e.bottom&&(r.bottom=convertStyleBorder(e.bottom)),e.left&&(r.left=convertStyleBorder(e.left)),e.right&&(r.right=convertStyleBorder(e.right)),r}function getGridCells(e){const r=[],o=new Map;(e["!merges"]??[]).forEach((e=>{const r=new CellRange(e.s.c,e.s.r);o.set(r.A1,{c:e.s.c,cs:e.e.c-e.s.c+1,r:e.s.r,rs:e.e.r-e.s.r+1})}));for(const t in e){if("!"==t[0])continue;const l=e[t],n=CellRange.fromA1(t),c={r:n.r1,c:n.c1,t:cellTypeMap[l.t]},s=o.get(t);s&&(c.cs=s.cs,c.rs=s.rs),l.s&&(c.s=convertStyle(l.s)),l.f?c.f=stripFormulaPrefix(l.f):c.v=l.v,["n","d"].includes(l.t)&&null!=l.z&&"General"!=l.z&&(c.z=numbers.fixNumberFormat(l.z,"d")),r.push(c)}return r}function getGridRows(e,r){const o=e["!rows"]??[],t=new Array(r);let l;for(let e=0;e<r;e++)l=o[e],t[e]={l:(l?l.level:0)||0,h:l?l.hpx:null};return t}function getGridColumns(e,r){const o=e["!cols"]??[],t=new Array(r);let l;for(let e=0;e<r;e++)l=o[e],t[e]={l:(l?l.level:0)||0,w:l?l.wpx:null};return t}function getConditionalStyles(e){return e["!condfmt"]?.filter((e=>["formula","scale","bar"].includes(e.t))).map((e=>{const r={type:e.t,ranges:e.ref.toString().replace(/\s/g,";")};return r.style=e.s?convertStyle(e.s):null,r.cmin=e.cmin?{t:e.cmin.t,color:e.cmin.color?convertStyleColor(e.cmin.color):null}:null,r.cmid=e.cmid?{t:e.cmid.t,color:e.cmid.color?convertStyleColor(e.cmid.color):null}:null,r.cmax=e.cmax?{t:e.cmax.t,color:e.cmax.color?convertStyleColor(e.cmax.color):null}:null,r.color=e.color?convertStyleColor(e.color):null,r.condition=e.f,r.stop=!0,r}))}function createGridModel(e,r){const o=e["!ref"]?CellRange.fromA1(e["!ref"]):CellRange.fromA1("A1:T100"),t={},l={};if(e["!freeze"]){const r=CellRange.fromA1(e["!freeze"]);l.freezeLeft=r.c1,l.freezeTop=r.r1}return t.options=l,t.rows=getGridRows(e,o.r2+1),t.columns=getGridColumns(e,o.c2+1),t.cells=getGridCells(e),t.names=r,t.rules=getConditionalStyles(e),t}export function getWorkbookNames(e){const r=new Map;return e.Workbook.Names.forEach((({Name:e,Ref:o})=>{const[t,l]=o.split("!");if(!l)return;let n=r.get(t);n||r.set(t,n=[]);const c=CellRange.fromA1(l);c.c1Anchor&&!c.r1Anchor?(c.r1=0,c.r2=1/0):!c.c1Anchor&&c.r1Anchor&&(c.c1=0,c.c2=1/0),c.removeAnchors(),n.push({name:e,ref:c.A1})})),r}export async function createModel(e,r){return performance.mark("start_import"),createModelFromArrayBuffer(await e.arrayBuffer(),r)}export function createModelFromWorkbook(e){const r=getWorkbookNames(e);performance.mark("sheets_start");const o={models:[],layout:{items:[{tabs:[]}]}};for(const t in e.Sheets)performance.mark(`sheet_start_${t}`),o.layout.items[0].tabs.push({id:t}),o.models.push({...createGridModel(e.Sheets[t],r.get(t)),name:t}),performance.mark(`sheet_end_${t}`);return performance.mark("sheets_end"),o}export async function createModelFromArrayBuffer(e,r){performance.mark("array_buffer");const o=e instanceof ArrayBuffer?new Uint8Array(e):e,t=(await SheetjsLoader.get()).read(o,Object.assign({cellNF:!0,cellText:!1,cellStyles:!0,type:"buffer"},r||{}));return performance.mark("wb_read"),createModelFromWorkbook(t)}
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1 @@
|
|
|
1
|
-
export
|
|
2
|
-
export * from './export';
|
|
3
|
-
export * from './import';
|
|
4
|
-
export * from './editorPlugin';
|
|
5
|
-
export * from './loader';
|
|
6
|
-
import { SheetjsLoader } from './loader';
|
|
7
|
-
export { SheetjsLoader as loader };
|
|
8
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
export*from"./types";export*from"./export";export*from"./import";export*from"./editorPlugin";export*from"./loader";import{SheetjsLoader}from"./loader";export{SheetjsLoader as loader};
|
package/dist/loader.d.ts
CHANGED
package/dist/loader.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,MAAM,CAAC;AAE/B,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QAClB,IAAI,EAAE,OAAO,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,MAAM,CAAC;AAE/B,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QAClB,IAAI,EAAE,OAAO,MAAM,CAAC;KACjB;CACJ;AAED,qBAAa,aAAa;IAEzB,MAAM,CAAC,IAAI,EAAE,OAAO,MAAM,CAAC;IAC3B,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;IAEpB,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM;WAIX,GAAG;IAKhB,MAAM,CAAC,OAAO;IAId,MAAM,CAAC,IAAI;CAgBX"}
|
package/dist/loader.js
CHANGED
|
@@ -1,21 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
export class SheetjsLoader {
|
|
3
|
-
static init(path) {
|
|
4
|
-
this.path = path;
|
|
5
|
-
}
|
|
6
|
-
static async get() {
|
|
7
|
-
if (!this.xlsx)
|
|
8
|
-
this.xlsx = await this.load();
|
|
9
|
-
return this.xlsx;
|
|
10
|
-
}
|
|
11
|
-
static getSync() {
|
|
12
|
-
return this.xlsx;
|
|
13
|
-
}
|
|
14
|
-
static load() {
|
|
15
|
-
if (!AMD.require)
|
|
16
|
-
throw new Error('AMDLoader is not initialized');
|
|
17
|
-
AMD.require.config({ paths: { 'xlsx': this.path + '/xlsx.full.min' } });
|
|
18
|
-
return new Promise(resolve => AMD.require(['xlsx'], () => resolve(self.XLSX)));
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
//# sourceMappingURL=loader.js.map
|
|
1
|
+
import{AMD}from"@omegagrid/core";export class SheetjsLoader{static init(t){this.path=t}static async get(){return this.xlsx||(this.xlsx=await this.load()),this.xlsx}static getSync(){return this.xlsx}static load(){if(!AMD.require)throw new Error("AMDLoader is not initialized");return AMD.require.config({paths:{sheetjs:this.path}}),new Promise((t=>{AMD.require(["sheetjs/xlsx.full.min"],(()=>{t(self.XLSX)}))}))}}
|
package/dist/loader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAStC,MAAM,OAAO,aAAa;IAKzB,MAAM,CAAC,IAAI,CAAC,IAAY;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,GAAG;QACf,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,IAAI,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,OAAO;QACb,OAAO,IAAI,CAAC,IAAI,CAAC;IAClB,CAAC;IAED,MAAM,CAAC,IAAI;QACV,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACjD,CAAC;QAED,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC;YAClB,KAAK,EAAE,EAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAC;SAC7B,CAAC,CAAC;QAEH,OAAO,IAAI,OAAO,CAAgB,CAAC,OAAO,EAAE,EAAE;YAC7C,GAAG,CAAC,OAAO,CAAC,CAAC,uBAAuB,CAAC,EAAE,GAAG,EAAE;gBAC3C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC;CAED"}
|
package/dist/types.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@omegagrid/plugin-xlsx",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.28",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"description": "Xlsx import/export plugin",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -27,9 +27,9 @@
|
|
|
27
27
|
"_prepublish": "yarn test && yarn lint"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@omegagrid/core": "^0.6.
|
|
31
|
-
"@omegagrid/editor": "^0.6.
|
|
32
|
-
"@omegagrid/grid": "^0.6.
|
|
30
|
+
"@omegagrid/core": "^0.6.28",
|
|
31
|
+
"@omegagrid/editor": "^0.6.28",
|
|
32
|
+
"@omegagrid/grid": "^0.6.28",
|
|
33
33
|
"lit": "^3.1.1",
|
|
34
34
|
"lit-html": "^3.1.1",
|
|
35
35
|
"ts-debounce": "^4.0.0"
|