imng-kendo-grid-filtering 9.13.3 → 9.15.5
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.
|
@@ -3,11 +3,11 @@ import { inject, ChangeDetectorRef, ElementRef, Input, ChangeDetectionStrategy,
|
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import * as i1$1 from '@progress/kendo-angular-grid';
|
|
6
|
-
import { FilterService, ColumnComponent,
|
|
6
|
+
import { FilterService, ColumnComponent, KENDO_GRID } from '@progress/kendo-angular-grid';
|
|
7
7
|
import { distinct, filterBy } from '@progress/kendo-data-query';
|
|
8
8
|
import { Subscriptions } from 'imng-ngrx-utils';
|
|
9
9
|
|
|
10
|
-
class
|
|
10
|
+
class IMNG_KENDO_GRID_MULTISELECT_FILTER {
|
|
11
11
|
constructor() {
|
|
12
12
|
this.filterService = inject(FilterService);
|
|
13
13
|
this.changeDetectorRef = inject(ChangeDetectorRef);
|
|
@@ -100,8 +100,8 @@ class MultiSelectFilterComponent {
|
|
|
100
100
|
}
|
|
101
101
|
this.changeDetectorRef.markForCheck();
|
|
102
102
|
}
|
|
103
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type:
|
|
104
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type:
|
|
103
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: IMNG_KENDO_GRID_MULTISELECT_FILTER, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
104
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: IMNG_KENDO_GRID_MULTISELECT_FILTER, isStandalone: true, selector: "imng-multi-select-filter", inputs: { isPrimitive: "isPrimitive", odataState: "odataState", data: "data", textField: "textField", valueField: "valueField", field: "field", showTextFilter: "showTextFilter" }, ngImport: i0, template: `
|
|
105
105
|
<ul>
|
|
106
106
|
@if (showTextFilter) {
|
|
107
107
|
<li>
|
|
@@ -127,11 +127,11 @@ class MultiSelectFilterComponent {
|
|
|
127
127
|
</li>
|
|
128
128
|
}
|
|
129
129
|
</ul>
|
|
130
|
-
`, isInline: true, styles: ["ul{list-style-type:none;height:200px;overflow-y:scroll;padding-left:0;padding-right:12px}ul>li{padding:8px 12px;border:1px solid rgba(0,0,0,.08);border-bottom:none}ul>li:last-of-type{border-bottom:1px solid rgba(0,0,0,.08)}.k-multiselect-checkbox{pointer-events:none}.k-checkbox{width:14px;height:15px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
130
|
+
`, isInline: true, styles: ["ul{list-style-type:none;height:200px;overflow-y:scroll;padding-left:0;padding-right:12px}ul>li{padding:8px 12px;border:1px solid rgba(0,0,0,.08);border-bottom:none}ul>li:last-of-type{border-bottom:1px solid rgba(0,0,0,.08)}.k-multiselect-checkbox{pointer-events:none}.k-checkbox{width:14px;height:15px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
131
131
|
}
|
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type:
|
|
132
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: IMNG_KENDO_GRID_MULTISELECT_FILTER, decorators: [{
|
|
133
133
|
type: Component,
|
|
134
|
-
args: [{ selector: 'imng-multi-select-filter', template: `
|
|
134
|
+
args: [{ selector: 'imng-multi-select-filter', imports: [CommonModule], template: `
|
|
135
135
|
<ul>
|
|
136
136
|
@if (showTextFilter) {
|
|
137
137
|
<li>
|
|
@@ -157,7 +157,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
157
157
|
</li>
|
|
158
158
|
}
|
|
159
159
|
</ul>
|
|
160
|
-
`, changeDetection: ChangeDetectionStrategy.OnPush,
|
|
160
|
+
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["ul{list-style-type:none;height:200px;overflow-y:scroll;padding-left:0;padding-right:12px}ul>li{padding:8px 12px;border:1px solid rgba(0,0,0,.08);border-bottom:none}ul>li:last-of-type{border-bottom:1px solid rgba(0,0,0,.08)}.k-multiselect-checkbox{pointer-events:none}.k-checkbox{width:14px;height:15px}\n"] }]
|
|
161
161
|
}], propDecorators: { isPrimitive: [{
|
|
162
162
|
type: Input
|
|
163
163
|
}], odataState: [{
|
|
@@ -182,15 +182,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
182
182
|
</ng-template>
|
|
183
183
|
<kendo-grid-column>
|
|
184
184
|
*/
|
|
185
|
-
class
|
|
185
|
+
class IMNG_KENDO_GRID_UUID_FILTER {
|
|
186
186
|
constructor() {
|
|
187
187
|
this.filterService = inject(FilterService);
|
|
188
188
|
this.column = inject(ColumnComponent);
|
|
189
189
|
this.allSubscriptions = new Subscriptions();
|
|
190
190
|
this.filter = null;
|
|
191
191
|
}
|
|
192
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type:
|
|
193
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.8", type:
|
|
192
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: IMNG_KENDO_GRID_UUID_FILTER, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
193
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.8", type: IMNG_KENDO_GRID_UUID_FILTER, isStandalone: true, selector: "imng-uuid-filter", inputs: { filter: "filter" }, ngImport: i0, template: `
|
|
194
194
|
<kendo-grid-string-filter-menu
|
|
195
195
|
[column]="column"
|
|
196
196
|
[filter]="filter"
|
|
@@ -199,12 +199,13 @@ class UuidFilterComponent {
|
|
|
199
199
|
operator="eq">
|
|
200
200
|
<kendo-filter-eq-operator />
|
|
201
201
|
</kendo-grid-string-filter-menu>
|
|
202
|
-
`, isInline: true, dependencies: [{ kind: "component", type: i1$1.EqualFilterOperatorComponent, selector: "kendo-filter-eq-operator" }, { kind: "component", type: i1$1.StringFilterMenuComponent, selector: "kendo-grid-string-filter-menu", inputs: ["
|
|
202
|
+
`, isInline: true, dependencies: [{ kind: "component", type: i1$1.EqualFilterOperatorComponent, selector: "kendo-filter-eq-operator" }, { kind: "component", type: i1$1.StringFilterMenuComponent, selector: "kendo-grid-string-filter-menu", inputs: ["filter", "extra", "filterService", "placeholder", "extraPlaceholder", "menuTabbingService"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
203
203
|
}
|
|
204
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type:
|
|
204
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: IMNG_KENDO_GRID_UUID_FILTER, decorators: [{
|
|
205
205
|
type: Component,
|
|
206
206
|
args: [{
|
|
207
207
|
selector: 'imng-uuid-filter',
|
|
208
|
+
imports: [KENDO_GRID],
|
|
208
209
|
template: `
|
|
209
210
|
<kendo-grid-string-filter-menu
|
|
210
211
|
[column]="column"
|
|
@@ -216,7 +217,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
216
217
|
</kendo-grid-string-filter-menu>
|
|
217
218
|
`,
|
|
218
219
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
219
|
-
standalone: false,
|
|
220
220
|
}]
|
|
221
221
|
}], ctorParameters: () => [], propDecorators: { filter: [{
|
|
222
222
|
type: Input
|
|
@@ -224,19 +224,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
224
224
|
|
|
225
225
|
class ImngKendoGridFilteringModule {
|
|
226
226
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: ImngKendoGridFilteringModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
227
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.8", ngImport: i0, type: ImngKendoGridFilteringModule,
|
|
228
|
-
|
|
229
|
-
|
|
227
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.8", ngImport: i0, type: ImngKendoGridFilteringModule, imports: [CommonModule,
|
|
228
|
+
IMNG_KENDO_GRID_MULTISELECT_FILTER,
|
|
229
|
+
IMNG_KENDO_GRID_UUID_FILTER], exports: [IMNG_KENDO_GRID_MULTISELECT_FILTER, IMNG_KENDO_GRID_UUID_FILTER] }); }
|
|
230
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: ImngKendoGridFilteringModule, imports: [CommonModule,
|
|
231
|
+
IMNG_KENDO_GRID_MULTISELECT_FILTER,
|
|
232
|
+
IMNG_KENDO_GRID_UUID_FILTER] }); }
|
|
230
233
|
}
|
|
231
234
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: ImngKendoGridFilteringModule, decorators: [{
|
|
232
235
|
type: NgModule,
|
|
233
236
|
args: [{
|
|
234
|
-
imports: [
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
237
|
+
imports: [
|
|
238
|
+
CommonModule,
|
|
239
|
+
IMNG_KENDO_GRID_MULTISELECT_FILTER,
|
|
240
|
+
IMNG_KENDO_GRID_UUID_FILTER,
|
|
238
241
|
],
|
|
239
|
-
exports: [
|
|
242
|
+
exports: [IMNG_KENDO_GRID_MULTISELECT_FILTER, IMNG_KENDO_GRID_UUID_FILTER],
|
|
240
243
|
}]
|
|
241
244
|
}] });
|
|
242
245
|
|
|
@@ -244,5 +247,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
244
247
|
* Generated bundle index. Do not edit.
|
|
245
248
|
*/
|
|
246
249
|
|
|
247
|
-
export {
|
|
250
|
+
export { IMNG_KENDO_GRID_MULTISELECT_FILTER, IMNG_KENDO_GRID_UUID_FILTER, ImngKendoGridFilteringModule };
|
|
248
251
|
//# sourceMappingURL=imng-kendo-grid-filtering.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imng-kendo-grid-filtering.mjs","sources":["../../../../libs/imng-kendo-grid-filtering/src/lib/multi-select-filter/multi-select-filter.component.ts","../../../../libs/imng-kendo-grid-filtering/src/lib/uuid-filter/uuid-filter.component.ts","../../../../libs/imng-kendo-grid-filtering/src/lib/imng-kendo-grid-filtering.module.ts","../../../../libs/imng-kendo-grid-filtering/src/imng-kendo-grid-filtering.ts"],"sourcesContent":["import {\n Component,\n AfterViewInit,\n Input,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n inject,\n ElementRef,\n} from '@angular/core';\nimport { FilterService } from '@progress/kendo-angular-grid';\nimport {\n CompositeFilterDescriptor,\n distinct,\n filterBy,\n FilterDescriptor,\n} from '@progress/kendo-data-query';\nimport { IdType } from 'imng-nrsrx-client-utils';\nimport { ODataState } from 'imng-kendo-odata';\n\n@Component({\n selector: 'imng-multi-select-filter',\n\n template: `\n <ul>\n @if (showTextFilter) {\n <li>\n <input class=\"k-textbox\" (input)=\"onInput($event)\" />\n </li>\n }\n @for (item of currentData; track item; let i = $index) {\n <li\n #itemElement\n (click)=\"onSelectionChange(valueAccessor(item), itemElement)\"\n [ngClass]=\"{ 'k-state-selected': isItemSelected(item) }\">\n <input\n type=\"checkbox\"\n id=\"chk-{{ valueAccessor(item) }}\"\n (focus)=\"onFocus(itemElement)\"\n class=\"k-checkbox\"\n [checked]=\"isItemSelected(item)\" />\n <label\n class=\"k-multiselect-checkbox k-checkbox-label\"\n for=\"chk-{{ valueAccessor(item) }}\">\n {{ textAccessor(item) }}\n </label>\n </li>\n }\n </ul>\n `,\n styles: [\n `\n ul {\n list-style-type: none;\n height: 200px;\n overflow-y: scroll;\n padding-left: 0;\n padding-right: 12px;\n }\n\n ul > li {\n padding: 8px 12px;\n border: 1px solid rgba(0, 0, 0, 0.08);\n border-bottom: none;\n }\n\n ul > li:last-of-type {\n border-bottom: 1px solid rgba(0, 0, 0, 0.08);\n }\n\n .k-multiselect-checkbox {\n pointer-events: none;\n }\n .k-checkbox {\n width: 14px;\n height: 15px;\n }\n `,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class MultiSelectFilterComponent implements AfterViewInit {\n readonly filterService = inject(FilterService);\n readonly changeDetectorRef = inject(ChangeDetectorRef);\n readonly elementRef = inject(ElementRef);\n @Input() public isPrimitive = false;\n @Input() public odataState: ODataState | null = {};\n @Input() public data: unknown[] = [];\n @Input() public textField: string | undefined = undefined;\n @Input() public valueField: string | undefined = undefined;\n @Input() public field = '';\n @Input() public showTextFilter = true;\n\n public currentData: unknown[] = [];\n public value: unknown[] = [];\n\n public textAccessor = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n dataItem: any, //NOSONAR\n ) =>\n this.isPrimitive || !this.textField ? dataItem : dataItem[this.textField];\n public valueAccessor = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n dataItem: any, //NOSONAR\n ) =>\n this.isPrimitive || !this.valueField ? dataItem : dataItem[this.valueField];\n\n public ngAfterViewInit() {\n const submitButton = this.elementRef.nativeElement.parentNode.querySelector(\n '.k-actions > button[type=\"submit\"]',\n );\n if (submitButton) {\n submitButton.style.display = 'none';\n }\n this.currentData = this.data;\n const tempValue = this.odataState?.filter?.filters.map(\n (f: CompositeFilterDescriptor | FilterDescriptor) =>\n (f as CompositeFilterDescriptor).filters\n .filter(\n (x: FilterDescriptor | CompositeFilterDescriptor) =>\n (x as FilterDescriptor).field === this.field,\n )\n .map(\n (x: FilterDescriptor | CompositeFilterDescriptor) =>\n (x as FilterDescriptor).value,\n ),\n );\n this.value = tempValue?.length ? tempValue?.flat() || [] : [];\n\n this.showTextFilter =\n this.showTextFilter &&\n typeof this.textAccessor(this.currentData[0]) === 'string';\n this.changeDetectorRef.markForCheck();\n }\n\n public isItemSelected(item: unknown) {\n return this.value.some((x) => x === this.valueAccessor(item));\n }\n\n public onSelectionChange(item: unknown, li: HTMLLIElement) {\n if (this.value.some((x) => x === item)) {\n this.value = this.value.filter((x) => x !== item);\n } else {\n this.value.push(item);\n }\n const currentFilter: CompositeFilterDescriptor = {\n logic: this.odataState?.filter?.logic ?? 'and',\n filters: this.odataState?.filter?.filters ?? [],\n };\n if (\n currentFilter.filters.some(\n (x: CompositeFilterDescriptor | FilterDescriptor) =>\n (x as CompositeFilterDescriptor).filters.some(\n (f: FilterDescriptor | CompositeFilterDescriptor) =>\n (f as FilterDescriptor).field === this.field,\n ),\n )\n ) {\n currentFilter.filters = currentFilter.filters.filter(\n (x: CompositeFilterDescriptor | FilterDescriptor) =>\n !(x as CompositeFilterDescriptor).filters.some(\n (f: FilterDescriptor | CompositeFilterDescriptor) =>\n (f as FilterDescriptor).field === this.field,\n ),\n );\n }\n if (this.value.length > 0) {\n currentFilter.filters = [\n ...currentFilter.filters,\n {\n logic: 'or',\n filters: this.value.map((value) => ({\n field: this.field,\n operator: 'eq',\n value,\n })),\n },\n ];\n }\n this.filterService.filter(currentFilter);\n\n this.onFocus(li);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public onInput(e: { target: { value: IdType } } | any): void {\n //NOSONAR\n this.currentData = distinct(\n [\n ...this.currentData.filter((dataItem: unknown) =>\n this.value.some((val) => val === this.valueAccessor(dataItem)),\n ),\n ...filterBy(this.data, {\n operator: 'contains',\n field: this.textField,\n value: e.target.value,\n }),\n ],\n this.textField,\n );\n this.changeDetectorRef.markForCheck();\n }\n\n public onFocus(li: HTMLLIElement): void {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const ul = li.parentNode as any; //NOSONAR\n const below =\n ul.scrollTop + ul.offsetHeight < li.offsetTop + li.offsetHeight;\n const above = li.offsetTop < ul.scrollTop;\n\n // Scroll to focused checkbox\n if (below || above) {\n ul.scrollTop = li.offsetTop;\n }\n this.changeDetectorRef.markForCheck();\n }\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n Input,\n inject,\n} from '@angular/core';\nimport { ColumnComponent, FilterService } from '@progress/kendo-angular-grid';\nimport { CompositeFilterDescriptor } from '@progress/kendo-data-query';\nimport { Subscriptions } from 'imng-ngrx-utils';\n\n/**\n * How To Use:\n * <kendo-grid-column ...>\n * <ng-template kendoGridFilterMenuTemplate let-filter>\n <imng-uuid-filter [filter]=\"filter\"></imng-uuid-filter>\n </ng-template>\n <kendo-grid-column>\n */\n@Component({\n selector: 'imng-uuid-filter',\n template: `\n <kendo-grid-string-filter-menu\n [column]=\"column\"\n [filter]=\"filter\"\n [filterService]=\"filterService\"\n [extra]=\"false\"\n operator=\"eq\">\n <kendo-filter-eq-operator />\n </kendo-grid-string-filter-menu>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class UuidFilterComponent {\n filterService = inject<FilterService>(FilterService);\n column = inject<ColumnComponent>(ColumnComponent);\n\n /**\n * The current menu filter.\n * @type {CompositeFilterDescriptor}\n */\n @Input()\n filter: CompositeFilterDescriptor;\n\n public allSubscriptions = new Subscriptions();\n constructor() {\n this.filter = null as never;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MultiSelectFilterComponent } from './multi-select-filter/multi-select-filter.component';\nimport { GridModule } from '@progress/kendo-angular-grid';\nimport { UuidFilterComponent } from './uuid-filter/uuid-filter.component';\n\n@NgModule({\n imports: [CommonModule, GridModule],\n declarations: [\n MultiSelectFilterComponent,\n UuidFilterComponent\n ],\n exports: [MultiSelectFilterComponent, UuidFilterComponent]\n})\nexport class ImngKendoGridFilteringModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"imng-kendo-grid-filtering.mjs","sources":["../../../../libs/imng-kendo-grid-filtering/src/lib/multi-select-filter/multi-select-filter.component.ts","../../../../libs/imng-kendo-grid-filtering/src/lib/uuid-filter/uuid-filter.component.ts","../../../../libs/imng-kendo-grid-filtering/src/lib/imng-kendo-grid-filtering.module.ts","../../../../libs/imng-kendo-grid-filtering/src/imng-kendo-grid-filtering.ts"],"sourcesContent":["import {\n Component,\n AfterViewInit,\n Input,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n inject,\n ElementRef,\n} from '@angular/core';\nimport { FilterService } from '@progress/kendo-angular-grid';\nimport {\n CompositeFilterDescriptor,\n distinct,\n filterBy,\n FilterDescriptor,\n} from '@progress/kendo-data-query';\nimport { IdType } from 'imng-nrsrx-client-utils';\nimport { ODataState } from 'imng-kendo-odata';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'imng-multi-select-filter',\n imports: [CommonModule],\n template: `\n <ul>\n @if (showTextFilter) {\n <li>\n <input class=\"k-textbox\" (input)=\"onInput($event)\" />\n </li>\n }\n @for (item of currentData; track item; let i = $index) {\n <li\n #itemElement\n (click)=\"onSelectionChange(valueAccessor(item), itemElement)\"\n [ngClass]=\"{ 'k-state-selected': isItemSelected(item) }\">\n <input\n type=\"checkbox\"\n id=\"chk-{{ valueAccessor(item) }}\"\n (focus)=\"onFocus(itemElement)\"\n class=\"k-checkbox\"\n [checked]=\"isItemSelected(item)\" />\n <label\n class=\"k-multiselect-checkbox k-checkbox-label\"\n for=\"chk-{{ valueAccessor(item) }}\">\n {{ textAccessor(item) }}\n </label>\n </li>\n }\n </ul>\n `,\n styles: [\n `\n ul {\n list-style-type: none;\n height: 200px;\n overflow-y: scroll;\n padding-left: 0;\n padding-right: 12px;\n }\n\n ul > li {\n padding: 8px 12px;\n border: 1px solid rgba(0, 0, 0, 0.08);\n border-bottom: none;\n }\n\n ul > li:last-of-type {\n border-bottom: 1px solid rgba(0, 0, 0, 0.08);\n }\n\n .k-multiselect-checkbox {\n pointer-events: none;\n }\n .k-checkbox {\n width: 14px;\n height: 15px;\n }\n `,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class IMNG_KENDO_GRID_MULTISELECT_FILTER implements AfterViewInit {\n readonly filterService = inject(FilterService);\n readonly changeDetectorRef = inject(ChangeDetectorRef);\n readonly elementRef = inject(ElementRef);\n @Input() public isPrimitive = false;\n @Input() public odataState: ODataState | null = {};\n @Input() public data: unknown[] = [];\n @Input() public textField: string | undefined = undefined;\n @Input() public valueField: string | undefined = undefined;\n @Input() public field = '';\n @Input() public showTextFilter = true;\n\n public currentData: unknown[] = [];\n public value: unknown[] = [];\n\n public textAccessor = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n dataItem: any, //NOSONAR\n ) =>\n this.isPrimitive || !this.textField ? dataItem : dataItem[this.textField];\n public valueAccessor = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n dataItem: any, //NOSONAR\n ) =>\n this.isPrimitive || !this.valueField ? dataItem : dataItem[this.valueField];\n\n public ngAfterViewInit() {\n const submitButton = this.elementRef.nativeElement.parentNode.querySelector(\n '.k-actions > button[type=\"submit\"]',\n );\n if (submitButton) {\n submitButton.style.display = 'none';\n }\n this.currentData = this.data;\n const tempValue = this.odataState?.filter?.filters.map(\n (f: CompositeFilterDescriptor | FilterDescriptor) =>\n (f as CompositeFilterDescriptor).filters\n .filter(\n (x: FilterDescriptor | CompositeFilterDescriptor) =>\n (x as FilterDescriptor).field === this.field,\n )\n .map(\n (x: FilterDescriptor | CompositeFilterDescriptor) =>\n (x as FilterDescriptor).value,\n ),\n );\n this.value = tempValue?.length ? tempValue?.flat() || [] : [];\n\n this.showTextFilter =\n this.showTextFilter &&\n typeof this.textAccessor(this.currentData[0]) === 'string';\n this.changeDetectorRef.markForCheck();\n }\n\n public isItemSelected(item: unknown) {\n return this.value.some((x) => x === this.valueAccessor(item));\n }\n\n public onSelectionChange(item: unknown, li: HTMLLIElement) {\n if (this.value.some((x) => x === item)) {\n this.value = this.value.filter((x) => x !== item);\n } else {\n this.value.push(item);\n }\n const currentFilter: CompositeFilterDescriptor = {\n logic: this.odataState?.filter?.logic ?? 'and',\n filters: this.odataState?.filter?.filters ?? [],\n };\n if (\n currentFilter.filters.some(\n (x: CompositeFilterDescriptor | FilterDescriptor) =>\n (x as CompositeFilterDescriptor).filters.some(\n (f: FilterDescriptor | CompositeFilterDescriptor) =>\n (f as FilterDescriptor).field === this.field,\n ),\n )\n ) {\n currentFilter.filters = currentFilter.filters.filter(\n (x: CompositeFilterDescriptor | FilterDescriptor) =>\n !(x as CompositeFilterDescriptor).filters.some(\n (f: FilterDescriptor | CompositeFilterDescriptor) =>\n (f as FilterDescriptor).field === this.field,\n ),\n );\n }\n if (this.value.length > 0) {\n currentFilter.filters = [\n ...currentFilter.filters,\n {\n logic: 'or',\n filters: this.value.map((value) => ({\n field: this.field,\n operator: 'eq',\n value,\n })),\n },\n ];\n }\n this.filterService.filter(currentFilter);\n\n this.onFocus(li);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public onInput(e: { target: { value: IdType } } | any): void {\n //NOSONAR\n this.currentData = distinct(\n [\n ...this.currentData.filter((dataItem: unknown) =>\n this.value.some((val) => val === this.valueAccessor(dataItem)),\n ),\n ...filterBy(this.data, {\n operator: 'contains',\n field: this.textField,\n value: e.target.value,\n }),\n ],\n this.textField,\n );\n this.changeDetectorRef.markForCheck();\n }\n\n public onFocus(li: HTMLLIElement): void {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const ul = li.parentNode as any; //NOSONAR\n const below =\n ul.scrollTop + ul.offsetHeight < li.offsetTop + li.offsetHeight;\n const above = li.offsetTop < ul.scrollTop;\n\n // Scroll to focused checkbox\n if (below || above) {\n ul.scrollTop = li.offsetTop;\n }\n this.changeDetectorRef.markForCheck();\n }\n}\n","import {\n Component,\n ChangeDetectionStrategy,\n Input,\n inject,\n} from '@angular/core';\nimport {\n ColumnComponent,\n FilterService,\n KENDO_GRID,\n} from '@progress/kendo-angular-grid';\nimport { CompositeFilterDescriptor } from '@progress/kendo-data-query';\nimport { Subscriptions } from 'imng-ngrx-utils';\n\n/**\n * How To Use:\n * <kendo-grid-column ...>\n * <ng-template kendoGridFilterMenuTemplate let-filter>\n <imng-uuid-filter [filter]=\"filter\"></imng-uuid-filter>\n </ng-template>\n <kendo-grid-column>\n */\n@Component({\n selector: 'imng-uuid-filter',\n imports: [KENDO_GRID],\n template: `\n <kendo-grid-string-filter-menu\n [column]=\"column\"\n [filter]=\"filter\"\n [filterService]=\"filterService\"\n [extra]=\"false\"\n operator=\"eq\">\n <kendo-filter-eq-operator />\n </kendo-grid-string-filter-menu>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class IMNG_KENDO_GRID_UUID_FILTER {\n filterService = inject<FilterService>(FilterService);\n column = inject<ColumnComponent>(ColumnComponent);\n\n /**\n * The current menu filter.\n * @type {CompositeFilterDescriptor}\n */\n @Input()\n filter: CompositeFilterDescriptor;\n\n public allSubscriptions = new Subscriptions();\n constructor() {\n this.filter = null as never;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { IMNG_KENDO_GRID_MULTISELECT_FILTER } from './multi-select-filter/multi-select-filter.component';\nimport { IMNG_KENDO_GRID_UUID_FILTER } from './uuid-filter/uuid-filter.component';\n\n@NgModule({\n imports: [\n CommonModule,\n IMNG_KENDO_GRID_MULTISELECT_FILTER,\n IMNG_KENDO_GRID_UUID_FILTER,\n ],\n exports: [IMNG_KENDO_GRID_MULTISELECT_FILTER, IMNG_KENDO_GRID_UUID_FILTER],\n})\nexport class ImngKendoGridFilteringModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":";;;;;;;;;MAiFa,kCAAkC,CAAA;AA7D/C,IAAA,WAAA,GAAA;AA8DW,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;AACrC,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAC7C,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACxB,IAAA,CAAA,WAAW,GAAG,KAAK;QACnB,IAAA,CAAA,UAAU,GAAsB,EAAE;QAClC,IAAA,CAAA,IAAI,GAAc,EAAE;QACpB,IAAA,CAAA,SAAS,GAAuB,SAAS;QACzC,IAAA,CAAA,UAAU,GAAuB,SAAS;QAC1C,IAAA,CAAA,KAAK,GAAG,EAAE;QACV,IAAA,CAAA,cAAc,GAAG,IAAI;QAE9B,IAAA,CAAA,WAAW,GAAc,EAAE;QAC3B,IAAA,CAAA,KAAK,GAAc,EAAE;AAErB,QAAA,IAAA,CAAA,YAAY,GAAG;;QAEpB,QAAa,KAEb,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;AACpE,QAAA,IAAA,CAAA,aAAa,GAAG;;QAErB,QAAa,KAEb,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;AA+G9E,IAAA;IA7GQ,eAAe,GAAA;AACpB,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,aAAa,CACzE,oCAAoC,CACrC;QACD,IAAI,YAAY,EAAE;AAChB,YAAA,YAAY,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM;QACrC;AACA,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI;AAC5B,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,CACpD,CAAC,CAA+C,KAC7C,CAA+B,CAAC;AAC9B,aAAA,MAAM,CACL,CAAC,CAA+C,KAC7C,CAAsB,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;aAE/C,GAAG,CACF,CAAC,CAA+C,KAC7C,CAAsB,CAAC,KAAK,CAChC,CACN;AACD,QAAA,IAAI,CAAC,KAAK,GAAG,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;AAE7D,QAAA,IAAI,CAAC,cAAc;AACjB,YAAA,IAAI,CAAC,cAAc;AACnB,gBAAA,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ;AAC5D,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;IACvC;AAEO,IAAA,cAAc,CAAC,IAAa,EAAA;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC/D;IAEO,iBAAiB,CAAC,IAAa,EAAE,EAAiB,EAAA;AACvD,QAAA,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,EAAE;AACtC,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;QACnD;aAAO;AACL,YAAA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;QACvB;AACA,QAAA,MAAM,aAAa,GAA8B;YAC/C,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,IAAI,KAAK;YAC9C,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,IAAI,EAAE;SAChD;AACD,QAAA,IACE,aAAa,CAAC,OAAO,CAAC,IAAI,CACxB,CAAC,CAA+C,KAC7C,CAA+B,CAAC,OAAO,CAAC,IAAI,CAC3C,CAAC,CAA+C,KAC7C,CAAsB,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAC/C,CACJ,EACD;AACA,YAAA,aAAa,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAClD,CAAC,CAA+C,KAC9C,CAAE,CAA+B,CAAC,OAAO,CAAC,IAAI,CAC5C,CAAC,CAA+C,KAC7C,CAAsB,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAC/C,CACJ;QACH;QACA,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACzB,aAAa,CAAC,OAAO,GAAG;gBACtB,GAAG,aAAa,CAAC,OAAO;AACxB,gBAAA;AACE,oBAAA,KAAK,EAAE,IAAI;AACX,oBAAA,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM;wBAClC,KAAK,EAAE,IAAI,CAAC,KAAK;AACjB,wBAAA,QAAQ,EAAE,IAAI;wBACd,KAAK;AACN,qBAAA,CAAC,CAAC;AACJ,iBAAA;aACF;QACH;AACA,QAAA,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,aAAa,CAAC;AAExC,QAAA,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;IAClB;;AAGO,IAAA,OAAO,CAAC,CAAsC,EAAA;;AAEnD,QAAA,IAAI,CAAC,WAAW,GAAG,QAAQ,CACzB;AACE,YAAA,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,QAAiB,KAC3C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,KAAK,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAC/D;AACD,YAAA,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE;AACrB,gBAAA,QAAQ,EAAE,UAAU;gBACpB,KAAK,EAAE,IAAI,CAAC,SAAS;AACrB,gBAAA,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK;aACtB,CAAC;AACH,SAAA,EACD,IAAI,CAAC,SAAS,CACf;AACD,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;IACvC;AAEO,IAAA,OAAO,CAAC,EAAiB,EAAA;;AAE9B,QAAA,MAAM,EAAE,GAAG,EAAE,CAAC,UAAiB,CAAC;AAChC,QAAA,MAAM,KAAK,GACT,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,YAAY,GAAG,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,YAAY;QACjE,MAAM,KAAK,GAAG,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,SAAS;;AAGzC,QAAA,IAAI,KAAK,IAAI,KAAK,EAAE;AAClB,YAAA,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,SAAS;QAC7B;AACA,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;IACvC;8GAtIW,kCAAkC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kCAAkC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,UAAA,EAAA,YAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,KAAA,EAAA,OAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EA1DnC;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,kTAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EA3BS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FA2DX,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBA7D9C,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,0BAA0B,EAAA,OAAA,EAC3B,CAAC,YAAY,CAAC,EAAA,QAAA,EACb;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BT,EAAA,eAAA,EA8BgB,uBAAuB,CAAC,MAAM,EAAA,MAAA,EAAA,CAAA,kTAAA,CAAA,EAAA;;sBAM9C;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;AC7EH;;;;;;;AAOG;MAgBU,2BAA2B,CAAA;AAYtC,IAAA,WAAA,GAAA;AAXA,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAgB,aAAa,CAAC;AACpD,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAkB,eAAe,CAAC;AAS1C,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,aAAa,EAAE;AAE3C,QAAA,IAAI,CAAC,MAAM,GAAG,IAAa;IAC7B;8GAdW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA3B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAZ5B;;;;;;;;;AAST,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,4BAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,yBAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,OAAA,EAAA,eAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,oBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAGU,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAfvC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;oBAC5B,OAAO,EAAE,CAAC,UAAU,CAAC;AACrB,oBAAA,QAAQ,EAAE;;;;;;;;;AAST,EAAA,CAAA;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAChD,iBAAA;;sBASE;;;MChCU,4BAA4B,CAAA;8GAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAA5B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4BAA4B,YANrC,YAAY;YACZ,kCAAkC;YAClC,2BAA2B,CAAA,EAAA,OAAA,EAAA,CAEnB,kCAAkC,EAAE,2BAA2B,CAAA,EAAA,CAAA,CAAA;AAE9D,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4BAA4B,YANrC,YAAY;YACZ,kCAAkC;YAClC,2BAA2B,CAAA,EAAA,CAAA,CAAA;;2FAIlB,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBARxC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,kCAAkC;wBAClC,2BAA2B;AAC5B,qBAAA;AACD,oBAAA,OAAO,EAAE,CAAC,kCAAkC,EAAE,2BAA2B,CAAC;AAC3E,iBAAA;;;ACZD;;AAEG;;;;"}
|
package/package.json
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { AfterViewInit, ChangeDetectorRef, ElementRef } from '@angular/core';
|
|
3
|
-
import * as
|
|
3
|
+
import * as i1 from '@angular/common';
|
|
4
4
|
import { FilterService, ColumnComponent } from '@progress/kendo-angular-grid';
|
|
5
5
|
import { IdType } from 'imng-nrsrx-client-utils';
|
|
6
6
|
import { ODataState } from 'imng-kendo-odata';
|
|
7
7
|
import { CompositeFilterDescriptor } from '@progress/kendo-data-query';
|
|
8
8
|
import { Subscriptions } from 'imng-ngrx-utils';
|
|
9
|
-
import * as i3 from '@angular/common';
|
|
10
9
|
|
|
11
|
-
declare class
|
|
10
|
+
declare class IMNG_KENDO_GRID_MULTISELECT_FILTER implements AfterViewInit {
|
|
12
11
|
readonly filterService: FilterService;
|
|
13
12
|
readonly changeDetectorRef: ChangeDetectorRef;
|
|
14
13
|
readonly elementRef: ElementRef<any>;
|
|
@@ -32,8 +31,8 @@ declare class MultiSelectFilterComponent implements AfterViewInit {
|
|
|
32
31
|
};
|
|
33
32
|
} | any): void;
|
|
34
33
|
onFocus(li: HTMLLIElement): void;
|
|
35
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<
|
|
36
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<
|
|
34
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<IMNG_KENDO_GRID_MULTISELECT_FILTER, never>;
|
|
35
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<IMNG_KENDO_GRID_MULTISELECT_FILTER, "imng-multi-select-filter", never, { "isPrimitive": { "alias": "isPrimitive"; "required": false; }; "odataState": { "alias": "odataState"; "required": false; }; "data": { "alias": "data"; "required": false; }; "textField": { "alias": "textField"; "required": false; }; "valueField": { "alias": "valueField"; "required": false; }; "field": { "alias": "field"; "required": false; }; "showTextFilter": { "alias": "showTextFilter"; "required": false; }; }, {}, never, never, true, never>;
|
|
37
36
|
}
|
|
38
37
|
|
|
39
38
|
/**
|
|
@@ -44,7 +43,7 @@ declare class MultiSelectFilterComponent implements AfterViewInit {
|
|
|
44
43
|
</ng-template>
|
|
45
44
|
<kendo-grid-column>
|
|
46
45
|
*/
|
|
47
|
-
declare class
|
|
46
|
+
declare class IMNG_KENDO_GRID_UUID_FILTER {
|
|
48
47
|
filterService: FilterService;
|
|
49
48
|
column: ColumnComponent;
|
|
50
49
|
/**
|
|
@@ -54,14 +53,14 @@ declare class UuidFilterComponent {
|
|
|
54
53
|
filter: CompositeFilterDescriptor;
|
|
55
54
|
allSubscriptions: Subscriptions;
|
|
56
55
|
constructor();
|
|
57
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<
|
|
58
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<
|
|
56
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<IMNG_KENDO_GRID_UUID_FILTER, never>;
|
|
57
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<IMNG_KENDO_GRID_UUID_FILTER, "imng-uuid-filter", never, { "filter": { "alias": "filter"; "required": false; }; }, {}, never, never, true, never>;
|
|
59
58
|
}
|
|
60
59
|
|
|
61
60
|
declare class ImngKendoGridFilteringModule {
|
|
62
61
|
static ɵfac: i0.ɵɵFactoryDeclaration<ImngKendoGridFilteringModule, never>;
|
|
63
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<ImngKendoGridFilteringModule,
|
|
62
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<ImngKendoGridFilteringModule, never, [typeof i1.CommonModule, typeof IMNG_KENDO_GRID_MULTISELECT_FILTER, typeof IMNG_KENDO_GRID_UUID_FILTER], [typeof IMNG_KENDO_GRID_MULTISELECT_FILTER, typeof IMNG_KENDO_GRID_UUID_FILTER]>;
|
|
64
63
|
static ɵinj: i0.ɵɵInjectorDeclaration<ImngKendoGridFilteringModule>;
|
|
65
64
|
}
|
|
66
65
|
|
|
67
|
-
export {
|
|
66
|
+
export { IMNG_KENDO_GRID_MULTISELECT_FILTER, IMNG_KENDO_GRID_UUID_FILTER, ImngKendoGridFilteringModule };
|