imng-kendo-grid-array 9.39.7 → 9.41.4
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.
|
@@ -114,7 +114,8 @@ class IMNG_KENDO_GRID_ARRAY {
|
|
|
114
114
|
this.gridComponent.data = t;
|
|
115
115
|
}));
|
|
116
116
|
this.gridComponent.pageSize = this.arrayComponent?.state.take || 20; //NOSONAR
|
|
117
|
-
this.gridComponent.filter = this.arrayComponent?.state
|
|
117
|
+
this.gridComponent.filter = this.arrayComponent?.state
|
|
118
|
+
.filter || {
|
|
118
119
|
logic: 'and',
|
|
119
120
|
filters: [],
|
|
120
121
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imng-kendo-grid-array.mjs","sources":["../../../../libs/imng-kendo-grid-array/src/lib/kendo-array-base-component.ts","../../../../libs/imng-kendo-grid-array/src/lib/kendo-array-grid.directive.ts","../../../../libs/imng-kendo-grid-array/src/lib/imng-kendo-grid-array.module.ts","../../../../libs/imng-kendo-grid-array/src/imng-kendo-grid-array.ts"],"sourcesContent":["/* eslint-disable @angular-eslint/prefer-inject */\nimport {\n DataStateChangeEvent,\n SortSettings,\n PageChangeEvent,\n} from '@progress/kendo-angular-grid';\nimport { Input, ChangeDetectorRef, OnDestroy, Component } from '@angular/core';\nimport {\n process,\n State,\n CompositeFilterDescriptor,\n SortDescriptor,\n} from '@progress/kendo-data-query';\nimport { ODataResult } from 'imng-kendo-odata';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { Subscribable } from 'imng-ngrx-utils';\nimport { KendoGridBaseComponent } from 'imng-kendo-grid';\n\n@Component({\n template: '',\n})\nexport abstract class KendoArrayBasedComponent<PARENT_ENTITY, LISTED_ENTITY>\n extends KendoGridBaseComponent<LISTED_ENTITY>\n implements OnDestroy, Subscribable\n{\n /**\n * This will allow you to provide a visual indicator that some of the columns have been hidden.\n */\n public hasHiddenColumns$: Observable<boolean> | undefined;\n @Input() public item?: PARENT_ENTITY;\n\n private _detail: LISTED_ENTITY[] = [];\n @Input()\n public set detail(value: LISTED_ENTITY[]) {\n this._detail = value || [];\n this.gridData = process(this._detail, this.state);\n this.changeDetectorRef?.markForCheck();\n }\n\n /**\n * A properties enum to make kendo grid columns definitions type safe\n * {@example <kendo-grid-column [field]=\"props.FIELD_NAME\">}\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public abstract readonly props: any; //NOSONAR\n public state: State = {\n skip: 0,\n take: 10,\n };\n\n public readonly sortSettings: SortSettings = {\n allowUnsort: true,\n mode: 'multiple',\n };\n\n private _gridData: ODataResult<LISTED_ENTITY> | LISTED_ENTITY[] = [];\n public gridData$ = new BehaviorSubject<\n ODataResult<LISTED_ENTITY> | LISTED_ENTITY[]\n >({ data: [], total: 0 });\n public get gridData(): ODataResult<LISTED_ENTITY> | LISTED_ENTITY[] {\n return this._gridData;\n }\n public set gridData(value: ODataResult<LISTED_ENTITY> | LISTED_ENTITY[]) {\n this._gridData = value;\n this.gridData$.next(value);\n this.markForCheck();\n }\n\n constructor(\n public readonly changeDetectorRef: ChangeDetectorRef | null = null, //NOSONAR\n ) {\n super();\n }\n\n public readonly markForCheck = (): void =>\n this.changeDetectorRef?.markForCheck();\n\n public dataStateChange(state: DataStateChangeEvent | State): void {\n this.state = state;\n this.gridData = process(this._detail, this.state);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public pageChange(t: PageChangeEvent): void {\n //NOSONAR\n //This is intentional\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public filterChange(t: CompositeFilterDescriptor): void {\n //NOSONAR\n //This is intentional\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public sortChange(t: SortDescriptor[]): void {\n //NOSONAR\n //This is intentional\n }\n}\n","import {\n Directive,\n Input,\n OnInit,\n OnDestroy,\n AfterViewInit,\n inject,\n} from '@angular/core';\nimport {\n GridComponent,\n PageChangeEvent,\n PagerSettings,\n} from '@progress/kendo-angular-grid';\nimport { Subscribable, Subscriptions } from 'imng-ngrx-utils';\nimport { GridStateChangeEvent, hasHiddenColumns } from 'imng-kendo-grid';\nimport { KendoArrayBasedComponent } from './kendo-array-base-component';\nimport {\n CompositeFilterDescriptor,\n SortDescriptor,\n} from '@progress/kendo-data-query';\n\n@Directive({\n selector: '[imngArrayGrid]',\n})\nexport class IMNG_KENDO_GRID_ARRAY\n implements OnInit, AfterViewInit, OnDestroy, Subscribable\n{\n readonly gridComponent = inject(GridComponent);\n\n public readonly allSubscriptions = new Subscriptions();\n @Input('imngArrayGrid') public arrayComponent?: KendoArrayBasedComponent<\n object,\n object\n >;\n @Input() public pageable: boolean | PagerSettings = true;\n\n ngOnInit(): void {\n this.gridComponent.reorderable = true;\n this.gridComponent.resizable = true;\n this.gridComponent.filterable = 'menu';\n this.gridComponent.sortable = {\n allowUnsort: true,\n mode: 'multiple',\n };\n this.gridComponent.navigable = true;\n this.gridComponent.pageable = this.pageable || {\n info: true,\n type: 'numeric',\n pageSizes: [5, 10, 20, 50, 100], //NOSONAR\n };\n this.allSubscriptions.push(\n this.gridComponent.dataStateChange.subscribe(\n (t: GridStateChangeEvent) => {\n this.gridComponent.sort = t.sort || [];\n this.gridComponent.pageSize = t.take;\n this.gridComponent.skip = t.skip;\n if (this.arrayComponent?.state) {\n this.arrayComponent.state = t;\n this.arrayComponent.dataStateChange(t);\n this.arrayComponent.markForCheck();\n }\n },\n ),\n this.gridComponent.pageChange.subscribe((t: PageChangeEvent) => {\n this.arrayComponent?.pageChange(t);\n }),\n this.gridComponent.sortChange.subscribe((t: SortDescriptor[]) => {\n this.arrayComponent?.sortChange(t);\n }),\n this.gridComponent.filterChange.subscribe(\n (t: CompositeFilterDescriptor) => {\n this.gridComponent.filter = t;\n if (this.arrayComponent) {\n this.arrayComponent.state.filter = t;\n this.arrayComponent.markForCheck();\n this.arrayComponent.filterChange(t);\n }\n },\n ),\n this.arrayComponent?.gridData$.subscribe((t) => {\n this.gridComponent.data = t;\n }),\n );\n\n this.gridComponent.pageSize = this.arrayComponent?.state.take || 20; //NOSONAR\n this.gridComponent.filter = this.arrayComponent?.state.filter || {\n logic: 'and',\n filters: [],\n };\n this.gridComponent.skip = this.arrayComponent?.state.skip ?? 0;\n this.gridComponent.sort = this.arrayComponent?.state.sort || [];\n this.gridComponent.data = this.arrayComponent?.gridData || [];\n if (this.arrayComponent) {\n this.arrayComponent.hasHiddenColumns$ =\n this.gridComponent.columnVisibilityChange.pipe(\n hasHiddenColumns(this.gridComponent),\n );\n }\n }\n\n ngAfterViewInit(): void {\n this.arrayComponent?.markForCheck();\n }\n\n ngOnDestroy(): void {\n this.allSubscriptions.unsubscribeAll();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { IMNG_KENDO_GRID_ARRAY } from './kendo-array-grid.directive';\nimport { ImngKendoGridModule } from 'imng-kendo-grid';\n\n@NgModule({\n imports: [CommonModule, ImngKendoGridModule, IMNG_KENDO_GRID_ARRAY],\n exports: [IMNG_KENDO_GRID_ARRAY],\n})\nexport class ImngKendoGridArrayModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"imng-kendo-grid-array.mjs","sources":["../../../../libs/imng-kendo-grid-array/src/lib/kendo-array-base-component.ts","../../../../libs/imng-kendo-grid-array/src/lib/kendo-array-grid.directive.ts","../../../../libs/imng-kendo-grid-array/src/lib/imng-kendo-grid-array.module.ts","../../../../libs/imng-kendo-grid-array/src/imng-kendo-grid-array.ts"],"sourcesContent":["/* eslint-disable @angular-eslint/prefer-inject */\nimport {\n DataStateChangeEvent,\n SortSettings,\n PageChangeEvent,\n} from '@progress/kendo-angular-grid';\nimport { Input, ChangeDetectorRef, OnDestroy, Component } from '@angular/core';\nimport {\n process,\n State,\n CompositeFilterDescriptor,\n SortDescriptor,\n} from '@progress/kendo-data-query';\nimport { ICompositeFilter, ODataResult, ODataState } from 'imng-kendo-odata';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { Subscribable } from 'imng-ngrx-utils';\nimport { KendoGridBaseComponent } from 'imng-kendo-grid';\n\n@Component({\n template: '',\n})\nexport abstract class KendoArrayBasedComponent<PARENT_ENTITY, LISTED_ENTITY>\n extends KendoGridBaseComponent<LISTED_ENTITY>\n implements OnDestroy, Subscribable\n{\n /**\n * This will allow you to provide a visual indicator that some of the columns have been hidden.\n */\n public hasHiddenColumns$: Observable<boolean> | undefined;\n @Input() public item?: PARENT_ENTITY;\n\n private _detail: LISTED_ENTITY[] = [];\n @Input()\n public set detail(value: LISTED_ENTITY[]) {\n this._detail = value || [];\n this.gridData = process(this._detail, this.state as State);\n this.changeDetectorRef?.markForCheck();\n }\n\n /**\n * A properties enum to make kendo grid columns definitions type safe\n * {@example <kendo-grid-column [field]=\"props.FIELD_NAME\">}\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public abstract readonly props: any; //NOSONAR\n public state: ODataState = {\n skip: 0,\n take: 10,\n };\n\n public readonly sortSettings: SortSettings = {\n allowUnsort: true,\n mode: 'multiple',\n };\n\n private _gridData: ODataResult<LISTED_ENTITY> | LISTED_ENTITY[] = [];\n public gridData$ = new BehaviorSubject<\n ODataResult<LISTED_ENTITY> | LISTED_ENTITY[]\n >({ data: [], total: 0 });\n public get gridData(): ODataResult<LISTED_ENTITY> | LISTED_ENTITY[] {\n return this._gridData;\n }\n public set gridData(value: ODataResult<LISTED_ENTITY> | LISTED_ENTITY[]) {\n this._gridData = value;\n this.gridData$.next(value);\n this.markForCheck();\n }\n\n constructor(\n public readonly changeDetectorRef: ChangeDetectorRef | null = null, //NOSONAR\n ) {\n super();\n }\n\n public readonly markForCheck = (): void =>\n this.changeDetectorRef?.markForCheck();\n\n public dataStateChange(state: DataStateChangeEvent | ODataState): void {\n this.state = state as ODataState;\n this.gridData = process(this._detail, this.state as State);\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public pageChange(t: PageChangeEvent): void {\n //NOSONAR\n //This is intentional\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public filterChange(t: CompositeFilterDescriptor | ICompositeFilter): void {\n //NOSONAR\n //This is intentional\n }\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n public sortChange(t: SortDescriptor[]): void {\n //NOSONAR\n //This is intentional\n }\n}\n","import {\n Directive,\n Input,\n OnInit,\n OnDestroy,\n AfterViewInit,\n inject,\n} from '@angular/core';\nimport {\n GridComponent,\n PageChangeEvent,\n PagerSettings,\n} from '@progress/kendo-angular-grid';\nimport { Subscribable, Subscriptions } from 'imng-ngrx-utils';\nimport { GridStateChangeEvent, hasHiddenColumns } from 'imng-kendo-grid';\nimport { KendoArrayBasedComponent } from './kendo-array-base-component';\nimport {\n CompositeFilterDescriptor,\n SortDescriptor,\n} from '@progress/kendo-data-query';\nimport { ICompositeFilter } from 'imng-odata-client';\nimport { ODataState } from 'imng-kendo-odata';\n\n@Directive({\n selector: '[imngArrayGrid]',\n})\nexport class IMNG_KENDO_GRID_ARRAY\n implements OnInit, AfterViewInit, OnDestroy, Subscribable\n{\n readonly gridComponent = inject(GridComponent);\n\n public readonly allSubscriptions = new Subscriptions();\n @Input('imngArrayGrid') public arrayComponent?: KendoArrayBasedComponent<\n object,\n object\n >;\n @Input() public pageable: boolean | PagerSettings = true;\n\n ngOnInit(): void {\n this.gridComponent.reorderable = true;\n this.gridComponent.resizable = true;\n this.gridComponent.filterable = 'menu';\n this.gridComponent.sortable = {\n allowUnsort: true,\n mode: 'multiple',\n };\n this.gridComponent.navigable = true;\n this.gridComponent.pageable = this.pageable || {\n info: true,\n type: 'numeric',\n pageSizes: [5, 10, 20, 50, 100], //NOSONAR\n };\n this.allSubscriptions.push(\n this.gridComponent.dataStateChange.subscribe(\n (t: GridStateChangeEvent) => {\n this.gridComponent.sort = t.sort || [];\n this.gridComponent.pageSize = t.take;\n this.gridComponent.skip = t.skip;\n if (this.arrayComponent?.state) {\n this.arrayComponent.state = t as ODataState;\n this.arrayComponent.dataStateChange(t);\n this.arrayComponent.markForCheck();\n }\n },\n ),\n this.gridComponent.pageChange.subscribe((t: PageChangeEvent) => {\n this.arrayComponent?.pageChange(t);\n }),\n this.gridComponent.sortChange.subscribe((t: SortDescriptor[]) => {\n this.arrayComponent?.sortChange(t);\n }),\n this.gridComponent.filterChange.subscribe(\n (t: CompositeFilterDescriptor | ICompositeFilter) => {\n this.gridComponent.filter = t as CompositeFilterDescriptor;\n if (this.arrayComponent) {\n this.arrayComponent.state.filter = t as ICompositeFilter;\n this.arrayComponent.markForCheck();\n this.arrayComponent.filterChange(t);\n }\n },\n ),\n this.arrayComponent?.gridData$.subscribe((t) => {\n this.gridComponent.data = t;\n }),\n );\n\n this.gridComponent.pageSize = this.arrayComponent?.state.take || 20; //NOSONAR\n this.gridComponent.filter = (this.arrayComponent?.state\n .filter as CompositeFilterDescriptor) || {\n logic: 'and',\n filters: [],\n };\n this.gridComponent.skip = this.arrayComponent?.state.skip ?? 0;\n this.gridComponent.sort = this.arrayComponent?.state.sort || [];\n this.gridComponent.data = this.arrayComponent?.gridData || [];\n if (this.arrayComponent) {\n this.arrayComponent.hasHiddenColumns$ =\n this.gridComponent.columnVisibilityChange.pipe(\n hasHiddenColumns(this.gridComponent),\n );\n }\n }\n\n ngAfterViewInit(): void {\n this.arrayComponent?.markForCheck();\n }\n\n ngOnDestroy(): void {\n this.allSubscriptions.unsubscribeAll();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { IMNG_KENDO_GRID_ARRAY } from './kendo-array-grid.directive';\nimport { ImngKendoGridModule } from 'imng-kendo-grid';\n\n@NgModule({\n imports: [CommonModule, ImngKendoGridModule, IMNG_KENDO_GRID_ARRAY],\n exports: [IMNG_KENDO_GRID_ARRAY],\n})\nexport class ImngKendoGridArrayModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "imng-kendo-grid-array",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.41.4",
|
|
4
4
|
"keywords": [
|
|
5
5
|
"Angular",
|
|
6
6
|
"NGRX",
|
|
@@ -11,10 +11,10 @@
|
|
|
11
11
|
"@angular/common": "*",
|
|
12
12
|
"@angular/core": "*",
|
|
13
13
|
"@progress/kendo-angular-grid": "*",
|
|
14
|
-
"imng-kendo-grid": "9.
|
|
15
|
-
"imng-kendo-odata": "9.
|
|
16
|
-
"imng-odata-client": "9.
|
|
17
|
-
"imng-ngrx-utils": "9.
|
|
14
|
+
"imng-kendo-grid": "9.41.4",
|
|
15
|
+
"imng-kendo-odata": "9.41.4",
|
|
16
|
+
"imng-odata-client": "9.41.4",
|
|
17
|
+
"imng-ngrx-utils": "9.41.4",
|
|
18
18
|
"rxjs": "*"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
@@ -5,8 +5,8 @@ import * as i2 from 'imng-kendo-grid';
|
|
|
5
5
|
import { KendoGridBaseComponent } from 'imng-kendo-grid';
|
|
6
6
|
import { SortSettings, DataStateChangeEvent, PageChangeEvent, GridComponent, PagerSettings } from '@progress/kendo-angular-grid';
|
|
7
7
|
import { Subscribable, Subscriptions } from 'imng-ngrx-utils';
|
|
8
|
-
import {
|
|
9
|
-
import { ODataResult } from 'imng-kendo-odata';
|
|
8
|
+
import { CompositeFilterDescriptor, SortDescriptor } from '@progress/kendo-data-query';
|
|
9
|
+
import { ODataState, ODataResult, ICompositeFilter } from 'imng-kendo-odata';
|
|
10
10
|
import { Observable, BehaviorSubject } from 'rxjs';
|
|
11
11
|
|
|
12
12
|
declare abstract class KendoArrayBasedComponent<PARENT_ENTITY, LISTED_ENTITY> extends KendoGridBaseComponent<LISTED_ENTITY> implements OnDestroy, Subscribable {
|
|
@@ -23,7 +23,7 @@ declare abstract class KendoArrayBasedComponent<PARENT_ENTITY, LISTED_ENTITY> ex
|
|
|
23
23
|
* {@example <kendo-grid-column [field]="props.FIELD_NAME">}
|
|
24
24
|
*/
|
|
25
25
|
abstract readonly props: any;
|
|
26
|
-
state:
|
|
26
|
+
state: ODataState;
|
|
27
27
|
readonly sortSettings: SortSettings;
|
|
28
28
|
private _gridData;
|
|
29
29
|
gridData$: BehaviorSubject<LISTED_ENTITY[] | ODataResult<LISTED_ENTITY>>;
|
|
@@ -31,9 +31,9 @@ declare abstract class KendoArrayBasedComponent<PARENT_ENTITY, LISTED_ENTITY> ex
|
|
|
31
31
|
set gridData(value: ODataResult<LISTED_ENTITY> | LISTED_ENTITY[]);
|
|
32
32
|
constructor(changeDetectorRef?: ChangeDetectorRef | null);
|
|
33
33
|
readonly markForCheck: () => void;
|
|
34
|
-
dataStateChange(state: DataStateChangeEvent |
|
|
34
|
+
dataStateChange(state: DataStateChangeEvent | ODataState): void;
|
|
35
35
|
pageChange(t: PageChangeEvent): void;
|
|
36
|
-
filterChange(t: CompositeFilterDescriptor): void;
|
|
36
|
+
filterChange(t: CompositeFilterDescriptor | ICompositeFilter): void;
|
|
37
37
|
sortChange(t: SortDescriptor[]): void;
|
|
38
38
|
static ɵfac: i0.ɵɵFactoryDeclaration<KendoArrayBasedComponent<any, any>, never>;
|
|
39
39
|
static ɵcmp: i0.ɵɵComponentDeclaration<KendoArrayBasedComponent<any, any>, "ng-component", never, { "item": { "alias": "item"; "required": false; }; "detail": { "alias": "detail"; "required": false; }; }, {}, never, never, true, never>;
|