type="text" pattern="[\s\S]*\S[\s\S]*"
placeholder="Name..." i18n-placeholder
required="false"
+ [disabled]="disableSaveNameTest()"
(ngModelChange)="saveFilterNameModelChanged.next($event)"
[ngModel]="saveFilterName"/>
<div *ngIf="nameCollision" class="alert alert-warning" i18n>
<div class="col-lg-3">
</div>
<div class="col-lg-9">
- <button type="button" class="btn btn-success" [disabled]="saveFilterName === ''"
+ <button type="button" class="btn btn-success" [disabled]="disableSaveButtonTest()"
(click)="saveFilters()" i18n>
Save Active Filters</button>
</div>
close();
}
+ disableSaveNameTest(): boolean {
+ const isEmpty = (obj: any): boolean => {
+ console.log('Name: isEmpty',obj);
+ return obj && Object.keys(obj).length === 0;
+ };
+
+ return isEmpty(this.gridContext?.dataSource?.filters);
+ }
+
+ disableSaveButtonTest(): boolean {
+ const isEmpty = (obj: any): boolean => {
+ console.log('Button: isEmpty',obj);
+ return obj && Object.keys(obj).length === 0;
+ };
+
+ return this.nameCollision || this.saveFilterName === '' || isEmpty(this.gridContext?.dataSource?.filters);
+ }
+
refreshEntries() {
this.filterSetEntries = [];
this.store.getItem('eg.grid.filters.' + this.gridContext.persistKey).then( setting => {