@linzjs/step-ag-grid 30.0.0 → 30.1.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.
@@ -16,9 +16,13 @@ export declare class GridFilterColumnsMultiSelect implements IFilterComp {
16
16
  private gui;
17
17
  private labelFormatter?;
18
18
  private reactRoot;
19
+ private filterButtonClickListener;
20
+ private filterButton;
21
+ private hasOpened;
19
22
  private normalizeCellValue;
20
23
  private loadFieldValues;
21
24
  init(params: CheckboxMultiFilterParams): void;
25
+ private setupFilterButtonListener;
22
26
  private render;
23
27
  private handleToggleAll;
24
28
  private handleToggleOne;
@@ -62084,6 +62084,9 @@ class GridFilterColumnsMultiSelect {
62084
62084
  gui;
62085
62085
  labelFormatter;
62086
62086
  reactRoot = null;
62087
+ filterButtonClickListener = null;
62088
+ filterButton = null;
62089
+ hasOpened = false;
62087
62090
  normalizeCellValue(value) {
62088
62091
  if (typeof value === 'string')
62089
62092
  return value.trim() === '' ? EMPTY_KEY : value;
@@ -62126,6 +62129,25 @@ class GridFilterColumnsMultiSelect {
62126
62129
  this.gui = document.createElement('div');
62127
62130
  this.reactRoot = client.createRoot(this.gui);
62128
62131
  this.render();
62132
+ this.setupFilterButtonListener();
62133
+ }
62134
+ setupFilterButtonListener() {
62135
+ const columnId = this.params.column.getColId();
62136
+ this.filterButton = document.querySelector(`[col-id="${columnId}"] .ag-header-cell-filter-button`);
62137
+ if (this.filterButton) {
62138
+ this.filterButtonClickListener = (e) => {
62139
+ if (this.hasOpened) {
62140
+ e.stopPropagation();
62141
+ e.preventDefault();
62142
+ this.params.api.hidePopupMenu();
62143
+ this.hasOpened = false;
62144
+ }
62145
+ else {
62146
+ this.hasOpened = true;
62147
+ }
62148
+ };
62149
+ this.filterButton.addEventListener('click', this.filterButtonClickListener, true);
62150
+ }
62129
62151
  }
62130
62152
  render() {
62131
62153
  if (!this.reactRoot)
@@ -62181,6 +62203,11 @@ class GridFilterColumnsMultiSelect {
62181
62203
  this.render();
62182
62204
  }
62183
62205
  destroy() {
62206
+ if (this.filterButtonClickListener && this.filterButton) {
62207
+ this.filterButton.removeEventListener('click', this.filterButtonClickListener, true);
62208
+ this.filterButtonClickListener = null;
62209
+ this.filterButton = null;
62210
+ }
62184
62211
  if (this.reactRoot) {
62185
62212
  this.reactRoot.unmount();
62186
62213
  this.reactRoot = null;