imng-kendo-grid 8.175.1 → 8.178.3
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.
- package/fesm2022/imng-kendo-grid.mjs +161 -143
- package/fesm2022/imng-kendo-grid.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -23,131 +23,143 @@ class ImngGridHeaderComponent {
|
|
|
23
23
|
this.reloadEntitiesClicked = new EventEmitter();
|
|
24
24
|
}
|
|
25
25
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ImngGridHeaderComponent, deps: [{ token: GridComponent }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
26
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: ImngGridHeaderComponent, isStandalone: false, selector: "imng-kendo-odata-grid-header", inputs: { entityName: "entityName", hideColumnChooser: "hideColumnChooser", hideResetFilters: "hideResetFilters", hideReloadData: "hideReloadData", hideExports: "hideExports", hasHiddenColumns$: "hasHiddenColumns$" }, outputs: { addItemClicked: "addItemClicked", resetFiltersClicked: "resetFiltersClicked", reloadEntitiesClicked: "reloadEntitiesClicked" }, ngImport: i0, template: `<div class="mr-5 pr-5">
|
|
27
|
+
@if (entityName) {
|
|
28
|
+
<button
|
|
29
|
+
name="imngAddEntity"
|
|
30
|
+
type="button"
|
|
31
|
+
title="Add {{ entityName }}"
|
|
32
|
+
primary="true"
|
|
33
|
+
(click)="addItemClicked.emit()"
|
|
34
|
+
class="btn btn-sm btn-primary mx-1">
|
|
35
|
+
<span class="k-icon k-i-plus-circle"></span> Add {{ entityName }}
|
|
36
|
+
</button>
|
|
37
|
+
}
|
|
38
|
+
@if (hideResetFilters !== true) {
|
|
39
|
+
<button
|
|
40
|
+
name="imngResetFilters"
|
|
41
|
+
type="button"
|
|
42
|
+
title="Reset Filters"
|
|
43
|
+
(click)="resetFiltersClicked.emit()"
|
|
44
|
+
class="btn btn-sm mx-1">
|
|
45
|
+
<span class="k-icon k-i-filter-clear"></span> Reset Filters
|
|
46
|
+
</button>
|
|
47
|
+
}
|
|
48
|
+
@if (hideReloadData !== true) {
|
|
49
|
+
<button
|
|
50
|
+
name="imngReloadData"
|
|
51
|
+
type="button"
|
|
52
|
+
title="Clear Cache And Reload Data"
|
|
53
|
+
(click)="reloadEntitiesClicked.emit()"
|
|
54
|
+
class="btn btn-sm mx-1">
|
|
55
|
+
<span class="k-icon k-i-reset"></span> Reload Data
|
|
56
|
+
</button>
|
|
57
|
+
}
|
|
58
|
+
@if (hideExports !== true) {
|
|
59
|
+
<button
|
|
60
|
+
name="imngExportPDF"
|
|
61
|
+
type="button"
|
|
62
|
+
title="Export To PDF"
|
|
63
|
+
kendoGridPDFCommand
|
|
64
|
+
icon="file-pdf"
|
|
65
|
+
class="btn btn-sm mx-1"
|
|
66
|
+
(click)="parentGrid.saveAsPDF()">
|
|
67
|
+
<span class="k-icon k-i-pdf"></span> Export to PDF
|
|
68
|
+
</button>
|
|
69
|
+
}
|
|
70
|
+
@if (hideExports !== true) {
|
|
71
|
+
<button
|
|
72
|
+
name="imngExportExcel'"
|
|
73
|
+
type="button"
|
|
74
|
+
title="Export To Excel"
|
|
75
|
+
kendoGridExcelCommand
|
|
76
|
+
icon="file-excel"
|
|
77
|
+
class="btn btn-sm mx-1"
|
|
78
|
+
(click)="parentGrid.saveAsExcel()">
|
|
79
|
+
<span class="k-icon k-i-excel"></span> Export To Excel
|
|
80
|
+
</button>
|
|
81
|
+
}
|
|
82
|
+
@if (hideColumnChooser !== true) {
|
|
83
|
+
<kendo-grid-column-chooser
|
|
84
|
+
name="imngColumnChooser"
|
|
85
|
+
title="Columns"
|
|
86
|
+
[allowHideAll]="true"
|
|
87
|
+
[autoSync]="true"
|
|
83
88
|
[ngClass]="{
|
|
84
89
|
'text-primary': (hasHiddenColumns$ | async),
|
|
85
90
|
}"></kendo-grid-column-chooser>
|
|
86
|
-
|
|
91
|
+
}
|
|
92
|
+
</div>`, isInline: true, styles: [".btn-sm{height:30px;border-radius:2px;background-color:#f5f5f5;border-color:#00000014}.btn-primary{background-color:#007bff}.k-icon{padding-bottom:3px}.k-bare{border-color:#00000014!important;background-color:#f5f5f5!important;background-image:linear-gradient(#0000,#00000005)!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.GridToolbarFocusableDirective, selector: " [kendoGridToolbarFocusable], [kendoGridAddCommand], [kendoGridCancelCommand], [kendoGridEditCommand], [kendoGridRemoveCommand], [kendoGridSaveCommand], [kendoGridExcelCommand], [kendoGridPDFCommand] " }, { kind: "component", type: i2.ColumnChooserComponent, selector: "kendo-grid-column-chooser", inputs: ["autoSync", "allowHideAll"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
|
|
87
93
|
}
|
|
88
94
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ImngGridHeaderComponent, decorators: [{
|
|
89
95
|
type: Component,
|
|
90
96
|
args: [{ selector: 'imng-kendo-odata-grid-header', template: `<div class="mr-5 pr-5">
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
97
|
+
@if (entityName) {
|
|
98
|
+
<button
|
|
99
|
+
name="imngAddEntity"
|
|
100
|
+
type="button"
|
|
101
|
+
title="Add {{ entityName }}"
|
|
102
|
+
primary="true"
|
|
103
|
+
(click)="addItemClicked.emit()"
|
|
104
|
+
class="btn btn-sm btn-primary mx-1">
|
|
105
|
+
<span class="k-icon k-i-plus-circle"></span> Add {{ entityName }}
|
|
106
|
+
</button>
|
|
107
|
+
}
|
|
108
|
+
@if (hideResetFilters !== true) {
|
|
109
|
+
<button
|
|
110
|
+
name="imngResetFilters"
|
|
111
|
+
type="button"
|
|
112
|
+
title="Reset Filters"
|
|
113
|
+
(click)="resetFiltersClicked.emit()"
|
|
114
|
+
class="btn btn-sm mx-1">
|
|
115
|
+
<span class="k-icon k-i-filter-clear"></span> Reset Filters
|
|
116
|
+
</button>
|
|
117
|
+
}
|
|
118
|
+
@if (hideReloadData !== true) {
|
|
119
|
+
<button
|
|
120
|
+
name="imngReloadData"
|
|
121
|
+
type="button"
|
|
122
|
+
title="Clear Cache And Reload Data"
|
|
123
|
+
(click)="reloadEntitiesClicked.emit()"
|
|
124
|
+
class="btn btn-sm mx-1">
|
|
125
|
+
<span class="k-icon k-i-reset"></span> Reload Data
|
|
126
|
+
</button>
|
|
127
|
+
}
|
|
128
|
+
@if (hideExports !== true) {
|
|
129
|
+
<button
|
|
130
|
+
name="imngExportPDF"
|
|
131
|
+
type="button"
|
|
132
|
+
title="Export To PDF"
|
|
133
|
+
kendoGridPDFCommand
|
|
134
|
+
icon="file-pdf"
|
|
135
|
+
class="btn btn-sm mx-1"
|
|
136
|
+
(click)="parentGrid.saveAsPDF()">
|
|
137
|
+
<span class="k-icon k-i-pdf"></span> Export to PDF
|
|
138
|
+
</button>
|
|
139
|
+
}
|
|
140
|
+
@if (hideExports !== true) {
|
|
141
|
+
<button
|
|
142
|
+
name="imngExportExcel'"
|
|
143
|
+
type="button"
|
|
144
|
+
title="Export To Excel"
|
|
145
|
+
kendoGridExcelCommand
|
|
146
|
+
icon="file-excel"
|
|
147
|
+
class="btn btn-sm mx-1"
|
|
148
|
+
(click)="parentGrid.saveAsExcel()">
|
|
149
|
+
<span class="k-icon k-i-excel"></span> Export To Excel
|
|
150
|
+
</button>
|
|
151
|
+
}
|
|
152
|
+
@if (hideColumnChooser !== true) {
|
|
153
|
+
<kendo-grid-column-chooser
|
|
154
|
+
name="imngColumnChooser"
|
|
155
|
+
title="Columns"
|
|
156
|
+
[allowHideAll]="true"
|
|
157
|
+
[autoSync]="true"
|
|
147
158
|
[ngClass]="{
|
|
148
159
|
'text-primary': (hasHiddenColumns$ | async),
|
|
149
160
|
}"></kendo-grid-column-chooser>
|
|
150
|
-
|
|
161
|
+
}
|
|
162
|
+
</div>`, standalone: false, styles: [".btn-sm{height:30px;border-radius:2px;background-color:#f5f5f5;border-color:#00000014}.btn-primary{background-color:#007bff}.k-icon{padding-bottom:3px}.k-bare{border-color:#00000014!important;background-color:#f5f5f5!important;background-image:linear-gradient(#0000,#00000005)!important}\n"] }]
|
|
151
163
|
}], ctorParameters: () => [{ type: i2.GridComponent, decorators: [{
|
|
152
164
|
type: Inject,
|
|
153
165
|
args: [GridComponent]
|
|
@@ -209,41 +221,47 @@ class ImngGridChildColumnTemplateComponent {
|
|
|
209
221
|
this.showMoreClicked.emit();
|
|
210
222
|
}
|
|
211
223
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ImngGridChildColumnTemplateComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
212
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
224
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: ImngGridChildColumnTemplateComponent, isStandalone: false, selector: "imng-kendo-grid-child-column-template", inputs: { field: "field", visibleRecCount: "visibleRecCount", showMore: "showMore", toolTipJoinCharacter: "toolTipJoinCharacter", data: "data" }, outputs: { showMoreClicked: "showMoreClicked" }, ngImport: i0, template: `@for (item of currentData | slice: 0:visibleRecCount; track item) {
|
|
225
|
+
<div>
|
|
226
|
+
{{ item }}
|
|
227
|
+
</div>
|
|
228
|
+
}
|
|
229
|
+
@if (showMore && (currentData?.length || 0) > visibleRecCount) {
|
|
230
|
+
<button
|
|
231
|
+
type="button"
|
|
232
|
+
class="btn btn-sm btn-primary"
|
|
233
|
+
[title]="formatToolTip()"
|
|
234
|
+
(click)="moreClicked()"
|
|
221
235
|
>
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
236
|
+
More ...
|
|
237
|
+
<span class="badge bg-secondary">{{
|
|
238
|
+
currentData.length - visibleRecCount
|
|
239
|
+
}}</span>
|
|
240
|
+
</button>
|
|
241
|
+
}`, isInline: true, dependencies: [{ kind: "pipe", type: i1.SlicePipe, name: "slice" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
227
242
|
}
|
|
228
243
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ImngGridChildColumnTemplateComponent, decorators: [{
|
|
229
244
|
type: Component,
|
|
230
245
|
args: [{
|
|
231
246
|
selector: 'imng-kendo-grid-child-column-template',
|
|
232
|
-
template:
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
247
|
+
template: `@for (item of currentData | slice: 0:visibleRecCount; track item) {
|
|
248
|
+
<div>
|
|
249
|
+
{{ item }}
|
|
250
|
+
</div>
|
|
251
|
+
}
|
|
252
|
+
@if (showMore && (currentData?.length || 0) > visibleRecCount) {
|
|
253
|
+
<button
|
|
254
|
+
type="button"
|
|
255
|
+
class="btn btn-sm btn-primary"
|
|
256
|
+
[title]="formatToolTip()"
|
|
257
|
+
(click)="moreClicked()"
|
|
241
258
|
>
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
259
|
+
More ...
|
|
260
|
+
<span class="badge bg-secondary">{{
|
|
261
|
+
currentData.length - visibleRecCount
|
|
262
|
+
}}</span>
|
|
263
|
+
</button>
|
|
264
|
+
}`,
|
|
247
265
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
248
266
|
standalone: false
|
|
249
267
|
}]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imng-kendo-grid.mjs","sources":["../../../../libs/imng-kendo-grid/src/lib/grid-header-component/grid-header.component.ts","../../../../libs/imng-kendo-grid/src/lib/kendo-child-column-component/kendo-child-column-template.component.ts","../../../../libs/imng-kendo-grid/src/lib/kendo-copy-component/kendo-copy.component.ts","../../../../libs/imng-kendo-grid/src/lib/imng-kendo-grid.module.ts","../../../../libs/imng-kendo-grid/src/lib/kendo-has-hidden-columns.ts","../../../../libs/imng-kendo-grid/src/lib/kendo-grid-base-component.ts","../../../../libs/imng-kendo-grid/src/imng-kendo-grid.ts"],"sourcesContent":["import { Component, EventEmitter, Inject, Input, Output } from '@angular/core';\nimport { GridComponent } from '@progress/kendo-angular-grid';\nimport { Observable } from 'rxjs';\n\n@Component({\n selector: 'imng-kendo-odata-grid-header',\n template: `<div class=\"mr-5 pr-5\">\n <button\n name=\"imngAddEntity\"\n *ngIf=\"entityName\"\n type=\"button\"\n title=\"Add {{ entityName }}\"\n primary=\"true\"\n (click)=\"addItemClicked.emit()\"\n class=\"btn btn-sm btn-primary mx-1\">\n <span class=\"k-icon k-i-plus-circle\"></span> Add {{ entityName }}\n </button>\n <button\n name=\"imngResetFilters\"\n *ngIf=\"hideResetFilters !== true\"\n type=\"button\"\n title=\"Reset Filters\"\n (click)=\"resetFiltersClicked.emit()\"\n class=\"btn btn-sm mx-1\">\n <span class=\"k-icon k-i-filter-clear\"></span> Reset Filters\n </button>\n <button\n name=\"imngReloadData\"\n *ngIf=\"hideReloadData !== true\"\n type=\"button\"\n title=\"Clear Cache And Reload Data\"\n (click)=\"reloadEntitiesClicked.emit()\"\n class=\"btn btn-sm mx-1\">\n <span class=\"k-icon k-i-reset\"></span> Reload Data\n </button>\n <button\n name=\"imngExportPDF\"\n *ngIf=\"hideExports !== true\"\n type=\"button\"\n title=\"Export To PDF\"\n kendoGridPDFCommand\n icon=\"file-pdf\"\n class=\"btn btn-sm mx-1\"\n (click)=\"parentGrid.saveAsPDF()\">\n <span class=\"k-icon k-i-pdf\"></span> Export to PDF\n </button>\n <button\n name=\"imngExportExcel'\"\n *ngIf=\"hideExports !== true\"\n type=\"button\"\n title=\"Export To Excel\"\n kendoGridExcelCommand\n icon=\"file-excel\"\n class=\"btn btn-sm mx-1\"\n (click)=\"parentGrid.saveAsExcel()\">\n <span class=\"k-icon k-i-excel\"></span> Export To Excel\n </button>\n <kendo-grid-column-chooser\n name=\"imngColumnChooser\"\n *ngIf=\"hideColumnChooser !== true\"\n title=\"Columns\"\n [allowHideAll]=\"true\"\n [autoSync]=\"true\"\n [ngClass]=\"{\n 'text-primary': (hasHiddenColumns$ | async),\n }\"></kendo-grid-column-chooser>\n </div> `,\n styles: [\n `\n .btn-sm {\n height: 30px;\n border-radius: 2px;\n background-color: #f5f5f5;\n border-color: rgba(0, 0, 0, 0.08);\n }\n .btn-primary {\n background-color: #007bff;\n }\n .k-icon {\n padding-bottom: 3px;\n }\n .k-bare {\n border-color: rgba(0, 0, 0, 0.08) !important;\n background-color: #f5f5f5 !important;\n background-image: linear-gradient(\n rgba(0, 0, 0, 0),\n rgba(0, 0, 0, 0.02)\n ) !important;\n }\n `,\n ],\n standalone: false\n})\nexport class ImngGridHeaderComponent {\n @Input()\n public entityName = '';\n @Input()\n public hideColumnChooser = false;\n @Input()\n public hideResetFilters = false;\n @Input()\n public hideReloadData = false;\n @Input()\n public hideExports = false;\n @Input()\n public hasHiddenColumns$: Observable<boolean> | undefined;\n @Output()\n public addItemClicked = new EventEmitter();\n @Output()\n public resetFiltersClicked = new EventEmitter();\n @Output()\n public reloadEntitiesClicked = new EventEmitter();\n constructor(@Inject(GridComponent) public parentGrid: GridComponent) {}\n}\n","import {\n Component,\n Input,\n Output,\n EventEmitter,\n ChangeDetectionStrategy,\n OnInit,\n ChangeDetectorRef,\n} from '@angular/core';\n\n@Component({\n selector: 'imng-kendo-grid-child-column-template',\n template: `<div *ngFor=\"let item of currentData | slice: 0:visibleRecCount\">\n {{ item }}\n </div>\n <button\n type=\"button\"\n *ngIf=\"showMore && (currentData?.length || 0) > visibleRecCount\"\n class=\"btn btn-sm btn-primary\"\n [title]=\"formatToolTip()\"\n (click)=\"moreClicked()\"\n >\n More ...\n <span class=\"badge bg-secondary\">{{\n currentData.length - visibleRecCount\n }}</span>\n </button>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport class ImngGridChildColumnTemplateComponent implements OnInit {\n private _data: unknown[] = [];\n public currentData: unknown[] = [];\n private initialized = false;\n\n @Output() showMoreClicked = new EventEmitter();\n @Input() public field = '';\n @Input() public visibleRecCount = 5; //NOSONAR\n @Input() public showMore = true;\n @Input() public toolTipJoinCharacter = ';';\n @Input() set data(value: unknown[]) {\n this._data = value;\n if (this.initialized) {\n this.ngOnInit();\n this.changeDetectorRef.markForCheck();\n }\n }\n get data(): unknown[] {\n return this._data;\n }\n\n constructor(public readonly changeDetectorRef: ChangeDetectorRef) { }\n\n public ngOnInit(): void {\n this.currentData = (this.data || [])\n .filter((val) => (typeof val === 'string' ? val.length > 0 : true))\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .map((t: any) => t[this.field]); //NOSONAR\n this.initialized = true;\n }\n public formatToolTip(): string {\n return this.currentData\n .filter((_val, index) => index >= this.visibleRecCount)\n .join(`${this.toolTipJoinCharacter} `);\n }\n\n public moreClicked(): void {\n this.showMoreClicked.emit();\n }\n}\n","import {\n Component,\n Input,\n ChangeDetectionStrategy,\n OnInit,\n} from '@angular/core';\n\n@Component({\n selector: 'imng-kendo-copy[copyValue]',\n template: `\n <a (click)=\"copy()\" [title]=\"'Copy the full value: ' + copyValue\"\n >{{ displayValue }} <span\n class=\"k-icon k-i-copy k-icon-sm k-color-primary\"></span\n ></a>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport class ImngKendoCopyComponent implements OnInit {\n /**\n * Optional\n */\n @Input() public displayValue: unknown;\n /**\n * Required\n */\n @Input() public copyValue = '';\n\n ngOnInit(): void {\n if (this.copyValue && !this.displayValue) {\n this.displayValue = this.copyValue;\n }\n }\n public copy(): void {\n navigator.clipboard?.writeText(this.copyValue);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { GridModule } from '@progress/kendo-angular-grid';\nimport { ImngGridHeaderComponent } from './grid-header-component/grid-header.component';\nimport { ImngGridChildColumnTemplateComponent } from './kendo-child-column-component/kendo-child-column-template.component';\nimport { ImngKendoCopyComponent } from './kendo-copy-component/kendo-copy.component';\n\n@NgModule({\n declarations: [ImngGridHeaderComponent, ImngGridChildColumnTemplateComponent, ImngKendoCopyComponent],\n imports: [CommonModule, GridModule],\n exports: [ImngGridHeaderComponent, ImngGridChildColumnTemplateComponent, ImngKendoCopyComponent],\n})\nexport class ImngKendoGridModule { }\n","import { GridComponent } from '@progress/kendo-angular-grid';\nimport { map } from 'rxjs';\n\nexport function hasHiddenColumns(gridComponent: GridComponent) {\n return map(() => gridComponent.columns.some((s) => s.hidden));\n}\n","import { Component, OnDestroy } from '@angular/core';\nimport { Subscribable, Subscriptions } from 'imng-ngrx-utils';\nimport { toLocalTimeStamp, getRelatedValue } from 'imng-nrsrx-client-utils';\nimport { menuIcon } from '@progress/kendo-svg-icons';\nimport {\n EnumProperties,\n getEnum,\n getEnumDisplayText,\n IEnumValue,\n} from 'openapi-ts-generator/enums';\n\n@Component({\n template: '',\n standalone: false\n})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport abstract class KendoGridBaseComponent<ENTITY>\n implements OnDestroy, Subscribable\n{\n public readonly allSubscriptions = new Subscriptions();\n public readonly EnumProperties = EnumProperties;\n public readonly getRelatedValue = getRelatedValue;\n public icons = {\n menuIcon: menuIcon,\n };\n\n public getExportFileName(exportName: string): string {\n return `${exportName}-${toLocalTimeStamp()}`;\n }\n\n public getRelatedField(...segments: string[]): string {\n return segments.join('.');\n }\n public getEnumKey(data: IEnumValue[], nameValue: string): number | undefined {\n return this.getEnum(data, nameValue)?.key;\n }\n public getEnumText(\n data: IEnumValue[],\n looupValue: string,\n ): string | undefined {\n return getEnumDisplayText(data, looupValue);\n }\n public getEnum(\n data: IEnumValue[],\n looupValue: string,\n ): IEnumValue | undefined {\n return getEnum(data, looupValue);\n }\n public ngOnDestroy(): void {\n this.allSubscriptions.unsubscribeAll();\n }\n}\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.mjs","sources":["../../../../libs/imng-kendo-grid/src/lib/grid-header-component/grid-header.component.ts","../../../../libs/imng-kendo-grid/src/lib/kendo-child-column-component/kendo-child-column-template.component.ts","../../../../libs/imng-kendo-grid/src/lib/kendo-copy-component/kendo-copy.component.ts","../../../../libs/imng-kendo-grid/src/lib/imng-kendo-grid.module.ts","../../../../libs/imng-kendo-grid/src/lib/kendo-has-hidden-columns.ts","../../../../libs/imng-kendo-grid/src/lib/kendo-grid-base-component.ts","../../../../libs/imng-kendo-grid/src/imng-kendo-grid.ts"],"sourcesContent":["import { Component, EventEmitter, Inject, Input, Output } from '@angular/core';\nimport { GridComponent } from '@progress/kendo-angular-grid';\nimport { Observable } from 'rxjs';\n\n@Component({\n selector: 'imng-kendo-odata-grid-header',\n template: `<div class=\"mr-5 pr-5\">\n @if (entityName) {\n <button\n name=\"imngAddEntity\"\n type=\"button\"\n title=\"Add {{ entityName }}\"\n primary=\"true\"\n (click)=\"addItemClicked.emit()\"\n class=\"btn btn-sm btn-primary mx-1\">\n <span class=\"k-icon k-i-plus-circle\"></span> Add {{ entityName }}\n </button>\n }\n @if (hideResetFilters !== true) {\n <button\n name=\"imngResetFilters\"\n type=\"button\"\n title=\"Reset Filters\"\n (click)=\"resetFiltersClicked.emit()\"\n class=\"btn btn-sm mx-1\">\n <span class=\"k-icon k-i-filter-clear\"></span> Reset Filters\n </button>\n }\n @if (hideReloadData !== true) {\n <button\n name=\"imngReloadData\"\n type=\"button\"\n title=\"Clear Cache And Reload Data\"\n (click)=\"reloadEntitiesClicked.emit()\"\n class=\"btn btn-sm mx-1\">\n <span class=\"k-icon k-i-reset\"></span> Reload Data\n </button>\n }\n @if (hideExports !== true) {\n <button\n name=\"imngExportPDF\"\n type=\"button\"\n title=\"Export To PDF\"\n kendoGridPDFCommand\n icon=\"file-pdf\"\n class=\"btn btn-sm mx-1\"\n (click)=\"parentGrid.saveAsPDF()\">\n <span class=\"k-icon k-i-pdf\"></span> Export to PDF\n </button>\n }\n @if (hideExports !== true) {\n <button\n name=\"imngExportExcel'\"\n type=\"button\"\n title=\"Export To Excel\"\n kendoGridExcelCommand\n icon=\"file-excel\"\n class=\"btn btn-sm mx-1\"\n (click)=\"parentGrid.saveAsExcel()\">\n <span class=\"k-icon k-i-excel\"></span> Export To Excel\n </button>\n }\n @if (hideColumnChooser !== true) {\n <kendo-grid-column-chooser\n name=\"imngColumnChooser\"\n title=\"Columns\"\n [allowHideAll]=\"true\"\n [autoSync]=\"true\"\n [ngClass]=\"{\n 'text-primary': (hasHiddenColumns$ | async),\n }\"></kendo-grid-column-chooser>\n }\n </div>`,\n styles: [\n `\n .btn-sm {\n height: 30px;\n border-radius: 2px;\n background-color: #f5f5f5;\n border-color: rgba(0, 0, 0, 0.08);\n }\n .btn-primary {\n background-color: #007bff;\n }\n .k-icon {\n padding-bottom: 3px;\n }\n .k-bare {\n border-color: rgba(0, 0, 0, 0.08) !important;\n background-color: #f5f5f5 !important;\n background-image: linear-gradient(\n rgba(0, 0, 0, 0),\n rgba(0, 0, 0, 0.02)\n ) !important;\n }\n `,\n ],\n standalone: false\n})\nexport class ImngGridHeaderComponent {\n @Input()\n public entityName = '';\n @Input()\n public hideColumnChooser = false;\n @Input()\n public hideResetFilters = false;\n @Input()\n public hideReloadData = false;\n @Input()\n public hideExports = false;\n @Input()\n public hasHiddenColumns$: Observable<boolean> | undefined;\n @Output()\n public addItemClicked = new EventEmitter();\n @Output()\n public resetFiltersClicked = new EventEmitter();\n @Output()\n public reloadEntitiesClicked = new EventEmitter();\n constructor(@Inject(GridComponent) public parentGrid: GridComponent) {}\n}\n","import {\n Component,\n Input,\n Output,\n EventEmitter,\n ChangeDetectionStrategy,\n OnInit,\n ChangeDetectorRef,\n} from '@angular/core';\n\n@Component({\n selector: 'imng-kendo-grid-child-column-template',\n template: `@for (item of currentData | slice: 0:visibleRecCount; track item) {\n <div>\n {{ item }}\n </div>\n}\n@if (showMore && (currentData?.length || 0) > visibleRecCount) {\n <button\n type=\"button\"\n class=\"btn btn-sm btn-primary\"\n [title]=\"formatToolTip()\"\n (click)=\"moreClicked()\"\n >\n More ...\n <span class=\"badge bg-secondary\">{{\n currentData.length - visibleRecCount\n }}</span>\n </button>\n}`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport class ImngGridChildColumnTemplateComponent implements OnInit {\n private _data: unknown[] = [];\n public currentData: unknown[] = [];\n private initialized = false;\n\n @Output() showMoreClicked = new EventEmitter();\n @Input() public field = '';\n @Input() public visibleRecCount = 5; //NOSONAR\n @Input() public showMore = true;\n @Input() public toolTipJoinCharacter = ';';\n @Input() set data(value: unknown[]) {\n this._data = value;\n if (this.initialized) {\n this.ngOnInit();\n this.changeDetectorRef.markForCheck();\n }\n }\n get data(): unknown[] {\n return this._data;\n }\n\n constructor(public readonly changeDetectorRef: ChangeDetectorRef) { }\n\n public ngOnInit(): void {\n this.currentData = (this.data || [])\n .filter((val) => (typeof val === 'string' ? val.length > 0 : true))\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n .map((t: any) => t[this.field]); //NOSONAR\n this.initialized = true;\n }\n public formatToolTip(): string {\n return this.currentData\n .filter((_val, index) => index >= this.visibleRecCount)\n .join(`${this.toolTipJoinCharacter} `);\n }\n\n public moreClicked(): void {\n this.showMoreClicked.emit();\n }\n}\n","import {\n Component,\n Input,\n ChangeDetectionStrategy,\n OnInit,\n} from '@angular/core';\n\n@Component({\n selector: 'imng-kendo-copy[copyValue]',\n template: `\n <a (click)=\"copy()\" [title]=\"'Copy the full value: ' + copyValue\"\n >{{ displayValue }} <span\n class=\"k-icon k-i-copy k-icon-sm k-color-primary\"></span\n ></a>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false\n})\nexport class ImngKendoCopyComponent implements OnInit {\n /**\n * Optional\n */\n @Input() public displayValue: unknown;\n /**\n * Required\n */\n @Input() public copyValue = '';\n\n ngOnInit(): void {\n if (this.copyValue && !this.displayValue) {\n this.displayValue = this.copyValue;\n }\n }\n public copy(): void {\n navigator.clipboard?.writeText(this.copyValue);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { GridModule } from '@progress/kendo-angular-grid';\nimport { ImngGridHeaderComponent } from './grid-header-component/grid-header.component';\nimport { ImngGridChildColumnTemplateComponent } from './kendo-child-column-component/kendo-child-column-template.component';\nimport { ImngKendoCopyComponent } from './kendo-copy-component/kendo-copy.component';\n\n@NgModule({\n declarations: [ImngGridHeaderComponent, ImngGridChildColumnTemplateComponent, ImngKendoCopyComponent],\n imports: [CommonModule, GridModule],\n exports: [ImngGridHeaderComponent, ImngGridChildColumnTemplateComponent, ImngKendoCopyComponent],\n})\nexport class ImngKendoGridModule { }\n","import { GridComponent } from '@progress/kendo-angular-grid';\nimport { map } from 'rxjs';\n\nexport function hasHiddenColumns(gridComponent: GridComponent) {\n return map(() => gridComponent.columns.some((s) => s.hidden));\n}\n","import { Component, OnDestroy } from '@angular/core';\nimport { Subscribable, Subscriptions } from 'imng-ngrx-utils';\nimport { toLocalTimeStamp, getRelatedValue } from 'imng-nrsrx-client-utils';\nimport { menuIcon } from '@progress/kendo-svg-icons';\nimport {\n EnumProperties,\n getEnum,\n getEnumDisplayText,\n IEnumValue,\n} from 'openapi-ts-generator/enums';\n\n@Component({\n template: '',\n standalone: false\n})\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport abstract class KendoGridBaseComponent<ENTITY>\n implements OnDestroy, Subscribable\n{\n public readonly allSubscriptions = new Subscriptions();\n public readonly EnumProperties = EnumProperties;\n public readonly getRelatedValue = getRelatedValue;\n public icons = {\n menuIcon: menuIcon,\n };\n\n public getExportFileName(exportName: string): string {\n return `${exportName}-${toLocalTimeStamp()}`;\n }\n\n public getRelatedField(...segments: string[]): string {\n return segments.join('.');\n }\n public getEnumKey(data: IEnumValue[], nameValue: string): number | undefined {\n return this.getEnum(data, nameValue)?.key;\n }\n public getEnumText(\n data: IEnumValue[],\n looupValue: string,\n ): string | undefined {\n return getEnumDisplayText(data, looupValue);\n }\n public getEnum(\n data: IEnumValue[],\n looupValue: string,\n ): IEnumValue | undefined {\n return getEnum(data, looupValue);\n }\n public ngOnDestroy(): void {\n this.allSubscriptions.unsubscribeAll();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|