@porscheinformatik/material-addons 17.3.2 → 17.3.4
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/data-table/util/data-table-sort-util.mjs +25 -29
- package/esm2022/version.mjs +2 -2
- package/fesm2022/porscheinformatik-material-addons.mjs +25 -29
- package/fesm2022/porscheinformatik-material-addons.mjs.map +1 -1
- package/lib/data-table/util/data-table-sort-util.d.ts.map +1 -1
- package/package.json +3 -2
- package/version.d.ts +2 -0
|
@@ -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==
|
|
@@ -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
|