@elderbyte/ngx-starter 15.10.5 → 15.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/common/arrays.mjs +29 -0
- package/esm2020/lib/common/public_api.mjs +5 -4
- package/esm2020/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +9 -21
- package/esm2020/lib/components/data-view/table/activation/elder-delete-active.directive.mjs +113 -0
- package/esm2020/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +53 -39
- package/esm2020/lib/components/data-view/table/elder-table.module.mjs +11 -5
- package/esm2020/lib/components/dialogs/elder-dialog.module.mjs +1 -1
- package/esm2020/lib/components/dialogs/elder-dialog.service.mjs +62 -28
- package/esm2020/lib/components/select/elder-select.module.mjs +19 -7
- package/esm2020/lib/components/select/multi/elder-multi-select-base.mjs +17 -23
- package/esm2020/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +24 -11
- package/esm2020/lib/components/select/single/elder-select/elder-select.component.mjs +5 -5
- package/fesm2015/elderbyte-ngx-starter.mjs +418 -225
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
- package/fesm2020/elderbyte-ngx-starter.mjs +416 -225
- package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/common/arrays.d.ts +11 -0
- package/lib/common/public_api.d.ts +4 -3
- package/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.d.ts +1 -1
- package/lib/components/data-view/table/activation/elder-delete-active.directive.d.ts +53 -0
- package/lib/components/data-view/table/activation/elder-table-activation.directive.d.ts +8 -5
- package/lib/components/data-view/table/elder-table.module.d.ts +24 -22
- package/lib/components/dialogs/elder-dialog.module.d.ts +1 -1
- package/lib/components/dialogs/elder-dialog.service.d.ts +34 -12
- package/lib/components/select/elder-select.module.d.ts +12 -11
- package/lib/components/select/multi/elder-multi-select-base.d.ts +2 -0
- package/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.d.ts +5 -1
- package/package.json +1 -1
- package/src/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.scss +26 -0
|
@@ -48,7 +48,7 @@ import { MatProgressBarModule } from '@angular/material/progress-bar';
|
|
|
48
48
|
import * as i1$6 from '@angular/material/snack-bar';
|
|
49
49
|
import { MAT_SNACK_BAR_DATA, MatSnackBarModule } from '@angular/material/snack-bar';
|
|
50
50
|
import * as i5$4 from '@angular/cdk/drag-drop';
|
|
51
|
-
import { transferArrayItem, moveItemInArray, DragDropModule } from '@angular/cdk/drag-drop';
|
|
51
|
+
import { transferArrayItem, moveItemInArray, DragDropModule, CdkDropList, CdkDrag } from '@angular/cdk/drag-drop';
|
|
52
52
|
import * as i4$3 from '@angular/material/divider';
|
|
53
53
|
import { MatDividerModule } from '@angular/material/divider';
|
|
54
54
|
import * as i2$3 from '@angular/material/badge';
|
|
@@ -2034,6 +2034,137 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
2034
2034
|
}]
|
|
2035
2035
|
}] });
|
|
2036
2036
|
|
|
2037
|
+
/**
|
|
2038
|
+
* Provides common used object utils
|
|
2039
|
+
*/
|
|
2040
|
+
class Objects {
|
|
2041
|
+
/**
|
|
2042
|
+
* Checks if the given value is non null / nun undefined
|
|
2043
|
+
*/
|
|
2044
|
+
static nonNull(value) {
|
|
2045
|
+
return value !== null && value !== undefined;
|
|
2046
|
+
}
|
|
2047
|
+
/**
|
|
2048
|
+
* Checks if the given value is null or undefined
|
|
2049
|
+
*/
|
|
2050
|
+
static isNull(value) {
|
|
2051
|
+
return value === null || value === undefined;
|
|
2052
|
+
}
|
|
2053
|
+
/**
|
|
2054
|
+
* Creates a copy of the object data.
|
|
2055
|
+
*/
|
|
2056
|
+
static cloneData(src) {
|
|
2057
|
+
if (!src) {
|
|
2058
|
+
return src;
|
|
2059
|
+
}
|
|
2060
|
+
try {
|
|
2061
|
+
const json = JSON.stringify(src);
|
|
2062
|
+
return JSON.parse(json);
|
|
2063
|
+
}
|
|
2064
|
+
catch (err) {
|
|
2065
|
+
throw new Error('Failed to clone object! ' + err.message);
|
|
2066
|
+
}
|
|
2067
|
+
}
|
|
2068
|
+
/**
|
|
2069
|
+
* Checks if the two given objects have the same data
|
|
2070
|
+
*/
|
|
2071
|
+
static dataEquals(a, b) {
|
|
2072
|
+
return JSON.stringify(a) === JSON.stringify(b);
|
|
2073
|
+
}
|
|
2074
|
+
}
|
|
2075
|
+
Objects.logger = LoggerFactory.getLogger('Objects');
|
|
2076
|
+
|
|
2077
|
+
class Arrays {
|
|
2078
|
+
/**
|
|
2079
|
+
* Checks if the two given arrays have the same content in the exact same order.
|
|
2080
|
+
* If order is not relevant, use Sets.equalContent.
|
|
2081
|
+
*
|
|
2082
|
+
* @param arrayA
|
|
2083
|
+
* @param arrayB
|
|
2084
|
+
* @param equalsFn Optional Equality Operator. If omitted, reference equality is used.
|
|
2085
|
+
*/
|
|
2086
|
+
static equalContentAndOrder(arrayA, arrayB, equalsFn = (a, b) => a === b) {
|
|
2087
|
+
if (!(arrayA === null || arrayA === void 0 ? void 0 : arrayA.length) && !(arrayB === null || arrayB === void 0 ? void 0 : arrayB.length)) {
|
|
2088
|
+
return true;
|
|
2089
|
+
}
|
|
2090
|
+
if (!arrayA || !arrayB) {
|
|
2091
|
+
return false;
|
|
2092
|
+
}
|
|
2093
|
+
if (arrayA.length !== arrayB.length) {
|
|
2094
|
+
return false;
|
|
2095
|
+
}
|
|
2096
|
+
// Comparing each element of your array
|
|
2097
|
+
for (var i = 0; i < arrayA.length; i++) {
|
|
2098
|
+
if (!equalsFn(arrayA[i], arrayB[i])) {
|
|
2099
|
+
return false;
|
|
2100
|
+
}
|
|
2101
|
+
}
|
|
2102
|
+
return true;
|
|
2103
|
+
}
|
|
2104
|
+
}
|
|
2105
|
+
|
|
2106
|
+
class Sets {
|
|
2107
|
+
/**
|
|
2108
|
+
* Compares the content of two sets for equality in O(n).
|
|
2109
|
+
* @param as
|
|
2110
|
+
* @param bs
|
|
2111
|
+
*/
|
|
2112
|
+
static equals(as, bs) {
|
|
2113
|
+
if (as.size !== bs.size) {
|
|
2114
|
+
return false;
|
|
2115
|
+
}
|
|
2116
|
+
if (as !== bs) { // Same reference?
|
|
2117
|
+
return Sets.containsEvery(bs, Array.from(as.values()));
|
|
2118
|
+
}
|
|
2119
|
+
return true;
|
|
2120
|
+
}
|
|
2121
|
+
/**
|
|
2122
|
+
* Checks if the two given arrays have the same content.
|
|
2123
|
+
* They are handled as "Sets" and order of the items is not relevant for the check.
|
|
2124
|
+
*
|
|
2125
|
+
* @param idsA
|
|
2126
|
+
* @param idsB
|
|
2127
|
+
*/
|
|
2128
|
+
static equalContent(idsA, idsB) {
|
|
2129
|
+
if (!(idsA === null || idsA === void 0 ? void 0 : idsA.length) && !(idsB === null || idsB === void 0 ? void 0 : idsB.length)) {
|
|
2130
|
+
return true;
|
|
2131
|
+
}
|
|
2132
|
+
if (!idsA || !idsB) {
|
|
2133
|
+
return false;
|
|
2134
|
+
}
|
|
2135
|
+
if (idsA.length !== idsB.length) {
|
|
2136
|
+
return false;
|
|
2137
|
+
}
|
|
2138
|
+
// Both element lists have content and the same length
|
|
2139
|
+
return Sets.containsEvery(new Set(idsA), idsB);
|
|
2140
|
+
}
|
|
2141
|
+
/**
|
|
2142
|
+
* Checks if the given set contains every given element
|
|
2143
|
+
*/
|
|
2144
|
+
static containsEvery(set, elements) {
|
|
2145
|
+
const predicateFn = (e) => set.has(e); // aot does not like lambdas
|
|
2146
|
+
return elements.every(predicateFn);
|
|
2147
|
+
}
|
|
2148
|
+
}
|
|
2149
|
+
|
|
2150
|
+
class JsonMapUtil {
|
|
2151
|
+
static toJsonMap(esMap) {
|
|
2152
|
+
const entries = Array.from(esMap.entries());
|
|
2153
|
+
const jsonMap = {};
|
|
2154
|
+
entries.reduce((o, [key, value]) => {
|
|
2155
|
+
o[key] = value;
|
|
2156
|
+
return o;
|
|
2157
|
+
}, jsonMap);
|
|
2158
|
+
return jsonMap;
|
|
2159
|
+
}
|
|
2160
|
+
static toMap(jsonMap, toIdFn = key => key) {
|
|
2161
|
+
const map = new Map();
|
|
2162
|
+
Object.keys(jsonMap)
|
|
2163
|
+
.forEach(k => map.set(toIdFn(k), jsonMap[k]));
|
|
2164
|
+
return map;
|
|
2165
|
+
}
|
|
2166
|
+
}
|
|
2167
|
+
|
|
2037
2168
|
/**
|
|
2038
2169
|
* Similar to sampleTime, but emits the first event and optionally the last event as-well.
|
|
2039
2170
|
* @param intervalDuration
|
|
@@ -2200,46 +2331,6 @@ DateUtil.IsoDateDelimiter = '-';
|
|
|
2200
2331
|
DateUtil.IsoTimeDelimiter = ':';
|
|
2201
2332
|
DateUtil.DateTimeSeparator = 'T';
|
|
2202
2333
|
|
|
2203
|
-
/**
|
|
2204
|
-
* Provides common used object utils
|
|
2205
|
-
*/
|
|
2206
|
-
class Objects {
|
|
2207
|
-
/**
|
|
2208
|
-
* Checks if the given value is non null / nun undefined
|
|
2209
|
-
*/
|
|
2210
|
-
static nonNull(value) {
|
|
2211
|
-
return value !== null && value !== undefined;
|
|
2212
|
-
}
|
|
2213
|
-
/**
|
|
2214
|
-
* Checks if the given value is null or undefined
|
|
2215
|
-
*/
|
|
2216
|
-
static isNull(value) {
|
|
2217
|
-
return value === null || value === undefined;
|
|
2218
|
-
}
|
|
2219
|
-
/**
|
|
2220
|
-
* Creates a copy of the object data.
|
|
2221
|
-
*/
|
|
2222
|
-
static cloneData(src) {
|
|
2223
|
-
if (!src) {
|
|
2224
|
-
return src;
|
|
2225
|
-
}
|
|
2226
|
-
try {
|
|
2227
|
-
const json = JSON.stringify(src);
|
|
2228
|
-
return JSON.parse(json);
|
|
2229
|
-
}
|
|
2230
|
-
catch (err) {
|
|
2231
|
-
throw new Error('Failed to clone object! ' + err.message);
|
|
2232
|
-
}
|
|
2233
|
-
}
|
|
2234
|
-
/**
|
|
2235
|
-
* Checks if the two given objects have the same data
|
|
2236
|
-
*/
|
|
2237
|
-
static dataEquals(a, b) {
|
|
2238
|
-
return JSON.stringify(a) === JSON.stringify(b);
|
|
2239
|
-
}
|
|
2240
|
-
}
|
|
2241
|
-
Objects.logger = LoggerFactory.getLogger('Objects');
|
|
2242
|
-
|
|
2243
2334
|
// @dynamic
|
|
2244
2335
|
class CollectionUtil {
|
|
2245
2336
|
static flatten(groups) {
|
|
@@ -2662,24 +2753,6 @@ class Pageable {
|
|
|
2662
2753
|
}
|
|
2663
2754
|
}
|
|
2664
2755
|
|
|
2665
|
-
class JsonMapUtil {
|
|
2666
|
-
static toJsonMap(esMap) {
|
|
2667
|
-
const entries = Array.from(esMap.entries());
|
|
2668
|
-
const jsonMap = {};
|
|
2669
|
-
entries.reduce((o, [key, value]) => {
|
|
2670
|
-
o[key] = value;
|
|
2671
|
-
return o;
|
|
2672
|
-
}, jsonMap);
|
|
2673
|
-
return jsonMap;
|
|
2674
|
-
}
|
|
2675
|
-
static toMap(jsonMap, toIdFn = key => key) {
|
|
2676
|
-
const map = new Map();
|
|
2677
|
-
Object.keys(jsonMap)
|
|
2678
|
-
.forEach(k => map.set(toIdFn(k), jsonMap[k]));
|
|
2679
|
-
return map;
|
|
2680
|
-
}
|
|
2681
|
-
}
|
|
2682
|
-
|
|
2683
2756
|
class EntitySetPatch {
|
|
2684
2757
|
/***************************************************************************
|
|
2685
2758
|
* *
|
|
@@ -8521,50 +8594,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
8521
8594
|
}]
|
|
8522
8595
|
}], ctorParameters: function () { return [{ type: i1$3.Router }, { type: i1$4.Location }]; } });
|
|
8523
8596
|
|
|
8524
|
-
class Sets {
|
|
8525
|
-
/**
|
|
8526
|
-
* Compares the content of two sets for equality in O(n).
|
|
8527
|
-
* @param as
|
|
8528
|
-
* @param bs
|
|
8529
|
-
*/
|
|
8530
|
-
static equals(as, bs) {
|
|
8531
|
-
if (as.size !== bs.size) {
|
|
8532
|
-
return false;
|
|
8533
|
-
}
|
|
8534
|
-
if (as !== bs) { // Same reference?
|
|
8535
|
-
return Sets.containsEvery(bs, Array.from(as.values()));
|
|
8536
|
-
}
|
|
8537
|
-
return true;
|
|
8538
|
-
}
|
|
8539
|
-
/**
|
|
8540
|
-
* Checks if the two given arrays have the same content.
|
|
8541
|
-
* They are handled as "Sets" and order of the items is not relevant for the check.
|
|
8542
|
-
*
|
|
8543
|
-
* @param idsA
|
|
8544
|
-
* @param idsB
|
|
8545
|
-
*/
|
|
8546
|
-
static equalContent(idsA, idsB) {
|
|
8547
|
-
if (!(idsA === null || idsA === void 0 ? void 0 : idsA.length) && !(idsB === null || idsB === void 0 ? void 0 : idsB.length)) {
|
|
8548
|
-
return true;
|
|
8549
|
-
}
|
|
8550
|
-
if (!idsA || !idsB) {
|
|
8551
|
-
return false;
|
|
8552
|
-
}
|
|
8553
|
-
if (idsA.length !== idsB.length) {
|
|
8554
|
-
return false;
|
|
8555
|
-
}
|
|
8556
|
-
// Both element lists have content and the same length
|
|
8557
|
-
return Sets.containsEvery(new Set(idsA), idsB);
|
|
8558
|
-
}
|
|
8559
|
-
/**
|
|
8560
|
-
* Checks if the given set contains every given element
|
|
8561
|
-
*/
|
|
8562
|
-
static containsEvery(set, elements) {
|
|
8563
|
-
const predicateFn = (e) => set.has(e); // aot does not like lambdas
|
|
8564
|
-
return elements.every(predicateFn);
|
|
8565
|
-
}
|
|
8566
|
-
}
|
|
8567
|
-
|
|
8568
8597
|
class SuggestionProvider {
|
|
8569
8598
|
constructor(provider) {
|
|
8570
8599
|
this.provider = provider;
|
|
@@ -12395,18 +12424,34 @@ class ElderDialogService {
|
|
|
12395
12424
|
* Public API *
|
|
12396
12425
|
* *
|
|
12397
12426
|
**************************************************************************/
|
|
12398
|
-
|
|
12399
|
-
|
|
12400
|
-
|
|
12401
|
-
|
|
12402
|
-
|
|
12403
|
-
|
|
12404
|
-
|
|
12405
|
-
|
|
12427
|
+
confirmDelete(options, confirmedFn, canceledFn) {
|
|
12428
|
+
var _a;
|
|
12429
|
+
const confirmRemoval = (_a = options.confirmRemoval) !== null && _a !== void 0 ? _a : true;
|
|
12430
|
+
if (!options.skipConfirm && confirmRemoval) {
|
|
12431
|
+
this.showConfirmDelete(options.deletionCount)
|
|
12432
|
+
.subscribe({
|
|
12433
|
+
next: (confirmed) => {
|
|
12434
|
+
if (confirmed) {
|
|
12435
|
+
confirmedFn();
|
|
12436
|
+
}
|
|
12437
|
+
else {
|
|
12438
|
+
if (canceledFn) {
|
|
12439
|
+
canceledFn();
|
|
12440
|
+
}
|
|
12441
|
+
}
|
|
12442
|
+
}
|
|
12443
|
+
});
|
|
12444
|
+
}
|
|
12445
|
+
else {
|
|
12446
|
+
confirmedFn();
|
|
12447
|
+
}
|
|
12448
|
+
}
|
|
12449
|
+
showConfirmDelete(deletionCount) {
|
|
12406
12450
|
return this.showConfirm({
|
|
12407
|
-
title: title,
|
|
12408
|
-
message: message,
|
|
12409
|
-
|
|
12451
|
+
title: 'dialogs.confirm-deletion.title',
|
|
12452
|
+
message: 'dialogs.confirm-deletion.message',
|
|
12453
|
+
yesNo: true,
|
|
12454
|
+
interpolateParams: { numOfItems: deletionCount },
|
|
12410
12455
|
});
|
|
12411
12456
|
}
|
|
12412
12457
|
/**
|
|
@@ -12432,22 +12477,6 @@ class ElderDialogService {
|
|
|
12432
12477
|
return dialogRef.afterClosed();
|
|
12433
12478
|
}));
|
|
12434
12479
|
}
|
|
12435
|
-
/**
|
|
12436
|
-
* @deprecated Use showQuestion({...}) instead
|
|
12437
|
-
*
|
|
12438
|
-
* Creates a modal question dialog.
|
|
12439
|
-
*
|
|
12440
|
-
* @param title
|
|
12441
|
-
* @param question
|
|
12442
|
-
* @param config
|
|
12443
|
-
*/
|
|
12444
|
-
question(title, question, config) {
|
|
12445
|
-
return this.showQuestion({
|
|
12446
|
-
title: title,
|
|
12447
|
-
question: question,
|
|
12448
|
-
config: config || this.defaultDialogConfig
|
|
12449
|
-
});
|
|
12450
|
-
}
|
|
12451
12480
|
/**
|
|
12452
12481
|
* Creates a modal question dialog.
|
|
12453
12482
|
*
|
|
@@ -12473,6 +12502,41 @@ class ElderDialogService {
|
|
|
12473
12502
|
.pipe(filter(response => !!response));
|
|
12474
12503
|
}));
|
|
12475
12504
|
}
|
|
12505
|
+
/***************************************************************************
|
|
12506
|
+
* *
|
|
12507
|
+
* DEPRECATED *
|
|
12508
|
+
* *
|
|
12509
|
+
**************************************************************************/
|
|
12510
|
+
/**
|
|
12511
|
+
* @deprecated Use showConfirm({...}) instead
|
|
12512
|
+
*
|
|
12513
|
+
* @param title
|
|
12514
|
+
* @param message
|
|
12515
|
+
* @param config
|
|
12516
|
+
*/
|
|
12517
|
+
confirm(title, message, config) {
|
|
12518
|
+
return this.showConfirm({
|
|
12519
|
+
title: title,
|
|
12520
|
+
message: message,
|
|
12521
|
+
config: config || this.defaultDialogConfig
|
|
12522
|
+
});
|
|
12523
|
+
}
|
|
12524
|
+
/**
|
|
12525
|
+
* @deprecated Use showQuestion({...}) instead
|
|
12526
|
+
*
|
|
12527
|
+
* Creates a modal question dialog.
|
|
12528
|
+
*
|
|
12529
|
+
* @param title
|
|
12530
|
+
* @param question
|
|
12531
|
+
* @param config
|
|
12532
|
+
*/
|
|
12533
|
+
question(title, question, config) {
|
|
12534
|
+
return this.showQuestion({
|
|
12535
|
+
title: title,
|
|
12536
|
+
question: question,
|
|
12537
|
+
config: config || this.defaultDialogConfig
|
|
12538
|
+
});
|
|
12539
|
+
}
|
|
12476
12540
|
/***************************************************************************
|
|
12477
12541
|
* *
|
|
12478
12542
|
* Private methods *
|
|
@@ -12646,24 +12710,12 @@ class ElderDataToolbarComponent {
|
|
|
12646
12710
|
const template = this.templates.find((item) => item.placeholderId === placeholderId);
|
|
12647
12711
|
return template ? template.templateRef : null;
|
|
12648
12712
|
}
|
|
12649
|
-
requestRemoveItems(items) {
|
|
12650
|
-
|
|
12651
|
-
|
|
12652
|
-
|
|
12653
|
-
|
|
12654
|
-
|
|
12655
|
-
yesNo: true,
|
|
12656
|
-
interpolateParams: { numOfItems: items.length },
|
|
12657
|
-
})
|
|
12658
|
-
.subscribe((confirmed) => {
|
|
12659
|
-
if (confirmed) {
|
|
12660
|
-
this.emitRemove(items);
|
|
12661
|
-
}
|
|
12662
|
-
});
|
|
12663
|
-
}
|
|
12664
|
-
else {
|
|
12665
|
-
this.emitRemove(items);
|
|
12666
|
-
}
|
|
12713
|
+
requestRemoveItems(items, event) {
|
|
12714
|
+
this.dialogService.confirmDelete({
|
|
12715
|
+
deletionCount: items.length,
|
|
12716
|
+
confirmRemoval: this.confirmRemoval,
|
|
12717
|
+
skipConfirm: event === null || event === void 0 ? void 0 : event.shiftKey
|
|
12718
|
+
}, () => this.emitRemove(items));
|
|
12667
12719
|
}
|
|
12668
12720
|
emitRemove(items) {
|
|
12669
12721
|
this.requestRemove.next(items);
|
|
@@ -12676,10 +12728,10 @@ class ElderDataToolbarComponent {
|
|
|
12676
12728
|
}
|
|
12677
12729
|
}
|
|
12678
12730
|
ElderDataToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDataToolbarComponent, deps: [{ token: SelectionModel, optional: true }, { token: ELDER_DATA_VIEW, optional: true }, { token: ElderDialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
12679
|
-
ElderDataToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ElderDataToolbarComponent, selector: "elder-data-toolbar", inputs: { canAdd: "canAdd", canRemove: "canRemove", canMore: "canMore", confirmRemoval: "confirmRemoval", keepSelectionAfterRemoval: "keepSelectionAfterRemoval", selectionModel: "selectionModel" }, outputs: { requestNew: "requestNew", requestRemove: "requestRemove" }, queries: [{ propertyName: "templates", predicate: ElderToolbarContentDirective }], ngImport: i0, template: "<!-- Table Toolbar -->\n<div\n class=\"layout-row place-between-center gap-md\"\n style=\"padding: 0 8px 0 8px\"\n *ngIf=\"selection$ | async as selection\"\n>\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('main') || defaultContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n</div>\n\n<!-- Default Templates -->\n\n<!-- Default Main Content -->\n<ng-template #defaultContent let-selection>\n <!-- Left column -->\n <div class=\"layout-row place-start-center\">\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('left') || defaultLeftContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n </div>\n\n <div class=\"layout-row place-center-center flex\">\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('center') || defaultCenterContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n </div>\n\n <!-- Right column -->\n <div class=\"layout-row place-end-center\">\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('right') || defaultRightContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n </div>\n</ng-template>\n\n<!-- Default Left Content -->\n<ng-template #defaultLeftContent let-selection>\n <!-- Add Action -->\n <button\n mat-icon-button type=\"button\"\n color=\"primary\"\n *ngIf=\"canAdd\"\n (click)=\"requestNew.next($event)\"\n >\n <mat-icon>add</mat-icon>\n </button>\n\n <!-- Placeholder for additional actions -->\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('left.actions');\n context: { $implicit: selection }\n \"\n ></ng-container>\n</ng-template>\n\n<!-- Default Center Content -->\n<ng-template #defaultCenterContent let-selection></ng-template>\n\n<!-- Default Right Content -->\n<ng-template #defaultRightContent let-selection>\n <!-- Placeholder for additional actions -->\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('right.actions');\n context: { $implicit: selection }\n \"\n ></ng-container>\n\n <!-- Delete Action -->\n <button\n mat-icon-button type=\"button\"\n color=\"primary\"\n *ngIf=\"canRemove\"\n [disabled]=\"!selection?.length\"\n (click)=\"requestRemoveItems(selection)\"\n >\n <mat-icon>delete</mat-icon>\n </button>\n\n <!-- More Menu -->\n <button\n mat-icon-button type=\"button\"\n color=\"primary\"\n [matMenuTriggerFor]=\"elderTableMenu\"\n [disabled]=\"!canMore\"\n >\n <mat-icon>more_vert</mat-icon>\n <mat-menu #elderTableMenu=\"matMenu\">\n <ng-content select=\"[mat-menu-item]\"></ng-content>\n <!-- Placeholder for mat menu items-->\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('right.menu');\n context: { $implicit: selection }\n \"\n ></ng-container>\n </mat-menu>\n </button>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i8.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "directive", type: i8.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i5$2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
12731
|
+
ElderDataToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ElderDataToolbarComponent, selector: "elder-data-toolbar", inputs: { canAdd: "canAdd", canRemove: "canRemove", canMore: "canMore", confirmRemoval: "confirmRemoval", keepSelectionAfterRemoval: "keepSelectionAfterRemoval", selectionModel: "selectionModel" }, outputs: { requestNew: "requestNew", requestRemove: "requestRemove" }, queries: [{ propertyName: "templates", predicate: ElderToolbarContentDirective }], ngImport: i0, template: "<!-- Table Toolbar -->\n<div\n class=\"layout-row place-between-center gap-md\"\n style=\"padding: 0 8px 0 8px\"\n *ngIf=\"selection$ | async as selection\"\n>\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('main') || defaultContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n</div>\n\n<!-- Default Templates -->\n\n<!-- Default Main Content -->\n<ng-template #defaultContent let-selection>\n <!-- Left column -->\n <div class=\"layout-row place-start-center\">\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('left') || defaultLeftContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n </div>\n\n <div class=\"layout-row place-center-center flex\">\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('center') || defaultCenterContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n </div>\n\n <!-- Right column -->\n <div class=\"layout-row place-end-center\">\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('right') || defaultRightContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n </div>\n</ng-template>\n\n<!-- Default Left Content -->\n<ng-template #defaultLeftContent let-selection>\n <!-- Add Action -->\n <button\n mat-icon-button type=\"button\"\n color=\"primary\"\n *ngIf=\"canAdd\"\n (click)=\"requestNew.next($event)\"\n >\n <mat-icon>add</mat-icon>\n </button>\n\n <!-- Placeholder for additional actions -->\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('left.actions');\n context: { $implicit: selection }\n \"\n ></ng-container>\n</ng-template>\n\n<!-- Default Center Content -->\n<ng-template #defaultCenterContent let-selection></ng-template>\n\n<!-- Default Right Content -->\n<ng-template #defaultRightContent let-selection>\n <!-- Placeholder for additional actions -->\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('right.actions');\n context: { $implicit: selection }\n \"\n ></ng-container>\n\n <!-- Delete Action -->\n <button\n mat-icon-button type=\"button\"\n color=\"primary\"\n *ngIf=\"canRemove\"\n [disabled]=\"!selection?.length\"\n (click)=\"requestRemoveItems(selection, $event)\"\n >\n <mat-icon>delete</mat-icon>\n </button>\n\n <!-- More Menu -->\n <button\n mat-icon-button type=\"button\"\n color=\"primary\"\n [matMenuTriggerFor]=\"elderTableMenu\"\n [disabled]=\"!canMore\"\n >\n <mat-icon>more_vert</mat-icon>\n <mat-menu #elderTableMenu=\"matMenu\">\n <ng-content select=\"[mat-menu-item]\"></ng-content>\n <!-- Placeholder for mat menu items-->\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('right.menu');\n context: { $implicit: selection }\n \"\n ></ng-container>\n </mat-menu>\n </button>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i8.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "directive", type: i8.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i5$2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
12680
12732
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDataToolbarComponent, decorators: [{
|
|
12681
12733
|
type: Component,
|
|
12682
|
-
args: [{ selector: 'elder-data-toolbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!-- Table Toolbar -->\n<div\n class=\"layout-row place-between-center gap-md\"\n style=\"padding: 0 8px 0 8px\"\n *ngIf=\"selection$ | async as selection\"\n>\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('main') || defaultContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n</div>\n\n<!-- Default Templates -->\n\n<!-- Default Main Content -->\n<ng-template #defaultContent let-selection>\n <!-- Left column -->\n <div class=\"layout-row place-start-center\">\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('left') || defaultLeftContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n </div>\n\n <div class=\"layout-row place-center-center flex\">\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('center') || defaultCenterContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n </div>\n\n <!-- Right column -->\n <div class=\"layout-row place-end-center\">\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('right') || defaultRightContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n </div>\n</ng-template>\n\n<!-- Default Left Content -->\n<ng-template #defaultLeftContent let-selection>\n <!-- Add Action -->\n <button\n mat-icon-button type=\"button\"\n color=\"primary\"\n *ngIf=\"canAdd\"\n (click)=\"requestNew.next($event)\"\n >\n <mat-icon>add</mat-icon>\n </button>\n\n <!-- Placeholder for additional actions -->\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('left.actions');\n context: { $implicit: selection }\n \"\n ></ng-container>\n</ng-template>\n\n<!-- Default Center Content -->\n<ng-template #defaultCenterContent let-selection></ng-template>\n\n<!-- Default Right Content -->\n<ng-template #defaultRightContent let-selection>\n <!-- Placeholder for additional actions -->\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('right.actions');\n context: { $implicit: selection }\n \"\n ></ng-container>\n\n <!-- Delete Action -->\n <button\n mat-icon-button type=\"button\"\n color=\"primary\"\n *ngIf=\"canRemove\"\n [disabled]=\"!selection?.length\"\n (click)=\"requestRemoveItems(selection)\"\n >\n <mat-icon>delete</mat-icon>\n </button>\n\n <!-- More Menu -->\n <button\n mat-icon-button type=\"button\"\n color=\"primary\"\n [matMenuTriggerFor]=\"elderTableMenu\"\n [disabled]=\"!canMore\"\n >\n <mat-icon>more_vert</mat-icon>\n <mat-menu #elderTableMenu=\"matMenu\">\n <ng-content select=\"[mat-menu-item]\"></ng-content>\n <!-- Placeholder for mat menu items-->\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('right.menu');\n context: { $implicit: selection }\n \"\n ></ng-container>\n </mat-menu>\n </button>\n</ng-template>\n" }]
|
|
12734
|
+
args: [{ selector: 'elder-data-toolbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!-- Table Toolbar -->\n<div\n class=\"layout-row place-between-center gap-md\"\n style=\"padding: 0 8px 0 8px\"\n *ngIf=\"selection$ | async as selection\"\n>\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('main') || defaultContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n</div>\n\n<!-- Default Templates -->\n\n<!-- Default Main Content -->\n<ng-template #defaultContent let-selection>\n <!-- Left column -->\n <div class=\"layout-row place-start-center\">\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('left') || defaultLeftContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n </div>\n\n <div class=\"layout-row place-center-center flex\">\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('center') || defaultCenterContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n </div>\n\n <!-- Right column -->\n <div class=\"layout-row place-end-center\">\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('right') || defaultRightContent;\n context: { $implicit: selection }\n \"\n ></ng-container>\n </div>\n</ng-template>\n\n<!-- Default Left Content -->\n<ng-template #defaultLeftContent let-selection>\n <!-- Add Action -->\n <button\n mat-icon-button type=\"button\"\n color=\"primary\"\n *ngIf=\"canAdd\"\n (click)=\"requestNew.next($event)\"\n >\n <mat-icon>add</mat-icon>\n </button>\n\n <!-- Placeholder for additional actions -->\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('left.actions');\n context: { $implicit: selection }\n \"\n ></ng-container>\n</ng-template>\n\n<!-- Default Center Content -->\n<ng-template #defaultCenterContent let-selection></ng-template>\n\n<!-- Default Right Content -->\n<ng-template #defaultRightContent let-selection>\n <!-- Placeholder for additional actions -->\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('right.actions');\n context: { $implicit: selection }\n \"\n ></ng-container>\n\n <!-- Delete Action -->\n <button\n mat-icon-button type=\"button\"\n color=\"primary\"\n *ngIf=\"canRemove\"\n [disabled]=\"!selection?.length\"\n (click)=\"requestRemoveItems(selection, $event)\"\n >\n <mat-icon>delete</mat-icon>\n </button>\n\n <!-- More Menu -->\n <button\n mat-icon-button type=\"button\"\n color=\"primary\"\n [matMenuTriggerFor]=\"elderTableMenu\"\n [disabled]=\"!canMore\"\n >\n <mat-icon>more_vert</mat-icon>\n <mat-menu #elderTableMenu=\"matMenu\">\n <ng-content select=\"[mat-menu-item]\"></ng-content>\n <!-- Placeholder for mat menu items-->\n <ng-container\n *ngTemplateOutlet=\"\n getTemplate('right.menu');\n context: { $implicit: selection }\n \"\n ></ng-container>\n </mat-menu>\n </button>\n</ng-template>\n" }]
|
|
12683
12735
|
}], ctorParameters: function () {
|
|
12684
12736
|
return [{ type: SelectionModel, decorators: [{
|
|
12685
12737
|
type: Optional
|
|
@@ -16236,7 +16288,7 @@ class ElderTableActivationDirective {
|
|
|
16236
16288
|
* *
|
|
16237
16289
|
**************************************************************************/
|
|
16238
16290
|
this.logger = LoggerFactory.getLogger(this.constructor.name);
|
|
16239
|
-
this.
|
|
16291
|
+
this.destroy$ = new Subject();
|
|
16240
16292
|
this.activeItem$ = new BehaviorSubject(null);
|
|
16241
16293
|
this.activationOptions = {};
|
|
16242
16294
|
this._data = [];
|
|
@@ -16250,47 +16302,17 @@ class ElderTableActivationDirective {
|
|
|
16250
16302
|
ngAfterViewInit() {
|
|
16251
16303
|
const rows$ = this.elderTable.rows$;
|
|
16252
16304
|
const data$ = this.elderTable.dataContext$.pipe(switchMap(dc => dc.data), tap(data => this._data = data));
|
|
16253
|
-
combineLatest([rows$, data$]).pipe(takeUntil(this.
|
|
16305
|
+
combineLatest([rows$, data$]).pipe(takeUntil(this.destroy$)).subscribe(([rows, data]) => {
|
|
16254
16306
|
this.rows$.next(this.rowDataUpdated(rows, data));
|
|
16307
|
+
this.handleAutoActivations();
|
|
16255
16308
|
});
|
|
16256
|
-
combineLatest([this.rows$, this.activeItem$]).pipe(takeUntil(this.
|
|
16257
|
-
|
|
16258
|
-
updateRowsActivation(rows, activeItem) {
|
|
16259
|
-
const activeId = this.getId(activeItem);
|
|
16260
|
-
rows.forEach(row => {
|
|
16261
|
-
this.updateRowActivation(row, activeId);
|
|
16309
|
+
combineLatest([this.rows$, this.activeItem$]).pipe(takeUntil(this.destroy$)).subscribe(([rows, activeItem]) => {
|
|
16310
|
+
this.updateRowsActivation(rows, activeItem);
|
|
16262
16311
|
});
|
|
16263
16312
|
}
|
|
16264
|
-
updateRowActivation(row, activeId) {
|
|
16265
|
-
if (row.model) {
|
|
16266
|
-
if (this.itemEqualsId(row.model, activeId)) {
|
|
16267
|
-
if (!row.activated) {
|
|
16268
|
-
row.activated = true;
|
|
16269
|
-
this.logger.debug('Activated row: ', row);
|
|
16270
|
-
if (!row.hasFocus) {
|
|
16271
|
-
row.bringToView();
|
|
16272
|
-
}
|
|
16273
|
-
}
|
|
16274
|
-
}
|
|
16275
|
-
else {
|
|
16276
|
-
row.activated = false;
|
|
16277
|
-
}
|
|
16278
|
-
}
|
|
16279
|
-
else {
|
|
16280
|
-
row.activated = false;
|
|
16281
|
-
}
|
|
16282
|
-
}
|
|
16283
|
-
rowDataUpdated(rows, data) {
|
|
16284
|
-
// this.logger.debug('Found rows:', rows);
|
|
16285
|
-
rows.forEach(row => {
|
|
16286
|
-
row.bindTableActivation(this);
|
|
16287
|
-
});
|
|
16288
|
-
this.handleAutoActivations();
|
|
16289
|
-
return rows;
|
|
16290
|
-
}
|
|
16291
16313
|
ngOnDestroy() {
|
|
16292
|
-
this.
|
|
16293
|
-
this.
|
|
16314
|
+
this.destroy$.next();
|
|
16315
|
+
this.destroy$.complete();
|
|
16294
16316
|
// this.elderTable.rows$.getValue().forEach(r => r.bindTableActivation(null));
|
|
16295
16317
|
}
|
|
16296
16318
|
/***************************************************************************
|
|
@@ -16360,11 +16382,54 @@ class ElderTableActivationDirective {
|
|
|
16360
16382
|
return false;
|
|
16361
16383
|
}
|
|
16362
16384
|
}
|
|
16385
|
+
hasItemFocus(item) {
|
|
16386
|
+
const row = this.getRowForItem(item);
|
|
16387
|
+
return row.hasFocus;
|
|
16388
|
+
}
|
|
16389
|
+
nextCloseTo(active) {
|
|
16390
|
+
const next = this.nextRowItem();
|
|
16391
|
+
if (next !== active) {
|
|
16392
|
+
return next;
|
|
16393
|
+
}
|
|
16394
|
+
return this.previousRowItem();
|
|
16395
|
+
}
|
|
16363
16396
|
/***************************************************************************
|
|
16364
16397
|
* *
|
|
16365
16398
|
* Private methods *
|
|
16366
16399
|
* *
|
|
16367
16400
|
**************************************************************************/
|
|
16401
|
+
updateRowsActivation(rows, activeItem) {
|
|
16402
|
+
const activeId = this.getId(activeItem);
|
|
16403
|
+
rows.forEach(row => {
|
|
16404
|
+
this.updateRowActivation(row, activeId);
|
|
16405
|
+
});
|
|
16406
|
+
}
|
|
16407
|
+
updateRowActivation(row, activeId) {
|
|
16408
|
+
if (row.model) {
|
|
16409
|
+
if (this.itemEqualsId(row.model, activeId)) {
|
|
16410
|
+
if (!row.activated) {
|
|
16411
|
+
row.activated = true;
|
|
16412
|
+
this.logger.debug('Activated row: ', row);
|
|
16413
|
+
if (!row.hasFocus) {
|
|
16414
|
+
row.bringToView();
|
|
16415
|
+
}
|
|
16416
|
+
}
|
|
16417
|
+
}
|
|
16418
|
+
else {
|
|
16419
|
+
row.activated = false;
|
|
16420
|
+
}
|
|
16421
|
+
}
|
|
16422
|
+
else {
|
|
16423
|
+
row.activated = false;
|
|
16424
|
+
}
|
|
16425
|
+
}
|
|
16426
|
+
rowDataUpdated(rows, data) {
|
|
16427
|
+
// this.logger.debug('Found rows:', rows);
|
|
16428
|
+
rows.forEach(row => {
|
|
16429
|
+
row.bindTableActivation(this);
|
|
16430
|
+
});
|
|
16431
|
+
return rows;
|
|
16432
|
+
}
|
|
16368
16433
|
getRowForItem(item) {
|
|
16369
16434
|
const rows = this.rows$.getValue();
|
|
16370
16435
|
return rows.find(r => r.model === item);
|
|
@@ -16372,7 +16437,8 @@ class ElderTableActivationDirective {
|
|
|
16372
16437
|
handleAutoActivations() {
|
|
16373
16438
|
if (!this.hasActiveItem || this.activationOptions.mode === 'always') {
|
|
16374
16439
|
switch (this.activationOptions.row) {
|
|
16375
|
-
case 'none':
|
|
16440
|
+
case 'none':
|
|
16441
|
+
break;
|
|
16376
16442
|
case 'first':
|
|
16377
16443
|
this.activateFirst();
|
|
16378
16444
|
break;
|
|
@@ -16504,6 +16570,114 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
16504
16570
|
}]
|
|
16505
16571
|
}], ctorParameters: function () { return []; } });
|
|
16506
16572
|
|
|
16573
|
+
class ActiveDeleted {
|
|
16574
|
+
constructor(deleted, next) {
|
|
16575
|
+
this.deleted = deleted;
|
|
16576
|
+
this.next = next;
|
|
16577
|
+
}
|
|
16578
|
+
}
|
|
16579
|
+
class ElderDeleteActiveDirective {
|
|
16580
|
+
/***************************************************************************
|
|
16581
|
+
* *
|
|
16582
|
+
* Constructor *
|
|
16583
|
+
* *
|
|
16584
|
+
**************************************************************************/
|
|
16585
|
+
constructor(activation, elderDialog) {
|
|
16586
|
+
this.activation = activation;
|
|
16587
|
+
this.elderDialog = elderDialog;
|
|
16588
|
+
/***************************************************************************
|
|
16589
|
+
* *
|
|
16590
|
+
* Fields *
|
|
16591
|
+
* *
|
|
16592
|
+
**************************************************************************/
|
|
16593
|
+
this.logger = LoggerFactory.getLogger(this.constructor.name);
|
|
16594
|
+
this.latestDeleteRequest = null;
|
|
16595
|
+
this.destroy$ = new Subject();
|
|
16596
|
+
/**
|
|
16597
|
+
* Emits when the active item should be deleted.
|
|
16598
|
+
*/
|
|
16599
|
+
this.requestDelete = new EventEmitter();
|
|
16600
|
+
/**
|
|
16601
|
+
* Emits when the active item should be deleted.
|
|
16602
|
+
*/
|
|
16603
|
+
this.elderDeleteActive = this.requestDelete;
|
|
16604
|
+
this.confirmDeletion = true;
|
|
16605
|
+
}
|
|
16606
|
+
/***************************************************************************
|
|
16607
|
+
* *
|
|
16608
|
+
* Life Cycle *
|
|
16609
|
+
* *
|
|
16610
|
+
**************************************************************************/
|
|
16611
|
+
ngOnInit() {
|
|
16612
|
+
this.activation.rows$.subscribe({
|
|
16613
|
+
next: rows => {
|
|
16614
|
+
this.checkActivateNext();
|
|
16615
|
+
}
|
|
16616
|
+
});
|
|
16617
|
+
}
|
|
16618
|
+
ngOnDestroy() {
|
|
16619
|
+
this.destroy$.next();
|
|
16620
|
+
this.destroy$.complete();
|
|
16621
|
+
}
|
|
16622
|
+
/***************************************************************************
|
|
16623
|
+
* *.
|
|
16624
|
+
* Host Listeners *
|
|
16625
|
+
* *
|
|
16626
|
+
**************************************************************************/
|
|
16627
|
+
onKeydown(event) {
|
|
16628
|
+
if (event.key == 'Backspace' || event.key === 'Delete') {
|
|
16629
|
+
const active = this.activation.activeItem;
|
|
16630
|
+
if (this.activation.hasItemFocus(active)) {
|
|
16631
|
+
event.stopPropagation();
|
|
16632
|
+
this.elderDialog.confirmDelete({
|
|
16633
|
+
deletionCount: 1,
|
|
16634
|
+
confirmRemoval: this.confirmDeletion,
|
|
16635
|
+
skipConfirm: event.shiftKey
|
|
16636
|
+
}, () => {
|
|
16637
|
+
this.logger.debug('Deleting current row was requested: ', active);
|
|
16638
|
+
this.emitDelete(active);
|
|
16639
|
+
}, () => {
|
|
16640
|
+
this.activation.focusAndActivate(active);
|
|
16641
|
+
});
|
|
16642
|
+
}
|
|
16643
|
+
}
|
|
16644
|
+
}
|
|
16645
|
+
/***************************************************************************
|
|
16646
|
+
* *
|
|
16647
|
+
* Private methods *
|
|
16648
|
+
* *
|
|
16649
|
+
**************************************************************************/
|
|
16650
|
+
checkActivateNext() {
|
|
16651
|
+
var _a;
|
|
16652
|
+
if ((_a = this.latestDeleteRequest) === null || _a === void 0 ? void 0 : _a.next) {
|
|
16653
|
+
this.activation.focusAndActivate(this.latestDeleteRequest.next);
|
|
16654
|
+
this.latestDeleteRequest = null;
|
|
16655
|
+
return true;
|
|
16656
|
+
}
|
|
16657
|
+
return false;
|
|
16658
|
+
}
|
|
16659
|
+
emitDelete(active) {
|
|
16660
|
+
this.latestDeleteRequest = new ActiveDeleted(active, this.activation.nextCloseTo(active));
|
|
16661
|
+
this.requestDelete.emit(active);
|
|
16662
|
+
}
|
|
16663
|
+
}
|
|
16664
|
+
ElderDeleteActiveDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDeleteActiveDirective, deps: [{ token: ElderTableActivationDirective }, { token: ElderDialogService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
16665
|
+
ElderDeleteActiveDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: ElderDeleteActiveDirective, selector: "[elderDeleteActive]", inputs: { confirmDeletion: "confirmDeletion" }, outputs: { elderDeleteActive: "elderDeleteActive" }, host: { listeners: { "keydown": "onKeydown($event)" } }, exportAs: ["elderDeleteActive"], ngImport: i0 });
|
|
16666
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDeleteActiveDirective, decorators: [{
|
|
16667
|
+
type: Directive,
|
|
16668
|
+
args: [{
|
|
16669
|
+
selector: '[elderDeleteActive]',
|
|
16670
|
+
exportAs: 'elderDeleteActive'
|
|
16671
|
+
}]
|
|
16672
|
+
}], ctorParameters: function () { return [{ type: ElderTableActivationDirective }, { type: ElderDialogService }]; }, propDecorators: { elderDeleteActive: [{
|
|
16673
|
+
type: Output
|
|
16674
|
+
}], confirmDeletion: [{
|
|
16675
|
+
type: Input
|
|
16676
|
+
}], onKeydown: [{
|
|
16677
|
+
type: HostListener,
|
|
16678
|
+
args: ['keydown', ['$event']]
|
|
16679
|
+
}] } });
|
|
16680
|
+
|
|
16507
16681
|
class ElderTableModule {
|
|
16508
16682
|
}
|
|
16509
16683
|
ElderTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
@@ -16515,7 +16689,8 @@ ElderTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versio
|
|
|
16515
16689
|
ElderTableRowDirective,
|
|
16516
16690
|
ElderTableExtensionDirective,
|
|
16517
16691
|
ElderTableColumnDirective,
|
|
16518
|
-
ElderTableRootDirective
|
|
16692
|
+
ElderTableRootDirective,
|
|
16693
|
+
ElderDeleteActiveDirective], imports: [CommonModule, RouterModule, FormsModule,
|
|
16519
16694
|
// Material
|
|
16520
16695
|
MatDividerModule,
|
|
16521
16696
|
MatCheckboxModule,
|
|
@@ -16534,7 +16709,8 @@ ElderTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versio
|
|
|
16534
16709
|
ElderNumberCellDirective,
|
|
16535
16710
|
ElderTableActivationDirective,
|
|
16536
16711
|
ElderTableExtensionDirective,
|
|
16537
|
-
ElderTableRootDirective
|
|
16712
|
+
ElderTableRootDirective,
|
|
16713
|
+
ElderDeleteActiveDirective] });
|
|
16538
16714
|
ElderTableModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderTableModule, providers: [
|
|
16539
16715
|
{
|
|
16540
16716
|
provide: MatPaginatorIntl, deps: [TranslateService],
|
|
@@ -16580,7 +16756,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
16580
16756
|
ElderTableRowDirective,
|
|
16581
16757
|
ElderTableExtensionDirective,
|
|
16582
16758
|
ElderTableColumnDirective,
|
|
16583
|
-
ElderTableRootDirective
|
|
16759
|
+
ElderTableRootDirective,
|
|
16760
|
+
ElderDeleteActiveDirective
|
|
16584
16761
|
],
|
|
16585
16762
|
exports: [
|
|
16586
16763
|
ElderTableComponent,
|
|
@@ -16590,7 +16767,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
16590
16767
|
ElderNumberCellDirective,
|
|
16591
16768
|
ElderTableActivationDirective,
|
|
16592
16769
|
ElderTableExtensionDirective,
|
|
16593
|
-
ElderTableRootDirective
|
|
16770
|
+
ElderTableRootDirective,
|
|
16771
|
+
ElderDeleteActiveDirective
|
|
16594
16772
|
],
|
|
16595
16773
|
providers: [
|
|
16596
16774
|
{
|
|
@@ -24239,7 +24417,7 @@ ElderSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", v
|
|
|
24239
24417
|
provide: ELDER_SELECT_BASE,
|
|
24240
24418
|
useExisting: forwardRef(() => ElderSelectComponent)
|
|
24241
24419
|
}
|
|
24242
|
-
], viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n *ngIf=\"(entityWrapped$ | async) as entityWrapper\"\n class=\"layout-row place-start-center elder-flex-control\"\n>\n <ng-container *ngIf=\"(mergedState$ | async) as state\">\n <div *ngIf=\"state?.error || icon\"\n class=\"elder-input-prefix-icon-container flex-none\"\n >\n <mat-icon *ngIf=\"icon\" disabled\n class=\"elder-mdc-control-icon elder-icon-small noselect clickable-icon\"\n [class.loading]=\"state.loading\"\n [color]=\"state?.error ? 'warn' : (focused ? 'primary' : undefined)\"\n (click)=\"onCurrentClicked(entity)\"\n >\n {{icon}}\n </mat-icon>\n <mat-icon *ngIf=\"!icon && state?.error\"\n class=\"elder-mdc-control-icon elder-icon-small noselect\"\n color=\"warn\"\n [matTooltip]=\"state?.error\"\n >\n warning\n </mat-icon>\n </div>\n </ng-container>\n\n <!-- A dynamic input -->\n <input #input\n matInput type=\"text\" class=\"flex-grow elder-select-input mdc-text-field__input\"\n [disabled]=\"!!disabled\"\n [required]=\"!!required\"\n [readonly]=\"readonly || !autocomplete\"\n [name]=\"ngControl?.name + '-inner-input'\"\n [placeholder]=\"placeholder | translate\"\n [matAutocomplete] #autoTrigger=\"matAutocompleteTrigger\"\n [elderAutocomplete]=\"elderAuto\" [queryFilter]=\"queryFilter\" [filters]=\"filters\" [sorts]=\"sorts\"\n elderSelectOnTab\n [class.elder-select-dropdown-input]=\"!autocomplete\"\n [ngModel]=\"inputText$ | async\" [ngModelOptions]=\"{standalone: true, updateOn: 'submit'}\"\n (blur)=\"onInputBlur($event)\"\n (focus)=\"onInputFocus(autoTrigger)\"\n (click)=\"onInputClicked(autoTrigger)\"\n >\n\n <!-- This breaks stuff: [displayWith]=\"displayPropertyResolver$ | async\" -->\n\n <elder-autocomplete\n #elderAuto=\"elderAutocomplete\"\n [dataContext]=\"dataContext$ | async\"\n [valueTemplate]=\"valueTemplate\"\n [enabled]=\"!!autocomplete\"\n [displayPropertyResolver]=\"displayPropertyResolver$ | async\"\n [isOptionDisabledFn]=\"isOptionDisabledInternalFn\"\n [isOptionHiddenFn]=\"isOptionHiddenInternalFn\"\n (optionSelected)=\"onOptionSelected($any($event))\"\n ></elder-autocomplete>\n\n <div class=\"layout-row place-start-center flex-none\">\n\n <mat-icon\n *ngIf=\"!selectionPopup && !autocomplete && !entityWrapper.displayRemove\"\n class=\"elder-mdc-control-icon elder-select-arrow noselect\"\n (click)=\"onInputClicked(autoTrigger)\">\n arrow_drop_down\n </mat-icon>\n\n <button mat-icon-button type=\"button\" class=\"elder-control-icon-button\"\n *ngIf=\"selectionPopup && !entityWrapper.displayRemove\"\n [disabled]=\"isLocked\"\n (click)=\"openSelectionPopup($event)\" aria-label=\"Search\"\n elderStopEventPropagation\n tabIndex=\"-1\"\n >\n <mat-icon class=\"elder-mdc-control-icon\">search</mat-icon>\n </button>\n\n <button mat-icon-button type=\"button\" class=\"elder-control-icon-button\"\n *ngIf=\"entityWrapper.displayRemove\"\n [disabled]=\"isLocked\"\n (click)=\"clear($event)\" aria-label=\"Clear\"\n elderStopEventPropagation\n tabIndex=\"-1\"\n >\n <mat-icon class=\"elder-mdc-control-icon\">close</mat-icon>\n </button>\n\n\n </div>\n</div>\n\n\n\n", styles: ["@keyframes shrink{0%{transform:scale(1)}to{transform:scale(.75)}}.loading{animation:shrink .3s ease-in-out infinite alternate;-webkit-animation:shrink .3s ease-in-out infinite alternate}.clickable-icon{cursor:pointer}.full-width{width:100%}.elder-select-dropdown-input{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5$2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i1$5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: ElderStopEventPropagationDirective, selector: "[elderStopEventPropagation]" }, { kind: "component", type: ElderAutocompleteComponent, selector: "elder-autocomplete", inputs: ["isOptionDisabledFn", "isOptionHiddenFn", "optionValueConverterFn", "enabled", "valueTemplate", "dataContext", "displayPropertyResolver"], outputs: ["optionSelected"], exportAs: ["elderAutocomplete"] }, { kind: "directive", type: ElderAutocompleteDirective, selector: "[elderAutocomplete]", inputs: ["queryFilter", "filters", "sorts", "elderAutocomplete"] }, { kind: "directive", type:
|
|
24420
|
+
], viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["input"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div\n *ngIf=\"(entityWrapped$ | async) as entityWrapper\"\n class=\"layout-row place-start-center elder-flex-control\"\n>\n <ng-container *ngIf=\"(mergedState$ | async) as state\">\n <div *ngIf=\"state?.error || icon\"\n class=\"elder-input-prefix-icon-container flex-none\"\n >\n <mat-icon *ngIf=\"icon\" disabled\n class=\"elder-mdc-control-icon elder-icon-small noselect clickable-icon\"\n [class.loading]=\"state.loading\"\n [color]=\"state?.error ? 'warn' : (focused ? 'primary' : undefined)\"\n (click)=\"onCurrentClicked(entity)\"\n >\n {{icon}}\n </mat-icon>\n <mat-icon *ngIf=\"!icon && state?.error\"\n class=\"elder-mdc-control-icon elder-icon-small noselect\"\n color=\"warn\"\n [matTooltip]=\"state?.error\"\n >\n warning\n </mat-icon>\n </div>\n </ng-container>\n\n <!-- A dynamic input -->\n <input #input\n matInput type=\"text\" class=\"flex-grow elder-select-input mdc-text-field__input\"\n [disabled]=\"!!disabled\"\n [required]=\"!!required\"\n [readonly]=\"readonly || !autocomplete\"\n [name]=\"ngControl?.name + '-inner-input'\"\n [placeholder]=\"placeholder | translate\"\n [matAutocomplete] #autoTrigger=\"matAutocompleteTrigger\"\n [elderAutocomplete]=\"elderAuto\" [queryFilter]=\"queryFilter\" [filters]=\"filters\" [sorts]=\"sorts\"\n elderSelectOnTab\n [class.elder-select-dropdown-input]=\"!autocomplete\"\n [ngModel]=\"inputText$ | async\" [ngModelOptions]=\"{standalone: true, updateOn: 'submit'}\"\n (blur)=\"onInputBlur($event)\"\n (focus)=\"onInputFocus(autoTrigger)\"\n (click)=\"onInputClicked(autoTrigger)\"\n >\n\n <!-- This breaks stuff: [displayWith]=\"displayPropertyResolver$ | async\" -->\n\n <elder-autocomplete\n #elderAuto=\"elderAutocomplete\"\n [dataContext]=\"dataContext$ | async\"\n [valueTemplate]=\"valueTemplate\"\n [enabled]=\"!!autocomplete\"\n [displayPropertyResolver]=\"displayPropertyResolver$ | async\"\n [isOptionDisabledFn]=\"isOptionDisabledInternalFn\"\n [isOptionHiddenFn]=\"isOptionHiddenInternalFn\"\n (optionSelected)=\"onOptionSelected($any($event))\"\n ></elder-autocomplete>\n\n <div class=\"layout-row place-start-center flex-none\">\n\n <mat-icon\n *ngIf=\"!selectionPopup && !autocomplete && !entityWrapper.displayRemove\"\n class=\"elder-mdc-control-icon elder-select-arrow noselect\"\n (click)=\"onInputClicked(autoTrigger)\">\n arrow_drop_down\n </mat-icon>\n\n <button mat-icon-button type=\"button\" class=\"elder-control-icon-button\"\n *ngIf=\"selectionPopup && !entityWrapper.displayRemove\"\n [disabled]=\"isLocked\"\n (click)=\"openSelectionPopup($event)\" aria-label=\"Search\"\n elderStopEventPropagation\n tabIndex=\"-1\"\n >\n <mat-icon class=\"elder-mdc-control-icon\">search</mat-icon>\n </button>\n\n <button mat-icon-button type=\"button\" class=\"elder-control-icon-button\"\n *ngIf=\"entityWrapper.displayRemove\"\n [disabled]=\"isLocked\"\n (click)=\"clear($event)\" aria-label=\"Clear\"\n elderStopEventPropagation\n tabIndex=\"-1\"\n >\n <mat-icon class=\"elder-mdc-control-icon\">close</mat-icon>\n </button>\n\n\n </div>\n</div>\n\n\n\n", styles: ["@keyframes shrink{0%{transform:scale(1)}to{transform:scale(.75)}}.loading{animation:shrink .3s ease-in-out infinite alternate;-webkit-animation:shrink .3s ease-in-out infinite alternate}.clickable-icon{cursor:pointer}.full-width{width:100%}.elder-select-dropdown-input{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5$2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i4$2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i1$5.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i4$5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: ElderStopEventPropagationDirective, selector: "[elderStopEventPropagation]" }, { kind: "component", type: ElderAutocompleteComponent, selector: "elder-autocomplete", inputs: ["isOptionDisabledFn", "isOptionHiddenFn", "optionValueConverterFn", "enabled", "valueTemplate", "dataContext", "displayPropertyResolver"], outputs: ["optionSelected"], exportAs: ["elderAutocomplete"] }, { kind: "directive", type: ElderAutocompleteDirective, selector: "[elderAutocomplete]", inputs: ["queryFilter", "filters", "sorts", "elderAutocomplete"] }, { kind: "directive", type: ElderSelectOnTabDirective, selector: "[elderSelectOnTab]" }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
24243
24421
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderSelectComponent, decorators: [{
|
|
24244
24422
|
type: Component,
|
|
24245
24423
|
args: [{ selector: 'elder-select', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
@@ -24648,16 +24826,15 @@ class ElderMultiSelectBase extends ElderSelectBase {
|
|
|
24648
24826
|
return this._entityIds$;
|
|
24649
24827
|
}
|
|
24650
24828
|
set entities(entities) {
|
|
24651
|
-
if (!this.
|
|
24652
|
-
|
|
24653
|
-
this.writeValueInternal(this.entitiesToValues(entities));
|
|
24829
|
+
if (!this.equalEntitiesExactOrder(this.entities, entities)) {
|
|
24830
|
+
this.writeValueInternal(this.entitiesToValues(this.writeEntitiesSorted(entities)));
|
|
24654
24831
|
}
|
|
24655
24832
|
}
|
|
24656
24833
|
get entities() {
|
|
24657
24834
|
return this._entities$.getValue();
|
|
24658
24835
|
}
|
|
24659
24836
|
set entityIds(ids) {
|
|
24660
|
-
if (!this.
|
|
24837
|
+
if (!this.equalIdsExactOrder(this.entityIds, ids)) {
|
|
24661
24838
|
if (this.valueAsId) {
|
|
24662
24839
|
this.writeValueInternal(ids);
|
|
24663
24840
|
}
|
|
@@ -24712,23 +24889,11 @@ class ElderMultiSelectBase extends ElderSelectBase {
|
|
|
24712
24889
|
this.requestRemoveEntities([toRemove], skipConfirm);
|
|
24713
24890
|
}
|
|
24714
24891
|
requestRemoveEntities(toRemove, skipConfirm) {
|
|
24715
|
-
|
|
24716
|
-
|
|
24717
|
-
|
|
24718
|
-
|
|
24719
|
-
|
|
24720
|
-
yesNo: true,
|
|
24721
|
-
interpolateParams: { numOfItems: toRemove.length },
|
|
24722
|
-
})
|
|
24723
|
-
.subscribe((confirmed) => {
|
|
24724
|
-
if (confirmed) {
|
|
24725
|
-
this.removeEntities(toRemove);
|
|
24726
|
-
}
|
|
24727
|
-
});
|
|
24728
|
-
}
|
|
24729
|
-
else {
|
|
24730
|
-
this.removeEntities(toRemove);
|
|
24731
|
-
}
|
|
24892
|
+
this.dialogService.confirmDelete({
|
|
24893
|
+
deletionCount: toRemove.length,
|
|
24894
|
+
confirmRemoval: this.confirmRemoval,
|
|
24895
|
+
skipConfirm: skipConfirm
|
|
24896
|
+
}, () => this.removeEntities(toRemove));
|
|
24732
24897
|
}
|
|
24733
24898
|
removeEntities(toRemove) {
|
|
24734
24899
|
toRemove.forEach(e => this.removeEntity(e));
|
|
@@ -24761,7 +24926,7 @@ class ElderMultiSelectBase extends ElderSelectBase {
|
|
|
24761
24926
|
* *
|
|
24762
24927
|
**************************************************************************/
|
|
24763
24928
|
valuesEquals(a, b) {
|
|
24764
|
-
return this.
|
|
24929
|
+
return this.equalIdsExactOrder(this.entityIdsFromValues(a), this.entityIdsFromValues(b));
|
|
24765
24930
|
}
|
|
24766
24931
|
onDataContextChanged(data) {
|
|
24767
24932
|
if (this.valueAsId) {
|
|
@@ -24836,9 +25001,15 @@ class ElderMultiSelectBase extends ElderSelectBase {
|
|
|
24836
25001
|
equalIds(idsA, idsB) {
|
|
24837
25002
|
return Sets.equalContent(idsA, idsB);
|
|
24838
25003
|
}
|
|
25004
|
+
equalIdsExactOrder(idsA, idsB) {
|
|
25005
|
+
return Arrays.equalContentAndOrder(idsA, idsB);
|
|
25006
|
+
}
|
|
24839
25007
|
equalEntities(entitiesA, entitiesB) {
|
|
24840
25008
|
return this.equalIds(this.getEntityIds(entitiesA), this.getEntityIds(entitiesB));
|
|
24841
25009
|
}
|
|
25010
|
+
equalEntitiesExactOrder(entitiesA, entitiesB) {
|
|
25011
|
+
return this.equalIdsExactOrder(this.getEntityIds(entitiesA), this.getEntityIds(entitiesB));
|
|
25012
|
+
}
|
|
24842
25013
|
selectEntitiesByIds(ids) {
|
|
24843
25014
|
const currentEntities = this.entities;
|
|
24844
25015
|
this.logger.info('selectEntitiesByIds: ids: ' + ids + ', current entities:', currentEntities);
|
|
@@ -25053,6 +25224,8 @@ class ElderMultiSelectChipsComponent extends ElderMultiSelectBase {
|
|
|
25053
25224
|
this.avatarSpecFn = e => this.defaultAvatarSpec;
|
|
25054
25225
|
this.selectable = true;
|
|
25055
25226
|
this.allowRemove = true;
|
|
25227
|
+
this.allowSorting = false;
|
|
25228
|
+
this.stacked = false;
|
|
25056
25229
|
this.chipTemplate$ = new BehaviorSubject(null);
|
|
25057
25230
|
this.chipAvatarTemplate$ = new BehaviorSubject(null);
|
|
25058
25231
|
this.customInputTemplate$ = new BehaviorSubject(null);
|
|
@@ -25156,6 +25329,11 @@ class ElderMultiSelectChipsComponent extends ElderMultiSelectBase {
|
|
|
25156
25329
|
* Public API *
|
|
25157
25330
|
* *
|
|
25158
25331
|
**************************************************************************/
|
|
25332
|
+
drop(event) {
|
|
25333
|
+
const reordered = [...this.entities];
|
|
25334
|
+
moveItemInArray(reordered, event.previousIndex, event.currentIndex);
|
|
25335
|
+
this.entities = reordered;
|
|
25336
|
+
}
|
|
25159
25337
|
resolveChipValue(e1) {
|
|
25160
25338
|
return this.getEntityId(e1);
|
|
25161
25339
|
}
|
|
@@ -25209,13 +25387,13 @@ class ElderMultiSelectChipsComponent extends ElderMultiSelectBase {
|
|
|
25209
25387
|
}
|
|
25210
25388
|
}
|
|
25211
25389
|
ElderMultiSelectChipsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderMultiSelectChipsComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i1$1.FocusMonitor }, { token: i2.TranslateService }, { token: ElderDialogService }, { token: i3.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
25212
|
-
ElderMultiSelectChipsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ElderMultiSelectChipsComponent, selector: "elder-multi-select-chips", inputs: { defaultAvatarSpec: "defaultAvatarSpec", avatarSpecFn: "avatarSpecFn", allowRemove: "allowRemove", chipTemplate: "chipTemplate", chipAvatarTemplate: "chipAvatarTemplate", customInputTemplate: "customInputTemplate", chipColorEnabled: "chipColorEnabled", chipColorResolver: "chipColorResolver" }, host: { properties: { "class": "this.hostClass", "class.mat-select-disabled": "this.disabledClass", "class.mat-select-invalid": "this.errorStateClass", "class.mat-select-required": "this.requiredClass", "class.mat-select-empty": "this.emptyClass" } }, providers: [
|
|
25390
|
+
ElderMultiSelectChipsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ElderMultiSelectChipsComponent, selector: "elder-multi-select-chips", inputs: { defaultAvatarSpec: "defaultAvatarSpec", avatarSpecFn: "avatarSpecFn", allowRemove: "allowRemove", allowSorting: "allowSorting", stacked: "stacked", chipTemplate: "chipTemplate", chipAvatarTemplate: "chipAvatarTemplate", customInputTemplate: "customInputTemplate", chipColorEnabled: "chipColorEnabled", chipColorResolver: "chipColorResolver" }, host: { properties: { "class": "this.hostClass", "class.mat-select-disabled": "this.disabledClass", "class.mat-select-invalid": "this.errorStateClass", "class.mat-select-required": "this.requiredClass", "class.mat-select-empty": "this.emptyClass" } }, providers: [
|
|
25213
25391
|
{ provide: MatFormFieldControl, useExisting: ElderMultiSelectChipsComponent },
|
|
25214
25392
|
{
|
|
25215
25393
|
provide: ELDER_SELECT_BASE,
|
|
25216
25394
|
useExisting: forwardRef(() => ElderMultiSelectChipsComponent)
|
|
25217
25395
|
}
|
|
25218
|
-
], queries: [{ propertyName: "_customChipInput", first: true, predicate: MatFormFieldControl, descendants: true }, { propertyName: "chipTemplateQuery", first: true, predicate: ElderSelectChipDirective, descendants: true, read: TemplateRef }, { propertyName: "chipAvatarTemplateQuery", first: true, predicate: ElderSelectChipAvatarDirective, descendants: true, read: TemplateRef }, { propertyName: "customInputTemplateQuery", first: true, predicate: ElderSelectCustomInputDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "_chipInput", first: true, predicate: ElderSelectComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"(selectChips$ | async) as chipValues\"\n class=\"elder-flex-control\"\n [matTooltip]=\"(state$ | async)?.error\"\n>\n
|
|
25396
|
+
], queries: [{ propertyName: "_customChipInput", first: true, predicate: MatFormFieldControl, descendants: true }, { propertyName: "chipTemplateQuery", first: true, predicate: ElderSelectChipDirective, descendants: true, read: TemplateRef }, { propertyName: "chipAvatarTemplateQuery", first: true, predicate: ElderSelectChipAvatarDirective, descendants: true, read: TemplateRef }, { propertyName: "customInputTemplateQuery", first: true, predicate: ElderSelectCustomInputDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "_chipInput", first: true, predicate: ElderSelectComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"(selectChips$ | async) as chipValues\"\n class=\"elder-flex-control\"\n [matTooltip]=\"(state$ | async)?.error\"\n>\n <mat-chip-set #chips\n [class.mat-mdc-chip-set-stacked]=\"stacked\"\n cdkDropList\n [cdkDropListOrientation]=\"stacked ? 'vertical' : 'horizontal'\"\n (cdkDropListDropped)=\"drop($event)\"\n [cdkDropListDisabled]=\"!allowSorting\"\n >\n\n <ng-container *ngIf=\"(mergedState$ | async) as state\">\n <div *ngIf=\"icon\"\n class=\"elder-input-prefix-icon-container flex-none\"\n >\n <mat-icon *ngIf=\"icon\" disabled\n class=\"elder-prefix-icon elder-mdc-control-icon elder-icon-small noselect\"\n [class.loading]=\"state.loading\"\n >\n {{icon}}\n </mat-icon>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"templates$ | async as templates\">\n <mat-chip-row elderChipLabel *ngFor=\"let chipModel of chipValues\"\n class=\"noselect clickable-chip\"\n [value]=\"resolveChipValue(chipModel.value)\"\n [color]=\"chipModel.color\"\n [removable]=\"chipModel.removeable\"\n (keydown)=\"onChipKeyDown($event, chipModel.value)\"\n (click)=\"onCurrentClicked(chipModel.value)\"\n cdkDrag [cdkDragData]=\"chipModel.value\" [cdkDragDisabled]=\"!allowSorting\"\n >\n <mat-chip-avatar\n *ngIf=\"templates.avatar && !chipModel.avatarSpec.hide\"\n [class.chip-avatar-xl]=\"chipModel.avatarSpec.large\"\n >\n <ng-container\n *ngTemplateOutlet=\"templates.avatar; context: {$implicit: chipModel}\">\n </ng-container>\n </mat-chip-avatar>\n\n <ng-container\n *ngTemplateOutlet=\"templates.chip || simpleChipTemplate; context: {$implicit: chipModel}\">\n </ng-container>\n <mat-icon matChipRemove\n *ngIf=\"chipModel.removeable\"\n (click)=\"onClickRemoveChip($event, chipModel.value)\">\n cancel\n </mat-icon>\n </mat-chip-row>\n\n <div class=\"layout-row place-start-center elder-chip-input\">\n\n <!-- [matChipInputFor]=\"chips\" -->\n <ng-container\n *ngTemplateOutlet=\"templates.input || selectInput;\">\n </ng-container>\n\n <button mat-icon-button type=\"button\" class=\"elder-control-icon-button elder-browse-icon\"\n *ngIf=\"selectionPopup\"\n [disabled]=\"isLocked\"\n (click)=\"openSelectionPopup($event)\" aria-label=\"Search\"\n elderStopEventPropagation\n tabIndex=\"-1\"\n >\n <mat-icon class=\"elder-mdc-control-icon\">search</mat-icon>\n </button>\n </div>\n </ng-container>\n </mat-chip-set>\n</div>\n\n<ng-template #selectInput>\n <!-- mat-mdc-chip-input -->\n <elder-select autocomplete elderClearSelect\n class=\"elder-chip-input-select flex\"\n [data]=\"dataContext$ | async\"\n [disabled]=\"!!disabled\"\n [required]=\"!!required\"\n [readonly]=\"!!readonly\"\n [placeholder]=\"placeholder\"\n (entityUpdated)=\"appendEntity($event)\"\n [displayPropertyResolver]=\"displayPropertyResolver$ | async\"\n [valueTemplate]=\"valueTemplate\"\n [queryFilter]=\"queryFilter\" [filters]=\"filters\" [sorts]=\"sorts\"\n [isOptionDisabledFn]=\"isOptionDisabledInternalFn\"\n [isOptionHiddenFn]=\"isOptionHiddenInternalFn\"\n ></elder-select>\n</ng-template>\n\n<ng-template #simpleChipTemplate let-chipModel>\n <span class=\"elder-chip-text\">{{chipModel.displayText | elderTruncate:20}}</span>\n</ng-template>\n\n", styles: [".elder-chip-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cdk-drag-preview{box-sizing:border-box;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: i1$4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5$2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.MatChipAvatar, selector: "mat-chip-avatar, [matChipAvatar]" }, { kind: "directive", type: i6.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i6.MatChipRow, selector: "mat-chip-row, [mat-chip-row], mat-basic-chip-row, [mat-basic-chip-row]", inputs: ["color", "disabled", "disableRipple", "tabIndex", "editable"], outputs: ["edited"] }, { kind: "component", type: i6.MatChipSet, selector: "mat-chip-set", inputs: ["disabled", "role"] }, { kind: "directive", type: i4$5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i5$4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i5$4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: ElderStopEventPropagationDirective, selector: "[elderStopEventPropagation]" }, { kind: "directive", type: ElderChipLabelDirective, selector: "[elderChipLabel]", inputs: ["appearance", "color", "stateColor", "levelColor"] }, { kind: "component", type: ElderSelectComponent, selector: "elder-select", inputs: ["nullDisplay", "autocomplete", "allowNull", "entity", "entityId"], outputs: ["entityIdChange", "entityIdUpdated", "entityChange", "entityUpdated"] }, { kind: "directive", type: ElderClearSelectDirective, selector: "[elderClearSelect]" }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: ElderTruncatePipe, name: "elderTruncate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
25219
25397
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderMultiSelectChipsComponent, decorators: [{
|
|
25220
25398
|
type: Component,
|
|
25221
25399
|
args: [{ selector: 'elder-multi-select-chips', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
@@ -25224,7 +25402,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
25224
25402
|
provide: ELDER_SELECT_BASE,
|
|
25225
25403
|
useExisting: forwardRef(() => ElderMultiSelectChipsComponent)
|
|
25226
25404
|
}
|
|
25227
|
-
], template: "<div *ngIf=\"(selectChips$ | async) as chipValues\"\n class=\"elder-flex-control\"\n [matTooltip]=\"(state$ | async)?.error\"\n>\n
|
|
25405
|
+
], template: "<div *ngIf=\"(selectChips$ | async) as chipValues\"\n class=\"elder-flex-control\"\n [matTooltip]=\"(state$ | async)?.error\"\n>\n <mat-chip-set #chips\n [class.mat-mdc-chip-set-stacked]=\"stacked\"\n cdkDropList\n [cdkDropListOrientation]=\"stacked ? 'vertical' : 'horizontal'\"\n (cdkDropListDropped)=\"drop($event)\"\n [cdkDropListDisabled]=\"!allowSorting\"\n >\n\n <ng-container *ngIf=\"(mergedState$ | async) as state\">\n <div *ngIf=\"icon\"\n class=\"elder-input-prefix-icon-container flex-none\"\n >\n <mat-icon *ngIf=\"icon\" disabled\n class=\"elder-prefix-icon elder-mdc-control-icon elder-icon-small noselect\"\n [class.loading]=\"state.loading\"\n >\n {{icon}}\n </mat-icon>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"templates$ | async as templates\">\n <mat-chip-row elderChipLabel *ngFor=\"let chipModel of chipValues\"\n class=\"noselect clickable-chip\"\n [value]=\"resolveChipValue(chipModel.value)\"\n [color]=\"chipModel.color\"\n [removable]=\"chipModel.removeable\"\n (keydown)=\"onChipKeyDown($event, chipModel.value)\"\n (click)=\"onCurrentClicked(chipModel.value)\"\n cdkDrag [cdkDragData]=\"chipModel.value\" [cdkDragDisabled]=\"!allowSorting\"\n >\n <mat-chip-avatar\n *ngIf=\"templates.avatar && !chipModel.avatarSpec.hide\"\n [class.chip-avatar-xl]=\"chipModel.avatarSpec.large\"\n >\n <ng-container\n *ngTemplateOutlet=\"templates.avatar; context: {$implicit: chipModel}\">\n </ng-container>\n </mat-chip-avatar>\n\n <ng-container\n *ngTemplateOutlet=\"templates.chip || simpleChipTemplate; context: {$implicit: chipModel}\">\n </ng-container>\n <mat-icon matChipRemove\n *ngIf=\"chipModel.removeable\"\n (click)=\"onClickRemoveChip($event, chipModel.value)\">\n cancel\n </mat-icon>\n </mat-chip-row>\n\n <div class=\"layout-row place-start-center elder-chip-input\">\n\n <!-- [matChipInputFor]=\"chips\" -->\n <ng-container\n *ngTemplateOutlet=\"templates.input || selectInput;\">\n </ng-container>\n\n <button mat-icon-button type=\"button\" class=\"elder-control-icon-button elder-browse-icon\"\n *ngIf=\"selectionPopup\"\n [disabled]=\"isLocked\"\n (click)=\"openSelectionPopup($event)\" aria-label=\"Search\"\n elderStopEventPropagation\n tabIndex=\"-1\"\n >\n <mat-icon class=\"elder-mdc-control-icon\">search</mat-icon>\n </button>\n </div>\n </ng-container>\n </mat-chip-set>\n</div>\n\n<ng-template #selectInput>\n <!-- mat-mdc-chip-input -->\n <elder-select autocomplete elderClearSelect\n class=\"elder-chip-input-select flex\"\n [data]=\"dataContext$ | async\"\n [disabled]=\"!!disabled\"\n [required]=\"!!required\"\n [readonly]=\"!!readonly\"\n [placeholder]=\"placeholder\"\n (entityUpdated)=\"appendEntity($event)\"\n [displayPropertyResolver]=\"displayPropertyResolver$ | async\"\n [valueTemplate]=\"valueTemplate\"\n [queryFilter]=\"queryFilter\" [filters]=\"filters\" [sorts]=\"sorts\"\n [isOptionDisabledFn]=\"isOptionDisabledInternalFn\"\n [isOptionHiddenFn]=\"isOptionHiddenInternalFn\"\n ></elder-select>\n</ng-template>\n\n<ng-template #simpleChipTemplate let-chipModel>\n <span class=\"elder-chip-text\">{{chipModel.displayText | elderTruncate:20}}</span>\n</ng-template>\n\n", styles: [".elder-chip-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cdk-drag-preview{box-sizing:border-box;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
|
|
25228
25406
|
}], ctorParameters: function () {
|
|
25229
25407
|
return [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i1$1.FocusMonitor }, { type: i2.TranslateService }, { type: ElderDialogService }, { type: i3.NgControl, decorators: [{
|
|
25230
25408
|
type: Optional
|
|
@@ -25237,6 +25415,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
25237
25415
|
type: Input
|
|
25238
25416
|
}], allowRemove: [{
|
|
25239
25417
|
type: Input
|
|
25418
|
+
}], allowSorting: [{
|
|
25419
|
+
type: Input
|
|
25420
|
+
}], stacked: [{
|
|
25421
|
+
type: Input
|
|
25240
25422
|
}], _customChipInput: [{
|
|
25241
25423
|
type: ContentChild,
|
|
25242
25424
|
args: [MatFormFieldControl]
|
|
@@ -25453,9 +25635,13 @@ ElderSelectModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", versi
|
|
|
25453
25635
|
MatDialogModule, MatButtonModule,
|
|
25454
25636
|
MatInputModule, MatAutocompleteModule,
|
|
25455
25637
|
MatToolbarModule, MatProgressBarModule,
|
|
25456
|
-
MatProgressSpinnerModule,
|
|
25638
|
+
MatProgressSpinnerModule, MatChipsModule,
|
|
25639
|
+
MatTooltipModule,
|
|
25640
|
+
CdkDropList, CdkDrag,
|
|
25457
25641
|
TranslateModule,
|
|
25458
|
-
ElderFormsDirectivesModule, ElderTableModule, ElderInfiniteScrollModule,
|
|
25642
|
+
ElderFormsDirectivesModule, ElderTableModule, ElderInfiniteScrollModule,
|
|
25643
|
+
ElderAutocompleteModule,
|
|
25644
|
+
ElderPipesModule, ElderThemeModule, ElderChipsModule], exports: [ElderSelectComponent,
|
|
25459
25645
|
ElderSelectValueDirective,
|
|
25460
25646
|
TemplatedSelectionDialogComponent,
|
|
25461
25647
|
SelectionModelPopupDirective,
|
|
@@ -25473,9 +25659,12 @@ ElderSelectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", versi
|
|
|
25473
25659
|
MatDialogModule, MatButtonModule,
|
|
25474
25660
|
MatInputModule, MatAutocompleteModule,
|
|
25475
25661
|
MatToolbarModule, MatProgressBarModule,
|
|
25476
|
-
MatProgressSpinnerModule,
|
|
25662
|
+
MatProgressSpinnerModule, MatChipsModule,
|
|
25663
|
+
MatTooltipModule,
|
|
25477
25664
|
TranslateModule,
|
|
25478
|
-
ElderFormsDirectivesModule, ElderTableModule, ElderInfiniteScrollModule,
|
|
25665
|
+
ElderFormsDirectivesModule, ElderTableModule, ElderInfiniteScrollModule,
|
|
25666
|
+
ElderAutocompleteModule,
|
|
25667
|
+
ElderPipesModule, ElderThemeModule, ElderChipsModule] });
|
|
25479
25668
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderSelectModule, decorators: [{
|
|
25480
25669
|
type: NgModule,
|
|
25481
25670
|
args: [{
|
|
@@ -25487,9 +25676,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
25487
25676
|
MatDialogModule, MatButtonModule,
|
|
25488
25677
|
MatInputModule, MatAutocompleteModule,
|
|
25489
25678
|
MatToolbarModule, MatProgressBarModule,
|
|
25490
|
-
MatProgressSpinnerModule,
|
|
25679
|
+
MatProgressSpinnerModule, MatChipsModule,
|
|
25680
|
+
MatTooltipModule,
|
|
25681
|
+
CdkDropList, CdkDrag,
|
|
25491
25682
|
TranslateModule,
|
|
25492
|
-
ElderFormsDirectivesModule, ElderTableModule, ElderInfiniteScrollModule,
|
|
25683
|
+
ElderFormsDirectivesModule, ElderTableModule, ElderInfiniteScrollModule,
|
|
25684
|
+
ElderAutocompleteModule,
|
|
25685
|
+
ElderPipesModule, ElderThemeModule, ElderChipsModule
|
|
25493
25686
|
],
|
|
25494
25687
|
declarations: [
|
|
25495
25688
|
ElderSelectComponent,
|
|
@@ -29546,5 +29739,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
29546
29739
|
* Generated bundle index. Do not edit.
|
|
29547
29740
|
*/
|
|
29548
29741
|
|
|
29549
|
-
export { AuditedEntity, AutoStartSpec, BlobUrl, BytesFormat, BytesPerSecondFormat, BytesPipe, CardDropEvent, CardOrganizerData, CardStack, CollectionUtil, ComparatorBuilder, ConfirmDialogConfig, ContinuableListing, CsvColumnSpec, CsvSerializer, CsvSpec, CsvStreamExporter, CsvStreamExporterBuilder, CsvStreamExporterBuilderService, Currency, CurrencyCode, CurrencyUnit, CurrencyUnitRegistry, CustomDateAdapter, DataContextActivePage, DataContextAutoStarter, DataContextBase, DataContextBuilder, DataContextContinuableBase, DataContextContinuablePaged, DataContextContinuableToken, DataContextLifeCycleBinding, DataContextSelectionDirective, DataContextSimple, DataContextSnapshot, DataContextSourceEventBinding, DataContextStateIndicatorComponent, DataContextStatus, DataSourceAdapter, DataSourceBase, DataSourceChangeEvent, DataSourceChangeType, DataSourceProcessor, DataTransferFactory, DataTransferProgress, DataTransferProgressAggregate, DataTransferState, DataTransferStatus, DataViewIframeAdapterDirective, DataViewIframeComponent, DataViewMessage, DataViewOptionsProviderBinding, DataViewSelection, DataViewSelectionInit, DateUtil, DelegateContinuableDataSource, DelegateDataSource, DelegateListDataSource, DelegatePagedDataSource, Dimensions, DrawerOutletBinding, DurationBucket, DurationFormat, ELDER_DATA_VIEW, ELDER_SELECT_BASE, ElderAccessDeniedComponent, ElderAccessDeniedModule, ElderAppHeaderComponent, ElderAuditModule, ElderAuditedEntityComponent, ElderAutoSelectFirstDirective, ElderAutocompleteComponent, ElderAutocompleteDirective, ElderAutocompleteManyDirective, ElderAutocompleteModule, ElderBadgeComponent, ElderBadgeDirective, ElderBadgeModule, ElderBlobViewerComponent, ElderBreadCrumbsComponent, ElderBreadCrumbsModule, ElderButtonGroupComponent, ElderButtonGroupModule, ElderCardComponent, ElderCardContentDirective, ElderCardHeaderActionsDirective, ElderCardHeaderComponent, ElderCardModule, ElderCardOrganizerComponent, ElderCardOrganizerModule, ElderCardPanelComponent, ElderCardStackComponent, ElderCardSubtitleDirective, ElderCardTitleDirective, ElderCheckboxState, ElderChipLabelDirective, ElderChipListSelectComponent, ElderChipListSelectModule, ElderChipsModule, ElderClearSelectDirective, ElderClipboardPutDirective, ElderClipboardService, ElderConfirmDialogComponent, ElderConnectivityModule, ElderConnectivityService, ElderContainersModule, ElderCsvExportBtnComponent, ElderCsvModule, ElderCurrencyModule, ElderCurrencyPipe, ElderDataCommonModule, ElderDataToolbarComponent, ElderDataTransferModule, ElderDataTransferService, ElderDataViewBaseComponent, ElderDataViewOptions, ElderDataViewOptionsProvider, ElderDateSwitcherComponent, ElderDateTimeInputComponent, ElderDelayedFocusDirective, ElderDialogConfig, ElderDialogModule, ElderDialogPanelComponent, ElderDialogService, ElderDimensionsInputComponent, ElderDropZoneComponent, ElderDurationInputComponent, ElderEntityValueAccessorUtil, ElderEnumTranslationService, ElderErrorModule, ElderEventSourceService, ElderExceptionDetailComponent, ElderExpandToggleButtonComponent, ElderExpandToggleButtonModule, ElderFileDropZoneDirective, ElderFileModule, ElderFileSelectComponent, ElderFileSelectDirective, ElderFileUploadComponent, ElderFormFieldControlBase, ElderFormFieldDenseDirective, ElderFormFieldLabelDirective, ElderFormFieldNoHintDirective, ElderFormFieldNoSpinnerDirective, ElderFormsDirectivesModule, ElderFormsModule, ElderFromFieldBase, ElderFromFieldEntityBase, ElderFromFieldMultiEntityBase, ElderGlobalSearchComponent, ElderGlobalSearchModule, ElderGlobalSearchService, ElderGridComponent, ElderGridModule, ElderGridTileDirective, ElderGridToolbarDirective, ElderHeaderComponent, ElderHeaderModule, ElderHttpClient, ElderI18nEntitiesModule, ElderIFrameModule, ElderInfiniteAutocompleteDirective, ElderInfiniteScrollDirective, ElderInfiniteScrollModule, ElderInputPatternDirective, ElderIntervalInputComponent, ElderKeyEventDirective, ElderLabelInputComponent, ElderLabelsModule, ElderLanguageConfig, ElderLanguageInterceptor, ElderLanguageModule, ElderLanguageService, ElderLanguageSwitcherComponent, ElderLocalDateInputComponent, ElderLocalTimeInputComponent, ElderLocalesDeChModule, ElderLocalizedInputComponent, ElderLocalizedInputDialogComponent, ElderLocalizedInputDialogService, ElderLocalizedInputTableComponent, ElderLocalizedTextColumnDirective, ElderLocalizedTextsDirective, ElderMaxValidator, ElderMeasuresModule, ElderMinValidator, ElderMultiEntityValueAccessorUtil, ElderMultiSelectBase, ElderMultiSelectChipsComponent, ElderMultiSelectFormField, ElderMultipleOfUtil, ElderMultipleOfValidator, ElderNavGroupComponent, ElderNavLinkComponent, ElderNavListComponent, ElderNavModule, ElderNextFocusableDirective, ElderNumberCellDirective, ElderOfflineIndicatorComponent, ElderOverlayComponent, ElderOverlayModule, ElderOverlayOriginDirective, ElderOverlayTriggerDirective, ElderPaddingDirective, ElderPanelComponent, ElderPanelModule, ElderPeriodInputComponent, ElderPipesModule, ElderPlugParentFormDirective, ElderProgressBarComponent, ElderProgressBarModule, ElderQuantityFormFieldComponent, ElderQuantityInputControlComponent, ElderQuantityModule, ElderQuantityPipe, ElderQuantityRangeValidator, ElderQuantityService, ElderQuantityTransformPipe, ElderQuestionDialogComponent, ElderRepeatPipe, ElderRepeatPipeLegacy, ElderRequiredDimensionsValidator, ElderRequiredIgnoreZeroValidator, ElderRequiredQuantityValidator, ElderRoundPipe, ElderRouteOutletDrawerService, ElderRouterOutletService, ElderRouterService, ElderSafeUrlPipe, ElderScrollContainerComponent, ElderScrollbarDirective, ElderScrollbarModule, ElderSearchBoxComponent, ElderSearchContextDirective, ElderSearchInputDirective, ElderSearchModule, ElderSearchPanelComponent, ElderSelectBase, ElderSelectChipAvatarDirective, ElderSelectChipDirective, ElderSelectComponent, ElderSelectComponentState, ElderSelectCustomInputDirective, ElderSelectFormField, ElderSelectModule, ElderSelectOnTabDirective, ElderSelectValueDirective, ElderSelectionDialogComponent, ElderSelectionDialogDirective, ElderSelectionMasterCheckboxComponent, ElderSelectionPopupTriggerAdapterDirective, ElderShellCenterDirective, ElderShellComponent, ElderShellModule, ElderShellNavigationToggleComponent, ElderShellService, ElderShellSideLeftDirective, ElderShellSideRightDirective, ElderShellSlotDirective, ElderSimpleSelectionViewComponent, ElderSimpleSelectionViewModule, ElderSingleSortComponent, ElderStackCardDirective, ElderStopEventPropagationDirective, ElderSvgViewerComponent, ElderTabDirective, ElderTabFocusTrapDirective, ElderTabGroupRoutingDirective, ElderTabModule, ElderTableActivationDirective, ElderTableComponent, ElderTableExtensionDirective, ElderTableGroup, ElderTableModel, ElderTableModelCdkTableBinding, ElderTableModelQueryGroup, ElderTableModule, ElderTableProviders, ElderTableRootDirective, ElderTableSortDirective, ElderTableToolbarDirective, ElderThemeApplierDirective, ElderThemeDirective, ElderThemeModule, ElderThemePreferenceService, ElderThemeService, ElderThemeToggleComponent, ElderTimeModule, ElderToastModule, ElderToastService, ElderTogglePanelComponent, ElderTogglePanelPrimaryDirective, ElderTogglePanelSecondaryDirective, ElderTogglePanelTriggerDirective, ElderToolbarColumnDirective, ElderToolbarComponent, ElderToolbarContentDirective, ElderToolbarModule, ElderToolbarService, ElderToolbarTitleComponent, ElderToolbarTitleService, ElderTouchedDirective, ElderTrimPipe, ElderTripleStateCheckboxDirective, ElderTruncatePipe, ElderUnitSelectDirective, ElderUnitService, ElderUrlFragment, ElderUrlFragmentModule, ElderUrlFragmentParamsService, ElderUrlFragmentSwitcherComponent, ElderValidationErrorDirective, ElderViewersModule, EntitySetPatch, ErrorUtil, ExceptionDetailCtx, FileEntry, FileListingRx, FileUploadClient, Filter, FilterContext, FilterUtil, FormFieldBaseComponent, GlobalDragDropService, HttpClientBuilder, HttpClientPristine, HttpDataTransfer, HttpDataTransferAggregateComponent, HttpDataTransferComponent, HttpDataTransferIndicatorComponent, HttpDataTransferOverviewComponent, HttpParamsBuilder, I18nBase, I18nPickAsyncPipe, I18nPickPipe, I18nText, IFrameState, IframeCloseDirective, IframeDialogComponent, IframeHostComponent, IframeService, IframeSideContentComponent, IndexedEntities, InternalRestClientConfig, Interval, IsoDurationPipe, IsoIntervalParsePipe, IsoIntervalPipe, JsonMapUtil, KafentConfig, KafentEvent, KafentEventService, KafentEventStream, KafentEventStreamDisabled, KafentEventStreamSse, KafentEventTransport, KafentModule, KafentSseEventChannel, KafentTokenProvider, KafentTokenProviderSessionStorage, KafentTopicSse, KnownElderThemes, KnownLocaleType, LocalListDataSource, LocalPagedDataSource, LocalisationPickerService, MasterSelectionState, MatTableDataContextBinding, MatTableDataContextBindingBuilder, MultiModelBaseComponent, NextNumberUtil, Objects, OnlineStatus, Page, PageRequest, Pageable, ParseUtil, Path, PathNode, PeriodBucket, PeriodDuration, PeriodFormat, ProcessIterationContext, ProcessState, PropertyPathUtil, Quantity, QueryListBinding, QuestionDialogConfig, ReactiveEventSource, ReactiveMap, RefreshingEntity, RestClient, RestClientConfig, RestClientContinuable, RestClientList, RestClientPaged, SearchQuery, SelectionModel, SelectionModelPopupDirective, Sets, SimpleLocalisationPicker, Sort, SortOption, SortUtil, StandardToastComponent, SubBar, SuggestionProvider, TemplateCompositeControl, TemplatedSelectionDialogComponent, ThemeSpec, TimeAgoPipe, TimeDurationPipe, TimeUtil, ToIsoDateStringPipe, ToastType, TokenChunkRequest, ToolbarHeader, TranslatedEnumValue, TypedEventMessage, Unit, UnitDimension, UnitDimensionInfo, UnitInfo, UnitRegistry, UrlBuilder, UrlQueryParams, UuidUtil, ValueAccessorBase, ValueWrapper, ViewProviders, WeightPipe, alphaNumStringComparator, buildFormIntegrationProviders, createDataOptionsProvider, createSelectionModel, existingOrNewElderTableModel, isActivePagedDataContext, isContinuableDataContext, isContinuableDataSource, isDataContext, isDataSource, isElderEntityValueAccessor, isElderMultiEntityValueAccessor, isListDataSource, isPagedDataSource, lazySample, lazySampleTime, naturalValueComparator, newElderTableModel, proxyControlContainer, registerLocale, runInZone, themeInit };
|
|
29742
|
+
export { Arrays, AuditedEntity, AutoStartSpec, BlobUrl, BytesFormat, BytesPerSecondFormat, BytesPipe, CardDropEvent, CardOrganizerData, CardStack, CollectionUtil, ComparatorBuilder, ConfirmDialogConfig, ContinuableListing, CsvColumnSpec, CsvSerializer, CsvSpec, CsvStreamExporter, CsvStreamExporterBuilder, CsvStreamExporterBuilderService, Currency, CurrencyCode, CurrencyUnit, CurrencyUnitRegistry, CustomDateAdapter, DataContextActivePage, DataContextAutoStarter, DataContextBase, DataContextBuilder, DataContextContinuableBase, DataContextContinuablePaged, DataContextContinuableToken, DataContextLifeCycleBinding, DataContextSelectionDirective, DataContextSimple, DataContextSnapshot, DataContextSourceEventBinding, DataContextStateIndicatorComponent, DataContextStatus, DataSourceAdapter, DataSourceBase, DataSourceChangeEvent, DataSourceChangeType, DataSourceProcessor, DataTransferFactory, DataTransferProgress, DataTransferProgressAggregate, DataTransferState, DataTransferStatus, DataViewIframeAdapterDirective, DataViewIframeComponent, DataViewMessage, DataViewOptionsProviderBinding, DataViewSelection, DataViewSelectionInit, DateUtil, DelegateContinuableDataSource, DelegateDataSource, DelegateListDataSource, DelegatePagedDataSource, Dimensions, DrawerOutletBinding, DurationBucket, DurationFormat, ELDER_DATA_VIEW, ELDER_SELECT_BASE, ElderAccessDeniedComponent, ElderAccessDeniedModule, ElderAppHeaderComponent, ElderAuditModule, ElderAuditedEntityComponent, ElderAutoSelectFirstDirective, ElderAutocompleteComponent, ElderAutocompleteDirective, ElderAutocompleteManyDirective, ElderAutocompleteModule, ElderBadgeComponent, ElderBadgeDirective, ElderBadgeModule, ElderBlobViewerComponent, ElderBreadCrumbsComponent, ElderBreadCrumbsModule, ElderButtonGroupComponent, ElderButtonGroupModule, ElderCardComponent, ElderCardContentDirective, ElderCardHeaderActionsDirective, ElderCardHeaderComponent, ElderCardModule, ElderCardOrganizerComponent, ElderCardOrganizerModule, ElderCardPanelComponent, ElderCardStackComponent, ElderCardSubtitleDirective, ElderCardTitleDirective, ElderCheckboxState, ElderChipLabelDirective, ElderChipListSelectComponent, ElderChipListSelectModule, ElderChipsModule, ElderClearSelectDirective, ElderClipboardPutDirective, ElderClipboardService, ElderConfirmDialogComponent, ElderConnectivityModule, ElderConnectivityService, ElderContainersModule, ElderCsvExportBtnComponent, ElderCsvModule, ElderCurrencyModule, ElderCurrencyPipe, ElderDataCommonModule, ElderDataToolbarComponent, ElderDataTransferModule, ElderDataTransferService, ElderDataViewBaseComponent, ElderDataViewOptions, ElderDataViewOptionsProvider, ElderDateSwitcherComponent, ElderDateTimeInputComponent, ElderDelayedFocusDirective, ElderDeleteActiveDirective, ElderDialogConfig, ElderDialogModule, ElderDialogPanelComponent, ElderDialogService, ElderDimensionsInputComponent, ElderDropZoneComponent, ElderDurationInputComponent, ElderEntityValueAccessorUtil, ElderEnumTranslationService, ElderErrorModule, ElderEventSourceService, ElderExceptionDetailComponent, ElderExpandToggleButtonComponent, ElderExpandToggleButtonModule, ElderFileDropZoneDirective, ElderFileModule, ElderFileSelectComponent, ElderFileSelectDirective, ElderFileUploadComponent, ElderFormFieldControlBase, ElderFormFieldDenseDirective, ElderFormFieldLabelDirective, ElderFormFieldNoHintDirective, ElderFormFieldNoSpinnerDirective, ElderFormsDirectivesModule, ElderFormsModule, ElderFromFieldBase, ElderFromFieldEntityBase, ElderFromFieldMultiEntityBase, ElderGlobalSearchComponent, ElderGlobalSearchModule, ElderGlobalSearchService, ElderGridComponent, ElderGridModule, ElderGridTileDirective, ElderGridToolbarDirective, ElderHeaderComponent, ElderHeaderModule, ElderHttpClient, ElderI18nEntitiesModule, ElderIFrameModule, ElderInfiniteAutocompleteDirective, ElderInfiniteScrollDirective, ElderInfiniteScrollModule, ElderInputPatternDirective, ElderIntervalInputComponent, ElderKeyEventDirective, ElderLabelInputComponent, ElderLabelsModule, ElderLanguageConfig, ElderLanguageInterceptor, ElderLanguageModule, ElderLanguageService, ElderLanguageSwitcherComponent, ElderLocalDateInputComponent, ElderLocalTimeInputComponent, ElderLocalesDeChModule, ElderLocalizedInputComponent, ElderLocalizedInputDialogComponent, ElderLocalizedInputDialogService, ElderLocalizedInputTableComponent, ElderLocalizedTextColumnDirective, ElderLocalizedTextsDirective, ElderMaxValidator, ElderMeasuresModule, ElderMinValidator, ElderMultiEntityValueAccessorUtil, ElderMultiSelectBase, ElderMultiSelectChipsComponent, ElderMultiSelectFormField, ElderMultipleOfUtil, ElderMultipleOfValidator, ElderNavGroupComponent, ElderNavLinkComponent, ElderNavListComponent, ElderNavModule, ElderNextFocusableDirective, ElderNumberCellDirective, ElderOfflineIndicatorComponent, ElderOverlayComponent, ElderOverlayModule, ElderOverlayOriginDirective, ElderOverlayTriggerDirective, ElderPaddingDirective, ElderPanelComponent, ElderPanelModule, ElderPeriodInputComponent, ElderPipesModule, ElderPlugParentFormDirective, ElderProgressBarComponent, ElderProgressBarModule, ElderQuantityFormFieldComponent, ElderQuantityInputControlComponent, ElderQuantityModule, ElderQuantityPipe, ElderQuantityRangeValidator, ElderQuantityService, ElderQuantityTransformPipe, ElderQuestionDialogComponent, ElderRepeatPipe, ElderRepeatPipeLegacy, ElderRequiredDimensionsValidator, ElderRequiredIgnoreZeroValidator, ElderRequiredQuantityValidator, ElderRoundPipe, ElderRouteOutletDrawerService, ElderRouterOutletService, ElderRouterService, ElderSafeUrlPipe, ElderScrollContainerComponent, ElderScrollbarDirective, ElderScrollbarModule, ElderSearchBoxComponent, ElderSearchContextDirective, ElderSearchInputDirective, ElderSearchModule, ElderSearchPanelComponent, ElderSelectBase, ElderSelectChipAvatarDirective, ElderSelectChipDirective, ElderSelectComponent, ElderSelectComponentState, ElderSelectCustomInputDirective, ElderSelectFormField, ElderSelectModule, ElderSelectOnTabDirective, ElderSelectValueDirective, ElderSelectionDialogComponent, ElderSelectionDialogDirective, ElderSelectionMasterCheckboxComponent, ElderSelectionPopupTriggerAdapterDirective, ElderShellCenterDirective, ElderShellComponent, ElderShellModule, ElderShellNavigationToggleComponent, ElderShellService, ElderShellSideLeftDirective, ElderShellSideRightDirective, ElderShellSlotDirective, ElderSimpleSelectionViewComponent, ElderSimpleSelectionViewModule, ElderSingleSortComponent, ElderStackCardDirective, ElderStopEventPropagationDirective, ElderSvgViewerComponent, ElderTabDirective, ElderTabFocusTrapDirective, ElderTabGroupRoutingDirective, ElderTabModule, ElderTableActivationDirective, ElderTableComponent, ElderTableExtensionDirective, ElderTableGroup, ElderTableModel, ElderTableModelCdkTableBinding, ElderTableModelQueryGroup, ElderTableModule, ElderTableProviders, ElderTableRootDirective, ElderTableSortDirective, ElderTableToolbarDirective, ElderThemeApplierDirective, ElderThemeDirective, ElderThemeModule, ElderThemePreferenceService, ElderThemeService, ElderThemeToggleComponent, ElderTimeModule, ElderToastModule, ElderToastService, ElderTogglePanelComponent, ElderTogglePanelPrimaryDirective, ElderTogglePanelSecondaryDirective, ElderTogglePanelTriggerDirective, ElderToolbarColumnDirective, ElderToolbarComponent, ElderToolbarContentDirective, ElderToolbarModule, ElderToolbarService, ElderToolbarTitleComponent, ElderToolbarTitleService, ElderTouchedDirective, ElderTrimPipe, ElderTripleStateCheckboxDirective, ElderTruncatePipe, ElderUnitSelectDirective, ElderUnitService, ElderUrlFragment, ElderUrlFragmentModule, ElderUrlFragmentParamsService, ElderUrlFragmentSwitcherComponent, ElderValidationErrorDirective, ElderViewersModule, EntitySetPatch, ErrorUtil, ExceptionDetailCtx, FileEntry, FileListingRx, FileUploadClient, Filter, FilterContext, FilterUtil, FormFieldBaseComponent, GlobalDragDropService, HttpClientBuilder, HttpClientPristine, HttpDataTransfer, HttpDataTransferAggregateComponent, HttpDataTransferComponent, HttpDataTransferIndicatorComponent, HttpDataTransferOverviewComponent, HttpParamsBuilder, I18nBase, I18nPickAsyncPipe, I18nPickPipe, I18nText, IFrameState, IframeCloseDirective, IframeDialogComponent, IframeHostComponent, IframeService, IframeSideContentComponent, IndexedEntities, InternalRestClientConfig, Interval, IsoDurationPipe, IsoIntervalParsePipe, IsoIntervalPipe, JsonMapUtil, KafentConfig, KafentEvent, KafentEventService, KafentEventStream, KafentEventStreamDisabled, KafentEventStreamSse, KafentEventTransport, KafentModule, KafentSseEventChannel, KafentTokenProvider, KafentTokenProviderSessionStorage, KafentTopicSse, KnownElderThemes, KnownLocaleType, LocalListDataSource, LocalPagedDataSource, LocalisationPickerService, MasterSelectionState, MatTableDataContextBinding, MatTableDataContextBindingBuilder, MultiModelBaseComponent, NextNumberUtil, Objects, OnlineStatus, Page, PageRequest, Pageable, ParseUtil, Path, PathNode, PeriodBucket, PeriodDuration, PeriodFormat, ProcessIterationContext, ProcessState, PropertyPathUtil, Quantity, QueryListBinding, QuestionDialogConfig, ReactiveEventSource, ReactiveMap, RefreshingEntity, RestClient, RestClientConfig, RestClientContinuable, RestClientList, RestClientPaged, SearchQuery, SelectionModel, SelectionModelPopupDirective, Sets, SimpleLocalisationPicker, Sort, SortOption, SortUtil, StandardToastComponent, SubBar, SuggestionProvider, TemplateCompositeControl, TemplatedSelectionDialogComponent, ThemeSpec, TimeAgoPipe, TimeDurationPipe, TimeUtil, ToIsoDateStringPipe, ToastType, TokenChunkRequest, ToolbarHeader, TranslatedEnumValue, TypedEventMessage, Unit, UnitDimension, UnitDimensionInfo, UnitInfo, UnitRegistry, UrlBuilder, UrlQueryParams, UuidUtil, ValueAccessorBase, ValueWrapper, ViewProviders, WeightPipe, alphaNumStringComparator, buildFormIntegrationProviders, createDataOptionsProvider, createSelectionModel, existingOrNewElderTableModel, isActivePagedDataContext, isContinuableDataContext, isContinuableDataSource, isDataContext, isDataSource, isElderEntityValueAccessor, isElderMultiEntityValueAccessor, isListDataSource, isPagedDataSource, lazySample, lazySampleTime, naturalValueComparator, newElderTableModel, proxyControlContainer, registerLocale, runInZone, themeInit };
|
|
29550
29743
|
//# sourceMappingURL=elderbyte-ngx-starter.mjs.map
|