@progress/kendo-angular-excel-export 5.0.2 → 11.0.0-develop.101

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.
Files changed (41) hide show
  1. package/LICENSE.md +1 -1
  2. package/NOTICE.txt +4 -4
  3. package/README.md +1 -1
  4. package/columns/column-base.d.ts +1 -1
  5. package/columns/column-group.component.d.ts +1 -1
  6. package/columns/column.component.d.ts +1 -1
  7. package/columns/footer-template.directive.d.ts +1 -1
  8. package/columns/group-footer-template.directive.d.ts +1 -1
  9. package/columns/group-header-column-template.directive.d.ts +1 -1
  10. package/columns/group-header-template.directive.d.ts +1 -1
  11. package/{esm2015/columns/column-base.js → esm2020/columns/column-base.mjs} +5 -5
  12. package/{esm2015/columns/column-group.component.js → esm2020/columns/column-group.component.mjs} +4 -4
  13. package/{esm2015/columns/column.component.js → esm2020/columns/column.component.mjs} +4 -4
  14. package/{esm2015/columns/footer-template.directive.js → esm2020/columns/footer-template.directive.mjs} +5 -5
  15. package/{esm2015/columns/group-footer-template.directive.js → esm2020/columns/group-footer-template.directive.mjs} +5 -5
  16. package/{esm2015/columns/group-header-column-template.directive.js → esm2020/columns/group-header-column-template.directive.mjs} +5 -5
  17. package/{esm2015/columns/group-header-template.directive.js → esm2020/columns/group-header-template.directive.mjs} +5 -5
  18. package/{esm2015/excel-export-data.js → esm2020/excel-export-data.mjs} +1 -1
  19. package/{esm2015/excel-export.component.js → esm2020/excel-export.component.mjs} +5 -5
  20. package/{esm2015/excel-export.module.js → esm2020/excel-export.module.mjs} +5 -5
  21. package/{esm2015/main.js → esm2020/index.mjs} +1 -1
  22. package/{esm2015/ooxml/cell-options.interface.js → esm2020/ooxml/cell-options.interface.mjs} +1 -1
  23. package/{esm2015/ooxml/exporter-columns.js → esm2020/ooxml/exporter-columns.mjs} +1 -1
  24. package/{esm2015/ooxml/workbook.js → esm2020/ooxml/workbook.mjs} +1 -1
  25. package/{esm2015/package-metadata.js → esm2020/package-metadata.mjs} +3 -3
  26. package/{esm2015/kendo-angular-excel-export.js → esm2020/progress-kendo-angular-excel-export.mjs} +2 -2
  27. package/excel-export-data.d.ts +1 -1
  28. package/excel-export.component.d.ts +1 -1
  29. package/excel-export.module.d.ts +1 -1
  30. package/fesm2015/progress-kendo-angular-excel-export.mjs +616 -0
  31. package/{fesm2015/kendo-angular-excel-export.js → fesm2020/progress-kendo-angular-excel-export.mjs} +31 -31
  32. package/{main.d.ts → index.d.ts} +1 -1
  33. package/ooxml/cell-options.interface.d.ts +1 -1
  34. package/ooxml/exporter-columns.d.ts +1 -1
  35. package/ooxml/workbook.d.ts +1 -1
  36. package/package-metadata.d.ts +1 -1
  37. package/package.json +29 -55
  38. package/{kendo-angular-excel-export.d.ts → progress-kendo-angular-excel-export.d.ts} +2 -2
  39. package/schematics/ngAdd/index.js +1 -5
  40. package/bundles/kendo-angular-excel-export.umd.js +0 -5
  41. package/schematics/ngAdd/index.js.map +0 -1
