@porscheinformatik/material-addons 17.3.3 → 17.4.1
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/esm2022/lib/card/card.component.mjs +3 -3
- package/esm2022/lib/data-table/util/data-table-sort-util.mjs +25 -29
- package/esm2022/version.mjs +2 -2
- package/fesm2022/porscheinformatik-material-addons.mjs +27 -31
- package/fesm2022/porscheinformatik-material-addons.mjs.map +1 -1
- package/lib/card/card.component.d.ts +1 -1
- package/lib/card/card.component.d.ts.map +1 -1
- package/lib/data-table/util/data-table-sort-util.d.ts.map +1 -1
- package/package.json +1 -1
- package/version.d.ts +1 -1
|
@@ -42,7 +42,7 @@ export class CardComponent {
|
|
|
42
42
|
this.additionalAction.emit(undefined);
|
|
43
43
|
}
|
|
44
44
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
45
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: CardComponent, selector: "mad-card", inputs: { cancelDisabled: "cancelDisabled", cancelText: "cancelText", readonly: "readonly", editText: "editText", expandable: "expandable", expanded: "expanded", saveDisabled: "saveDisabled", saveText: "saveText", title: "title", editMode: "editMode", additionalActionIcon: "additionalActionIcon", additionalActionText: "additionalActionText" }, outputs: { edit: "edit", cancel: "cancel", save: "save", additionalAction: "additionalAction" }, ngImport: i0, template: "<mat-card>\n <mat-card-header class=\"header\">\n <mat-card-title-group class=\"center\">\n <mat-card-title class=\"small-title-container\">{{ title }}</mat-card-title>\n <div class=\"top-right-icons\">\n <mad-icon-button data-testid=\"collapse-btn\" (click)=\"toggleCollapse()\" *ngIf=\"expandable && !editMode\">\n <mat-icon [@rotateIcon]=\"!expanded\">keyboard_arrow_down</mat-icon>\n </mad-icon-button>\n <mad-icon-button\n data-testid=\"additional-btn\"\n (click)=\"additionalActionClicked()\"\n *ngIf=\"additionalActionIcon\"\n [title]=\"additionalActionText\"\n type=\"button\"\n >\n <mat-icon>{{ additionalActionIcon }}</mat-icon>\n </mad-icon-button>\n <mad-icon-button data-testid=\"edit-btn\" [title]=\"editText\" (click)=\"onEdit()\" *ngIf=\"!readonly && !editMode\">\n <mat-icon>create</mat-icon>\n </mad-icon-button>\n </div>\n </mat-card-title-group>\n </mat-card-header>\n <mat-card-content [@collapseExpandAnimation] *ngIf=\"expanded\">\n <ng-content></ng-content>\n </mat-card-content>\n <mat-card-actions *ngIf=\"!readonly && editMode\">\n <mad-primary-button data-testid=\"save-btn\" [title]=\"saveText\" [disabled]=\"saveDisabled\" (throttleClick)=\"onSave()\" madThrottleClick>\n {{ saveText }}\n </mad-primary-button>\n <mad-outline-button data-testid=\"cancel-btn\" [title]=\"cancelText\" [disabled]=\"cancelDisabled\" (click)=\"onCancel()\">\n {{ cancelText }}\n </mad-outline-button>\n </mat-card-actions>\n</mat-card>\n", styles: [".top-right-icons{text-align:end;width:-moz-fit-content;width:fit-content}.center{display:flex;align-items:center}.header{height:48px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: i2.MatCardTitleGroup, selector: "mat-card-title-group" }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.PrimaryButtonComponent, selector: "mad-primary-button", inputs: ["type", "disabled", "title"] }, { kind: "component", type: i5.OutlineButtonComponent, selector: "mad-outline-button", inputs: ["type", "disabled", "title", "color"] }, { kind: "component", type: i6.IconButtonComponent, selector: "mad-icon-button", inputs: ["type", "disabled", "title"] }, { kind: "directive", type: i7.ThrottleClickDirective, selector: "[madThrottleClick]", inputs: ["throttleTime"], outputs: ["throttleClick"] }], animations: [
|
|
45
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: CardComponent, selector: "mad-card", inputs: { cancelDisabled: "cancelDisabled", cancelText: "cancelText", readonly: "readonly", editText: "editText", expandable: "expandable", expanded: "expanded", saveDisabled: "saveDisabled", saveText: "saveText", title: "title", editMode: "editMode", additionalActionIcon: "additionalActionIcon", additionalActionText: "additionalActionText" }, outputs: { edit: "edit", cancel: "cancel", save: "save", additionalAction: "additionalAction" }, ngImport: i0, template: "<mat-card>\n <mat-card-header class=\"header\" *ngIf=\"title || expandable\">\n <mat-card-title-group class=\"center\">\n <mat-card-title class=\"small-title-container\">{{ title }}</mat-card-title>\n <div class=\"top-right-icons\">\n <mad-icon-button data-testid=\"collapse-btn\" (click)=\"toggleCollapse()\" *ngIf=\"expandable && !editMode\">\n <mat-icon [@rotateIcon]=\"!expanded\">keyboard_arrow_down</mat-icon>\n </mad-icon-button>\n <mad-icon-button\n data-testid=\"additional-btn\"\n (click)=\"additionalActionClicked()\"\n *ngIf=\"additionalActionIcon\"\n [title]=\"additionalActionText\"\n type=\"button\"\n >\n <mat-icon>{{ additionalActionIcon }}</mat-icon>\n </mad-icon-button>\n <mad-icon-button data-testid=\"edit-btn\" [title]=\"editText\" (click)=\"onEdit()\" *ngIf=\"!readonly && !editMode\">\n <mat-icon>create</mat-icon>\n </mad-icon-button>\n </div>\n </mat-card-title-group>\n </mat-card-header>\n <mat-card-content [@collapseExpandAnimation] *ngIf=\"expanded\">\n <ng-content></ng-content>\n </mat-card-content>\n <mat-card-actions *ngIf=\"!readonly && editMode\">\n <mad-primary-button data-testid=\"save-btn\" [title]=\"saveText\" [disabled]=\"saveDisabled\" (throttleClick)=\"onSave()\" madThrottleClick>\n {{ saveText }}\n </mad-primary-button>\n <mad-outline-button data-testid=\"cancel-btn\" [title]=\"cancelText\" [disabled]=\"cancelDisabled\" (click)=\"onCancel()\">\n {{ cancelText }}\n </mad-outline-button>\n </mat-card-actions>\n</mat-card>\n", styles: [".top-right-icons{text-align:end;width:-moz-fit-content;width:fit-content}.center{display:flex;align-items:center}.header{height:48px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: i2.MatCardTitleGroup, selector: "mat-card-title-group" }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.PrimaryButtonComponent, selector: "mad-primary-button", inputs: ["type", "disabled", "title"] }, { kind: "component", type: i5.OutlineButtonComponent, selector: "mad-outline-button", inputs: ["type", "disabled", "title", "color"] }, { kind: "component", type: i6.IconButtonComponent, selector: "mad-icon-button", inputs: ["type", "disabled", "title"] }, { kind: "directive", type: i7.ThrottleClickDirective, selector: "[madThrottleClick]", inputs: ["throttleTime"], outputs: ["throttleClick"] }], animations: [
|
|
46
46
|
trigger('collapseExpandAnimation', [
|
|
47
47
|
transition(':enter', [
|
|
48
48
|
style({ opacity: 0, height: 0, overflow: 'hidden' }),
|
|
@@ -92,7 +92,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
|
92
92
|
transition('true => false', animate('100ms ease-out')),
|
|
93
93
|
transition('false => true', animate('100ms ease-in')),
|
|
94
94
|
]),
|
|
95
|
-
], template: "<mat-card>\n <mat-card-header class=\"header\">\n <mat-card-title-group class=\"center\">\n <mat-card-title class=\"small-title-container\">{{ title }}</mat-card-title>\n <div class=\"top-right-icons\">\n <mad-icon-button data-testid=\"collapse-btn\" (click)=\"toggleCollapse()\" *ngIf=\"expandable && !editMode\">\n <mat-icon [@rotateIcon]=\"!expanded\">keyboard_arrow_down</mat-icon>\n </mad-icon-button>\n <mad-icon-button\n data-testid=\"additional-btn\"\n (click)=\"additionalActionClicked()\"\n *ngIf=\"additionalActionIcon\"\n [title]=\"additionalActionText\"\n type=\"button\"\n >\n <mat-icon>{{ additionalActionIcon }}</mat-icon>\n </mad-icon-button>\n <mad-icon-button data-testid=\"edit-btn\" [title]=\"editText\" (click)=\"onEdit()\" *ngIf=\"!readonly && !editMode\">\n <mat-icon>create</mat-icon>\n </mad-icon-button>\n </div>\n </mat-card-title-group>\n </mat-card-header>\n <mat-card-content [@collapseExpandAnimation] *ngIf=\"expanded\">\n <ng-content></ng-content>\n </mat-card-content>\n <mat-card-actions *ngIf=\"!readonly && editMode\">\n <mad-primary-button data-testid=\"save-btn\" [title]=\"saveText\" [disabled]=\"saveDisabled\" (throttleClick)=\"onSave()\" madThrottleClick>\n {{ saveText }}\n </mad-primary-button>\n <mad-outline-button data-testid=\"cancel-btn\" [title]=\"cancelText\" [disabled]=\"cancelDisabled\" (click)=\"onCancel()\">\n {{ cancelText }}\n </mad-outline-button>\n </mat-card-actions>\n</mat-card>\n", styles: [".top-right-icons{text-align:end;width:-moz-fit-content;width:fit-content}.center{display:flex;align-items:center}.header{height:48px}\n"] }]
|
|
95
|
+
], template: "<mat-card>\n <mat-card-header class=\"header\" *ngIf=\"title || expandable\">\n <mat-card-title-group class=\"center\">\n <mat-card-title class=\"small-title-container\">{{ title }}</mat-card-title>\n <div class=\"top-right-icons\">\n <mad-icon-button data-testid=\"collapse-btn\" (click)=\"toggleCollapse()\" *ngIf=\"expandable && !editMode\">\n <mat-icon [@rotateIcon]=\"!expanded\">keyboard_arrow_down</mat-icon>\n </mad-icon-button>\n <mad-icon-button\n data-testid=\"additional-btn\"\n (click)=\"additionalActionClicked()\"\n *ngIf=\"additionalActionIcon\"\n [title]=\"additionalActionText\"\n type=\"button\"\n >\n <mat-icon>{{ additionalActionIcon }}</mat-icon>\n </mad-icon-button>\n <mad-icon-button data-testid=\"edit-btn\" [title]=\"editText\" (click)=\"onEdit()\" *ngIf=\"!readonly && !editMode\">\n <mat-icon>create</mat-icon>\n </mad-icon-button>\n </div>\n </mat-card-title-group>\n </mat-card-header>\n <mat-card-content [@collapseExpandAnimation] *ngIf=\"expanded\">\n <ng-content></ng-content>\n </mat-card-content>\n <mat-card-actions *ngIf=\"!readonly && editMode\">\n <mad-primary-button data-testid=\"save-btn\" [title]=\"saveText\" [disabled]=\"saveDisabled\" (throttleClick)=\"onSave()\" madThrottleClick>\n {{ saveText }}\n </mad-primary-button>\n <mad-outline-button data-testid=\"cancel-btn\" [title]=\"cancelText\" [disabled]=\"cancelDisabled\" (click)=\"onCancel()\">\n {{ cancelText }}\n </mad-outline-button>\n </mat-card-actions>\n</mat-card>\n", styles: [".top-right-icons{text-align:end;width:-moz-fit-content;width:fit-content}.center{display:flex;align-items:center}.header{height:48px}\n"] }]
|
|
96
96
|
}], propDecorators: { cancelDisabled: [{
|
|
97
97
|
type: Input
|
|
98
98
|
}], cancelText: [{
|
|
@@ -126,4 +126,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
|
126
126
|
}], additionalAction: [{
|
|
127
127
|
type: Output
|
|
128
128
|
}] } });
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXRlcmlhbC1hZGRvbnMvc3JjL2xpYi9jYXJkL2NhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0ZXJpYWwtYWRkb25zL3NyYy9saWIvY2FyZC9jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7Ozs7O0FBcUMvRSxNQUFNLE9BQU8sYUFBYTtJQW5DMUI7UUFvQ1csbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDdkIsZUFBVSxHQUFHLFNBQVMsQ0FBQztRQUN2QixhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLGFBQVEsR0FBRyxTQUFTLENBQUM7UUFDckIsZUFBVSxHQUFHLElBQUksQ0FBQztRQUNsQixhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLGFBQVEsR0FBRyxTQUFTLENBQUM7UUFFckIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUVqQix5QkFBb0IsR0FBRyxFQUFFLENBQUM7UUFDekIsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDMUIsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDNUIsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDMUIscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQXNCakQ7SUFwQkMsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FB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QUUsS0FBSyxDQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQzs0QkFDdEQsVUFBVSxDQUFDLGVBQWUsRUFBRSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzs0QkFDdEQsVUFBVSxDQUFDLGVBQWUsRUFBRSxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7eUJBQ3RELENBQUM7cUJBQ0g7OEJBSVEsY0FBYztzQkFBdEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ0ksSUFBSTtzQkFBYixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxJQUFJO3NCQUFiLE1BQU07Z0JBQ0csZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2FuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlcn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hZC1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcignY29sbGFwc2VFeHBhbmRBbmltYXRpb24nLCBbXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCwgaGVpZ2h0OiAwLCBvdmVyZmxvdzogJ2hpZGRlbicgfSksXG4gICAgICAgIGFuaW1hdGUoXG4gICAgICAgICAgJzEwMG1zJyxcbiAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICBvcGFjaXR5OiAxLFxuICAgICAgICAgICAgaGVpZ2h0OiAnKicsXG4gICAgICAgICAgfSksXG4gICAgICAgICksXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAxLCBoZWlnaHQ6ICcqJywgb3ZlcmZsb3c6ICdoaWRkZW4nIH0pLFxuICAgICAgICBhbmltYXRlKFxuICAgICAgICAgICcxMDBtcycsXG4gICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgb3BhY2l0eTogMCxcbiAgICAgICAgICAgIGhlaWdodDogMCxcbiAgICAgICAgICB9KSxcbiAgICAgICAgKSxcbiAgICAgIF0pLFxuICAgIF0pLFxuICAgIHRyaWdnZXIoJ3JvdGF0ZUljb24nLCBbXG4gICAgICBzdGF0ZSgndHJ1ZScsIHN0eWxlKHsgdHJhbnNmb3JtOiAncm90YXRlKDApJyB9KSksXG4gICAgICBzdGF0ZSgnZmFsc2UnLCBzdHlsZSh7IHRyYW5zZm9ybTogJ3JvdGF0ZSgxODBkZWcpJyB9KSksXG4gICAgICB0cmFuc2l0aW9uKCd0cnVlID0+IGZhbHNlJywgYW5pbWF0ZSgnMTAwbXMgZWFzZS1vdXQnKSksXG4gICAgICB0cmFuc2l0aW9uKCdmYWxzZSA9PiB0cnVlJywgYW5pbWF0ZSgnMTAwbXMgZWFzZS1pbicpKSxcbiAgICBdKSxcbiAgXSxcbiAgc3R5bGVVcmxzOiBbJy4vY2FyZC5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBDYXJkQ29tcG9uZW50IHtcbiAgQElucHV0KCkgY2FuY2VsRGlzYWJsZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgY2FuY2VsVGV4dCA9ICdOT1QgU0VUJztcbiAgQElucHV0KCkgcmVhZG9ubHkgPSB0cnVlO1xuICBASW5wdXQoKSBlZGl0VGV4dCA9ICdOT1QgU0VUJztcbiAgQElucHV0KCkgZXhwYW5kYWJsZSA9IHRydWU7XG4gIEBJbnB1dCgpIGV4cGFuZGVkID0gdHJ1ZTtcbiAgQElucHV0KCkgc2F2ZURpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNhdmVUZXh0ID0gJ05PVCBTRVQnO1xuICBASW5wdXQoKSB0aXRsZT86IHN0cmluZztcbiAgQElucHV0KCkgZWRpdE1vZGUgPSBmYWxzZTtcbiAgQElucHV0KCkgYWRkaXRpb25hbEFjdGlvbkljb246IHN0cmluZztcbiAgQElucHV0KCkgYWRkaXRpb25hbEFjdGlvblRleHQgPSAnJztcbiAgQE91dHB1dCgpIGVkaXQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBjYW5jZWwgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBzYXZlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgYWRkaXRpb25hbEFjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBvbkNhbmNlbCgpOiB2b2lkIHtcbiAgICB0aGlzLmNhbmNlbC5lbWl0KHVuZGVmaW5lZCk7XG4gIH1cblxuICBvbkVkaXQoKTogdm9pZCB7XG4gICAgdGhpcy5lZGl0LmVtaXQodW5kZWZpbmVkKTtcbiAgICB0aGlzLmV4cGFuZGVkID0gdHJ1ZTtcbiAgfVxuXG4gIG9uU2F2ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnNhdmUuZW1pdCh1bmRlZmluZWQpO1xuICB9XG5cbiAgdG9nZ2xlQ29sbGFwc2UoKTogdm9pZCB7XG4gICAgdGhpcy5leHBhbmRlZCA9ICF0aGlzLmV4cGFuZGVkO1xuICB9XG5cbiAgYWRkaXRpb25hbEFjdGlvbkNsaWNrZWQoKTogdm9pZCB7XG4gICAgdGhpcy5hZGRpdGlvbmFsQWN0aW9uLmVtaXQodW5kZWZpbmVkKTtcbiAgfVxufVxuIiwiPG1hdC1jYXJkPlxuICA8bWF0LWNhcmQtaGVhZGVyIGNsYXNzPVwiaGVhZGVyXCIgKm5nSWY9XCJ0aXRsZSB8fCBleHBhbmRhYmxlXCI+XG4gICAgPG1hdC1jYXJkLXRpdGxlLWdyb3VwIGNsYXNzPVwiY2VudGVyXCI+XG4gICAgICA8bWF0LWNhcmQtdGl0bGUgY2xhc3M9XCJzbWFsbC10aXRsZS1jb250YWluZXJcIj57eyB0aXRsZSB9fTwvbWF0LWNhcmQtdGl0bGU+XG4gICAgICA8ZGl2IGNsYXNzPVwidG9wLXJpZ2h0LWljb25zXCI+XG4gICAgICAgIDxtYWQtaWNvbi1idXR0b24gZGF0YS10ZXN0aWQ9XCJjb2xsYXBzZS1idG5cIiAoY2xpY2spPVwidG9nZ2xlQ29sbGFwc2UoKVwiICpuZ0lmPVwiZXhwYW5kYWJsZSAmJiAhZWRpdE1vZGVcIj5cbiAgICAgICAgICA8bWF0LWljb24gW0Byb3RhdGVJY29uXT1cIiFleHBhbmRlZFwiPmtleWJvYXJkX2Fycm93X2Rvd248L21hdC1pY29uPlxuICAgICAgICA8L21hZC1pY29uLWJ1dHRvbj5cbiAgICAgICAgPG1hZC1pY29uLWJ1dHRvblxuICAgICAgICAgIGRhdGEtdGVzdGlkPVwiYWRkaXRpb25hbC1idG5cIlxuICAgICAgICAgIChjbGljayk9XCJhZGRpdGlvbmFsQWN0aW9uQ2xpY2tlZCgpXCJcbiAgICAgICAgICAqbmdJZj1cImFkZGl0aW9uYWxBY3Rpb25JY29uXCJcbiAgICAgICAgICBbdGl0bGVdPVwiYWRkaXRpb25hbEFjdGlvblRleHRcIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICA+XG4gICAgICAgICAgPG1hdC1pY29uPnt7IGFkZGl0aW9uYWxBY3Rpb25JY29uIH19PC9tYXQtaWNvbj5cbiAgICAgICAgPC9tYWQtaWNvbi1idXR0b24+XG4gICAgICAgIDxtYWQtaWNvbi1idXR0b24gZGF0YS10ZXN0aWQ9XCJlZGl0LWJ0blwiIFt0aXRsZV09XCJlZGl0VGV4dFwiIChjbGljayk9XCJvbkVkaXQoKVwiICpuZ0lmPVwiIXJlYWRvbmx5ICYmICFlZGl0TW9kZVwiPlxuICAgICAgICAgIDxtYXQtaWNvbj5jcmVhdGU8L21hdC1pY29uPlxuICAgICAgICA8L21hZC1pY29uLWJ1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbWF0LWNhcmQtdGl0bGUtZ3JvdXA+XG4gIDwvbWF0LWNhcmQtaGVhZGVyPlxuICA8bWF0LWNhcmQtY29udGVudCBbQGNvbGxhcHNlRXhwYW5kQW5pbWF0aW9uXSAqbmdJZj1cImV4cGFuZGVkXCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L21hdC1jYXJkLWNvbnRlbnQ+XG4gIDxtYXQtY2FyZC1hY3Rpb25zICpuZ0lmPVwiIXJlYWRvbmx5ICYmIGVkaXRNb2RlXCI+XG4gICAgPG1hZC1wcmltYXJ5LWJ1dHRvbiBkYXRhLXRlc3RpZD1cInNhdmUtYnRuXCIgW3RpdGxlXT1cInNhdmVUZXh0XCIgW2Rpc2FibGVkXT1cInNhdmVEaXNhYmxlZFwiICh0aHJvdHRsZUNsaWNrKT1cIm9uU2F2ZSgpXCIgbWFkVGhyb3R0bGVDbGljaz5cbiAgICAgIHt7IHNhdmVUZXh0IH19XG4gICAgPC9tYWQtcHJpbWFyeS1idXR0b24+XG4gICAgPG1hZC1vdXRsaW5lLWJ1dHRvbiBkYXRhLXRlc3RpZD1cImNhbmNlbC1idG5cIiBbdGl0bGVdPVwiY2FuY2VsVGV4dFwiIFtkaXNhYmxlZF09XCJjYW5jZWxEaXNhYmxlZFwiIChjbGljayk9XCJvbkNhbmNlbCgpXCI+XG4gICAgICB7eyBjYW5jZWxUZXh0IH19XG4gICAgPC9tYWQtb3V0bGluZS1idXR0b24+XG4gIDwvbWF0LWNhcmQtYWN0aW9ucz5cbjwvbWF0LWNhcmQ+XG4iXX0=
|
|
@@ -10,38 +10,34 @@ export class DataTableSortUtil {
|
|
|
10
10
|
const x = a[sort.active];
|
|
11
11
|
const y = b[sort.active];
|
|
12
12
|
const ascending = sort.direction === 'asc';
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
13
|
+
if (typeof x === 'number' && typeof y === 'number') {
|
|
14
|
+
return DataTableSortUtil.compareNumber(x, y, ascending);
|
|
15
|
+
}
|
|
16
|
+
if (typeof x === 'boolean' && typeof y === 'boolean') {
|
|
17
|
+
return DataTableSortUtil.compareBoolean(x, y, ascending);
|
|
18
|
+
}
|
|
19
|
+
if (typeof x === 'string' || typeof y === 'string') {
|
|
20
|
+
const stringX = String(x ?? '');
|
|
21
|
+
const stringY = String(y ?? '');
|
|
22
|
+
// a string could be a date
|
|
23
|
+
if (!!dateTimeFormat) {
|
|
24
|
+
const dateX = DateTime.fromFormat(stringX, dateTimeFormat);
|
|
25
|
+
const dateY = DateTime.fromFormat(stringY, dateTimeFormat);
|
|
26
|
+
if (dateX.isValid && dateY.isValid) {
|
|
27
|
+
return DataTableSortUtil.compareDate(dateX, dateY, ascending);
|
|
28
28
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
29
|
+
}
|
|
30
|
+
// .. but also a formatted number
|
|
31
|
+
if (!!numberFormat) {
|
|
32
|
+
const numberX = DataTableSortUtil.parseNumber(stringX, numberFormat);
|
|
33
|
+
const numberY = DataTableSortUtil.parseNumber(stringY, numberFormat);
|
|
34
|
+
if (typeof numberX === 'number' && typeof numberY === 'number') {
|
|
35
|
+
return DataTableSortUtil.compareNumber(numberX, numberY, ascending);
|
|
36
36
|
}
|
|
37
|
-
return DataTableSortUtil.compareString(x, stringY, ascending);
|
|
38
37
|
}
|
|
39
|
-
|
|
40
|
-
return DataTableSortUtil.compareBoolean(x, y, ascending);
|
|
41
|
-
default:
|
|
42
|
-
// cannot compare -> return equal
|
|
43
|
-
return 0;
|
|
38
|
+
return DataTableSortUtil.compareString(stringX, stringY, ascending);
|
|
44
39
|
}
|
|
40
|
+
return 0;
|
|
45
41
|
}
|
|
46
42
|
static compareNumber(x, y, ascending) {
|
|
47
43
|
return ascending ? x - y : y - x;
|
|
@@ -77,4 +73,4 @@ export class DataTableSortUtil {
|
|
|
77
73
|
return value;
|
|
78
74
|
}
|
|
79
75
|
}
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS1zb3J0LXV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXRlcmlhbC1hZGRvbnMvc3JjL2xpYi9kYXRhLXRhYmxlL3V0aWwvZGF0YS10YWJsZS1zb3J0LXV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUdqQyxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLE1BQU0sQ0FBQyxRQUFRLENBQUMsY0FBdUIsRUFBRSxZQUEyQjtRQUNsRSxPQUFPLENBQUMsU0FBZ0IsRUFBRSxPQUFnQixFQUFFLEVBQUUsQ0FDNUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUMxRyxDQUFDO0lBRUQsTUFBTSxDQUFDLFdBQVc7UUFDaEIsT0FBTyxDQUFDLFNBQWdCLEVBQUUsQ0FBVSxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUM7SUFDckQsQ0FBQztJQUVELE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBc0IsRUFBRSxDQUFzQixFQUFFLElBQVUsRUFBRSxjQUF1QixFQUFFLFlBQTJCO1FBQzdILE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDekIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxLQUFLLEtBQUssQ0FBQztRQUUzQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRLEVBQUU7WUFDbEQs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LENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNuQjtJQUNILENBQUM7SUFFRCxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQWEsRUFBRSxZQUEyQjtRQUMzRCxNQUFNLFNBQVMsR0FBRyxLQUFLO2FBQ3BCLE9BQU8sQ0FBQyxZQUFZLENBQUMsaUJBQWlCLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQzthQUNqRCxPQUFPLENBQUMsWUFBWSxDQUFDLGdCQUFnQixJQUFJLEVBQUUsRUFBRSxHQUFHLENBQUM7YUFDakQsT0FBTyxDQUFDLElBQUksTUFBTSxDQUFDLENBQUMsWUFBWSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqRSxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFdEMsSUFBSSxPQUFPLFdBQVcsS0FBSyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDMUQsT0FBTyxXQUFXLENBQUM7U0FDcEI7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hdFNvcnQsIFNvcnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcbmltcG9ydCB7IERhdGVUaW1lIH0gZnJvbSAnbHV4b24nO1xuaW1wb3J0IHsgTnVtYmVyRm9ybWF0IH0gZnJvbSAnLi4vY29uZmlndXJhdGlvbi9kYXRhLXRhYmxlLWdsb2JhbC1jb25maWd1cmF0aW9uJztcblxuZXhwb3J0IGNsYXNzIERhdGFUYWJsZVNvcnRVdGlsIHtcbiAgc3RhdGljIHNvcnREYXRhKGRhdGVUaW1lRm9ybWF0Pzogc3RyaW5nLCBudW1iZXJGb3JtYXQ/OiBOdW1iZXJGb3JtYXQpOiAodGFibGVEYXRhOiBhbnlbXSwgbWF0U29ydDogTWF0U29ydCkgPT4gYW55W10ge1xuICAgIHJldHVybiAodGFibGVEYXRhOiBhbnlbXSwgbWF0U29ydDogTWF0U29ydCkgPT5cbiAgICAgIFsuLi50YWJsZURhdGFdLnNvcnQoKGEsIGIpID0+IERhdGFUYWJsZVNvcnRVdGlsLmNvbXBhcmUoYSwgYiwgbWF0U29ydCwgZGF0ZVRpbWVGb3JtYXQsIG51bWJlckZvcm1hdCkpO1xuICB9XG5cbiAgc3RhdGljIHNvcnROb3RoaW5nKCk6ICh0YWJsZURhdGE6IGFueVtdLCBtYXRTb3J0OiBNYXRTb3J0KSA9PiBhbnlbXSB7XG4gICAgcmV0dXJuICh0YWJsZURhdGE6IGFueVtdLCBfOiBNYXRTb3J0KSA9PiB0YWJsZURhdGE7XG4gIH1cblxuICBzdGF0aWMgY29tcGFyZShhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBiOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LCBzb3J0OiBTb3J0LCBkYXRlVGltZUZvcm1hdD86IHN0cmluZywgbnVtYmVyRm9ybWF0PzogTnVtYmVyRm9ybWF0KTogbnVtYmVyIHtcbiAgICBjb25zdCB4ID0gYVtzb3J0LmFjdGl2ZV07XG4gICAgY29uc3QgeSA9IGJbc29ydC5hY3RpdmVdO1xuICAgIGNvbnN0IGFzY2VuZGluZyA9IHNvcnQuZGlyZWN0aW9uID09PSAnYXNjJztcblxuICAgIGlmICh0eXBlb2YgeCA9PT0gJ251bWJlcicgJiYgdHlwZW9mIHkgPT09ICdudW1iZXInKSB7XG4gICAgICByZXR1cm4gRGF0YVRhYmxlU29ydFV0aWwuY29tcGFyZU51bWJlcih4LCB5LCBhc2NlbmRpbmcpO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIHggPT09ICdib29sZWFuJyAmJiB0eXBlb2YgeSA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICByZXR1cm4gRGF0YVRhYmxlU29ydFV0aWwuY29tcGFyZUJvb2xlYW4oeCwgeSwgYXNjZW5kaW5nKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiB4ID09PSAnc3RyaW5nJyB8fCB0eXBlb2YgeSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGNvbnN0IHN0cmluZ1ggPSBTdHJpbmcoeCA/PyAnJyk7XG4gICAgICBjb25zdCBzdHJpbmdZID0gU3RyaW5nKHkgPz8gJycpO1xuXG4gICAgICAvLyBhIHN0cmluZyBjb3VsZCBiZSBhIGRhdGVcbiAgICAgIGlmICghIWRhdGVUaW1lRm9ybWF0KSB7XG4gICAgICAgIGNvbnN0IGRhdGVYID0gRGF0ZVRpbWUuZnJvbUZvcm1hdChzdHJpbmdYLCBkYXRlVGltZUZvcm1hdCk7XG4gICAgICAgIGNvbnN0IGRhdGVZID0gRGF0ZVRpbWUuZnJvbUZvcm1hdChzdHJpbmdZLCBkYXRlVGltZUZvcm1hdCk7XG5cbiAgICAgICAgaWYgKGRhdGVYLmlzVmFsaWQgJiYgZGF0ZVkuaXNWYWxpZCkge1xuICAgICAgICAgIHJldHVybiBEYXRhVGFibGVTb3J0VXRpbC5jb21wYXJlRGF0ZShkYXRlWCwgZGF0ZVksIGFzY2VuZGluZyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gLi4gYnV0IGFsc28gYSBmb3JtYXR0ZWQgbnVtYmVyXG4gICAgICBpZiAoISFudW1iZXJGb3JtYXQpIHtcbiAgICAgICAgY29uc3QgbnVtYmVyWCA9IERhdGFUYWJsZVNvcnRVdGlsLnBhcnNlTnVtYmVyKHN0cmluZ1gsIG51bWJlckZvcm1hdCk7XG4gICAgICAgIGNvbnN0IG51bWJlclkgPSBEYXRhVGFibGVTb3J0VXRpbC5wYXJzZU51bWJlcihzdHJpbmdZLCBudW1iZXJGb3JtYXQpO1xuXG4gICAgICAgIGlmICh0eXBlb2YgbnVtYmVyWCA9PT0gJ251bWJlcicgJiYgdHlwZW9mIG51bWJlclkgPT09ICdudW1iZXInKSB7XG4gICAgICAgICAgcmV0dXJuIERhdGFUYWJsZVNvcnRVdGlsLmNvbXBhcmVOdW1iZXIobnVtYmVyWCwgbnVtYmVyWSwgYXNjZW5kaW5nKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gRGF0YVRhYmxlU29ydFV0aWwuY29tcGFyZVN0cmluZyhzdHJpbmdYLCBzdHJpbmdZLCBhc2NlbmRpbmcpO1xuICAgIH1cblxuICAgIHJldHVybiAwO1xuICB9XG5cbiAgc3RhdGljIGNvbXBhcmVOdW1iZXIoeDogbnVtYmVyLCB5OiBudW1iZXIsIGFzY2VuZGluZzogYm9vbGVhbik6IG51bWJlciB7XG4gICAgcmV0dXJuIGFzY2VuZGluZyA/IHggLSB5IDogeSAtIHg7XG4gIH1cblxuICBzdGF0aWMgY29tcGFyZURhdGUoeDogRGF0ZVRpbWUsIHk6IERhdGVUaW1lLCBhc2NlbmRpbmc6IGJvb2xlYW4pOiBudW1iZXIge1xuICAgIHJldHVybiBEYXRhVGFibGVTb3J0VXRpbC5jb21wYXJlTnVtYmVyKCt4LCAreSwgYXNjZW5kaW5nKTtcbiAgfVxuXG4gIHN0YXRpYyBjb21wYXJlU3RyaW5nKHg6IHN0cmluZywgeTogc3RyaW5nLCBhc2NlbmRpbmc6IGJvb2xlYW4pOiBudW1iZXIge1xuICAgIHJldHVybiBhc2NlbmRpbmcgPyB4LmxvY2FsZUNvbXBhcmUoeSkgOiB5LmxvY2FsZUNvbXBhcmUoeCk7XG4gIH1cblxuICBzdGF0aWMgY29tcGFyZUJvb2xlYW4oeDogYm9vbGVhbiwgeTogYm9vbGVhbiwgYXNjZW5kaW5nOiBib29sZWFuKTogbnVtYmVyIHtcbiAgICBpZiAoeCA9PT0geSkge1xuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIGlmIChhc2NlbmRpbmcpIHtcbiAgICAgIC8vIHRydWUgZmlyc3RcbiAgICAgIHJldHVybiB4ID8gLTEgOiAxO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBmYWxzZSBmaXJzdFxuICAgICAgcmV0dXJuIHggPyAxIDogLTE7XG4gICAgfVxuICB9XG5cbiAgc3RhdGljIHBhcnNlTnVtYmVyKHZhbHVlOiBzdHJpbmcsIG51bWJlckZvcm1hdD86IE51bWJlckZvcm1hdCk6IG51bWJlciB8IHN0cmluZyB7XG4gICAgY29uc3Qgc2FuaXRpemVkID0gdmFsdWVcbiAgICAgIC5yZXBsYWNlKG51bWJlckZvcm1hdC5ncm91cGluZ1NlcGFyYXRvciA/PyAnJywgJycpXG4gICAgICAucmVwbGFjZShudW1iZXJGb3JtYXQuZGVjaW1hbFNlcGFyYXRvciA/PyAnJywgJy4nKVxuICAgICAgLnJlcGxhY2UobmV3IFJlZ0V4cCgobnVtYmVyRm9ybWF0LnVuaXRzID8/IFtdKS5qb2luKCd8JykpLCAnJyk7XG5cbiAgICBjb25zdCBudW1iZXJWYWx1ZSA9IE51bWJlcihzYW5pdGl6ZWQpO1xuXG4gICAgaWYgKHR5cGVvZiBudW1iZXJWYWx1ZSA9PT0gJ251bWJlcicgJiYgIWlzTmFOKG51bWJlclZhbHVlKSkge1xuICAgICAgcmV0dXJuIG51bWJlclZhbHVlO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxufVxuIl19
|
package/esm2022/version.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = '17.3.
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export const VERSION = '17.3.4';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL21hdGVyaWFsLWFkZG9ucy9zcmMvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFZFUlNJT04gPSAnMTcuMy40JztcbiJdfQ==
|
|
@@ -1311,7 +1311,7 @@ class CardComponent {
|
|
|
1311
1311
|
this.additionalAction.emit(undefined);
|
|
1312
1312
|
}
|
|
1313
1313
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1314
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: CardComponent, selector: "mad-card", inputs: { cancelDisabled: "cancelDisabled", cancelText: "cancelText", readonly: "readonly", editText: "editText", expandable: "expandable", expanded: "expanded", saveDisabled: "saveDisabled", saveText: "saveText", title: "title", editMode: "editMode", additionalActionIcon: "additionalActionIcon", additionalActionText: "additionalActionText" }, outputs: { edit: "edit", cancel: "cancel", save: "save", additionalAction: "additionalAction" }, ngImport: i0, template: "<mat-card>\n <mat-card-header class=\"header\">\n <mat-card-title-group class=\"center\">\n <mat-card-title class=\"small-title-container\">{{ title }}</mat-card-title>\n <div class=\"top-right-icons\">\n <mad-icon-button data-testid=\"collapse-btn\" (click)=\"toggleCollapse()\" *ngIf=\"expandable && !editMode\">\n <mat-icon [@rotateIcon]=\"!expanded\">keyboard_arrow_down</mat-icon>\n </mad-icon-button>\n <mad-icon-button\n data-testid=\"additional-btn\"\n (click)=\"additionalActionClicked()\"\n *ngIf=\"additionalActionIcon\"\n [title]=\"additionalActionText\"\n type=\"button\"\n >\n <mat-icon>{{ additionalActionIcon }}</mat-icon>\n </mad-icon-button>\n <mad-icon-button data-testid=\"edit-btn\" [title]=\"editText\" (click)=\"onEdit()\" *ngIf=\"!readonly && !editMode\">\n <mat-icon>create</mat-icon>\n </mad-icon-button>\n </div>\n </mat-card-title-group>\n </mat-card-header>\n <mat-card-content [@collapseExpandAnimation] *ngIf=\"expanded\">\n <ng-content></ng-content>\n </mat-card-content>\n <mat-card-actions *ngIf=\"!readonly && editMode\">\n <mad-primary-button data-testid=\"save-btn\" [title]=\"saveText\" [disabled]=\"saveDisabled\" (throttleClick)=\"onSave()\" madThrottleClick>\n {{ saveText }}\n </mad-primary-button>\n <mad-outline-button data-testid=\"cancel-btn\" [title]=\"cancelText\" [disabled]=\"cancelDisabled\" (click)=\"onCancel()\">\n {{ cancelText }}\n </mad-outline-button>\n </mat-card-actions>\n</mat-card>\n", styles: [".top-right-icons{text-align:end;width:-moz-fit-content;width:fit-content}.center{display:flex;align-items:center}.header{height:48px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: i2$1.MatCardTitleGroup, selector: "mat-card-title-group" }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: PrimaryButtonComponent, selector: "mad-primary-button", inputs: ["type", "disabled", "title"] }, { kind: "component", type: OutlineButtonComponent, selector: "mad-outline-button", inputs: ["type", "disabled", "title", "color"] }, { kind: "component", type: IconButtonComponent, selector: "mad-icon-button", inputs: ["type", "disabled", "title"] }, { kind: "directive", type: ThrottleClickDirective, selector: "[madThrottleClick]", inputs: ["throttleTime"], outputs: ["throttleClick"] }], animations: [
|
|
1314
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: CardComponent, selector: "mad-card", inputs: { cancelDisabled: "cancelDisabled", cancelText: "cancelText", readonly: "readonly", editText: "editText", expandable: "expandable", expanded: "expanded", saveDisabled: "saveDisabled", saveText: "saveText", title: "title", editMode: "editMode", additionalActionIcon: "additionalActionIcon", additionalActionText: "additionalActionText" }, outputs: { edit: "edit", cancel: "cancel", save: "save", additionalAction: "additionalAction" }, ngImport: i0, template: "<mat-card>\n <mat-card-header class=\"header\" *ngIf=\"title || expandable\">\n <mat-card-title-group class=\"center\">\n <mat-card-title class=\"small-title-container\">{{ title }}</mat-card-title>\n <div class=\"top-right-icons\">\n <mad-icon-button data-testid=\"collapse-btn\" (click)=\"toggleCollapse()\" *ngIf=\"expandable && !editMode\">\n <mat-icon [@rotateIcon]=\"!expanded\">keyboard_arrow_down</mat-icon>\n </mad-icon-button>\n <mad-icon-button\n data-testid=\"additional-btn\"\n (click)=\"additionalActionClicked()\"\n *ngIf=\"additionalActionIcon\"\n [title]=\"additionalActionText\"\n type=\"button\"\n >\n <mat-icon>{{ additionalActionIcon }}</mat-icon>\n </mad-icon-button>\n <mad-icon-button data-testid=\"edit-btn\" [title]=\"editText\" (click)=\"onEdit()\" *ngIf=\"!readonly && !editMode\">\n <mat-icon>create</mat-icon>\n </mad-icon-button>\n </div>\n </mat-card-title-group>\n </mat-card-header>\n <mat-card-content [@collapseExpandAnimation] *ngIf=\"expanded\">\n <ng-content></ng-content>\n </mat-card-content>\n <mat-card-actions *ngIf=\"!readonly && editMode\">\n <mad-primary-button data-testid=\"save-btn\" [title]=\"saveText\" [disabled]=\"saveDisabled\" (throttleClick)=\"onSave()\" madThrottleClick>\n {{ saveText }}\n </mad-primary-button>\n <mad-outline-button data-testid=\"cancel-btn\" [title]=\"cancelText\" [disabled]=\"cancelDisabled\" (click)=\"onCancel()\">\n {{ cancelText }}\n </mad-outline-button>\n </mat-card-actions>\n</mat-card>\n", styles: [".top-right-icons{text-align:end;width:-moz-fit-content;width:fit-content}.center{display:flex;align-items:center}.header{height:48px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i2$1.MatCardActions, selector: "mat-card-actions", inputs: ["align"], exportAs: ["matCardActions"] }, { kind: "directive", type: i2$1.MatCardContent, selector: "mat-card-content" }, { kind: "component", type: i2$1.MatCardHeader, selector: "mat-card-header" }, { kind: "directive", type: i2$1.MatCardTitle, selector: "mat-card-title, [mat-card-title], [matCardTitle]" }, { kind: "component", type: i2$1.MatCardTitleGroup, selector: "mat-card-title-group" }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: PrimaryButtonComponent, selector: "mad-primary-button", inputs: ["type", "disabled", "title"] }, { kind: "component", type: OutlineButtonComponent, selector: "mad-outline-button", inputs: ["type", "disabled", "title", "color"] }, { kind: "component", type: IconButtonComponent, selector: "mad-icon-button", inputs: ["type", "disabled", "title"] }, { kind: "directive", type: ThrottleClickDirective, selector: "[madThrottleClick]", inputs: ["throttleTime"], outputs: ["throttleClick"] }], animations: [
|
|
1315
1315
|
trigger('collapseExpandAnimation', [
|
|
1316
1316
|
transition(':enter', [
|
|
1317
1317
|
style({ opacity: 0, height: 0, overflow: 'hidden' }),
|
|
@@ -1361,7 +1361,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
|
1361
1361
|
transition('true => false', animate('100ms ease-out')),
|
|
1362
1362
|
transition('false => true', animate('100ms ease-in')),
|
|
1363
1363
|
]),
|
|
1364
|
-
], template: "<mat-card>\n <mat-card-header class=\"header\">\n <mat-card-title-group class=\"center\">\n <mat-card-title class=\"small-title-container\">{{ title }}</mat-card-title>\n <div class=\"top-right-icons\">\n <mad-icon-button data-testid=\"collapse-btn\" (click)=\"toggleCollapse()\" *ngIf=\"expandable && !editMode\">\n <mat-icon [@rotateIcon]=\"!expanded\">keyboard_arrow_down</mat-icon>\n </mad-icon-button>\n <mad-icon-button\n data-testid=\"additional-btn\"\n (click)=\"additionalActionClicked()\"\n *ngIf=\"additionalActionIcon\"\n [title]=\"additionalActionText\"\n type=\"button\"\n >\n <mat-icon>{{ additionalActionIcon }}</mat-icon>\n </mad-icon-button>\n <mad-icon-button data-testid=\"edit-btn\" [title]=\"editText\" (click)=\"onEdit()\" *ngIf=\"!readonly && !editMode\">\n <mat-icon>create</mat-icon>\n </mad-icon-button>\n </div>\n </mat-card-title-group>\n </mat-card-header>\n <mat-card-content [@collapseExpandAnimation] *ngIf=\"expanded\">\n <ng-content></ng-content>\n </mat-card-content>\n <mat-card-actions *ngIf=\"!readonly && editMode\">\n <mad-primary-button data-testid=\"save-btn\" [title]=\"saveText\" [disabled]=\"saveDisabled\" (throttleClick)=\"onSave()\" madThrottleClick>\n {{ saveText }}\n </mad-primary-button>\n <mad-outline-button data-testid=\"cancel-btn\" [title]=\"cancelText\" [disabled]=\"cancelDisabled\" (click)=\"onCancel()\">\n {{ cancelText }}\n </mad-outline-button>\n </mat-card-actions>\n</mat-card>\n", styles: [".top-right-icons{text-align:end;width:-moz-fit-content;width:fit-content}.center{display:flex;align-items:center}.header{height:48px}\n"] }]
|
|
1364
|
+
], template: "<mat-card>\n <mat-card-header class=\"header\" *ngIf=\"title || expandable\">\n <mat-card-title-group class=\"center\">\n <mat-card-title class=\"small-title-container\">{{ title }}</mat-card-title>\n <div class=\"top-right-icons\">\n <mad-icon-button data-testid=\"collapse-btn\" (click)=\"toggleCollapse()\" *ngIf=\"expandable && !editMode\">\n <mat-icon [@rotateIcon]=\"!expanded\">keyboard_arrow_down</mat-icon>\n </mad-icon-button>\n <mad-icon-button\n data-testid=\"additional-btn\"\n (click)=\"additionalActionClicked()\"\n *ngIf=\"additionalActionIcon\"\n [title]=\"additionalActionText\"\n type=\"button\"\n >\n <mat-icon>{{ additionalActionIcon }}</mat-icon>\n </mad-icon-button>\n <mad-icon-button data-testid=\"edit-btn\" [title]=\"editText\" (click)=\"onEdit()\" *ngIf=\"!readonly && !editMode\">\n <mat-icon>create</mat-icon>\n </mad-icon-button>\n </div>\n </mat-card-title-group>\n </mat-card-header>\n <mat-card-content [@collapseExpandAnimation] *ngIf=\"expanded\">\n <ng-content></ng-content>\n </mat-card-content>\n <mat-card-actions *ngIf=\"!readonly && editMode\">\n <mad-primary-button data-testid=\"save-btn\" [title]=\"saveText\" [disabled]=\"saveDisabled\" (throttleClick)=\"onSave()\" madThrottleClick>\n {{ saveText }}\n </mad-primary-button>\n <mad-outline-button data-testid=\"cancel-btn\" [title]=\"cancelText\" [disabled]=\"cancelDisabled\" (click)=\"onCancel()\">\n {{ cancelText }}\n </mad-outline-button>\n </mat-card-actions>\n</mat-card>\n", styles: [".top-right-icons{text-align:end;width:-moz-fit-content;width:fit-content}.center{display:flex;align-items:center}.header{height:48px}\n"] }]
|
|
1365
1365
|
}], propDecorators: { cancelDisabled: [{
|
|
1366
1366
|
type: Input
|
|
1367
1367
|
}], cancelText: [{
|
|
@@ -1942,38 +1942,34 @@ class DataTableSortUtil {
|
|
|
1942
1942
|
const x = a[sort.active];
|
|
1943
1943
|
const y = b[sort.active];
|
|
1944
1944
|
const ascending = sort.direction === 'asc';
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1945
|
+
if (typeof x === 'number' && typeof y === 'number') {
|
|
1946
|
+
return DataTableSortUtil.compareNumber(x, y, ascending);
|
|
1947
|
+
}
|
|
1948
|
+
if (typeof x === 'boolean' && typeof y === 'boolean') {
|
|
1949
|
+
return DataTableSortUtil.compareBoolean(x, y, ascending);
|
|
1950
|
+
}
|
|
1951
|
+
if (typeof x === 'string' || typeof y === 'string') {
|
|
1952
|
+
const stringX = String(x ?? '');
|
|
1953
|
+
const stringY = String(y ?? '');
|
|
1954
|
+
// a string could be a date
|
|
1955
|
+
if (!!dateTimeFormat) {
|
|
1956
|
+
const dateX = DateTime.fromFormat(stringX, dateTimeFormat);
|
|
1957
|
+
const dateY = DateTime.fromFormat(stringY, dateTimeFormat);
|
|
1958
|
+
if (dateX.isValid && dateY.isValid) {
|
|
1959
|
+
return DataTableSortUtil.compareDate(dateX, dateY, ascending);
|
|
1949
1960
|
}
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
|
|
1955
|
-
|
|
1956
|
-
|
|
1957
|
-
if (dateX.isValid && dateY.isValid) {
|
|
1958
|
-
return DataTableSortUtil.compareDate(dateX, dateY, ascending);
|
|
1959
|
-
}
|
|
1960
|
-
}
|
|
1961
|
-
// .. but also a formatted number
|
|
1962
|
-
if (!!numberFormat) {
|
|
1963
|
-
const numberX = DataTableSortUtil.parseNumber(x, numberFormat);
|
|
1964
|
-
const numberY = DataTableSortUtil.parseNumber(y, numberFormat);
|
|
1965
|
-
if (typeof numberX === 'number' && typeof numberY === 'number') {
|
|
1966
|
-
return DataTableSortUtil.compareNumber(numberX, numberY, ascending);
|
|
1967
|
-
}
|
|
1961
|
+
}
|
|
1962
|
+
// .. but also a formatted number
|
|
1963
|
+
if (!!numberFormat) {
|
|
1964
|
+
const numberX = DataTableSortUtil.parseNumber(stringX, numberFormat);
|
|
1965
|
+
const numberY = DataTableSortUtil.parseNumber(stringY, numberFormat);
|
|
1966
|
+
if (typeof numberX === 'number' && typeof numberY === 'number') {
|
|
1967
|
+
return DataTableSortUtil.compareNumber(numberX, numberY, ascending);
|
|
1968
1968
|
}
|
|
1969
|
-
return DataTableSortUtil.compareString(x, stringY, ascending);
|
|
1970
1969
|
}
|
|
1971
|
-
|
|
1972
|
-
return DataTableSortUtil.compareBoolean(x, y, ascending);
|
|
1973
|
-
default:
|
|
1974
|
-
// cannot compare -> return equal
|
|
1975
|
-
return 0;
|
|
1970
|
+
return DataTableSortUtil.compareString(stringX, stringY, ascending);
|
|
1976
1971
|
}
|
|
1972
|
+
return 0;
|
|
1977
1973
|
}
|
|
1978
1974
|
static compareNumber(x, y, ascending) {
|
|
1979
1975
|
return ascending ? x - y : y - x;
|
|
@@ -4173,7 +4169,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
|
|
|
4173
4169
|
type: Output
|
|
4174
4170
|
}] } });
|
|
4175
4171
|
|
|
4176
|
-
const VERSION = '17.3.
|
|
4172
|
+
const VERSION = '17.3.4';
|
|
4177
4173
|
|
|
4178
4174
|
/*
|
|
4179
4175
|
* Public API Surface of material-addons
|