@slickgrid-universal/excel-export 5.0.1 → 5.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/excelExport.service.js +20 -20
- package/dist/cjs/excelExport.service.js.map +1 -1
- package/dist/cjs/excelUtils.js +36 -32
- package/dist/cjs/excelUtils.js.map +1 -1
- package/dist/esm/excelExport.service.js +20 -20
- package/dist/esm/excelExport.service.js.map +1 -1
- package/dist/esm/excelUtils.js +29 -25
- package/dist/esm/excelUtils.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/excelExport.service.d.ts +6 -17
- package/dist/types/excelExport.service.d.ts.map +1 -1
- package/dist/types/excelUtils.d.ts +16 -13
- package/dist/types/excelUtils.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/excelExport.service.ts +29 -29
- package/src/excelUtils.ts +48 -28
package/dist/esm/excelUtils.js
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import { Constants, FieldType, Formatters, getColumnFieldType, getValueFromParamsOrFormatterOptions, GroupTotalFormatters, retrieveFormatterOptions, } from '@slickgrid-universal/common';
|
|
2
2
|
import { stripTags } from '@slickgrid-universal/utils';
|
|
3
3
|
// define all type of potential excel data function callbacks
|
|
4
|
-
export const getExcelSameInputDataCallback = (data) =>
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
export const getExcelSameInputDataCallback = (data, { excelFormatId }) => {
|
|
5
|
+
return excelFormatId !== undefined
|
|
6
|
+
? { value: data, metadata: { style: excelFormatId } }
|
|
7
|
+
: data;
|
|
8
|
+
};
|
|
9
|
+
export const getExcelNumberCallback = (data, { columnDef, excelFormatId, gridOptions }) => ({
|
|
10
|
+
value: typeof data === 'string' && /\d/g.test(data) ? parseNumberWithFormatterOptions(data, columnDef, gridOptions) : data,
|
|
11
|
+
metadata: { style: excelFormatId }
|
|
8
12
|
});
|
|
9
13
|
/** Parse a number which the user might have provided formatter options (for example a user might have provided { decimalSeparator: ',', thousandSeparator: ' '}) */
|
|
10
14
|
export function parseNumberWithFormatterOptions(value, column, gridOptions) {
|
|
@@ -19,18 +23,18 @@ export function parseNumberWithFormatterOptions(value, column, gridOptions) {
|
|
|
19
23
|
return outValue;
|
|
20
24
|
}
|
|
21
25
|
/** use different Excel Stylesheet Format as per the Field Type */
|
|
22
|
-
export function useCellFormatByFieldType(stylesheet,
|
|
26
|
+
export function useCellFormatByFieldType(stylesheet, excelFormats, columnDef, grid, autoDetect = true) {
|
|
23
27
|
const fieldType = getColumnFieldType(columnDef);
|
|
24
|
-
let
|
|
28
|
+
let excelFormatId;
|
|
25
29
|
let callback = getExcelSameInputDataCallback;
|
|
26
30
|
if (fieldType === FieldType.number && autoDetect) {
|
|
27
|
-
|
|
31
|
+
excelFormatId = getExcelFormatFromGridFormatter(stylesheet, excelFormats, columnDef, grid, 'cell').excelFormat.id;
|
|
28
32
|
callback = getExcelNumberCallback;
|
|
29
33
|
}
|
|
30
|
-
return {
|
|
34
|
+
return { excelFormatId, getDataValueParser: callback };
|
|
31
35
|
}
|
|
32
|
-
export function getGroupTotalValue(totals,
|
|
33
|
-
return totals?.[groupType]?.[columnDef.field] ?? 0;
|
|
36
|
+
export function getGroupTotalValue(totals, args) {
|
|
37
|
+
return totals?.[args.groupType]?.[args.columnDef.field] ?? 0;
|
|
34
38
|
}
|
|
35
39
|
/** Get numeric formatter options when defined or use default values (minDecimal, maxDecimal, thousandSeparator, decimalSeparator, wrapNegativeNumber) */
|
|
36
40
|
export function getNumericFormatterOptions(columnDef, grid, formatterType) {
|
|
@@ -104,10 +108,10 @@ export function getFormatterNumericDataType(formatter) {
|
|
|
104
108
|
}
|
|
105
109
|
return dataType;
|
|
106
110
|
}
|
|
107
|
-
export function getExcelFormatFromGridFormatter(stylesheet,
|
|
111
|
+
export function getExcelFormatFromGridFormatter(stylesheet, excelFormats, columnDef, grid, formatterType) {
|
|
108
112
|
let format = '';
|
|
109
|
-
let groupType = '';
|
|
110
|
-
let
|
|
113
|
+
let groupType = columnDef.groupTotalsExcelExportOptions?.groupType || '';
|
|
114
|
+
let excelFormat;
|
|
111
115
|
const fieldType = getColumnFieldType(columnDef);
|
|
112
116
|
if (formatterType === 'group') {
|
|
113
117
|
switch (columnDef.groupTotalsFormatter) {
|
|
@@ -135,7 +139,7 @@ export function getExcelFormatFromGridFormatter(stylesheet, stylesheetFormatters
|
|
|
135
139
|
groupType = 'sum';
|
|
136
140
|
break;
|
|
137
141
|
default:
|
|
138
|
-
|
|
142
|
+
excelFormat = excelFormats.numberFormat;
|
|
139
143
|
break;
|
|
140
144
|
}
|
|
141
145
|
}
|
|
@@ -147,15 +151,15 @@ export function getExcelFormatFromGridFormatter(stylesheet, stylesheetFormatters
|
|
|
147
151
|
// when formatter is a Formatter.multiple, we need to loop through each of its formatter to find the best possible Excel format
|
|
148
152
|
if (Array.isArray(columnDef.params?.formatters)) {
|
|
149
153
|
for (const formatter of columnDef.params.formatters) {
|
|
150
|
-
const {
|
|
151
|
-
if (
|
|
152
|
-
|
|
154
|
+
const { excelFormat: excelFormatResult } = getExcelFormatFromGridFormatter(stylesheet, excelFormats, { ...columnDef, formatter }, grid, formatterType);
|
|
155
|
+
if (excelFormatResult !== excelFormats.numberFormat) {
|
|
156
|
+
excelFormat = excelFormatResult;
|
|
153
157
|
break;
|
|
154
158
|
}
|
|
155
159
|
}
|
|
156
160
|
}
|
|
157
|
-
if (!
|
|
158
|
-
|
|
161
|
+
if (!excelFormat) {
|
|
162
|
+
excelFormat = excelFormats.numberFormat;
|
|
159
163
|
}
|
|
160
164
|
break;
|
|
161
165
|
case Formatters.currency:
|
|
@@ -171,20 +175,20 @@ export function getExcelFormatFromGridFormatter(stylesheet, stylesheetFormatters
|
|
|
171
175
|
format = createExcelFormatFromGridFormatter(columnDef, grid, 'cell');
|
|
172
176
|
break;
|
|
173
177
|
default:
|
|
174
|
-
|
|
178
|
+
excelFormat = excelFormats.numberFormat;
|
|
175
179
|
break;
|
|
176
180
|
}
|
|
177
181
|
break;
|
|
178
182
|
}
|
|
179
183
|
}
|
|
180
|
-
if (!
|
|
184
|
+
if (!excelFormat && (columnDef.formatter || columnDef.groupTotalsFormatter)) {
|
|
181
185
|
format = createExcelFormatFromGridFormatter(columnDef, grid, formatterType, groupType);
|
|
182
|
-
if (!
|
|
183
|
-
|
|
186
|
+
if (!excelFormats.hasOwnProperty(format)) {
|
|
187
|
+
excelFormats[format] = stylesheet.createFormat({ format }); // save new formatter with its format as a prop key
|
|
184
188
|
}
|
|
185
|
-
|
|
189
|
+
excelFormat = excelFormats[format];
|
|
186
190
|
}
|
|
187
|
-
return {
|
|
191
|
+
return { excelFormat: excelFormat, groupType };
|
|
188
192
|
}
|
|
189
193
|
// --
|
|
190
194
|
// private functions
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"excelUtils.js","sourceRoot":"","sources":["../../src/excelUtils.ts"],"names":[],"mappings":"AASA,OAAO,EACL,SAAS,EACT,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,oCAAoC,EACpC,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAIvD,6DAA6D;AAC7D,MAAM,CAAC,MAAM,6BAA6B,GAAyB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"excelUtils.js","sourceRoot":"","sources":["../../src/excelUtils.ts"],"names":[],"mappings":"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"}
|