11/** <%= options.generationDisclaimerText %> **/
2- import {Component, EventEmitter, Input, Output, ViewChild, AfterViewInit, ElementRef, HostListener, QueryList, ViewChildren, TemplateRef} from '@angular/core';
2+ <%
3+ var addConfigMenu = options.componentType === 'table' && options.hasSearchBar;
4+ %>
5+
6+ import {Component, EventEmitter, Input, Output, ViewChild, AfterViewInit, inject, ElementRef, HostListener, QueryList, ViewChildren, TemplateRef, ViewEncapsulation} from '@angular/core';
37import {SelectionModel} from "@angular/cdk/collections";
48import { MatDialog } from '@angular/material/dialog';
59
@@ -15,32 +19,63 @@ import { MatDialog } from '@angular/material/dialog';
1519 import {<%= classify(name) %>CardValues} from './<%= dasherize(name) %>.component';
1620<% } %>
1721
18- <% if (options.componentType === 'table' && options.hasSearchBar) { %>
19- import {Config} from "./<%= dasherize(name) %>.component";
20- import {<%= classify(name) %>ConfigMenuComponent} from './<%= dasherize(name) %>-config-menu.component';
22+ <% if (addConfigMenu) { %>
23+ import {Config, EsmfConfigMenuComponent} from '@esmf/semantic-ui-schematic';
2124<% } %>
25+ import {MatToolbar} from '@angular/material/toolbar';
26+ import {MatError, MatFormField, MatHint} from '@angular/material/form-field';
27+ import {MatLabel} from '@angular/material/form-field';
28+ import {ReactiveFormsModule} from '@angular/forms';
29+ import {MatIcon} from '@angular/material/icon';
30+ import {MatSelectModule} from '@angular/material/select';
31+ import {MatTooltip} from '@angular/material/tooltip';
32+ import {MatMenuModule} from '@angular/material/menu';
33+ import {MatIconButton} from '@angular/material/button';
34+ import {MatInput} from '@angular/material/input';
2235
2336@Component({
2437 selector: '<%= dasherize(name) %>-command-bar',
38+ imports: [
39+ <% if (addConfigMenu) { %>
40+ EsmfConfigMenuComponent,
41+ <% } %>
42+ MatToolbar,
43+ MatFormField,
44+ MatLabel,
45+ ReactiveFormsModule,
46+ MatError,
47+ MatHint,
48+ MatIcon,
49+ MatSelectModule,
50+ MatTooltip,
51+ MatMenuModule,
52+ MatIconButton,
53+ MatInput
54+ ],
2555 templateUrl: './<%= dasherize(name) %>-command-bar.component.html',
2656 styleUrls: ['./<%= dasherize(name) %>-command-bar.component.scss'],
27- standalone: false
57+ encapsulation: ViewEncapsulation.None,
58+ host: {class: 'js-sdk-command-bar' }
2859})
2960export class <%= classify(name) %>CommandBarComponent implements AfterViewInit {
61+ private dialog = inject(MatDialog);
62+ <% if (options.hasFilters || (options.componentType === 'card' && options.addCommandBar)) { %>
63+ public filterService = inject(<%= classify(name) %>FilterService);
64+ <% } %>
3065 @Input() isMultipleSelectionEnabled = true;
3166 @Input() isToolbarActionsEnabled = true;
3267 @Input() selection = new SelectionModel<any>(this.isMultipleSelectionEnabled, []);
3368 @Input() totalItems = 0;
3469 @Input() searchFocused = false;
35- @Input() allowedCharacters: string = '';
36- @Input() minNumberCharacters: number = 2;
37- @Input() maxNumberCharacters: number = 50;
70+ @Input() allowedCharacters = '';
71+ @Input() minNumberCharacters = 2;
72+ @Input() maxNumberCharacters = 50;
3873 @Input() searchHint?: string;
39- @Input() <%= options.localStorageKeyConfig %>: string = '';
74+ @Input() <%= options.localStorageKeyConfig %> = '';
4075
41- <% if (options.componentType === 'table' && options.hasSearchBar ) { %>
42- @Input() configs: Array< Config> = [];
43- @Input() hasAdvancedSearch: boolean = this.filterService.stringColumns.length > 1;
76+ <% if (addConfigMenu ) { %>
77+ @Input() configs: Config[] = [];
78+ @Input() hasAdvancedSearch = this.filterService.stringColumns.length > 1;
4479 <% } %>
4580
4681 @Output() applyFilters = new EventEmitter<void>();
@@ -51,9 +86,9 @@ export class <%= classify(name) %>CommandBarComponent implements AfterViewInit {
5186 @Output() customCommandBarActionEvent = new EventEmitter<any>();
5287 <% } %>
5388
54- <% if (options.componentType === 'table' && options.hasSearchBar ) { %>
55- @Output() setConfiguration = new EventEmitter<Array< Config> >();
56- @ViewChild(<%= classify(name) %>ConfigMenuComponent) private configurationComponent!: <%= classify(name) %>ConfigMenuComponent ;
89+ <% if (addConfigMenu ) { %>
90+ @Output() setConfiguration = new EventEmitter<Config[] >();
91+ @ViewChild(EsmfConfigMenuComponent) private configurationComponent!: EsmfConfigMenuComponent ;
5792 <% } %>
5893
5994 <% if (options.componentType === 'card') { %>
@@ -72,11 +107,11 @@ export class <%= classify(name) %>CommandBarComponent implements AfterViewInit {
72107 hiddenComponents: any[] = [];
73108 initialCompWidths : any[]= [];
74109
75- constructor( <% if (options.hasFilters || (options. componentType === 'card' && options.addCommandBar)) { %>public filterService: <%= classify(name) %>FilterService,<% } %> public dialog: MatDialog) {
76- <% if (options.componentType === 'card' ) { %>
77- this.filterService.sortedProperty = this.<%= camelize(name) %>CardValues[0];
78- <% } %>
79- }
110+ <% if (options.componentType === 'card') { %>
111+ constructor( ) {
112+ this.filterService.sortedProperty = this.<%= camelize(name) %>CardValues[0];
113+ }
114+ <% } %>
80115
81116 <% for(let property of propValues) { %>
82117 <% if ((options.isEnumQuickFilter && property.isEnum) || (options.isDateQuickFilter && property.isDate) ) { %>
@@ -111,7 +146,7 @@ export class <%= classify(name) %>CommandBarComponent implements AfterViewInit {
111146 }
112147 <% } %>
113148
114- <% if (options.componentType === 'table' && options.hasSearchBar ) { %>
149+ <% if (addConfigMenu ) { %>
115150 triggerInitOpenedConfigurationDialog(): void {
116151 this.configurationComponent.keyLocalStorage = this.<%= options.localStorageKeyConfig %>;
117152 this.configurationComponent.configs.splice(0, this.configurationComponent.configs.length);
@@ -175,9 +210,9 @@ export class <%= classify(name) %>CommandBarComponent implements AfterViewInit {
175210 return this.hiddenComponents.includes(id);
176211 }
177212
178- <% if (options.componentType === 'table' && options.hasSearchBar ) { %>
213+ <% if (addConfigMenu ) { %>
179214 openSettingsFromCollapsed() {
180- const configMenuDialogRef = this.dialog.open(<%= classify(name) %>ConfigMenuComponent, {
215+ const configMenuDialogRef = this.dialog.open(EsmfConfigMenuComponent, {
181216 data: { configs: this.configs, keyLocalStorage: this.<%= options.localStorageKeyConfig %>},
182217 }
183218 );
0 commit comments