@@ -0,0 +1,616 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2023 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as i0 from '@angular/core';
6
+ import { Component, Input, ContentChildren, QueryList, Directive, Optional, forwardRef, SkipSelf, Host, ContentChild, NgModule } from '@angular/core';
7
+ import { saveAs } from '@progress/kendo-file-saver';
8
+ import { IntlService, ExcelExporter, Workbook } from '@progress/kendo-ooxml';
9
+ export * from '@progress/kendo-ooxml';
10
+ import { toString } from '@progress/kendo-intl';
11
+ import * as i1 from '@progress/kendo-angular-l10n';
12
+ import { LocalizationService, L10N_PREFIX } from '@progress/kendo-angular-l10n';
13
+ import { validatePackage } from '@progress/kendo-licensing';
14
+
15
+ const compileTemplate = (templateRef, context, updateContext) => {
16
+ let embeddedView = templateRef.createEmbeddedView(context);
17
+ const result = (data) => {
18
+ updateContext(context, data);
19
+ embeddedView.detectChanges();
20
+ return embeddedView.rootNodes.reduce((content, rootNode) => {
21
+ return content + rootNode.textContent;
22
+ }, '').trim();
23
+ };
24
+ result.destroy = () => {
25
+ embeddedView.destroy();
26
+ embeddedView = null;
27
+ };
28
+ return result;
29
+ };
30
+ const updateGroupHeaderContext = (context, data) => {
31
+ context.$implicit = context.group = data;
32
+ context.field = data.field;
33
+ context.value = data.value;
34
+ context.aggregates = data.aggregates;
35
+ };
36
+ const updateGroupFooterContext = (context, data) => {
37
+ context.group = data.group;
38
+ context.$implicit = context.aggregates = data;
39
+ };
40
+ const updateFooterContext = (context, data) => {
41
+ context.aggregates = data.aggregates;
42
+ };
43
+ /**
44
+ * @hidden
45
+ */
46
+ const toExporterColumns = (sourceColumns) => {
47
+ const exporterColumns = [];
48
+ let columnIndex = 0;
49
+ const addColumns = (columns, result, level) => {
50
+ columns.forEach((column) => {
51
+ if (column.level === level) {
52
+ const exporterColumn = new ExporterColumn(column, columnIndex);
53
+ result.push(exporterColumn);
54
+ if (column.children && column.children.some(c => c !== column)) {
55
+ const children = exporterColumn.columns = [];
56
+ addColumns(column.children, children, level + 1);
57
+ }
58
+ else {
59
+ columnIndex++;
60
+ }
61
+ }
62
+ });
63
+ };
64
+ addColumns(sourceColumns, exporterColumns, 0);
65
+ return exporterColumns;
66
+ };
67
+ /**
68
+ * @hidden
69
+ */
70
+ const destroyColumns = (columns) => {
71
+ if (columns) {
72
+ columns.forEach(column => {
73
+ column.destroy();
74
+ });
75
+ }
76
+ };
77
+ /**
78
+ * @hidden
79
+ */
80
+ class ExporterColumn {
81
+ constructor(column, columnIndex) {
82
+ this.title = column.title;
83
+ this.field = column.field;
84
+ this.hidden = column.hidden;
85
+ this.locked = column.locked;
86
+ this.width = column.width;
87
+ this.headerCellOptions = column.headerCellOptions;
88
+ this.cellOptions = column.cellOptions;
89
+ this.groupHeaderCellOptions = column.groupHeaderCellOptions;
90
+ this.groupFooterCellOptions = column.groupFooterCellOptions;
91
+ this.footerCellOptions = column.footerCellOptions;
92
+ if (column.footerTemplate) {
93
+ this.footerTemplate = compileTemplate(column.footerTemplate.templateRef, {
94
+ $implicit: column,
95
+ column: column,
96
+ columnIndex: columnIndex
97
+ }, updateFooterContext);
98
+ }
99
+ if (column.groupFooterTemplate) {
100
+ this.groupFooterTemplate = compileTemplate(column.groupFooterTemplate.templateRef, {
101
+ column: column,
102
+ field: column.field
103
+ }, updateGroupFooterContext);
104
+ }
105
+ if (column.groupHeaderTemplate) {
106
+ this.groupHeaderTemplate = compileTemplate(column.groupHeaderTemplate.templateRef, {}, updateGroupHeaderContext);
107
+ }
108
+ if (column.groupHeaderColumnTemplate) {
109
+ this.groupHeaderColumnTemplate = compileTemplate(column.groupHeaderColumnTemplate.templateRef, {}, updateGroupHeaderContext);
110
+ }
111
+ }
112
+ destroy() {
113
+ if (this.footerTemplate) {
114
+ this.footerTemplate.destroy();
115
+ }
116
+ if (this.groupFooterTemplate) {
117
+ this.groupFooterTemplate.destroy();
118
+ }
119
+ if (this.groupHeaderTemplate) {
120
+ this.groupHeaderTemplate.destroy();
121
+ }
122
+ if (this.groupHeaderColumnTemplate) {
123
+ this.groupHeaderColumnTemplate.destroy();
124
+ }
125
+ destroyColumns(this.columns);
126
+ }
127
+ }
128
+
129
+ IntlService.register({ toString });
130
+ /**
131
+ *
132
+ * @hidden
133
+ */
134
+ const workbookOptions = (options) => {
135
+ const columns = toExporterColumns(options.columns);
136
+ const exporter = new ExcelExporter({
137
+ columns: columns,
138
+ data: options.data,
139
+ filterable: options.filterable,
140
+ groups: options.group,
141
+ paddingCellOptions: options.paddingCellOptions,
142
+ headerPaddingCellOptions: options.headerPaddingCellOptions,
143
+ collapsible: options.collapsible,
144
+ hierarchy: options.hierarchy,
145
+ aggregates: options.aggregates
146
+ });
147
+ const result = exporter.workbook();
148
+ result.creator = options.creator;
149
+ result.date = options.date;
150
+ result.rtl = options.rtl;
151
+ destroyColumns(columns);
152
+ return result;
153
+ };
154
+ /**
155
+ * @hidden
156
+ */
157
+ const toDataURL = (options) => {
158
+ const workbook = new Workbook(options);
159
+ return workbook.toDataURL();
160
+ };
161
+ /**
162
+ * @hidden
163
+ */
164
+ const isWorkbookOptions = (value) => {
165
+ return value && value.sheets;
166
+ };
167
+
168
+ /**
169
+ * @hidden
170
+ */
171
+ class ColumnBase {
172
+ constructor(parent) {
173
+ this.parent = parent;
174
+ }
175
+ /**
176
+ * @hidden
177
+ */
178
+ get level() {
179
+ return this.parent ? this.parent.level + 1 : 0;
180
+ }
181
+ }
182
+ ColumnBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ColumnBase, deps: [{ token: ColumnBase }], target: i0.ɵɵFactoryTarget.Component });
183
+ ColumnBase.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ColumnBase, selector: "ng-component", inputs: { title: "title", width: "width", locked: "locked", hidden: "hidden", headerCellOptions: "headerCellOptions" }, queries: [{ propertyName: "children", predicate: ColumnBase }], ngImport: i0, template: '', isInline: true });
184
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ColumnBase, decorators: [{
185
+ type: Component,
186
+ args: [{
187
+ template: ''
188
+ }]
189
+ }], ctorParameters: function () { return [{ type: ColumnBase }]; }, propDecorators: { title: [{
190
+ type: Input
191
+ }], width: [{
192
+ type: Input
193
+ }], locked: [{
194
+ type: Input
195
+ }], hidden: [{
196
+ type: Input
197
+ }], headerCellOptions: [{
198
+ type: Input
199
+ }], children: [{
200
+ type: ContentChildren,
201
+ args: [ColumnBase]
202
+ }] } });
203
+
204
+ /**
205
+ * @hidden
206
+ */
207
+ const packageMetadata = {
208
+ name: '@progress/kendo-angular-excel-export',
209
+ productName: 'Kendo UI for Angular',
210
+ productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
211
+ publishDate: 1673510397,
212
+ version: '',
213
+ licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
214
+ };
215
+
216
+ // eslint-disable max-line-length
217
+ /**
218
+ * Represents the [Kendo UI Excel Export component for Angular]({% slug overview_excelexport %}).
219
+ * Configures the settings for the Excel export of the Kendo UI Grid.
220
+ */
221
+ class ExcelExportComponent {
222
+ constructor(localization, zone) {
223
+ this.localization = localization;
224
+ this.zone = zone;
225
+ /**
226
+ * Specifies the name of the file that is exported to Excel.
227
+ * @default "Export.xlsx"
228
+ */
229
+ this.fileName = 'Export.xlsx';
230
+ /**
231
+ * @hidden
232
+ */
233
+ this.columns = new QueryList();
234
+ validatePackage(packageMetadata);
235
+ this.saveFile = this.saveFile.bind(this);
236
+ }
237
+ /**
238
+ * Saves the data to Excel.
239
+ *
240
+ * @param exportData - An optional parameter. Can be the data that will be exported or [`WorkbookOptions`]({% slug api_excel-export_workbookoptions %}).
241
+ */
242
+ save(exportData) {
243
+ this.toDataURL(exportData).then(this.saveFile);
244
+ }
245
+ /**
246
+ * Based on the specified columns and data, returns
247
+ * [`WorkbookOptions`]({% slug api_excel-export_workbookoptions %})
248
+ * ([see example]({% slug customrowsandcells_excelexport %})).
249
+ *
250
+ * @param exportData - The optional data to be exported.
251
+ * @returns {WorkbookOptions} - The workbook options.
252
+ */
253
+ workbookOptions(exportData) {
254
+ const currentData = this.getExportData(exportData);
255
+ const options = workbookOptions({
256
+ columns: this.columns,
257
+ data: currentData.data,
258
+ group: currentData.group,
259
+ filterable: this.filterable,
260
+ creator: this.creator,
261
+ date: this.date,
262
+ rtl: this.localization.rtl,
263
+ paddingCellOptions: this.paddingCellOptions,
264
+ headerPaddingCellOptions: this.headerPaddingCellOptions,
265
+ collapsible: this.collapsible
266
+ });
267
+ return options;
268
+ }
269
+ /**
270
+ * Returns a promise which will be resolved with the file data URI
271
+ * ([see example]({% slug filesaving_excelexport %})).
272
+ *
273
+ * @param exportData - The optional data or [`WorkbookOptions`]({% slug api_excel-export_workbookoptions %}) that will be used to generate the data URI.
274
+ * @returns {Promise<string>} - The promise that will be resolved by the file data URI.
275
+ */
276
+ toDataURL(exportData) {
277
+ const options = isWorkbookOptions(exportData) ?
278
+ exportData :
279
+ this.workbookOptions(exportData);
280
+ return this.zone.runOutsideAngular(() => toDataURL(options));
281
+ }
282
+ getExportData(exportData) {
283
+ let result;
284
+ if (exportData) {
285
+ if (Array.isArray(exportData)) {
286
+ result = {
287
+ data: exportData
288
+ };
289
+ }
290
+ else {
291
+ result = exportData;
292
+ }
293
+ }
294
+ else {
295
+ result = {
296
+ data: this.data,
297
+ group: this.group
298
+ };
299
+ }
300
+ return result;
301
+ }
302
+ saveFile(dataURL) {
303
+ saveAs(dataURL, this.fileName, {
304
+ forceProxy: this.forceProxy,
305
+ proxyURL: this.proxyURL
306
+ });
307
+ }
308
+ }
309
+ ExcelExportComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ExcelExportComponent, deps: [{ token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
310
+ ExcelExportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ExcelExportComponent, selector: "kendo-excelexport", inputs: { fileName: "fileName", filterable: "filterable", collapsible: "collapsible", creator: "creator", date: "date", forceProxy: "forceProxy", proxyURL: "proxyURL", data: "data", group: "group", paddingCellOptions: "paddingCellOptions", headerPaddingCellOptions: "headerPaddingCellOptions" }, providers: [
311
+ LocalizationService,
312
+ {
313
+ provide: L10N_PREFIX,
314
+ useValue: 'kendo.excelexport'
315
+ }
316
+ ], queries: [{ propertyName: "columns", predicate: ColumnBase, descendants: true }], exportAs: ["kendoExcelExport"], ngImport: i0, template: ``, isInline: true });
317
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ExcelExportComponent, decorators: [{
318
+ type: Component,
319
+ args: [{
320
+ exportAs: 'kendoExcelExport',
321
+ selector: 'kendo-excelexport',
322
+ providers: [
323
+ LocalizationService,
324
+ {
325
+ provide: L10N_PREFIX,
326
+ useValue: 'kendo.excelexport'
327
+ }
328
+ ],
329
+ template: ``
330
+ }]
331
+ }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.NgZone }]; }, propDecorators: { fileName: [{
332
+ type: Input
333
+ }], filterable: [{
334
+ type: Input
335
+ }], collapsible: [{
336
+ type: Input
337
+ }], creator: [{
338
+ type: Input
339
+ }], date: [{
340
+ type: Input
341
+ }], forceProxy: [{
342
+ type: Input
343
+ }], proxyURL: [{
344
+ type: Input
345
+ }], data: [{
346
+ type: Input
347
+ }], group: [{
348
+ type: Input
349
+ }], paddingCellOptions: [{
350
+ type: Input
351
+ }], headerPaddingCellOptions: [{
352
+ type: Input
353
+ }], columns: [{
354
+ type: ContentChildren,
355
+ args: [ColumnBase, { descendants: true }]
356
+ }] } });
357
+
358
+ /**
359
+ * Represents the group header cell template of the Excel Export column component
360
+ * ([see example]({% slug columns_excel-export %}#toc-group-header-template)).
361
+ * Enables you to customize the content of the group header item.
362
+ */
363
+ class GroupHeaderTemplateDirective {
364
+ constructor(templateRef) {
365
+ this.templateRef = templateRef;
366
+ }
367
+ }
368
+ GroupHeaderTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: GroupHeaderTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
369
+ GroupHeaderTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: GroupHeaderTemplateDirective, selector: "[kendoExcelExportGroupHeaderTemplate]", ngImport: i0 });
370
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: GroupHeaderTemplateDirective, decorators: [{
371
+ type: Directive,
372
+ args: [{
373
+ selector: '[kendoExcelExportGroupHeaderTemplate]'
374
+ }]
375
+ }], ctorParameters: function () {
376
+ return [{ type: i0.TemplateRef, decorators: [{
377
+ type: Optional
378
+ }] }];
379
+ } });
380
+
381
+ /**
382
+ * Represents the group header column template of the Excel Export column component
383
+ * ([see example]({% slug columns_excel-export %}#toc-group-header-column-template)).
384
+ */
385
+ class GroupHeaderColumnTemplateDirective {
386
+ constructor(templateRef) {
387
+ this.templateRef = templateRef;
388
+ }
389
+ }
390
+ GroupHeaderColumnTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: GroupHeaderColumnTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
391
+ GroupHeaderColumnTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: GroupHeaderColumnTemplateDirective, selector: "[kendoExcelExportGroupHeaderColumnTemplate]", ngImport: i0 });
392
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: GroupHeaderColumnTemplateDirective, decorators: [{
393
+ type: Directive,
394
+ args: [{
395
+ selector: '[kendoExcelExportGroupHeaderColumnTemplate]'
396
+ }]
397
+ }], ctorParameters: function () {
398
+ return [{ type: i0.TemplateRef, decorators: [{
399
+ type: Optional
400
+ }] }];
401
+ } });
402
+
403
+ /**
404
+ * Represents the group footer cell template of the Excel Export column component
405
+ * ([see example]({% slug columns_excel-export %}#toc-group-footer-template)).
406
+ * Enables you to customize the group footer cell of the column.
407
+ */
408
+ class GroupFooterTemplateDirective {
409
+ constructor(templateRef) {
410
+ this.templateRef = templateRef;
411
+ }
412
+ }
413
+ GroupFooterTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: GroupFooterTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
414
+ GroupFooterTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: GroupFooterTemplateDirective, selector: "[kendoExcelExportGroupFooterTemplate]", ngImport: i0 });
415
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: GroupFooterTemplateDirective, decorators: [{
416
+ type: Directive,
417
+ args: [{
418
+ selector: '[kendoExcelExportGroupFooterTemplate]'
419
+ }]
420
+ }], ctorParameters: function () {
421
+ return [{ type: i0.TemplateRef, decorators: [{
422
+ type: Optional
423
+ }] }];
424
+ } });
425
+
426
+ /**
427
+ * Represents the footer cell template of the Excel Export column component
428
+ * ([see example]({% slug columns_excel-export %}#toc-footer-template)).
429
+ * Enables you to customize the footer cell of the column.
430
+ */
431
+ class FooterTemplateDirective {
432
+ constructor(templateRef) {
433
+ this.templateRef = templateRef;
434
+ }
435
+ }
436
+ FooterTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FooterTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
437
+ FooterTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.11", type: FooterTemplateDirective, selector: "[kendoExcelExportFooterTemplate]", ngImport: i0 });
438
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: FooterTemplateDirective, decorators: [{
439
+ type: Directive,
440
+ args: [{
441
+ selector: '[kendoExcelExportFooterTemplate]'
442
+ }]
443
+ }], ctorParameters: function () {
444
+ return [{ type: i0.TemplateRef, decorators: [{
445
+ type: Optional
446
+ }] }];
447
+ } });
448
+
449
+ /**
450
+ * Represents the columns of the Kendo UI Excel Export component for Angular.
451
+ */
452
+ class ColumnComponent extends ColumnBase {
453
+ constructor(parent) {
454
+ super(parent);
455
+ }
456
+ }
457
+ ColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ColumnComponent, deps: [{ token: ColumnBase, host: true, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
458
+ ColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ColumnComponent, selector: "kendo-excelexport-column", inputs: { field: "field", cellOptions: "cellOptions", groupHeaderCellOptions: "groupHeaderCellOptions", groupFooterCellOptions: "groupFooterCellOptions", footerCellOptions: "footerCellOptions" }, providers: [
459
+ {
460
+ provide: ColumnBase,
461
+ useExisting: forwardRef(() => ColumnComponent)
462
+ }
463
+ ], queries: [{ propertyName: "groupHeaderTemplate", first: true, predicate: GroupHeaderTemplateDirective, descendants: true }, { propertyName: "groupHeaderColumnTemplate", first: true, predicate: GroupHeaderColumnTemplateDirective, descendants: true }, { propertyName: "groupFooterTemplate", first: true, predicate: GroupFooterTemplateDirective, descendants: true }, { propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
464
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ColumnComponent, decorators: [{
465
+ type: Component,
466
+ args: [{
467
+ providers: [
468
+ {
469
+ provide: ColumnBase,
470
+ useExisting: forwardRef(() => ColumnComponent)
471
+ }
472
+ ],
473
+ selector: 'kendo-excelexport-column',
474
+ template: ``
475
+ }]
476
+ }], ctorParameters: function () {
477
+ return [{ type: ColumnBase, decorators: [{
478
+ type: SkipSelf
479
+ }, {
480
+ type: Host
481
+ }, {
482
+ type: Optional
483
+ }] }];
484
+ }, propDecorators: { field: [{
485
+ type: Input
486
+ }], cellOptions: [{
487
+ type: Input
488
+ }], groupHeaderCellOptions: [{
489
+ type: Input
490
+ }], groupFooterCellOptions: [{
491
+ type: Input
492
+ }], footerCellOptions: [{
493
+ type: Input
494
+ }], groupHeaderTemplate: [{
495
+ type: ContentChild,
496
+ args: [GroupHeaderTemplateDirective, { static: false }]
497
+ }], groupHeaderColumnTemplate: [{
498
+ type: ContentChild,
499
+ args: [GroupHeaderColumnTemplateDirective, { static: false }]
500
+ }], groupFooterTemplate: [{
501
+ type: ContentChild,
502
+ args: [GroupFooterTemplateDirective, { static: false }]
503
+ }], footerTemplate: [{
504
+ type: ContentChild,
505
+ args: [FooterTemplateDirective, { static: false }]
506
+ }] } });
507
+
508
+ /**
509
+ * Represents the column group component of the Kendo UI Excel Export component.
510
+ */
511
+ class ColumnGroupComponent extends ColumnBase {
512
+ constructor(parent) {
513
+ super(parent);
514
+ this.parent = parent;
515
+ }
516
+ }
517
+ ColumnGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ColumnGroupComponent, deps: [{ token: ColumnBase, host: true, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
518
+ ColumnGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: ColumnGroupComponent, selector: "kendo-excelexport-column-group", providers: [
519
+ {
520
+ provide: ColumnBase,
521
+ useExisting: forwardRef(() => ColumnGroupComponent)
522
+ }
523
+ ], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
524
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ColumnGroupComponent, decorators: [{
525
+ type: Component,
526
+ args: [{
527
+ providers: [
528
+ {
529
+ provide: ColumnBase,
530
+ useExisting: forwardRef(() => ColumnGroupComponent)
531
+ }
532
+ ],
533
+ selector: 'kendo-excelexport-column-group',
534
+ template: ``
535
+ }]
536
+ }], ctorParameters: function () {
537
+ return [{ type: ColumnBase, decorators: [{
538
+ type: SkipSelf
539
+ }, {
540
+ type: Host
541
+ }, {
542
+ type: Optional
543
+ }] }];
544
+ } });
545
+
546
+ const declarations = [
547
+ ExcelExportComponent,
548
+ ColumnComponent,
549
+ ColumnGroupComponent,
550
+ FooterTemplateDirective,
551
+ GroupFooterTemplateDirective,
552
+ GroupHeaderTemplateDirective,
553
+ GroupHeaderColumnTemplateDirective
554
+ ];
555
+ /**
556
+ * Represents the [NgModule](link:site.data.urls.angular['ngmoduleapi'])
557
+ * definition for the Excel Export component.
558
+ *
559
+ * @example
560
+ *
561
+ * ```ts-no-run
562
+ * // Import the ExcelExportModule module
563
+ * import { ExcelExportModule } from '@progress/kendo-angular-excel-export';
564
+ *
565
+ * // The browser platform with a compiler
566
+ * import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
567
+ *
568
+ * import { NgModule } from '@angular/core';
569
+ *
570
+ * // Import the app component
571
+ * import { AppComponent } from './app.component';
572
+ *
573
+ * // Define the app module
574
+ * _@NgModule({
575
+ * declarations: [AppComponent], // declare app component
576
+ * imports: [BrowserModule, ExcelExportModule], // import ExcelExportModule module
577
+ * bootstrap: [AppComponent]
578
+ * })
579
+ * export class AppModule {}
580
+ *
581
+ * // Compile and launch the module
582
+ * platformBrowserDynamic().bootstrapModule(AppModule);
583
+ *
584
+ * ```
585
+ */
586
+ class ExcelExportModule {
587
+ }
588
+ ExcelExportModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ExcelExportModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
589
+ ExcelExportModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ExcelExportModule, declarations: [ExcelExportComponent,
590
+ ColumnComponent,
591
+ ColumnGroupComponent,
592
+ FooterTemplateDirective,
593
+ GroupFooterTemplateDirective,
594
+ GroupHeaderTemplateDirective,
595
+ GroupHeaderColumnTemplateDirective], exports: [ExcelExportComponent,
596
+ ColumnComponent,
597
+ ColumnGroupComponent,
598
+ FooterTemplateDirective,
599
+ GroupFooterTemplateDirective,
600
+ GroupHeaderTemplateDirective,
601
+ GroupHeaderColumnTemplateDirective] });
602
+ ExcelExportModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ExcelExportModule });
603
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: ExcelExportModule, decorators: [{
604
+ type: NgModule,
605
+ args: [{
606
+ declarations: [declarations],
607
+ exports: [declarations]
608
+ }]
609
+ }] });
610
+
611
+ /**
612
+ * Generated bundle index. Do not edit.
613
+ */
614
+
615
+ export { ColumnBase, ColumnComponent, ColumnGroupComponent, ExcelExportComponent, ExcelExportModule, FooterTemplateDirective, GroupFooterTemplateDirective, GroupHeaderColumnTemplateDirective, GroupHeaderTemplateDirective, isWorkbookOptions, toDataURL, workbookOptions };
616
+