igniteui-angular 15.0.16 → 15.0.18
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/esm2020/lib/card/card.component.mjs +2 -15
- package/esm2020/lib/grids/grid-base.directive.mjs +4 -3
- package/esm2020/lib/grids/tree-grid/tree-grid.pipes.mjs +4 -1
- package/esm2020/lib/services/excel/excel-files.mjs +2 -2
- package/esm2020/lib/services/excel/worksheet-data-dictionary.mjs +4 -17
- package/esm2020/lib/services/exporter-common/base-export-service.mjs +2 -2
- package/esm2020/lib/services/exporter-common/export-utilities.mjs +14 -1
- package/fesm2015/igniteui-angular.mjs +25 -34
- package/fesm2015/igniteui-angular.mjs.map +1 -1
- package/fesm2020/igniteui-angular.mjs +25 -34
- package/fesm2020/igniteui-angular.mjs.map +1 -1
- package/lib/card/card.component.d.ts +0 -10
- package/lib/services/excel/worksheet-data-dictionary.d.ts +1 -2
- package/lib/services/exporter-common/export-utilities.d.ts +1 -0
- package/package.json +1 -1
- package/src/lib/card/README.md +0 -1
|
@@ -2623,6 +2623,19 @@ class ExportUtilities {
|
|
|
2623
2623
|
static isNullOrWhitespaces(value) {
|
|
2624
2624
|
return value === undefined || value === null || !value.trim();
|
|
2625
2625
|
}
|
|
2626
|
+
static sanitizeValue(value) {
|
|
2627
|
+
if (!this.hasValue(value)) {
|
|
2628
|
+
return '';
|
|
2629
|
+
}
|
|
2630
|
+
else {
|
|
2631
|
+
const stringValue = String(value);
|
|
2632
|
+
return stringValue.replace(/&/g, '&')
|
|
2633
|
+
.replace(/</g, '<')
|
|
2634
|
+
.replace(/>/g, '>')
|
|
2635
|
+
.replace(/"/g, '"')
|
|
2636
|
+
.replace(/'/g, ''');
|
|
2637
|
+
}
|
|
2638
|
+
}
|
|
2626
2639
|
}
|
|
2627
2640
|
|
|
2628
2641
|
var FilteringExpressionsTreeType;
|
|
@@ -3910,7 +3923,7 @@ class IgxBaseExporter {
|
|
|
3910
3923
|
.length :
|
|
3911
3924
|
1;
|
|
3912
3925
|
const columnInfo = {
|
|
3913
|
-
header: columnHeader,
|
|
3926
|
+
header: ExportUtilities.sanitizeValue(columnHeader),
|
|
3914
3927
|
dataType: column.dataType,
|
|
3915
3928
|
field: column.field,
|
|
3916
3929
|
skip: !exportColumn,
|
|
@@ -5158,7 +5171,7 @@ class WorksheetFile {
|
|
|
5158
5171
|
const rowCoordinate = isVertical
|
|
5159
5172
|
? startValue + owner.maxLevel + 2
|
|
5160
5173
|
: this.rowIndex;
|
|
5161
|
-
const columnValue = dictionary.saveValue(currentCol.header, true);
|
|
5174
|
+
const columnValue = dictionary.saveValue(currentCol.header, true, false);
|
|
5162
5175
|
columnCoordinate = (currentCol.field === GRID_LEVEL_COL
|
|
5163
5176
|
? ExcelStrings.getExcelColumn(worksheetData.columnCount + 1)
|
|
5164
5177
|
: ExcelStrings.getExcelColumn(column)) + rowCoordinate;
|
|
@@ -5503,12 +5516,12 @@ class WorksheetDataDictionary {
|
|
|
5503
5516
|
get columnWidths() {
|
|
5504
5517
|
return this._columnWidths;
|
|
5505
5518
|
}
|
|
5506
|
-
saveValue(value, isHeader) {
|
|
5519
|
+
saveValue(value, isHeader, shouldSanitizeValue = true) {
|
|
5507
5520
|
let sanitizedValue = '';
|
|
5508
5521
|
const isDate = value instanceof Date;
|
|
5509
5522
|
const isSavedAsString = isHeader || (typeof value !== 'number' && value !== Number(value) && !Number.isFinite(value) && !isDate);
|
|
5510
5523
|
if (isSavedAsString) {
|
|
5511
|
-
sanitizedValue =
|
|
5524
|
+
sanitizedValue = shouldSanitizeValue ? ExportUtilities.sanitizeValue(value) : value;
|
|
5512
5525
|
if (this._dictionary[sanitizedValue] === undefined) {
|
|
5513
5526
|
this._dictionary[sanitizedValue] = this._counter++;
|
|
5514
5527
|
this.dirtyKeyCollections();
|
|
@@ -5524,7 +5537,7 @@ class WorksheetDataDictionary {
|
|
|
5524
5537
|
return isSavedAsString ? this.getSanitizedValue(sanitizedValue) : -1;
|
|
5525
5538
|
}
|
|
5526
5539
|
getValue(value) {
|
|
5527
|
-
return this.getSanitizedValue(
|
|
5540
|
+
return this.getSanitizedValue(ExportUtilities.sanitizeValue(value));
|
|
5528
5541
|
}
|
|
5529
5542
|
getSanitizedValue(sanitizedValue) {
|
|
5530
5543
|
return this._dictionary[sanitizedValue];
|
|
@@ -5552,19 +5565,6 @@ class WorksheetDataDictionary {
|
|
|
5552
5565
|
}
|
|
5553
5566
|
return this._context;
|
|
5554
5567
|
}
|
|
5555
|
-
sanitizeValue(value) {
|
|
5556
|
-
if (ExportUtilities.hasValue(value) === false) {
|
|
5557
|
-
return '';
|
|
5558
|
-
}
|
|
5559
|
-
else {
|
|
5560
|
-
const stringValue = String(value);
|
|
5561
|
-
return stringValue.replace(/&/g, '&')
|
|
5562
|
-
.replace(/</g, '<')
|
|
5563
|
-
.replace(/>/g, '>')
|
|
5564
|
-
.replace(/"/g, '"')
|
|
5565
|
-
.replace(/'/g, ''');
|
|
5566
|
-
}
|
|
5567
|
-
}
|
|
5568
5568
|
dirtyKeyCollections() {
|
|
5569
5569
|
this._keysAreValid = false;
|
|
5570
5570
|
}
|
|
@@ -33645,20 +33645,10 @@ class IgxCardHeaderComponent {
|
|
|
33645
33645
|
* ```
|
|
33646
33646
|
*/
|
|
33647
33647
|
this.vertical = false;
|
|
33648
|
-
/**
|
|
33649
|
-
* An @Input property that sets the value of the `role` attribute of the card header.
|
|
33650
|
-
* By default the value is set to `header`.
|
|
33651
|
-
*
|
|
33652
|
-
* @example
|
|
33653
|
-
* ```html
|
|
33654
|
-
* <igx-card-header role="header"></igx-card-header>
|
|
33655
|
-
* ```
|
|
33656
|
-
*/
|
|
33657
|
-
this.role = 'header';
|
|
33658
33648
|
}
|
|
33659
33649
|
}
|
|
33660
33650
|
IgxCardHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: IgxCardHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
33661
|
-
IgxCardHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: IgxCardHeaderComponent, selector: "igx-card-header", inputs: { vertical: "vertical" }, host: { properties: { "class.igx-card-header": "this.cssClass", "class.igx-card-header--vertical": "this.vertical"
|
|
33651
|
+
IgxCardHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: IgxCardHeaderComponent, selector: "igx-card-header", inputs: { vertical: "vertical" }, host: { properties: { "class.igx-card-header": "this.cssClass", "class.igx-card-header--vertical": "this.vertical" } }, ngImport: i0, template: "<div class=\"igx-card-header__thumbnail\">\n <ng-content select=\"igx-avatar, igx-card-media, [igxCardThumbnail]\"></ng-content>\n</div>\n\n<div class=\"igx-card-header__titles\">\n <ng-content select=\"\n [igxCardHeaderTitle],\n [igxCardHeaderSubtitle],\n .igx-card-header__title,\n .igx-card-header__subtitle\">\n </ng-content>\n</div>\n\n<ng-content></ng-content>\n" });
|
|
33662
33652
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: IgxCardHeaderComponent, decorators: [{
|
|
33663
33653
|
type: Component,
|
|
33664
33654
|
args: [{ selector: 'igx-card-header', template: "<div class=\"igx-card-header__thumbnail\">\n <ng-content select=\"igx-avatar, igx-card-media, [igxCardThumbnail]\"></ng-content>\n</div>\n\n<div class=\"igx-card-header__titles\">\n <ng-content select=\"\n [igxCardHeaderTitle],\n [igxCardHeaderSubtitle],\n .igx-card-header__title,\n .igx-card-header__subtitle\">\n </ng-content>\n</div>\n\n<ng-content></ng-content>\n" }]
|
|
@@ -33670,9 +33660,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
|
|
|
33670
33660
|
args: ['class.igx-card-header--vertical']
|
|
33671
33661
|
}, {
|
|
33672
33662
|
type: Input
|
|
33673
|
-
}], role: [{
|
|
33674
|
-
type: HostBinding,
|
|
33675
|
-
args: ['attr.role']
|
|
33676
33663
|
}] } });
|
|
33677
33664
|
/**
|
|
33678
33665
|
* IgxCardThumbnail is container for the card thumbnail section.
|
|
@@ -67373,9 +67360,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
|
|
|
67373
67360
|
columnsArray = this.getSelectableColumnsAt(each);
|
|
67374
67361
|
columnsArray.forEach((col) => {
|
|
67375
67362
|
if (col) {
|
|
67376
|
-
const key = headers ? col.header || col.field : col.field;
|
|
67363
|
+
const key = !this.isPivot && headers ? col.header || col.field : col.field;
|
|
67377
67364
|
const rowData = source[row].ghostRecord ? source[row].recordRef : source[row];
|
|
67378
|
-
const value =
|
|
67365
|
+
const value = this.isPivot ? rowData.aggregationValues.get(col.field)
|
|
67366
|
+
: resolveNestedPath(rowData, col.field);
|
|
67379
67367
|
record[key] = formatters && col.formatter ? col.formatter(value, rowData) : value;
|
|
67380
67368
|
if (columnData) {
|
|
67381
67369
|
if (!record[key]) {
|
|
@@ -79181,6 +79169,9 @@ class IgxTreeGridHierarchizingPipe {
|
|
|
79181
79169
|
const treeGridRecordsMap = new Map();
|
|
79182
79170
|
const flatData = [];
|
|
79183
79171
|
if (!collection || !collection.length) {
|
|
79172
|
+
this.grid.flatData = collection;
|
|
79173
|
+
this.grid.records = treeGridRecordsMap;
|
|
79174
|
+
this.grid.rootRecords = collection;
|
|
79184
79175
|
return collection;
|
|
79185
79176
|
}
|
|
79186
79177
|
if (childDataKey) {
|