@omegagrid/plugin-xlsx 0.6.27 → 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.
@@ -1,27 +1 @@
1
- import { Plugin } from '@omegagrid/core';
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";
@@ -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,CA4ElG;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,CA6B3F;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,mBAAmB,EAAE,EAAE,aAAa,CAAC,EAAE,aAAa,4BAoChG;AAED,wBAAsB,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAE,MAAa,gBAMrE"}
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,367 +1 @@
1
- import { utils } from '@omegagrid/core';
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
- if (cellModel.type == 'd') {
202
- cellObj.t = 'n';
203
- cellObj.z = cellModel.format ?? defaultDateFormat;
204
- }
205
- }
206
- else if (cellModel.hasValue && !cellModel.isSpilled) {
207
- if (cellObj.t == 's') {
208
- cellObj.v = dropdowDisplayValue ? cellModel.formattedValue.toString() : cellModel.value.toString();
209
- }
210
- else if (cellObj.t != 'z') {
211
- cellObj.v = cellModel.value;
212
- }
213
- if (cellModel.type == 'g') {
214
- cellObj.t = utils.isString(cellObj.v) ? 's' : 'n';
215
- }
216
- else if (cellModel.type == 'd') {
217
- if (utils.isNumber(cellObj.v))
218
- cellObj.t = 'n';
219
- }
220
- // html: cell.h = `<span>${cellModel.value}</span>`;
221
- }
222
- const style = cellModel.composedStyle;
223
- if (style) {
224
- if (!styles.has(style.id))
225
- styles.set(style.id, convertStyle(style));
226
- cellObj.s = { ...styles.get(style.id) };
227
- }
228
- updateIndent(cellModel, cellObj);
229
- if (cellModel.hasComment) {
230
- const comments = cellModel.model.comments.get(cellModel.address);
231
- cellObj.c = comments.filter(comment => (comment.text ?? "").length > 0).map(comment => ({
232
- a: comment.author ? (comment.author.name ?? comment.author.id) : '',
233
- t: comment.text
234
- }));
235
- cellObj.c.hidden = true;
236
- } // else if (cellModel.hasTooltip) {}
237
- if ((cellObj.t == 'n' || cellObj.t == 'd') && cellObj.z == null) {
238
- cellObj.z = cellModel.format ?? (cellObj.t == 'd' ? defaultDateFormat : 'General');
239
- }
240
- if (defaultBorder) {
241
- if (!cellObj.s)
242
- cellObj.s = {};
243
- cellObj.s = Object.assign({}, defaultBorder, cellObj.s);
244
- }
245
- return cellObj;
246
- }));
247
- return data;
248
- }
249
- function convertConditionalFormatBoundry(cb, def) {
250
- if (!cb && !def)
251
- return null;
252
- cb = Object.assign({}, def, cb);
253
- return {
254
- t: cb.t,
255
- v: cb.v,
256
- color: convertStyleColor(cb.color)
257
- };
258
- }
259
- export function getWorksheetConditionalFormats(model) {
260
- const hOffset = model.headerCount;
261
- return model.conditionalFormats.getSourceData().map((item) => {
262
- return {
263
- ref: CellRange.fromA1s(item.ranges).map(range => range.shiftDown(0, hOffset, null, true).A1).join(' '),
264
- t: item.type,
265
- f: item.condition && isLogicalOperator(item.condition[0]) ? ('A1' + item.condition) : (item.condition ?? null),
266
- s: item.style ? convertStyle(item.style) : null,
267
- stop: item.stop,
268
- cmin: convertConditionalFormatBoundry(item.cmin, (item.type == 'bar' ? { t: 'min', color: item.color } : null)),
269
- cmid: item.cmid ? convertConditionalFormatBoundry(item.cmid, { v: 50, t: 'percentile' }) : null,
270
- cmax: convertConditionalFormatBoundry(item.cmax, (item.type == 'bar' ? { t: 'max', color: item.color } : null)),
271
- color: convertStyleColor(item.color),
272
- v: item.v,
273
- thresh: item.thresh
274
- };
275
- });
276
- }
277
- export function detectOutlineRowDirection(model) {
278
- if (model.options.rowTree.reversed == null) {
279
- if (model.rows.length < 2)
280
- return 'above';
281
- return model.rows[0].level > model.rows[1].level ? 'below' : 'above';
282
- }
283
- else {
284
- return model.options.rowTree.reversed ? 'below' : 'above';
285
- }
286
- }
287
- export function detectOutlineColumnDirection(model) {
288
- if (model.options.columnTree.reversed == null) {
289
- if (model.columns.length < 2)
290
- return 'left';
291
- return model.columns[0].level > model.columns[1].level ? 'right' : 'left';
292
- }
293
- else {
294
- return model.options.columnTree.reversed ? 'right' : 'left';
295
- }
296
- }
297
- const getExportOptions = (exportOptions) => {
298
- const options = Object.assign({}, DEFAULT_EXPORT_OPTIONS, exportOptions);
299
- if (options.defaultBorders)
300
- options.defaultBorders = DEFAULT_BORDER_STYLE;
301
- return options;
302
- };
303
- export function createWorksheet(model, exportOptions) {
304
- exportOptions = getExportOptions(exportOptions);
305
- const ws = {};
306
- ws['!cols'] = getWorksheetColumns(model, exportOptions);
307
- ws['!rows'] = getWorksheetRows(model, exportOptions);
308
- ws['!merges'] = getWorksheetMerges(model, exportOptions);
309
- ws['!condfmt'] = getWorksheetConditionalFormats(model);
310
- ws['!outline'] = {
311
- 'above': detectOutlineRowDirection(model) == 'above',
312
- 'left': detectOutlineColumnDirection(model) == 'left'
313
- };
314
- if (model.options.freezeLeft || model.options.freezeTop) {
315
- ws['!freeze'] = `${encodeColumn(model.options.freezeLeft)}${model.headerCount + model.options.freezeTop + 1}`;
316
- }
317
- else if (model.headerCount > 0) {
318
- ws['!freeze'] = `A${model.headerCount + 1}`;
319
- }
320
- ws['!gridlines'] = exportOptions.gridLines;
321
- ws['!print'] = {};
322
- // if (model.tab?.color) ws['!tabcolor'] = convertStyleColor(model.tab.color); // does not work?
323
- // if (autoFilterStart) {
324
- // ws['!autofilter'] = {ref: autoFilterStart + ":" + autoFilterEnd};
325
- // }
326
- return ws;
327
- }
328
- export async function createWorkbook(models, exportOptions) {
329
- const sheetjsPromise = SheetjsLoader.get();
330
- const XLSX = sheetjsPromise instanceof Promise ? await sheetjsPromise : sheetjsPromise;
331
- exportOptions = getExportOptions(exportOptions);
332
- const wb = XLSX.utils.book_new();
333
- models.forEach((m, i) => {
334
- m.calculations.evaluateAll();
335
- const modelExportOptions = { ...exportOptions, ...m.exportOptions };
336
- const ws = XLSX.utils.sheet_add_aoa(createWorksheet(m, modelExportOptions), getWorksheetCells(m, modelExportOptions));
337
- // ws["!protect"] = {};
338
- let name = m.name || `Sheet${i + 1}`;
339
- m.name = name;
340
- if (name.length > 31)
341
- name = name.substring(0, 31);
342
- XLSX.utils.book_append_sheet(wb, ws, name);
343
- });
344
- wb.Workbook = wb.Workbook || {};
345
- // wb.Workbook.Protection = { lockStructure: true };
346
- // worksheet properties within workbook
347
- models.forEach(m => {
348
- const index = wb.SheetNames.indexOf(m.name);
349
- if (index < 0)
350
- return;
351
- if (!wb.Workbook.Sheets)
352
- wb.Workbook.Sheets = [];
353
- if (!wb.Workbook.Sheets[index])
354
- wb.Workbook.Sheets[index] = {};
355
- if (m.tab?.hidden)
356
- wb.Workbook.Sheets[index].Hidden = 1;
357
- });
358
- return wb;
359
- }
360
- export async function exportXLSX(wb, filename = null) {
361
- const sheetjsPromise = SheetjsLoader.get();
362
- const XLSX = sheetjsPromise instanceof Promise ? await sheetjsPromise : sheetjsPromise;
363
- return filename
364
- ? XLSX.writeFile(wb, filename, { cellStyles: true, bookSST: true })
365
- : XLSX.writeXLSX(wb, { cellStyles: true, bookSST: true, type: 'buffer' });
366
- }
367
- //# 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"})}
@@ -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 } from '@omegagrid/core';
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 * from './types';
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
@@ -2,7 +2,6 @@ import type XLSXNS from 'xlsx';
2
2
  declare global {
3
3
  interface Window {
4
4
  XLSX: typeof XLSXNS;
5
- define: unknown;
6
5
  }
7
6
  }
8
7
  export declare class SheetjsLoader {
@@ -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;QACpB,MAAM,EAAE,OAAO,CAAA;KACZ;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;CAMX"}
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 { AMD } from '@omegagrid/core';
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)}))}))}}
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAUtC,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;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClE,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAC,KAAK,EAAE,EAAC,MAAM,EAAE,IAAI,CAAC,IAAI,GAAG,gBAAgB,EAAC,EAAC,CAAC,CAAC;QACpE,OAAO,IAAI,OAAO,CAAgB,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/F,CAAC;CAED"}
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
@@ -1,3 +1 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
- export {};
3
- //# sourceMappingURL=types.js.map
1
+ export{};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omegagrid/plugin-xlsx",
3
- "version": "0.6.27",
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.27",
31
- "@omegagrid/editor": "^0.6.27",
32
- "@omegagrid/grid": "^0.6.27",
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"