@slickgrid-universal/row-detail-view-plugin 5.0.1 → 5.2.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.
- package/dist/cjs/slickRowDetailView.js +6 -12
- package/dist/cjs/slickRowDetailView.js.map +1 -1
- package/dist/esm/slickRowDetailView.js +6 -12
- package/dist/esm/slickRowDetailView.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/slickRowDetailView.d.ts +1 -1
- package/dist/types/slickRowDetailView.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/slickRowDetailView.ts +39 -33
|
@@ -125,7 +125,7 @@ export declare class SlickRowDetailView implements ExternalResource, UniversalRo
|
|
|
125
125
|
protected handleScroll(): void;
|
|
126
126
|
protected notifyOutOfViewport(item: any, rowId: number | string): void;
|
|
127
127
|
protected notifyBackToViewportWhenDomExist(item: any, rowId: number | string): void;
|
|
128
|
-
protected syncOutOfViewportArray(rowId: number | string, isAdding: boolean):
|
|
128
|
+
protected syncOutOfViewportArray(rowId: number | string, isAdding: boolean): Array<string | number>;
|
|
129
129
|
protected toggleRowSelection(rowNumber: number, dataContext: any): void;
|
|
130
130
|
}
|
|
131
131
|
//# sourceMappingURL=slickRowDetailView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slickRowDetailView.d.ts","sourceRoot":"","sources":["../../src/slickRowDetailView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,UAAU,EAAE,iBAAiB,EAAuB,MAAM,6BAA6B,CAAC;AACnH,OAAO,KAAK,EACV,MAAM,EACN,gBAAgB,EAChB,uBAAuB,EACvB,UAAU,EACV,0BAA0B,EAC1B,2BAA2B,EAC3B,4BAA4B,EAC5B,6BAA6B,EAC7B,4BAA4B,EAC5B,2BAA2B,EAC3B,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,SAAS,EACT,kBAAkB,IAAI,sBAAsB,EAC5C,aAAa,EACb,cAAc,EACd,mBAAmB,EACpB,MAAM,6BAA6B,CAAC;AAGrC;;;;;GAKG;AACH,qBAAa,kBAAmB,YAAW,gBAAgB,EAAE,sBAAsB;IA0DrE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa;IAvD3D,UAAU,kBAA4B;IAEtC,6CAA6C;IAC7C,gBAAgB,
|
|
1
|
+
{"version":3,"file":"slickRowDetailView.d.ts","sourceRoot":"","sources":["../../src/slickRowDetailView.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@slickgrid-universal/row-detail-view-plugin",
|
|
3
|
-
"version": "5.0
|
|
3
|
+
"version": "5.2.0",
|
|
4
4
|
"description": "SlickRowDetail plugin - A plugin to add Row Detail Panel",
|
|
5
5
|
"main": "./dist/cjs/index.js",
|
|
6
6
|
"module": "./dist/esm/index.js",
|
|
@@ -38,8 +38,8 @@
|
|
|
38
38
|
"not dead"
|
|
39
39
|
],
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@slickgrid-universal/common": "~5.0
|
|
42
|
-
"@slickgrid-universal/utils": "~5.
|
|
41
|
+
"@slickgrid-universal/common": "~5.2.0",
|
|
42
|
+
"@slickgrid-universal/utils": "~5.2.0"
|
|
43
43
|
},
|
|
44
|
-
"gitHead": "
|
|
44
|
+
"gitHead": "d7de27ab3ac3c7e2d48302603ac76aaf794e66a2"
|
|
45
45
|
}
|
|
@@ -33,22 +33,22 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
33
33
|
pluginName = 'RowDetailView' as const;
|
|
34
34
|
|
|
35
35
|
/** Fired when the async response finished */
|
|
36
|
-
onAsyncEndUpdate
|
|
36
|
+
onAsyncEndUpdate: SlickEvent<OnRowDetailAsyncEndUpdateArgs>;
|
|
37
37
|
|
|
38
38
|
/** This event must be used with the "notify" by the end user once the Asynchronous Server call returns the item detail */
|
|
39
|
-
onAsyncResponse
|
|
39
|
+
onAsyncResponse: SlickEvent<OnRowDetailAsyncResponseArgs>;
|
|
40
40
|
|
|
41
41
|
/** Fired after the row detail gets toggled */
|
|
42
|
-
onAfterRowDetailToggle
|
|
42
|
+
onAfterRowDetailToggle: SlickEvent<OnAfterRowDetailToggleArgs>;
|
|
43
43
|
|
|
44
44
|
/** Fired before the row detail gets toggled */
|
|
45
|
-
onBeforeRowDetailToggle
|
|
45
|
+
onBeforeRowDetailToggle: SlickEvent<OnBeforeRowDetailToggleArgs>;
|
|
46
46
|
|
|
47
47
|
/** Fired after the row detail gets toggled */
|
|
48
|
-
onRowBackToViewportRange
|
|
48
|
+
onRowBackToViewportRange: SlickEvent<OnRowBackToViewportRangeArgs>;
|
|
49
49
|
|
|
50
50
|
/** Fired after a row becomes out of viewport range (when user can't see the row anymore) */
|
|
51
|
-
onRowOutOfViewportRange
|
|
51
|
+
onRowOutOfViewportRange: SlickEvent<OnRowOutOfViewportRangeArgs>;
|
|
52
52
|
|
|
53
53
|
// --
|
|
54
54
|
// protected props
|
|
@@ -87,9 +87,15 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
87
87
|
/** Constructor of the SlickGrid 3rd party plugin, it can optionally receive options */
|
|
88
88
|
constructor(protected readonly pubSubService: PubSubService) {
|
|
89
89
|
this._eventHandler = new SlickEventHandler();
|
|
90
|
+
this.onAsyncEndUpdate = new SlickEvent<OnRowDetailAsyncEndUpdateArgs>('onAsyncEndUpdate');
|
|
91
|
+
this.onAsyncResponse = new SlickEvent<OnRowDetailAsyncResponseArgs>('onAsyncResponse');
|
|
92
|
+
this.onAfterRowDetailToggle = new SlickEvent<OnAfterRowDetailToggleArgs>('onAfterRowDetailToggle');
|
|
93
|
+
this.onBeforeRowDetailToggle = new SlickEvent<OnBeforeRowDetailToggleArgs>('onBeforeRowDetailToggle');
|
|
94
|
+
this.onRowBackToViewportRange = new SlickEvent<OnRowBackToViewportRangeArgs>('onRowBackToViewportRange');
|
|
95
|
+
this.onRowOutOfViewportRange = new SlickEvent<OnRowOutOfViewportRangeArgs>('onRowOutOfViewportRange');
|
|
90
96
|
}
|
|
91
97
|
|
|
92
|
-
get addonOptions() {
|
|
98
|
+
get addonOptions(): RowDetailView {
|
|
93
99
|
return this._addonOptions;
|
|
94
100
|
}
|
|
95
101
|
|
|
@@ -102,7 +108,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
102
108
|
return this._dataViewIdProperty;
|
|
103
109
|
}
|
|
104
110
|
|
|
105
|
-
get eventHandler() {
|
|
111
|
+
get eventHandler(): SlickEventHandler {
|
|
106
112
|
return this._eventHandler;
|
|
107
113
|
}
|
|
108
114
|
|
|
@@ -111,7 +117,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
111
117
|
return this._grid?.getOptions() || {};
|
|
112
118
|
}
|
|
113
119
|
|
|
114
|
-
get gridUid() {
|
|
120
|
+
get gridUid(): string {
|
|
115
121
|
return this._gridUid || (this._grid?.getUID() || '');
|
|
116
122
|
}
|
|
117
123
|
|
|
@@ -132,7 +138,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
132
138
|
* @param _grid
|
|
133
139
|
* @param _containerService
|
|
134
140
|
*/
|
|
135
|
-
init(grid: SlickGrid) {
|
|
141
|
+
init(grid: SlickGrid): void {
|
|
136
142
|
this._grid = grid;
|
|
137
143
|
if (!grid) {
|
|
138
144
|
throw new Error('[Slickgrid-Universal] RowDetailView Plugin requires the Grid instance to be passed as argument to the "init()" method.');
|
|
@@ -195,7 +201,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
195
201
|
}
|
|
196
202
|
|
|
197
203
|
/** Dispose of the Slick Row Detail View */
|
|
198
|
-
dispose() {
|
|
204
|
+
dispose(): void {
|
|
199
205
|
this._eventHandler?.unsubscribeAll();
|
|
200
206
|
}
|
|
201
207
|
|
|
@@ -242,7 +248,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
242
248
|
}
|
|
243
249
|
|
|
244
250
|
/** set or change some of the plugin options */
|
|
245
|
-
setOptions(options: Partial<RowDetailViewOption>) {
|
|
251
|
+
setOptions(options: Partial<RowDetailViewOption>): void {
|
|
246
252
|
this._addonOptions = extend(true, {}, this._addonOptions, options) as RowDetailView;
|
|
247
253
|
if (this._addonOptions?.singleRowExpand) {
|
|
248
254
|
this.collapseAll();
|
|
@@ -250,7 +256,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
250
256
|
}
|
|
251
257
|
|
|
252
258
|
/** Collapse all of the open items */
|
|
253
|
-
collapseAll() {
|
|
259
|
+
collapseAll(): void {
|
|
254
260
|
this.dataView.beginUpdate();
|
|
255
261
|
this._expandedRows.forEach(expandedRow => {
|
|
256
262
|
this.collapseDetailView(expandedRow, true);
|
|
@@ -259,7 +265,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
259
265
|
}
|
|
260
266
|
|
|
261
267
|
/** Colapse an Item so it is not longer seen */
|
|
262
|
-
collapseDetailView(item: any, isMultipleCollapsing = false) {
|
|
268
|
+
collapseDetailView(item: any, isMultipleCollapsing = false): void {
|
|
263
269
|
if (!isMultipleCollapsing) {
|
|
264
270
|
this.dataView.beginUpdate();
|
|
265
271
|
}
|
|
@@ -286,7 +292,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
286
292
|
}
|
|
287
293
|
|
|
288
294
|
/** Expand a row given the dataview item that is to be expanded */
|
|
289
|
-
expandDetailView(item: any) {
|
|
295
|
+
expandDetailView(item: any): void {
|
|
290
296
|
if (this._addonOptions?.singleRowExpand) {
|
|
291
297
|
this.collapseAll();
|
|
292
298
|
}
|
|
@@ -322,7 +328,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
322
328
|
}
|
|
323
329
|
|
|
324
330
|
/** Saves the current state of the detail view */
|
|
325
|
-
saveDetailView(item: any) {
|
|
331
|
+
saveDetailView(item: any): void {
|
|
326
332
|
const view = document.querySelector(`.${this.gridUid} .innerDetailView_${item[this._dataViewIdProperty]}`);
|
|
327
333
|
if (view) {
|
|
328
334
|
const html = view.innerHTML;
|
|
@@ -336,7 +342,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
336
342
|
* subscribe to the onAsyncResponse so that the plugin knows when the user server side calls finished
|
|
337
343
|
* the response has to be as "args.item" (or "args.itemDetail") with it's data back
|
|
338
344
|
*/
|
|
339
|
-
handleOnAsyncResponse(e: SlickEventData, args: { item: any; itemDetail: any; detailView?: any; }) {
|
|
345
|
+
handleOnAsyncResponse(e: SlickEventData, args: { item: any; itemDetail: any; detailView?: any; }): void {
|
|
340
346
|
if (!args || (!args.item && !args.itemDetail)) {
|
|
341
347
|
console.error('SlickRowDetailView plugin requires the onAsyncResponse() to supply "args.item" property.');
|
|
342
348
|
return;
|
|
@@ -365,7 +371,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
365
371
|
* In order word, user can choose which rows to be an available row detail (or not) by providing his own logic.
|
|
366
372
|
* @param overrideFn: override function callback
|
|
367
373
|
*/
|
|
368
|
-
expandableOverride(overrideFn: UsabilityOverrideFn) {
|
|
374
|
+
expandableOverride(overrideFn: UsabilityOverrideFn): void {
|
|
369
375
|
this._expandableOverride = overrideFn;
|
|
370
376
|
}
|
|
371
377
|
|
|
@@ -408,7 +414,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
408
414
|
}
|
|
409
415
|
|
|
410
416
|
/** Takes in the item we are filtering and if it is an expanded row returns it's parents row to filter on */
|
|
411
|
-
getFilterItem(item: any) {
|
|
417
|
+
getFilterItem(item: any): any {
|
|
412
418
|
if (item[`${this._keyPrefix}isPadding`] && item[`${this._keyPrefix}parent`]) {
|
|
413
419
|
item = item[`${this._keyPrefix}parent`];
|
|
414
420
|
}
|
|
@@ -416,7 +422,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
416
422
|
}
|
|
417
423
|
|
|
418
424
|
/** Resize the Row Detail View */
|
|
419
|
-
resizeDetailView(item: any) {
|
|
425
|
+
resizeDetailView(item: any): void {
|
|
420
426
|
if (!item) {
|
|
421
427
|
return;
|
|
422
428
|
}
|
|
@@ -482,7 +488,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
482
488
|
/**
|
|
483
489
|
* create the detail ctr node. this belongs to the dev & can be custom-styled as per
|
|
484
490
|
*/
|
|
485
|
-
protected applyTemplateNewLineHeight(item: any) {
|
|
491
|
+
protected applyTemplateNewLineHeight(item: any): void {
|
|
486
492
|
// the height is calculated by the template row count (how many line of items does the template view have)
|
|
487
493
|
const rowCount = this._addonOptions.panelRows;
|
|
488
494
|
|
|
@@ -497,7 +503,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
497
503
|
}
|
|
498
504
|
}
|
|
499
505
|
|
|
500
|
-
protected calculateOutOfRangeViews() {
|
|
506
|
+
protected calculateOutOfRangeViews(): void {
|
|
501
507
|
if (this._grid) {
|
|
502
508
|
let scrollDir: 'UP' | 'DOWN';
|
|
503
509
|
const renderedRange = this._grid.getRenderedRange();
|
|
@@ -563,7 +569,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
563
569
|
}
|
|
564
570
|
}
|
|
565
571
|
|
|
566
|
-
protected calculateOutOfRangeViewsSimplerVersion() {
|
|
572
|
+
protected calculateOutOfRangeViewsSimplerVersion(): void {
|
|
567
573
|
if (this._grid) {
|
|
568
574
|
const renderedRange = this._grid.getRenderedRange();
|
|
569
575
|
|
|
@@ -579,19 +585,19 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
579
585
|
}
|
|
580
586
|
}
|
|
581
587
|
|
|
582
|
-
protected checkExpandableOverride(row: number, dataContext: any, grid: SlickGrid) {
|
|
588
|
+
protected checkExpandableOverride(row: number, dataContext: any, grid: SlickGrid): boolean {
|
|
583
589
|
if (typeof this._expandableOverride === 'function') {
|
|
584
590
|
return this._expandableOverride(row, dataContext, grid);
|
|
585
591
|
}
|
|
586
592
|
return true;
|
|
587
593
|
}
|
|
588
594
|
|
|
589
|
-
protected checkIsRowOutOfViewportRange(rowIndex: number, renderedRange: any) {
|
|
595
|
+
protected checkIsRowOutOfViewportRange(rowIndex: number, renderedRange: any): boolean {
|
|
590
596
|
return (Math.abs(renderedRange.bottom - this._gridRowBuffer - rowIndex) > this._visibleRenderedCellCount * 2);
|
|
591
597
|
}
|
|
592
598
|
|
|
593
599
|
/** Get the Row Detail padding (which are the rows dedicated to the detail panel) */
|
|
594
|
-
protected getPaddingItem(parent: any, offset: any) {
|
|
600
|
+
protected getPaddingItem(parent: any, offset: any): any {
|
|
595
601
|
const item: any = {};
|
|
596
602
|
|
|
597
603
|
Object.keys(this.dataView).forEach(prop => {
|
|
@@ -675,7 +681,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
675
681
|
}
|
|
676
682
|
|
|
677
683
|
/** When row is getting toggled, we will handle the action of collapsing/expanding */
|
|
678
|
-
protected handleAccordionShowHide(item: any) {
|
|
684
|
+
protected handleAccordionShowHide(item: any): void {
|
|
679
685
|
if (item) {
|
|
680
686
|
if (!item[`${this._keyPrefix}collapsed`]) {
|
|
681
687
|
this.collapseDetailView(item);
|
|
@@ -686,7 +692,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
686
692
|
}
|
|
687
693
|
|
|
688
694
|
/** Handle mouse click event */
|
|
689
|
-
protected handleClick(e: SlickEventData, args: { row: number; cell: number; }) {
|
|
695
|
+
protected handleClick(e: SlickEventData, args: { row: number; cell: number; }): void {
|
|
690
696
|
const dataContext = this._grid.getDataItem(args.row);
|
|
691
697
|
|
|
692
698
|
if (this.checkExpandableOverride(args.row, dataContext, this._grid)) {
|
|
@@ -722,7 +728,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
722
728
|
}
|
|
723
729
|
}
|
|
724
730
|
|
|
725
|
-
protected handleScroll() {
|
|
731
|
+
protected handleScroll(): void {
|
|
726
732
|
if (this._addonOptions.useSimpleViewportCalc) {
|
|
727
733
|
this.calculateOutOfRangeViewsSimplerVersion();
|
|
728
734
|
} else {
|
|
@@ -730,7 +736,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
730
736
|
}
|
|
731
737
|
}
|
|
732
738
|
|
|
733
|
-
protected notifyOutOfViewport(item: any, rowId: number | string) {
|
|
739
|
+
protected notifyOutOfViewport(item: any, rowId: number | string): void {
|
|
734
740
|
const rowIndex = item.rowIndex || this.dataView.getRowById(item[this._dataViewIdProperty]);
|
|
735
741
|
|
|
736
742
|
this.onRowOutOfViewportRange.notify({
|
|
@@ -743,7 +749,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
743
749
|
}, null, this);
|
|
744
750
|
}
|
|
745
751
|
|
|
746
|
-
protected notifyBackToViewportWhenDomExist(item: any, rowId: number | string) {
|
|
752
|
+
protected notifyBackToViewportWhenDomExist(item: any, rowId: number | string): void {
|
|
747
753
|
const rowIndex = item.rowIndex || this.dataView.getRowById(item[this._dataViewIdProperty]);
|
|
748
754
|
|
|
749
755
|
setTimeout(() => {
|
|
@@ -761,7 +767,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
761
767
|
}, 100);
|
|
762
768
|
}
|
|
763
769
|
|
|
764
|
-
protected syncOutOfViewportArray(rowId: number | string, isAdding: boolean) {
|
|
770
|
+
protected syncOutOfViewportArray(rowId: number | string, isAdding: boolean): Array<string | number> {
|
|
765
771
|
const arrayRowIndex = this._rowIdsOutOfViewport.findIndex(outOfViewportRowId => outOfViewportRowId === rowId);
|
|
766
772
|
|
|
767
773
|
if (isAdding && arrayRowIndex < 0) {
|
|
@@ -772,7 +778,7 @@ export class SlickRowDetailView implements ExternalResource, UniversalRowDetailV
|
|
|
772
778
|
return this._rowIdsOutOfViewport;
|
|
773
779
|
}
|
|
774
780
|
|
|
775
|
-
protected toggleRowSelection(rowNumber: number, dataContext: any) {
|
|
781
|
+
protected toggleRowSelection(rowNumber: number, dataContext: any): void {
|
|
776
782
|
if (this.checkExpandableOverride(rowNumber, dataContext, this._grid)) {
|
|
777
783
|
this.dataView.beginUpdate();
|
|
778
784
|
this.handleAccordionShowHide(dataContext);
|