@trudb/tru-common-lib 0.2.144 → 0.2.146
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.
|
@@ -5,7 +5,7 @@ import * as i1$1 from '@angular/common';
|
|
|
5
5
|
import { CommonModule, NgIf, NgClass, DatePipe } from '@angular/common';
|
|
6
6
|
import * as i7 from '@angular/forms';
|
|
7
7
|
import { FormsModule, FormControl, ReactiveFormsModule, FormGroup, Validators } from '@angular/forms';
|
|
8
|
-
import { BehaviorSubject, defer, from, of, Subject, Observable, fromEvent, skip, forkJoin, first, finalize, throwError } from 'rxjs';
|
|
8
|
+
import { BehaviorSubject, defer, from, of, Subject, Observable, fromEvent, skip, forkJoin, first, tap as tap$1, delayWhen, interval, finalize, throwError } from 'rxjs';
|
|
9
9
|
import * as _ from 'underscore';
|
|
10
10
|
import ___default from 'underscore';
|
|
11
11
|
import * as i2 from '@angular/common/http';
|
|
@@ -6056,29 +6056,52 @@ class TruDataGridCellRenderer {
|
|
|
6056
6056
|
eGui;
|
|
6057
6057
|
validationContainer;
|
|
6058
6058
|
params;
|
|
6059
|
-
contextMenuPosition = { x:
|
|
6059
|
+
contextMenuPosition = { x: 0, y: 0 };
|
|
6060
6060
|
displayValue = '';
|
|
6061
6061
|
copyIsDisabled = true;
|
|
6062
6062
|
pasteIsDisabled = true;
|
|
6063
|
+
menuSubscription;
|
|
6063
6064
|
constructor(dataContext, dataGridClipboard) {
|
|
6064
6065
|
this.dataContext = dataContext;
|
|
6065
6066
|
this.dataGridClipboard = dataGridClipboard;
|
|
6066
6067
|
}
|
|
6068
|
+
delay(delayInms) {
|
|
6069
|
+
return new Promise((resolve) => {
|
|
6070
|
+
setTimeout(() => {
|
|
6071
|
+
resolve(2);
|
|
6072
|
+
}, delayInms);
|
|
6073
|
+
});
|
|
6074
|
+
}
|
|
6067
6075
|
onMouseOver = (e) => {
|
|
6068
6076
|
if (e.target)
|
|
6069
6077
|
e.target.classList.contains('invalid-flag') ? this.validationContainer.classList.toggle('show') : this.validationContainer.classList.remove('show');
|
|
6070
6078
|
};
|
|
6071
6079
|
onRightClick = (event) => {
|
|
6072
6080
|
event.preventDefault();
|
|
6081
|
+
if (this.params.api.getEditingCells().length > 0)
|
|
6082
|
+
return;
|
|
6073
6083
|
this.pasteIsDisabled = this.dataGridClipboard.getCopiedRows().length && this.params.api.getSelectedRows().length ? false : true;
|
|
6074
|
-
|
|
6075
|
-
|
|
6076
|
-
|
|
6077
|
-
this.
|
|
6078
|
-
|
|
6084
|
+
this.menuSubscription && this.menuSubscription.unsubscribe();
|
|
6085
|
+
this.menuSubscription = of(1)
|
|
6086
|
+
.pipe(tap$1(() => {
|
|
6087
|
+
if (this.contextMenu.menuOpen) {
|
|
6088
|
+
this.contextMenu.closeMenu();
|
|
6089
|
+
}
|
|
6090
|
+
this.contextMenuPosition.x = event.clientX;
|
|
6091
|
+
this.contextMenuPosition.y = event.clientY;
|
|
6092
|
+
}),
|
|
6093
|
+
// delay(this.contextMenu.menuOpen ? 200 : 0),
|
|
6094
|
+
delayWhen((_) => (this.contextMenu.menuOpen ? interval(200) : of(undefined))), tap$1(async () => {
|
|
6079
6095
|
this.contextMenu.menu?.focusFirstItem('mouse');
|
|
6080
6096
|
this.contextMenu.openMenu();
|
|
6081
|
-
|
|
6097
|
+
let backdrop;
|
|
6098
|
+
do {
|
|
6099
|
+
await this.delay(100);
|
|
6100
|
+
backdrop = document.querySelector('div.cdk-overlay-backdrop.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing');
|
|
6101
|
+
} while (backdrop === null);
|
|
6102
|
+
backdrop.style.pointerEvents = 'none';
|
|
6103
|
+
}))
|
|
6104
|
+
.subscribe();
|
|
6082
6105
|
};
|
|
6083
6106
|
onCopy = (event) => {
|
|
6084
6107
|
this.dataGridClipboard.copyCell(this.params.context.grid.config.tableName, this.params.colDef?.field, this.params.data.$entity);
|
|
@@ -6129,7 +6152,7 @@ class TruDataGridCellRenderer {
|
|
|
6129
6152
|
<div style="visibility: hidden; position: absolute;"
|
|
6130
6153
|
[truContextMenuTriggerFor]="truDataGridCellContextMenu">
|
|
6131
6154
|
</div>
|
|
6132
|
-
<mat-menu #truDataGridCellContextMenu="matMenu">
|
|
6155
|
+
<mat-menu #truDataGridCellContextMenu="matMenu" [hasBackdrop]="false">
|
|
6133
6156
|
<button mat-menu-item (click)="onCopy($event)">
|
|
6134
6157
|
<mat-icon [svgIcon]="'copy-icon'"></mat-icon>
|
|
6135
6158
|
<span>Copy</span>
|
|
@@ -6155,7 +6178,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.3", ngImpor
|
|
|
6155
6178
|
<div style="visibility: hidden; position: absolute;"
|
|
6156
6179
|
[truContextMenuTriggerFor]="truDataGridCellContextMenu">
|
|
6157
6180
|
</div>
|
|
6158
|
-
<mat-menu #truDataGridCellContextMenu="matMenu">
|
|
6181
|
+
<mat-menu #truDataGridCellContextMenu="matMenu" [hasBackdrop]="false">
|
|
6159
6182
|
<button mat-menu-item (click)="onCopy($event)">
|
|
6160
6183
|
<mat-icon [svgIcon]="'copy-icon'"></mat-icon>
|
|
6161
6184
|
<span>Copy</span>
|