@elderbyte/ngx-starter 15.17.3 → 15.18.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/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +2 -2
- package/esm2020/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.mjs +6 -6
- package/esm2020/lib/components/data-view/master-detail/elder-detail.directive.mjs +8 -6
- package/esm2020/lib/components/data-view/master-detail/elder-master-activation.directive.mjs +26 -11
- package/esm2020/lib/components/data-view/master-detail/elder-master-detail-activation-event.mjs +12 -0
- package/esm2020/lib/components/data-view/master-detail/elder-master-detail-provider.mjs +7 -7
- package/esm2020/lib/components/data-view/master-detail/elder-master-detail.component.mjs +8 -8
- package/esm2020/lib/components/data-view/master-detail/elder-master-detail.module.mjs +3 -2
- package/esm2020/lib/components/data-view/master-detail/elder-master-detail.service.mjs +73 -0
- package/esm2020/lib/components/data-view/table/activation/activation-event-source.mjs +7 -0
- package/esm2020/lib/components/data-view/table/activation/active-item-event.mjs +9 -0
- package/esm2020/lib/components/data-view/table/activation/elder-activation-context.mjs +2 -0
- package/esm2020/lib/components/data-view/table/activation/elder-delete-active.directive.mjs +3 -3
- package/esm2020/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +27 -17
- package/esm2020/lib/components/data-view/table/activation/item-activation-options.mjs +7 -0
- package/esm2020/lib/components/data-view/table/activation/public_api.mjs +8 -0
- package/esm2020/lib/components/data-view/table/elder-table/elder-table.component.mjs +6 -3
- package/esm2020/lib/components/data-view/table/elder-table-row.directive.mjs +28 -15
- package/esm2020/lib/components/data-view/table/elder-table.module.mjs +6 -8
- package/fesm2015/elderbyte-ngx-starter.mjs +151 -82
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
- package/fesm2020/elderbyte-ngx-starter.mjs +151 -82
- package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.d.ts +2 -2
- package/lib/components/data-view/master-detail/elder-detail.directive.d.ts +2 -2
- package/lib/components/data-view/master-detail/elder-master-activation.directive.d.ts +11 -4
- package/lib/components/data-view/master-detail/elder-master-detail-activation-event.d.ts +8 -0
- package/lib/components/data-view/master-detail/elder-master-detail-provider.d.ts +5 -5
- package/lib/components/data-view/master-detail/elder-master-detail.component.d.ts +2 -2
- package/lib/components/data-view/master-detail/elder-master-detail.module.d.ts +2 -1
- package/lib/components/data-view/master-detail/{master-detail.service.d.ts → elder-master-detail.service.d.ts} +8 -7
- package/lib/components/data-view/table/activation/activation-event-source.d.ts +5 -0
- package/lib/components/data-view/table/activation/active-item-event.d.ts +8 -0
- package/lib/components/data-view/table/activation/elder-activation-context.d.ts +7 -0
- package/lib/components/data-view/table/activation/elder-table-activation.directive.d.ts +10 -5
- package/lib/components/data-view/table/activation/item-activation-options.d.ts +6 -0
- package/lib/components/data-view/table/activation/public_api.d.ts +7 -0
- package/lib/components/data-view/table/elder-table/elder-table.component.d.ts +1 -0
- package/lib/components/data-view/table/elder-table-row.directive.d.ts +5 -5
- package/lib/components/data-view/table/elder-table.module.d.ts +5 -7
- package/package.json +1 -1
- package/src/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.scss +0 -3
- package/src/lib/components/data-view/table/elder-table/elder-table.component.scss +1 -1
- package/esm2020/lib/components/data-view/master-detail/master-detail.service.mjs +0 -70
- package/esm2020/lib/components/data-view/table/activation/elder-item-activator.mjs +0 -2
- package/lib/components/data-view/table/activation/elder-item-activator.d.ts +0 -3
|
@@ -13281,10 +13281,10 @@ class DataContextStateIndicatorComponent {
|
|
|
13281
13281
|
}
|
|
13282
13282
|
}
|
|
13283
13283
|
DataContextStateIndicatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DataContextStateIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
13284
|
-
DataContextStateIndicatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: DataContextStateIndicatorComponent, selector: "elder-data-context-state-indicator", inputs: { dataContext: "dataContext" }, ngImport: i0, template: "<ng-container *ngIf=\"dataContext$ | async as dataContext\">\n\n <ng-container *ngIf=\"dataContext else noDataContext\">\n\n <ng-container *ngIf=\"(dataContext.isStarted$ | async) else dataContextNotStarted\">\n\n <ng-container *ngIf=\"!(dataContext?.status | async)?.hasError else dataContextHasError\">\n\n <ng-container *ngIf=\"(dataContext?.data | async)?.length === 0\">\n <ng-template [ngTemplateOutlet]=\"dataContextNoData\"></ng-template>\n </ng-container>\n\n </ng-container>\n\n </ng-container>\n\n </ng-container>\n\n</ng-container>\n\n<ng-template #noDataContext>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'warning', text: 'No data context'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #dataContextNotStarted>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'warning', text: 'Data context not started'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #dataContextHasError>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'warning', iconColor: 'warn', text: 'Error while loading data'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #dataContextNoData>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'info', text: 'No data available'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #indicator let-icon=\"icon\" let-iconColor=\"iconColor\" let-text=\"text\">\n\n <div class=\"layout-col place-center-center full elder-dc-indicator-container mat-body-2\">\n <div class=\"layout-row place-center-center gap-lg\">\n <mat-icon [color]=\"iconColor\">{{icon}}</mat-icon>\n <span class=\"hint mat-body-2\">{{text | translate}}</span>\n </div>\n </div>\n\n</ng-template>\n", styles: [".elder-dc-indicator-container{color:gray
|
|
13284
|
+
DataContextStateIndicatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: DataContextStateIndicatorComponent, selector: "elder-data-context-state-indicator", inputs: { dataContext: "dataContext" }, ngImport: i0, template: "<ng-container *ngIf=\"dataContext$ | async as dataContext\">\n\n <ng-container *ngIf=\"dataContext else noDataContext\">\n\n <ng-container *ngIf=\"(dataContext.isStarted$ | async) else dataContextNotStarted\">\n\n <ng-container *ngIf=\"!(dataContext?.status | async)?.hasError else dataContextHasError\">\n\n <ng-container *ngIf=\"(dataContext?.data | async)?.length === 0\">\n <ng-template [ngTemplateOutlet]=\"dataContextNoData\"></ng-template>\n </ng-container>\n\n </ng-container>\n\n </ng-container>\n\n </ng-container>\n\n</ng-container>\n\n<ng-template #noDataContext>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'warning', text: 'No data context'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #dataContextNotStarted>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'warning', text: 'Data context not started'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #dataContextHasError>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'warning', iconColor: 'warn', text: 'Error while loading data'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #dataContextNoData>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'info', text: 'No data available'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #indicator let-icon=\"icon\" let-iconColor=\"iconColor\" let-text=\"text\">\n\n <div class=\"layout-col place-center-center full elder-dc-indicator-container mat-body-2\">\n <div class=\"layout-row place-center-center gap-lg\">\n <mat-icon [color]=\"iconColor\">{{icon}}</mat-icon>\n <span class=\"hint mat-body-2\">{{text | translate}}</span>\n </div>\n </div>\n\n</ng-template>\n", styles: [".elder-dc-indicator-container{color:gray}\n"], 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: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
13285
13285
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DataContextStateIndicatorComponent, decorators: [{
|
|
13286
13286
|
type: Component,
|
|
13287
|
-
args: [{ selector: 'elder-data-context-state-indicator', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"dataContext$ | async as dataContext\">\n\n <ng-container *ngIf=\"dataContext else noDataContext\">\n\n <ng-container *ngIf=\"(dataContext.isStarted$ | async) else dataContextNotStarted\">\n\n <ng-container *ngIf=\"!(dataContext?.status | async)?.hasError else dataContextHasError\">\n\n <ng-container *ngIf=\"(dataContext?.data | async)?.length === 0\">\n <ng-template [ngTemplateOutlet]=\"dataContextNoData\"></ng-template>\n </ng-container>\n\n </ng-container>\n\n </ng-container>\n\n </ng-container>\n\n</ng-container>\n\n<ng-template #noDataContext>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'warning', text: 'No data context'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #dataContextNotStarted>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'warning', text: 'Data context not started'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #dataContextHasError>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'warning', iconColor: 'warn', text: 'Error while loading data'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #dataContextNoData>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'info', text: 'No data available'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #indicator let-icon=\"icon\" let-iconColor=\"iconColor\" let-text=\"text\">\n\n <div class=\"layout-col place-center-center full elder-dc-indicator-container mat-body-2\">\n <div class=\"layout-row place-center-center gap-lg\">\n <mat-icon [color]=\"iconColor\">{{icon}}</mat-icon>\n <span class=\"hint mat-body-2\">{{text | translate}}</span>\n </div>\n </div>\n\n</ng-template>\n", styles: [".elder-dc-indicator-container{color:gray
|
|
13287
|
+
args: [{ selector: 'elder-data-context-state-indicator', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"dataContext$ | async as dataContext\">\n\n <ng-container *ngIf=\"dataContext else noDataContext\">\n\n <ng-container *ngIf=\"(dataContext.isStarted$ | async) else dataContextNotStarted\">\n\n <ng-container *ngIf=\"!(dataContext?.status | async)?.hasError else dataContextHasError\">\n\n <ng-container *ngIf=\"(dataContext?.data | async)?.length === 0\">\n <ng-template [ngTemplateOutlet]=\"dataContextNoData\"></ng-template>\n </ng-container>\n\n </ng-container>\n\n </ng-container>\n\n </ng-container>\n\n</ng-container>\n\n<ng-template #noDataContext>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'warning', text: 'No data context'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #dataContextNotStarted>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'warning', text: 'Data context not started'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #dataContextHasError>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'warning', iconColor: 'warn', text: 'Error while loading data'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #dataContextNoData>\n <ng-container *ngTemplateOutlet=\"indicator; context:{icon: 'info', text: 'No data available'}\">\n </ng-container>\n</ng-template>\n\n<ng-template #indicator let-icon=\"icon\" let-iconColor=\"iconColor\" let-text=\"text\">\n\n <div class=\"layout-col place-center-center full elder-dc-indicator-container mat-body-2\">\n <div class=\"layout-row place-center-center gap-lg\">\n <mat-icon [color]=\"iconColor\">{{icon}}</mat-icon>\n <span class=\"hint mat-body-2\">{{text | translate}}</span>\n </div>\n </div>\n\n</ng-template>\n", styles: [".elder-dc-indicator-container{color:gray}\n"] }]
|
|
13288
13288
|
}], ctorParameters: function () { return []; }, propDecorators: { dataContext: [{
|
|
13289
13289
|
type: Input
|
|
13290
13290
|
}] } });
|
|
@@ -13424,6 +13424,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
13424
13424
|
}]
|
|
13425
13425
|
}] });
|
|
13426
13426
|
|
|
13427
|
+
class ItemActivationOptions {
|
|
13428
|
+
constructor(source, focus) {
|
|
13429
|
+
this.source = source;
|
|
13430
|
+
this.focus = focus;
|
|
13431
|
+
}
|
|
13432
|
+
}
|
|
13433
|
+
|
|
13434
|
+
var ActivationEventSource;
|
|
13435
|
+
(function (ActivationEventSource) {
|
|
13436
|
+
ActivationEventSource["USER_MOUSE_CLICK"] = "USER_MOUSE_CLICK";
|
|
13437
|
+
ActivationEventSource["USER_KEYBOARD"] = "USER_KEYBOARD";
|
|
13438
|
+
ActivationEventSource["SYSTEM"] = "SYSTEM";
|
|
13439
|
+
})(ActivationEventSource || (ActivationEventSource = {}));
|
|
13440
|
+
|
|
13427
13441
|
class ElderTableRowDirective {
|
|
13428
13442
|
/***************************************************************************
|
|
13429
13443
|
* *
|
|
@@ -13440,7 +13454,13 @@ class ElderTableRowDirective {
|
|
|
13440
13454
|
**************************************************************************/
|
|
13441
13455
|
this.logger = LoggerFactory.getLogger(this.constructor.name);
|
|
13442
13456
|
this._activated = false;
|
|
13457
|
+
this._activationDir$ = new BehaviorSubject(null);
|
|
13443
13458
|
this.focused$ = new BehaviorSubject(false);
|
|
13459
|
+
this._activationDir$.pipe(filter(x => x !== null), switchMap$1(provider => provider.activeItemEventChange), filter(e => e.item == this.model), filter(e => e.focus)).subscribe({
|
|
13460
|
+
next: focusMe => {
|
|
13461
|
+
this.focus();
|
|
13462
|
+
}
|
|
13463
|
+
});
|
|
13444
13464
|
}
|
|
13445
13465
|
/***************************************************************************
|
|
13446
13466
|
* *
|
|
@@ -13449,13 +13469,15 @@ class ElderTableRowDirective {
|
|
|
13449
13469
|
**************************************************************************/
|
|
13450
13470
|
onFocus(event) {
|
|
13451
13471
|
this.focused$.next(true);
|
|
13452
|
-
if (this.tableActivation) {
|
|
13453
|
-
this.tableActivation.activate(this._model);
|
|
13454
|
-
}
|
|
13455
13472
|
}
|
|
13456
13473
|
onBlur(event) {
|
|
13457
13474
|
this.focused$.next(false);
|
|
13458
13475
|
}
|
|
13476
|
+
onClick() {
|
|
13477
|
+
this.logger.debug('row clicked');
|
|
13478
|
+
const activation = this._activationDir$.getValue();
|
|
13479
|
+
activation.activate(this._model, new ItemActivationOptions(ActivationEventSource.USER_MOUSE_CLICK, true));
|
|
13480
|
+
}
|
|
13459
13481
|
/***************************************************************************
|
|
13460
13482
|
* *
|
|
13461
13483
|
* Host Bindings *
|
|
@@ -13481,9 +13503,6 @@ class ElderTableRowDirective {
|
|
|
13481
13503
|
get model() {
|
|
13482
13504
|
return this._model;
|
|
13483
13505
|
}
|
|
13484
|
-
get tableActivation() {
|
|
13485
|
-
return this._tableActivation;
|
|
13486
|
-
}
|
|
13487
13506
|
get hasFocus() {
|
|
13488
13507
|
return this.focused$.getValue();
|
|
13489
13508
|
}
|
|
@@ -13492,11 +13511,12 @@ class ElderTableRowDirective {
|
|
|
13492
13511
|
* Public API *
|
|
13493
13512
|
* *
|
|
13494
13513
|
**************************************************************************/
|
|
13495
|
-
bindTableActivation(
|
|
13496
|
-
|
|
13497
|
-
|
|
13498
|
-
this.
|
|
13499
|
-
|
|
13514
|
+
bindTableActivation(activationDir) {
|
|
13515
|
+
const currentActivation = this._activationDir$.getValue();
|
|
13516
|
+
if (currentActivation !== activationDir) {
|
|
13517
|
+
this._activationDir$.next(activationDir);
|
|
13518
|
+
this.enableRowFocus(!!activationDir);
|
|
13519
|
+
if (!activationDir) {
|
|
13500
13520
|
this.activated = false;
|
|
13501
13521
|
}
|
|
13502
13522
|
}
|
|
@@ -13509,7 +13529,8 @@ class ElderTableRowDirective {
|
|
|
13509
13529
|
inline: 'nearest' // horizontal alignment
|
|
13510
13530
|
});
|
|
13511
13531
|
}
|
|
13512
|
-
|
|
13532
|
+
focus() {
|
|
13533
|
+
this.logger.debug('focus initiated');
|
|
13513
13534
|
const row = this.rowRef.nativeElement;
|
|
13514
13535
|
row.focus();
|
|
13515
13536
|
}
|
|
@@ -13538,7 +13559,7 @@ class ElderTableRowDirective {
|
|
|
13538
13559
|
}
|
|
13539
13560
|
}
|
|
13540
13561
|
ElderTableRowDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderTableRowDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
13541
|
-
ElderTableRowDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: ElderTableRowDirective, selector: "tr[elderTableRow]", inputs: { model: ["elderTableRow", "model"] }, host: { listeners: { "focus": "onFocus($event)", "blur": "onBlur($event)" } }, exportAs: ["elderTableRow"], ngImport: i0 });
|
|
13562
|
+
ElderTableRowDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: ElderTableRowDirective, selector: "tr[elderTableRow]", inputs: { model: ["elderTableRow", "model"] }, host: { listeners: { "focus": "onFocus($event)", "blur": "onBlur($event)", "click": "onClick($event)" } }, exportAs: ["elderTableRow"], ngImport: i0 });
|
|
13542
13563
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderTableRowDirective, decorators: [{
|
|
13543
13564
|
type: Directive,
|
|
13544
13565
|
args: [{
|
|
@@ -13551,6 +13572,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
13551
13572
|
}], onBlur: [{
|
|
13552
13573
|
type: HostListener,
|
|
13553
13574
|
args: ['blur', ['$event']]
|
|
13575
|
+
}], onClick: [{
|
|
13576
|
+
type: HostListener,
|
|
13577
|
+
args: ['click', ['$event']]
|
|
13554
13578
|
}], model: [{
|
|
13555
13579
|
type: Input,
|
|
13556
13580
|
args: ['elderTableRow']
|
|
@@ -14467,6 +14491,9 @@ class ElderTableComponent extends ElderDataViewBaseComponent {
|
|
|
14467
14491
|
get trackByFn() {
|
|
14468
14492
|
return (index, entity) => this.getId(entity);
|
|
14469
14493
|
}
|
|
14494
|
+
isDataValid(data) {
|
|
14495
|
+
return data.length > 0;
|
|
14496
|
+
}
|
|
14470
14497
|
/***************************************************************************
|
|
14471
14498
|
* *
|
|
14472
14499
|
* Private Methods *
|
|
@@ -14502,7 +14529,7 @@ ElderTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ve
|
|
|
14502
14529
|
provide: ELDER_DATA_VIEW,
|
|
14503
14530
|
useExisting: forwardRef(() => ElderTableComponent)
|
|
14504
14531
|
}
|
|
14505
|
-
], queries: [{ propertyName: "columnDefs", predicate: MatColumnDef }, { propertyName: "elderColumns", predicate: ElderTableColumnDirective }, { propertyName: "rowDefs", predicate: MatRowDef }, { propertyName: "toolbarRowTemplateQuery", predicate: ElderTableToolbarDirective, read: TemplateRef }], viewQueries: [{ propertyName: "matTable", first: true, predicate: MatTable, descendants: true, static: true }, { propertyName: "matPaginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "rowsQuery", predicate: ElderTableRowDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-card class=\"full\"\n [class.embedded]=\"embedded\"\n [appearance]=\"appearance\"\n style=\"overflow: hidden\"\n>\n <div class=\"layout-col elder-table full\">\n <!-- Toolbar Rows -->\n <ng-container *ngFor=\"let toolbarRowTemplate of toolbarRowTemplates$ | async\">\n <ng-template *ngTemplateOutlet=\"toolbarRowTemplate; context: {$implicit: this}\">\n </ng-template>\n </ng-container>\n\n <!-- Scrollable Table -->\n <div class=\"layout-col scrollable elder-table-scroll\"\n elderInfiniteScroll\n [eventThrottle]=\"150\"\n [offsetFactor]=\"2\"\n [ignoreScrollEvent]=\"!isContinuable || !(canLoadMore$ | async)\"\n (closeToEnd)=\"requestMoreDataZoned($event)\"\n >\n <table\n mat-table\n class=\"elder-mat-inner-table\"\n [trackBy]=\"trackByFn\"\n [dataSource]=\"$any(dataContext$ | async)\"\n [elderDataContextSelection]=\"dataContext$ | async\" #dataSelection=\"elderDataContextSelection\"\n [elderDataContextSelectionModel]=\"selectionModel\"\n >\n\n <!-- selection Column -->\n <ng-container matColumnDef=\"select\">\n <th mat-header-cell *matHeaderCellDef>\n <elder-selection-master-checkbox></elder-selection-master-checkbox>\n </th>\n <td mat-cell *matCellDef=\"let entity\">\n <div class=\"layout-row place-start-center\">\n <mat-checkbox (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selectionModel.toggle(entity) : null\"\n [checked]=\"selectionModel.observeSelection(entity) | async\"\n [disabled]=\"!selectionModel.isSelectable(entity)\"\n class=\"elder-table-checkbox\"\n [class.elder-table-checkbox-visible]=\"(dataSelection.selectionState$ | async).anySelected\"\n >\n </mat-checkbox>\n </div>\n </td>\n <td mat-footer-cell *matFooterCellDef></td>\n </ng-container>\n\n <ng-container *ngIf=\"(tableModel.displayedColumnsInner$ | async) as displayedColumnsInner\">\n <tr mat-header-row *matHeaderRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n <tr mat-row class=\"elder-table-row\"\n *matRowDef=\"let entity; columns: displayedColumnsInner;\"\n [elderTableRow]=\"entity\"\n [class.dense]=\"dense\"\n [class.elder-row-hidden]=\"hiddenField && entity[hiddenField]\"\n [class.elder-row-removing]=\"removingField && entity[removingField]\"\n [class.elder-table-row-selected]=\"interactionMode === 'selection' && selectionModel.observeSelection(entity) | async\"\n (click)=\"onItemClick(entity)\"\n (dblclick)=\"onItemDoubleClick(entity)\"\n >\n </tr>\n <ng-container *ngIf=\"showFooter\">\n <tr mat-footer-row *matFooterRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n </ng-container>\n </ng-container>\n </table>\n </div>\n\n <elder-data-context-state-indicator class=\"flex
|
|
14532
|
+
], queries: [{ propertyName: "columnDefs", predicate: MatColumnDef }, { propertyName: "elderColumns", predicate: ElderTableColumnDirective }, { propertyName: "rowDefs", predicate: MatRowDef }, { propertyName: "toolbarRowTemplateQuery", predicate: ElderTableToolbarDirective, read: TemplateRef }], viewQueries: [{ propertyName: "matTable", first: true, predicate: MatTable, descendants: true, static: true }, { propertyName: "matPaginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "rowsQuery", predicate: ElderTableRowDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-card class=\"full\"\n [class.embedded]=\"embedded\"\n [appearance]=\"appearance\"\n style=\"overflow: hidden\"\n>\n <div class=\"layout-col elder-table full\">\n <!-- Toolbar Rows -->\n <ng-container *ngFor=\"let toolbarRowTemplate of toolbarRowTemplates$ | async\">\n <ng-template *ngTemplateOutlet=\"toolbarRowTemplate; context: {$implicit: this}\">\n </ng-template>\n </ng-container>\n\n <!-- Scrollable Table -->\n <div class=\"layout-col {{isDataValid(dataContext?.data | async) ? 'flex' : ''}} scrollable elder-table-scroll\"\n elderInfiniteScroll\n [eventThrottle]=\"150\"\n [offsetFactor]=\"2\"\n [ignoreScrollEvent]=\"!isContinuable || !(canLoadMore$ | async)\"\n (closeToEnd)=\"requestMoreDataZoned($event)\"\n >\n <table\n mat-table\n class=\"elder-mat-inner-table\"\n [trackBy]=\"trackByFn\"\n [dataSource]=\"$any(dataContext$ | async)\"\n [elderDataContextSelection]=\"dataContext$ | async\" #dataSelection=\"elderDataContextSelection\"\n [elderDataContextSelectionModel]=\"selectionModel\"\n >\n\n <!-- selection Column -->\n <ng-container matColumnDef=\"select\">\n <th mat-header-cell *matHeaderCellDef>\n <elder-selection-master-checkbox></elder-selection-master-checkbox>\n </th>\n <td mat-cell *matCellDef=\"let entity\">\n <div class=\"layout-row place-start-center\">\n <mat-checkbox (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selectionModel.toggle(entity) : null\"\n [checked]=\"selectionModel.observeSelection(entity) | async\"\n [disabled]=\"!selectionModel.isSelectable(entity)\"\n class=\"elder-table-checkbox\"\n [class.elder-table-checkbox-visible]=\"(dataSelection.selectionState$ | async).anySelected\"\n >\n </mat-checkbox>\n </div>\n </td>\n <td mat-footer-cell *matFooterCellDef></td>\n </ng-container>\n\n <ng-container *ngIf=\"(tableModel.displayedColumnsInner$ | async) as displayedColumnsInner\">\n <tr mat-header-row *matHeaderRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n <tr mat-row class=\"elder-table-row\"\n *matRowDef=\"let entity; columns: displayedColumnsInner;\"\n [elderTableRow]=\"entity\"\n [class.dense]=\"dense\"\n [class.elder-row-hidden]=\"hiddenField && entity[hiddenField]\"\n [class.elder-row-removing]=\"removingField && entity[removingField]\"\n [class.elder-table-row-selected]=\"interactionMode === 'selection' && selectionModel.observeSelection(entity) | async\"\n (click)=\"onItemClick(entity)\"\n (dblclick)=\"onItemDoubleClick(entity)\"\n >\n </tr>\n <ng-container *ngIf=\"showFooter\">\n <tr mat-footer-row *matFooterRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n </ng-container>\n </ng-container>\n </table>\n </div>\n\n <ng-container *ngIf=\"!isDataValid(dataContext?.data | async)\">\n <elder-data-context-state-indicator class=\"flex\" [dataContext]=\"dataContext\">\n </elder-data-context-state-indicator>\n </ng-container>\n\n <mat-progress-bar class=\"flex-none\"\n [mode]=\"(dataContext?.loading | async) ? 'indeterminate' : 'determinate'\"\n [color]=\"((dataContext?.status | async)?.hasError) ? 'warn' : 'primary'\">\n </mat-progress-bar>\n\n <!-- Optional Paginator Toolbar -->\n <mat-paginator #matPaginator *ngIf=\"isActivePaged && (dataActivePaged.page | async) as page\"\n class=\"flex-none\"\n [length]=\"dataContext?.total | async\"\n [pageIndex]=\"page?.index\"\n [pageSize]=\"page?.size\"\n [pageSizeOptions]=\"pageSizeOptions\">\n </mat-paginator>\n\n <!-- Optional Continuation Footer -->\n <div *ngIf=\"isContinuable\" class=\"layout-row flex-none place-end-center gap-md elder-table-footer\">\n\n <span class=\"mat-caption noselect\" style=\"color: gray\">\n {{(dataContext?.data | async)?.length}} / {{total$ | async}}\n </span>\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n [disabled]=\"!(canLoadMore$ | async)\"\n (click)=\"dataContinuable.loadMore()\">\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n </div>\n </div>\n</mat-card>\n", styles: [".elder-mat-inner-table{width:100%}.elder-table-row.dense{height:42px!important}.elder-mat-table-container{border-radius:4px;overflow:hidden}.mat-column-select{overflow:initial;min-width:72px;max-width:5%;width:72px}.elder-row-removing{text-decoration:line-through}.elder-row-hidden{display:none}.elder-table-row{cursor:pointer}:host{min-width:0;min-height:0}.elder-table-hint{color:gray}.elder-table-footer{height:44px}.elder-table-checkbox{opacity:.25;transition:opacity .5s ease-in-out}.elder-table-row:hover .elder-table-checkbox{opacity:.9}.elder-table-checkbox-visible{opacity: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: i1$8.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { 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: "component", type: i5$3.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i11.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i11.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i11.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i11.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i11.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i11.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i11.MatFooterCellDef, selector: "[matFooterCellDef]" }, { kind: "directive", type: i11.MatFooterRowDef, selector: "[matFooterRowDef]", inputs: ["matFooterRowDef", "matFooterRowDefSticky"] }, { kind: "directive", type: i11.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i11.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: i11.MatFooterCell, selector: "mat-footer-cell, td[mat-footer-cell]" }, { kind: "component", type: i11.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i11.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i11.MatFooterRow, selector: "mat-footer-row, tr[mat-footer-row]", exportAs: ["matFooterRow"] }, { kind: "component", type: i12.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: ElderSelectionMasterCheckboxComponent, selector: "elder-selection-master-checkbox" }, { kind: "directive", type: DataContextSelectionDirective, selector: "[elderDataContextSelection]", inputs: ["elderDataContextSelectionModel", "elderDataContextSelection"], exportAs: ["elderDataContextSelection"] }, { kind: "component", type: DataContextStateIndicatorComponent, selector: "elder-data-context-state-indicator", inputs: ["dataContext"] }, { kind: "directive", type: ElderInfiniteScrollDirective, selector: "[elderInfiniteScroll]", inputs: ["listenToHost", "eventThrottle", "offsetFactor", "ignoreScrollEvent", "containerId", "scrollContainer"], outputs: ["closeToEnd", "scrolling"] }, { kind: "component", type: i17.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: ElderTableRowDirective, selector: "tr[elderTableRow]", inputs: ["elderTableRow"], exportAs: ["elderTableRow"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
14506
14533
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderTableComponent, decorators: [{
|
|
14507
14534
|
type: Component,
|
|
14508
14535
|
args: [{ selector: 'elder-table', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
@@ -14511,7 +14538,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
14511
14538
|
provide: ELDER_DATA_VIEW,
|
|
14512
14539
|
useExisting: forwardRef(() => ElderTableComponent)
|
|
14513
14540
|
}
|
|
14514
|
-
], template: "<mat-card class=\"full\"\n [class.embedded]=\"embedded\"\n [appearance]=\"appearance\"\n style=\"overflow: hidden\"\n>\n <div class=\"layout-col elder-table full\">\n <!-- Toolbar Rows -->\n <ng-container *ngFor=\"let toolbarRowTemplate of toolbarRowTemplates$ | async\">\n <ng-template *ngTemplateOutlet=\"toolbarRowTemplate; context: {$implicit: this}\">\n </ng-template>\n </ng-container>\n\n <!-- Scrollable Table -->\n <div class=\"layout-col scrollable elder-table-scroll\"\n elderInfiniteScroll\n [eventThrottle]=\"150\"\n [offsetFactor]=\"2\"\n [ignoreScrollEvent]=\"!isContinuable || !(canLoadMore$ | async)\"\n (closeToEnd)=\"requestMoreDataZoned($event)\"\n >\n <table\n mat-table\n class=\"elder-mat-inner-table\"\n [trackBy]=\"trackByFn\"\n [dataSource]=\"$any(dataContext$ | async)\"\n [elderDataContextSelection]=\"dataContext$ | async\" #dataSelection=\"elderDataContextSelection\"\n [elderDataContextSelectionModel]=\"selectionModel\"\n >\n\n <!-- selection Column -->\n <ng-container matColumnDef=\"select\">\n <th mat-header-cell *matHeaderCellDef>\n <elder-selection-master-checkbox></elder-selection-master-checkbox>\n </th>\n <td mat-cell *matCellDef=\"let entity\">\n <div class=\"layout-row place-start-center\">\n <mat-checkbox (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selectionModel.toggle(entity) : null\"\n [checked]=\"selectionModel.observeSelection(entity) | async\"\n [disabled]=\"!selectionModel.isSelectable(entity)\"\n class=\"elder-table-checkbox\"\n [class.elder-table-checkbox-visible]=\"(dataSelection.selectionState$ | async).anySelected\"\n >\n </mat-checkbox>\n </div>\n </td>\n <td mat-footer-cell *matFooterCellDef></td>\n </ng-container>\n\n <ng-container *ngIf=\"(tableModel.displayedColumnsInner$ | async) as displayedColumnsInner\">\n <tr mat-header-row *matHeaderRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n <tr mat-row class=\"elder-table-row\"\n *matRowDef=\"let entity; columns: displayedColumnsInner;\"\n [elderTableRow]=\"entity\"\n [class.dense]=\"dense\"\n [class.elder-row-hidden]=\"hiddenField && entity[hiddenField]\"\n [class.elder-row-removing]=\"removingField && entity[removingField]\"\n [class.elder-table-row-selected]=\"interactionMode === 'selection' && selectionModel.observeSelection(entity) | async\"\n (click)=\"onItemClick(entity)\"\n (dblclick)=\"onItemDoubleClick(entity)\"\n >\n </tr>\n <ng-container *ngIf=\"showFooter\">\n <tr mat-footer-row *matFooterRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n </ng-container>\n </ng-container>\n </table>\n </div>\n\n <elder-data-context-state-indicator class=\"flex
|
|
14541
|
+
], template: "<mat-card class=\"full\"\n [class.embedded]=\"embedded\"\n [appearance]=\"appearance\"\n style=\"overflow: hidden\"\n>\n <div class=\"layout-col elder-table full\">\n <!-- Toolbar Rows -->\n <ng-container *ngFor=\"let toolbarRowTemplate of toolbarRowTemplates$ | async\">\n <ng-template *ngTemplateOutlet=\"toolbarRowTemplate; context: {$implicit: this}\">\n </ng-template>\n </ng-container>\n\n <!-- Scrollable Table -->\n <div class=\"layout-col {{isDataValid(dataContext?.data | async) ? 'flex' : ''}} scrollable elder-table-scroll\"\n elderInfiniteScroll\n [eventThrottle]=\"150\"\n [offsetFactor]=\"2\"\n [ignoreScrollEvent]=\"!isContinuable || !(canLoadMore$ | async)\"\n (closeToEnd)=\"requestMoreDataZoned($event)\"\n >\n <table\n mat-table\n class=\"elder-mat-inner-table\"\n [trackBy]=\"trackByFn\"\n [dataSource]=\"$any(dataContext$ | async)\"\n [elderDataContextSelection]=\"dataContext$ | async\" #dataSelection=\"elderDataContextSelection\"\n [elderDataContextSelectionModel]=\"selectionModel\"\n >\n\n <!-- selection Column -->\n <ng-container matColumnDef=\"select\">\n <th mat-header-cell *matHeaderCellDef>\n <elder-selection-master-checkbox></elder-selection-master-checkbox>\n </th>\n <td mat-cell *matCellDef=\"let entity\">\n <div class=\"layout-row place-start-center\">\n <mat-checkbox (click)=\"$event.stopPropagation()\"\n (change)=\"$event ? selectionModel.toggle(entity) : null\"\n [checked]=\"selectionModel.observeSelection(entity) | async\"\n [disabled]=\"!selectionModel.isSelectable(entity)\"\n class=\"elder-table-checkbox\"\n [class.elder-table-checkbox-visible]=\"(dataSelection.selectionState$ | async).anySelected\"\n >\n </mat-checkbox>\n </div>\n </td>\n <td mat-footer-cell *matFooterCellDef></td>\n </ng-container>\n\n <ng-container *ngIf=\"(tableModel.displayedColumnsInner$ | async) as displayedColumnsInner\">\n <tr mat-header-row *matHeaderRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n <tr mat-row class=\"elder-table-row\"\n *matRowDef=\"let entity; columns: displayedColumnsInner;\"\n [elderTableRow]=\"entity\"\n [class.dense]=\"dense\"\n [class.elder-row-hidden]=\"hiddenField && entity[hiddenField]\"\n [class.elder-row-removing]=\"removingField && entity[removingField]\"\n [class.elder-table-row-selected]=\"interactionMode === 'selection' && selectionModel.observeSelection(entity) | async\"\n (click)=\"onItemClick(entity)\"\n (dblclick)=\"onItemDoubleClick(entity)\"\n >\n </tr>\n <ng-container *ngIf=\"showFooter\">\n <tr mat-footer-row *matFooterRowDef=\"displayedColumnsInner; sticky: true\"></tr>\n </ng-container>\n </ng-container>\n </table>\n </div>\n\n <ng-container *ngIf=\"!isDataValid(dataContext?.data | async)\">\n <elder-data-context-state-indicator class=\"flex\" [dataContext]=\"dataContext\">\n </elder-data-context-state-indicator>\n </ng-container>\n\n <mat-progress-bar class=\"flex-none\"\n [mode]=\"(dataContext?.loading | async) ? 'indeterminate' : 'determinate'\"\n [color]=\"((dataContext?.status | async)?.hasError) ? 'warn' : 'primary'\">\n </mat-progress-bar>\n\n <!-- Optional Paginator Toolbar -->\n <mat-paginator #matPaginator *ngIf=\"isActivePaged && (dataActivePaged.page | async) as page\"\n class=\"flex-none\"\n [length]=\"dataContext?.total | async\"\n [pageIndex]=\"page?.index\"\n [pageSize]=\"page?.size\"\n [pageSizeOptions]=\"pageSizeOptions\">\n </mat-paginator>\n\n <!-- Optional Continuation Footer -->\n <div *ngIf=\"isContinuable\" class=\"layout-row flex-none place-end-center gap-md elder-table-footer\">\n\n <span class=\"mat-caption noselect\" style=\"color: gray\">\n {{(dataContext?.data | async)?.length}} / {{total$ | async}}\n </span>\n\n <button mat-icon-button type=\"button\" color=\"primary\"\n [disabled]=\"!(canLoadMore$ | async)\"\n (click)=\"dataContinuable.loadMore()\">\n <mat-icon>keyboard_arrow_down</mat-icon>\n </button>\n </div>\n </div>\n</mat-card>\n", styles: [".elder-mat-inner-table{width:100%}.elder-table-row.dense{height:42px!important}.elder-mat-table-container{border-radius:4px;overflow:hidden}.mat-column-select{overflow:initial;min-width:72px;max-width:5%;width:72px}.elder-row-removing{text-decoration:line-through}.elder-row-hidden{display:none}.elder-table-row{cursor:pointer}:host{min-width:0;min-height:0}.elder-table-hint{color:gray}.elder-table-footer{height:44px}.elder-table-checkbox{opacity:.25;transition:opacity .5s ease-in-out}.elder-table-row:hover .elder-table-checkbox{opacity:.9}.elder-table-checkbox-visible{opacity:1}\n"] }]
|
|
14515
14542
|
}], ctorParameters: function () { return [{ type: ElderTableModel }, { type: SelectionModel, decorators: [{
|
|
14516
14543
|
type: Optional
|
|
14517
14544
|
}] }, { type: ElderDataViewOptionsProvider, decorators: [{
|
|
@@ -16289,6 +16316,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
16289
16316
|
type: Optional
|
|
16290
16317
|
}] }]; } });
|
|
16291
16318
|
|
|
16319
|
+
class ActiveItemEvent {
|
|
16320
|
+
constructor(item, source, focus, creating) {
|
|
16321
|
+
this.item = item;
|
|
16322
|
+
this.source = source;
|
|
16323
|
+
this.focus = focus;
|
|
16324
|
+
this.creating = creating;
|
|
16325
|
+
}
|
|
16326
|
+
}
|
|
16327
|
+
|
|
16292
16328
|
class ElderTableActivationDirective {
|
|
16293
16329
|
/***************************************************************************
|
|
16294
16330
|
* *
|
|
@@ -16305,6 +16341,7 @@ class ElderTableActivationDirective {
|
|
|
16305
16341
|
this.logger = LoggerFactory.getLogger(this.constructor.name);
|
|
16306
16342
|
this.destroy$ = new Subject();
|
|
16307
16343
|
this.activeItem$ = new BehaviorSubject(null);
|
|
16344
|
+
this.activeItemEvent$ = new Subject();
|
|
16308
16345
|
this.activationOptions = {};
|
|
16309
16346
|
this._data = [];
|
|
16310
16347
|
this.rows$ = new BehaviorSubject([]);
|
|
@@ -16349,7 +16386,7 @@ class ElderTableActivationDirective {
|
|
|
16349
16386
|
newActiveItem = this.previousRowItem();
|
|
16350
16387
|
}
|
|
16351
16388
|
if (newActiveItem) {
|
|
16352
|
-
this.
|
|
16389
|
+
this.activateAndFocus(newActiveItem);
|
|
16353
16390
|
}
|
|
16354
16391
|
const active = this.activeItem;
|
|
16355
16392
|
if (active) {
|
|
@@ -16368,6 +16405,9 @@ class ElderTableActivationDirective {
|
|
|
16368
16405
|
* Properties *
|
|
16369
16406
|
* *
|
|
16370
16407
|
**************************************************************************/
|
|
16408
|
+
get activeItemEventChange() {
|
|
16409
|
+
return this.activeItemEvent$;
|
|
16410
|
+
}
|
|
16371
16411
|
get activeItemChange() {
|
|
16372
16412
|
return this.activeItem$;
|
|
16373
16413
|
}
|
|
@@ -16375,24 +16415,18 @@ class ElderTableActivationDirective {
|
|
|
16375
16415
|
return this.activeItem$.getValue();
|
|
16376
16416
|
}
|
|
16377
16417
|
set activeItem(item) {
|
|
16378
|
-
|
|
16379
|
-
this.activeItem$.next(item);
|
|
16380
|
-
this.logger.debug('Set active item to ', item);
|
|
16381
|
-
}
|
|
16418
|
+
this.activate(item, new ItemActivationOptions(ActivationEventSource.SYSTEM, true));
|
|
16382
16419
|
}
|
|
16383
16420
|
/***************************************************************************
|
|
16384
16421
|
* *
|
|
16385
16422
|
* Public API *
|
|
16386
16423
|
* *
|
|
16387
16424
|
**************************************************************************/
|
|
16388
|
-
activate(item) {
|
|
16389
|
-
this.
|
|
16425
|
+
activate(item, options) {
|
|
16426
|
+
this.updateActiveItem(item, options);
|
|
16390
16427
|
}
|
|
16391
|
-
|
|
16392
|
-
|
|
16393
|
-
if (row) {
|
|
16394
|
-
row.foucs(); // Focus will auto activate the row
|
|
16395
|
-
}
|
|
16428
|
+
activateAndFocus(item) {
|
|
16429
|
+
this.activate(item, new ItemActivationOptions(ActivationEventSource.SYSTEM, true));
|
|
16396
16430
|
}
|
|
16397
16431
|
isItemActive(item) {
|
|
16398
16432
|
if (this.activeItem) {
|
|
@@ -16418,6 +16452,13 @@ class ElderTableActivationDirective {
|
|
|
16418
16452
|
* Private methods *
|
|
16419
16453
|
* *
|
|
16420
16454
|
**************************************************************************/
|
|
16455
|
+
updateActiveItem(item, options) {
|
|
16456
|
+
this.activeItemEvent$.next(new ActiveItemEvent(item, options.source, options.focus, false));
|
|
16457
|
+
if (item !== this.activeItem) {
|
|
16458
|
+
this.activeItem$.next(item);
|
|
16459
|
+
this.logger.debug('Set active item to ', item);
|
|
16460
|
+
}
|
|
16461
|
+
}
|
|
16421
16462
|
updateRowsActivation(rows, activeItem) {
|
|
16422
16463
|
const activeId = this.getId(activeItem);
|
|
16423
16464
|
rows.forEach(row => {
|
|
@@ -16455,7 +16496,7 @@ class ElderTableActivationDirective {
|
|
|
16455
16496
|
if (active) {
|
|
16456
16497
|
const activeId = this.getId(active);
|
|
16457
16498
|
if (activeId == id) {
|
|
16458
|
-
this.activate(null);
|
|
16499
|
+
this.activate(null, new ItemActivationOptions(ActivationEventSource.SYSTEM, false));
|
|
16459
16500
|
}
|
|
16460
16501
|
}
|
|
16461
16502
|
}
|
|
@@ -16483,14 +16524,14 @@ class ElderTableActivationDirective {
|
|
|
16483
16524
|
activateFirst() {
|
|
16484
16525
|
const item = this.getItemAtIndex(0);
|
|
16485
16526
|
if (item) {
|
|
16486
|
-
this.activate(item);
|
|
16527
|
+
this.activate(item, new ItemActivationOptions(ActivationEventSource.SYSTEM, false));
|
|
16487
16528
|
}
|
|
16488
16529
|
}
|
|
16489
16530
|
activateLast() {
|
|
16490
16531
|
if (this._data) {
|
|
16491
16532
|
const item = this.getItemAtIndex(this._data.length - 1);
|
|
16492
16533
|
if (item) {
|
|
16493
|
-
this.activate(item);
|
|
16534
|
+
this.activate(item, new ItemActivationOptions(ActivationEventSource.SYSTEM, false));
|
|
16494
16535
|
}
|
|
16495
16536
|
}
|
|
16496
16537
|
}
|
|
@@ -16553,7 +16594,7 @@ class ElderTableActivationDirective {
|
|
|
16553
16594
|
}
|
|
16554
16595
|
}
|
|
16555
16596
|
ElderTableActivationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderTableActivationDirective, deps: [{ token: ElderTableComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
|
16556
|
-
ElderTableActivationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: ElderTableActivationDirective, selector: "elder-table[elderTableActivation]", inputs: { activationOptions: ["elderTableActivation", "activationOptions"], activeItem: "activeItem" }, outputs: { activeItemChange: "activeItemChange" }, host: { listeners: { "keydown": "onKeydown($event)" } }, exportAs: ["elderTableActivation"], ngImport: i0 });
|
|
16597
|
+
ElderTableActivationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: ElderTableActivationDirective, selector: "elder-table[elderTableActivation]", inputs: { activationOptions: ["elderTableActivation", "activationOptions"], activeItem: "activeItem" }, outputs: { activeItemEventChange: "activeItemEventChange", activeItemChange: "activeItemChange" }, host: { listeners: { "keydown": "onKeydown($event)" } }, exportAs: ["elderTableActivation"], ngImport: i0 });
|
|
16557
16598
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderTableActivationDirective, decorators: [{
|
|
16558
16599
|
type: Directive,
|
|
16559
16600
|
args: [{
|
|
@@ -16566,6 +16607,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
16566
16607
|
}], onKeydown: [{
|
|
16567
16608
|
type: HostListener,
|
|
16568
16609
|
args: ['keydown', ['$event']]
|
|
16610
|
+
}], activeItemEventChange: [{
|
|
16611
|
+
type: Output
|
|
16569
16612
|
}], activeItemChange: [{
|
|
16570
16613
|
type: Output
|
|
16571
16614
|
}], activeItem: [{
|
|
@@ -16665,7 +16708,7 @@ class ElderDeleteActiveDirective {
|
|
|
16665
16708
|
this.logger.debug('Deleting current row was requested: ', active);
|
|
16666
16709
|
this.emitDelete(active);
|
|
16667
16710
|
}, () => {
|
|
16668
|
-
this.activation.
|
|
16711
|
+
this.activation.activateAndFocus(active);
|
|
16669
16712
|
});
|
|
16670
16713
|
}
|
|
16671
16714
|
}
|
|
@@ -16677,7 +16720,7 @@ class ElderDeleteActiveDirective {
|
|
|
16677
16720
|
**************************************************************************/
|
|
16678
16721
|
checkActivateNext() {
|
|
16679
16722
|
if (this.latestDeleteRequest?.next) {
|
|
16680
|
-
this.activation.
|
|
16723
|
+
this.activation.activateAndFocus(this.latestDeleteRequest.next);
|
|
16681
16724
|
this.latestDeleteRequest = null;
|
|
16682
16725
|
return true;
|
|
16683
16726
|
}
|
|
@@ -17216,7 +17259,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
17216
17259
|
}]
|
|
17217
17260
|
}] });
|
|
17218
17261
|
|
|
17219
|
-
class
|
|
17262
|
+
class ElderMasterDetailActivationEvent {
|
|
17263
|
+
constructor(item, creating, source) {
|
|
17264
|
+
this.item = item;
|
|
17265
|
+
this.creating = creating;
|
|
17266
|
+
this.source = source;
|
|
17267
|
+
this.deactivate = false;
|
|
17268
|
+
if (item == null) {
|
|
17269
|
+
this.deactivate = true;
|
|
17270
|
+
}
|
|
17271
|
+
}
|
|
17272
|
+
}
|
|
17273
|
+
|
|
17274
|
+
class ElderMasterDetailService {
|
|
17220
17275
|
/***************************************************************************
|
|
17221
17276
|
* *
|
|
17222
17277
|
* Constructor *
|
|
@@ -17234,10 +17289,12 @@ class MasterDetailService {
|
|
|
17234
17289
|
this._itemActivationRequest$ = new Subject();
|
|
17235
17290
|
this._activeItem$ = new BehaviorSubject(null);
|
|
17236
17291
|
this._creatingItem$ = new BehaviorSubject(null);
|
|
17237
|
-
this.
|
|
17292
|
+
this._activationEvent$ = new BehaviorSubject(null);
|
|
17238
17293
|
merge(this._creatingItem$, this._activeItem$)
|
|
17239
|
-
.pipe(takeUntil(this.destroy$)).subscribe({
|
|
17240
|
-
next: creatingOrActive =>
|
|
17294
|
+
.pipe(filter(event => event !== null), takeUntil(this.destroy$)).subscribe({
|
|
17295
|
+
next: creatingOrActive => {
|
|
17296
|
+
this._activationEvent$.next(new ElderMasterDetailActivationEvent(creatingOrActive?.item, creatingOrActive.creating, creatingOrActive.source));
|
|
17297
|
+
}
|
|
17241
17298
|
});
|
|
17242
17299
|
}
|
|
17243
17300
|
/***************************************************************************
|
|
@@ -17254,30 +17311,28 @@ class MasterDetailService {
|
|
|
17254
17311
|
* Properties *
|
|
17255
17312
|
* *
|
|
17256
17313
|
**************************************************************************/
|
|
17314
|
+
get activationEvent$() {
|
|
17315
|
+
return this._activationEvent$.asObservable();
|
|
17316
|
+
}
|
|
17257
17317
|
get itemActivationRequested() {
|
|
17258
17318
|
return this._itemActivationRequest$.asObservable();
|
|
17259
17319
|
}
|
|
17260
|
-
get
|
|
17261
|
-
return this.
|
|
17262
|
-
|
|
17263
|
-
|
|
17264
|
-
|
|
17265
|
-
}
|
|
17266
|
-
onItemActivated(item) {
|
|
17267
|
-
if (item !== this._activeItem$.getValue()) {
|
|
17268
|
-
this._activeItem$.next(item);
|
|
17269
|
-
}
|
|
17320
|
+
/* public get activeItem$(): Observable<T> {
|
|
17321
|
+
return this._activeItem$.pipe(map(active => active.item));
|
|
17322
|
+
}*/
|
|
17323
|
+
onItemActivated(event) {
|
|
17324
|
+
this._activeItem$.next(event);
|
|
17270
17325
|
}
|
|
17271
17326
|
requestItemActivation(item) {
|
|
17272
17327
|
this._itemActivationRequest$.next(item);
|
|
17273
17328
|
}
|
|
17274
17329
|
activateCreatingItem(item) {
|
|
17275
|
-
this._creatingItem$.next(item);
|
|
17330
|
+
this._creatingItem$.next(new ActiveItemEvent(item, ActivationEventSource.USER_MOUSE_CLICK, false, true));
|
|
17276
17331
|
}
|
|
17277
17332
|
}
|
|
17278
|
-
|
|
17279
|
-
|
|
17280
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type:
|
|
17333
|
+
ElderMasterDetailService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderMasterDetailService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
17334
|
+
ElderMasterDetailService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderMasterDetailService });
|
|
17335
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderMasterDetailService, decorators: [{
|
|
17281
17336
|
type: Injectable
|
|
17282
17337
|
}], ctorParameters: function () { return []; } });
|
|
17283
17338
|
|
|
@@ -17298,19 +17353,21 @@ class ElderDetailDirective {
|
|
|
17298
17353
|
**************************************************************************/
|
|
17299
17354
|
this.log = LoggerFactory.getLogger(this.constructor.name);
|
|
17300
17355
|
this.activeDetailItem$ = new BehaviorSubject(null);
|
|
17301
|
-
this.masterDetailService?.
|
|
17356
|
+
this.masterDetailService?.activationEvent$.subscribe({
|
|
17302
17357
|
next: active => {
|
|
17303
|
-
|
|
17358
|
+
if (active?.item) {
|
|
17359
|
+
this.activeDetailItem$.next(active.item);
|
|
17360
|
+
}
|
|
17304
17361
|
}
|
|
17305
17362
|
});
|
|
17306
17363
|
}
|
|
17307
17364
|
}
|
|
17308
|
-
ElderDetailDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDetailDirective, deps: [{ token:
|
|
17365
|
+
ElderDetailDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDetailDirective, deps: [{ token: ElderMasterDetailService }, { token: i0.TemplateRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
17309
17366
|
ElderDetailDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: ElderDetailDirective, selector: "[elderDataDetail]", ngImport: i0 });
|
|
17310
17367
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDetailDirective, decorators: [{
|
|
17311
17368
|
type: Directive,
|
|
17312
17369
|
args: [{ selector: '[elderDataDetail]' }]
|
|
17313
|
-
}], ctorParameters: function () { return [{ type:
|
|
17370
|
+
}], ctorParameters: function () { return [{ type: ElderMasterDetailService }, { type: i0.TemplateRef }, { type: i0.ViewContainerRef }]; } });
|
|
17314
17371
|
|
|
17315
17372
|
class ElderMasterDirective {
|
|
17316
17373
|
/***************************************************************************
|
|
@@ -17920,10 +17977,10 @@ class ElderDetailDialogComponent {
|
|
|
17920
17977
|
**************************************************************************/
|
|
17921
17978
|
this.destroy$ = new Subject();
|
|
17922
17979
|
this.entity$ = new BehaviorSubject(null);
|
|
17923
|
-
this.masterDetailService.
|
|
17980
|
+
this.masterDetailService.activationEvent$
|
|
17924
17981
|
.pipe(takeUntil(this.destroy$))
|
|
17925
17982
|
.subscribe({ next: active => {
|
|
17926
|
-
this.entity$.next(active);
|
|
17983
|
+
this.entity$.next(active.item);
|
|
17927
17984
|
} });
|
|
17928
17985
|
}
|
|
17929
17986
|
/***************************************************************************
|
|
@@ -17944,7 +18001,7 @@ class ElderDetailDialogComponent {
|
|
|
17944
18001
|
this.dialogRef.close(this.entity$.getValue());
|
|
17945
18002
|
}
|
|
17946
18003
|
}
|
|
17947
|
-
ElderDetailDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDetailDialogComponent, deps: [{ token: i1$7.MatDialogRef, optional: true }, { token: MAT_DIALOG_DATA, optional: true }, { token:
|
|
18004
|
+
ElderDetailDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDetailDialogComponent, deps: [{ token: i1$7.MatDialogRef, optional: true }, { token: MAT_DIALOG_DATA, optional: true }, { token: ElderMasterDetailService }], target: i0.ɵɵFactoryTarget.Component });
|
|
17948
18005
|
ElderDetailDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ElderDetailDialogComponent, selector: "elder-detail-dialog", ngImport: i0, template: "<div class=\"layout-col full\">\n\n <span style=\"width: 100vw;\"></span>\n\n <!-- Header Section -->\n <elder-toolbar class=\"gap-md\" *ngIf=\"entity$ | async as entity\">\n <button (click)=\"close()\" mat-icon-button *elderToolbarColumn=\"'left.begin'\">\n <mat-icon>close</mat-icon>\n </button>\n </elder-toolbar>\n\n <div class=\"layout-row flex gap-md\">\n <ng-container *ngTemplateOutlet=\"data.detailTemplateRef\"></ng-container>\n </div>\n\n</div>\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: 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: "component", type: ElderToolbarComponent, selector: "elder-toolbar", inputs: ["color"] }, { kind: "directive", type: ElderToolbarColumnDirective, selector: "[elderToolbarColumn]", inputs: ["elderToolbarColumn", "elderToolbarDefault"] }, { kind: "pipe", type: i1$4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
17949
18006
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderDetailDialogComponent, decorators: [{
|
|
17950
18007
|
type: Component,
|
|
@@ -17956,7 +18013,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
17956
18013
|
}, {
|
|
17957
18014
|
type: Inject,
|
|
17958
18015
|
args: [MAT_DIALOG_DATA]
|
|
17959
|
-
}] }, { type:
|
|
18016
|
+
}] }, { type: ElderMasterDetailService }]; } });
|
|
17960
18017
|
|
|
17961
18018
|
var ElderMasterDetailMode;
|
|
17962
18019
|
(function (ElderMasterDetailMode) {
|
|
@@ -17968,18 +18025,18 @@ function existingOrNewMasterDetailService(serviceProvider) {
|
|
|
17968
18025
|
return serviceProvider ?? newMasterDetailService();
|
|
17969
18026
|
}
|
|
17970
18027
|
function newMasterDetailService() {
|
|
17971
|
-
return new
|
|
18028
|
+
return new ElderMasterDetailService();
|
|
17972
18029
|
}
|
|
17973
18030
|
class ElderMasterDetailProvider {
|
|
17974
18031
|
}
|
|
17975
18032
|
/**
|
|
17976
|
-
* Uses the existing
|
|
17977
|
-
* Otherwise, creates a new
|
|
18033
|
+
* Uses the existing ElderMasterDetailService from a parent if available.
|
|
18034
|
+
* Otherwise, creates a new ElderMasterDetailService and provides it.
|
|
17978
18035
|
*/
|
|
17979
18036
|
ElderMasterDetailProvider.ExistingOrNewMasterDetailService = {
|
|
17980
|
-
provide:
|
|
18037
|
+
provide: ElderMasterDetailService,
|
|
17981
18038
|
useFactory: existingOrNewMasterDetailService,
|
|
17982
|
-
deps: [[new Optional(), new SkipSelf(),
|
|
18039
|
+
deps: [[new Optional(), new SkipSelf(), ElderMasterDetailService]]
|
|
17983
18040
|
};
|
|
17984
18041
|
|
|
17985
18042
|
class ElderMasterDetailComponent {
|
|
@@ -18003,15 +18060,15 @@ class ElderMasterDetailComponent {
|
|
|
18003
18060
|
this.ElderMasterDetailMode = ElderMasterDetailMode;
|
|
18004
18061
|
this.mode$
|
|
18005
18062
|
.pipe(takeUntil(this.destroy$))
|
|
18006
|
-
.subscribe({ next: mode => this.masterDetailService.mode$.next(mode) });
|
|
18007
|
-
this.masterDetailService.
|
|
18063
|
+
.subscribe({ next: mode => { this.masterDetailService.mode$.next(mode); } });
|
|
18064
|
+
this.masterDetailService.activationEvent$
|
|
18008
18065
|
.pipe(takeUntil(this.destroy$))
|
|
18009
18066
|
.subscribe({
|
|
18010
18067
|
next: active => {
|
|
18011
18068
|
if (this.mode$.getValue() == ElderMasterDetailMode.DIALOG) {
|
|
18012
|
-
if (active
|
|
18069
|
+
if (active.item) {
|
|
18013
18070
|
this.closeDialog();
|
|
18014
|
-
this.openDetailDialog(active);
|
|
18071
|
+
this.openDetailDialog(active?.item);
|
|
18015
18072
|
}
|
|
18016
18073
|
else {
|
|
18017
18074
|
this.closeDialog();
|
|
@@ -18069,7 +18126,7 @@ class ElderMasterDetailComponent {
|
|
|
18069
18126
|
}
|
|
18070
18127
|
}
|
|
18071
18128
|
}
|
|
18072
|
-
ElderMasterDetailComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderMasterDetailComponent, deps: [{ token:
|
|
18129
|
+
ElderMasterDetailComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderMasterDetailComponent, deps: [{ token: ElderMasterDetailService }, { token: i1$7.MatDialog }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
18073
18130
|
ElderMasterDetailComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: ElderMasterDetailComponent, selector: "elder-master-detail", inputs: { mode: "mode" }, providers: [
|
|
18074
18131
|
ElderMasterDetailProvider.ExistingOrNewMasterDetailService
|
|
18075
18132
|
], queries: [{ propertyName: "master", first: true, predicate: ElderMasterDirective, descendants: true, read: TemplateRef }, { propertyName: "detail", first: true, predicate: ElderDetailDirective, descendants: true, read: TemplateRef }], ngImport: i0, template: "\n<div class=\"layout-row full\" *ngIf=\"mode$ | async as mode\">\n\n <div class=\"layout-row full\" *ngIf=\"mode == ElderMasterDetailMode.DIALOG\">\n <ng-container *ngTemplateOutlet=\"master\"></ng-container>\n </div>\n\n <div class=\"layout-row full gap-md\" *ngIf=\"mode == ElderMasterDetailMode.EMBEDDED\">\n <ng-container *ngTemplateOutlet=\"master\"></ng-container >\n <ng-container *ngTemplateOutlet=\"detail\"></ng-container>\n </div>\n\n\n</div>\n\n\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: "pipe", type: i1$4.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
@@ -18078,7 +18135,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
18078
18135
|
args: [{ selector: 'elder-master-detail', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
18079
18136
|
ElderMasterDetailProvider.ExistingOrNewMasterDetailService
|
|
18080
18137
|
], template: "\n<div class=\"layout-row full\" *ngIf=\"mode$ | async as mode\">\n\n <div class=\"layout-row full\" *ngIf=\"mode == ElderMasterDetailMode.DIALOG\">\n <ng-container *ngTemplateOutlet=\"master\"></ng-container>\n </div>\n\n <div class=\"layout-row full gap-md\" *ngIf=\"mode == ElderMasterDetailMode.EMBEDDED\">\n <ng-container *ngTemplateOutlet=\"master\"></ng-container >\n <ng-container *ngTemplateOutlet=\"detail\"></ng-container>\n </div>\n\n\n</div>\n\n\n" }]
|
|
18081
|
-
}], ctorParameters: function () { return [{ type:
|
|
18138
|
+
}], ctorParameters: function () { return [{ type: ElderMasterDetailService }, { type: i1$7.MatDialog }, { type: i0.ViewContainerRef }]; }, propDecorators: { master: [{
|
|
18082
18139
|
type: ContentChild,
|
|
18083
18140
|
args: [ElderMasterDirective, { read: TemplateRef, static: false }]
|
|
18084
18141
|
}], detail: [{
|
|
@@ -18103,6 +18160,7 @@ class ElderMasterActivationDirective {
|
|
|
18103
18160
|
* Fields *
|
|
18104
18161
|
* *
|
|
18105
18162
|
**************************************************************************/
|
|
18163
|
+
this.destroy$ = new Subject();
|
|
18106
18164
|
this.log = LoggerFactory.getLogger(this.constructor.name);
|
|
18107
18165
|
}
|
|
18108
18166
|
/***************************************************************************
|
|
@@ -18110,21 +18168,31 @@ class ElderMasterActivationDirective {
|
|
|
18110
18168
|
* Life Cycle *
|
|
18111
18169
|
* *
|
|
18112
18170
|
**************************************************************************/
|
|
18171
|
+
ngOnDestroy() {
|
|
18172
|
+
this.destroy$.next();
|
|
18173
|
+
this.destroy$.complete();
|
|
18174
|
+
}
|
|
18113
18175
|
ngOnInit() {
|
|
18114
|
-
this.tableActivation.
|
|
18115
|
-
next:
|
|
18116
|
-
this.log.
|
|
18117
|
-
this.masterDetailService.onItemActivated(
|
|
18176
|
+
this.tableActivation.activeItemEventChange.pipe(takeUntil(this.destroy$)).subscribe({
|
|
18177
|
+
next: event => {
|
|
18178
|
+
this.log.debug('Table-Activation changed, notifying master-detail', event);
|
|
18179
|
+
this.masterDetailService.onItemActivated(event);
|
|
18118
18180
|
},
|
|
18119
18181
|
error: err => this.toastService.error("Failed to set active item", err)
|
|
18120
18182
|
});
|
|
18121
|
-
this.masterDetailService.itemActivationRequested.subscribe({
|
|
18183
|
+
this.masterDetailService.itemActivationRequested.pipe(takeUntil(this.destroy$)).subscribe({
|
|
18122
18184
|
next: item => {
|
|
18123
|
-
this.tableActivation.activate(item)
|
|
18185
|
+
this.tableActivation.activate(item, new ItemActivationOptions(ActivationEventSource.SYSTEM, true) // TODO keyboard, arrow?
|
|
18186
|
+
); // Maybe support activationRequest.source and map
|
|
18124
18187
|
}
|
|
18125
18188
|
});
|
|
18126
|
-
this.masterDetailService.mode$.subscribe({ next: mode => this.onModeChange(mode) });
|
|
18189
|
+
this.masterDetailService.mode$.pipe(takeUntil(this.destroy$)).subscribe({ next: mode => this.onModeChange(mode) });
|
|
18127
18190
|
}
|
|
18191
|
+
/***************************************************************************
|
|
18192
|
+
* *
|
|
18193
|
+
* Private Methods *
|
|
18194
|
+
* *
|
|
18195
|
+
**************************************************************************/
|
|
18128
18196
|
onModeChange(mode) {
|
|
18129
18197
|
if (mode == ElderMasterDetailMode.EMBEDDED) {
|
|
18130
18198
|
this.tableActivation.activationOptions = { mode: 'once', row: 'first' };
|
|
@@ -18134,14 +18202,14 @@ class ElderMasterActivationDirective {
|
|
|
18134
18202
|
}
|
|
18135
18203
|
}
|
|
18136
18204
|
}
|
|
18137
|
-
ElderMasterActivationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderMasterActivationDirective, deps: [{ token: ElderToastService }, { token: ElderTableActivationDirective }, { token:
|
|
18205
|
+
ElderMasterActivationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderMasterActivationDirective, deps: [{ token: ElderToastService }, { token: ElderTableActivationDirective }, { token: ElderMasterDetailService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
18138
18206
|
ElderMasterActivationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.7", type: ElderMasterActivationDirective, selector: "[elderMasterActivation]", ngImport: i0 });
|
|
18139
18207
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: ElderMasterActivationDirective, decorators: [{
|
|
18140
18208
|
type: Directive,
|
|
18141
18209
|
args: [{
|
|
18142
18210
|
selector: '[elderMasterActivation]',
|
|
18143
18211
|
}]
|
|
18144
|
-
}], ctorParameters: function () { return [{ type: ElderToastService }, { type: ElderTableActivationDirective }, { type:
|
|
18212
|
+
}], ctorParameters: function () { return [{ type: ElderToastService }, { type: ElderTableActivationDirective }, { type: ElderMasterDetailService }]; } });
|
|
18145
18213
|
|
|
18146
18214
|
class ElderFromFieldCustomizableBase extends ElderFromFieldBase {
|
|
18147
18215
|
constructor() {
|
|
@@ -30143,5 +30211,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
30143
30211
|
* Generated bundle index. Do not edit.
|
|
30144
30212
|
*/
|
|
30145
30213
|
|
|
30146
|
-
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, DataViewMessageTypeValues, 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, ElderDetailDialogComponent, ElderDetailDirective, 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, ElderMasterActivationDirective, ElderMasterDetailComponent, ElderMasterDetailMode, ElderMasterDetailModule, ElderMasterDirective, 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, KnownLocaleTags, LocalListDataSource, LocalPagedDataSource, LocalisationPickerService, MasterDetailService, 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, Translated, TranslatedConverter, TranslatedEnumValue, TranslatedText, TypedEventMessage, Unit, UnitDimension, UnitDimensionInfo, UnitInfo, UnitRegistry, UrlBuilder, UrlQueryParams, UuidUtil, ValueAccessorBase, ValueWrapper, ViewProviders, WeightPipe, alphaNumStringComparator, buildFormIntegrationProviders, createDataOptionsProvider, createSelectionModel, existingOrNewElderTableModel, isActivePagedDataContext, isContinuableDataContext, isContinuableDataSource, isDataContext, isDataSource, isDataViewMessageType, isElderEntityValueAccessor, isElderMultiEntityValueAccessor, isListDataSource, isPagedDataSource, lazySample, lazySampleTime, naturalValueComparator, newElderTableModel, proxyControlContainer, registerLocale, runInZone, themeInit };
|
|
30214
|
+
export { ActivationEventSource, ActiveItemEvent, 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, DataViewMessageTypeValues, 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, ElderDetailDialogComponent, ElderDetailDirective, 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, ElderMasterActivationDirective, ElderMasterDetailActivationEvent, ElderMasterDetailComponent, ElderMasterDetailMode, ElderMasterDetailModule, ElderMasterDetailService, ElderMasterDirective, 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, ItemActivationOptions, JsonMapUtil, KafentConfig, KafentEvent, KafentEventService, KafentEventStream, KafentEventStreamDisabled, KafentEventStreamSse, KafentEventTransport, KafentModule, KafentSseEventChannel, KafentTokenProvider, KafentTokenProviderSessionStorage, KafentTopicSse, KnownElderThemes, KnownLocaleTags, 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, Translated, TranslatedConverter, TranslatedEnumValue, TranslatedText, TypedEventMessage, Unit, UnitDimension, UnitDimensionInfo, UnitInfo, UnitRegistry, UrlBuilder, UrlQueryParams, UuidUtil, ValueAccessorBase, ValueWrapper, ViewProviders, WeightPipe, alphaNumStringComparator, buildFormIntegrationProviders, createDataOptionsProvider, createSelectionModel, existingOrNewElderTableModel, isActivePagedDataContext, isContinuableDataContext, isContinuableDataSource, isDataContext, isDataSource, isDataViewMessageType, isElderEntityValueAccessor, isElderMultiEntityValueAccessor, isListDataSource, isPagedDataSource, lazySample, lazySampleTime, naturalValueComparator, newElderTableModel, proxyControlContainer, registerLocale, runInZone, themeInit };
|
|
30215
|
+
//# sourceMappingURL=elderbyte-ngx-starter.mjs.map
|
|
30147
30216
|
//# sourceMappingURL=elderbyte-ngx-starter.mjs.map
|