@genesislcap/grid-pro 14.486.2-alpha-686dcaf.0 → 14.488.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/custom-elements.json +645 -442
- package/dist/dts/column/utils/grid-pro-columns.d.ts +19 -0
- package/dist/dts/column/utils/grid-pro-columns.d.ts.map +1 -1
- package/dist/dts/datasource/base.datasource.d.ts +8 -0
- package/dist/dts/datasource/base.datasource.d.ts.map +1 -1
- package/dist/dts/grid-pro-beta.d.ts +7 -0
- package/dist/dts/grid-pro-beta.d.ts.map +1 -1
- package/dist/dts/grid-pro-genesis-datasource/grid-pro-genesis-datasource.d.ts +43 -0
- package/dist/dts/grid-pro-genesis-datasource/grid-pro-genesis-datasource.d.ts.map +1 -1
- package/dist/dts/grid-pro.d.ts +7 -0
- package/dist/dts/grid-pro.d.ts.map +1 -1
- package/dist/dts/react.d.ts +9 -9
- package/dist/esm/column/utils/grid-pro-columns.js +26 -0
- package/dist/esm/datasource/base.datasource.js +8 -0
- package/dist/esm/grid-pro-beta.js +54 -3
- package/dist/esm/grid-pro-genesis-datasource/grid-pro-genesis-datasource.js +91 -0
- package/dist/esm/grid-pro.js +49 -2
- package/dist/grid-pro.api.json +192 -0
- package/dist/grid-pro.d.ts +84 -0
- package/dist/react.cjs +6 -6
- package/dist/react.mjs +5 -5
- package/package.json +14 -14
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
import { ColDef } from '@ag-grid-community/core';
|
|
2
2
|
import { Binding, CaptureType } from '@microsoft/fast-element';
|
|
3
|
+
/** Minimal shape of a displayed AG Grid column needed to resolve its field (package-agnostic). */
|
|
4
|
+
interface DisplayedColumnLike {
|
|
5
|
+
getColDef(): {
|
|
6
|
+
field?: string | null;
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Resolves the field names of the currently visible columns.
|
|
11
|
+
* @remarks Prefers the grid's displayed columns (`getAllDisplayedColumns()` — already excludes
|
|
12
|
+
* hidden columns and children of collapsed groups, so no extra visibility check is needed); falls
|
|
13
|
+
* back to the current column defs (available earlier in the lifecycle than the columns), treating
|
|
14
|
+
* `hide` as not visible. Shared by the host grids to report the visible set to the datasource.
|
|
15
|
+
* Typed structurally so it works across the differing AG Grid type packages the grids depend on.
|
|
16
|
+
* @param displayedColumns - The grid's currently displayed columns, when available.
|
|
17
|
+
* @param colDefs - The current column defs, used as a fallback before the columns are populated.
|
|
18
|
+
* @public
|
|
19
|
+
*/
|
|
20
|
+
export declare function resolveVisibleColumnFields(displayedColumns: DisplayedColumnLike[] | null | undefined, colDefs: readonly unknown[] | null | undefined): string[];
|
|
3
21
|
/**
|
|
4
22
|
* A directive that renders a set of grid-pro-column elements from a given input binding
|
|
5
23
|
*
|
|
@@ -8,4 +26,5 @@ import { Binding, CaptureType } from '@microsoft/fast-element';
|
|
|
8
26
|
* @public
|
|
9
27
|
*/
|
|
10
28
|
export declare function gridProColumns<TSource = any>(itemsBinding: Binding<TSource, readonly ColDef[]> | readonly ColDef[], includeRenderers?: boolean): CaptureType<TSource>;
|
|
29
|
+
export {};
|
|
11
30
|
//# sourceMappingURL=grid-pro-columns.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid-pro-columns.d.ts","sourceRoot":"","sources":["../../../../src/column/utils/grid-pro-columns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,WAAW,EAAsB,MAAM,yBAAyB,CAAC;AAEnF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,GAAG,GAAG,EAC1C,YAAY,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC,GAAG,SAAS,MAAM,EAAE,EACrE,gBAAgB,GAAE,OAAc,GAC/B,WAAW,CAAC,OAAO,CAAC,CAmBtB"}
|
|
1
|
+
{"version":3,"file":"grid-pro-columns.d.ts","sourceRoot":"","sources":["../../../../src/column/utils/grid-pro-columns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,WAAW,EAAsB,MAAM,yBAAyB,CAAC;AAEnF,kGAAkG;AAClG,UAAU,mBAAmB;IAC3B,SAAS,IAAI;QAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;CACxC;AAYD;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CACxC,gBAAgB,EAAE,mBAAmB,EAAE,GAAG,IAAI,GAAG,SAAS,EAC1D,OAAO,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI,GAAG,SAAS,GAC7C,MAAM,EAAE,CAQV;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,GAAG,GAAG,EAC1C,YAAY,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC,GAAG,SAAS,MAAM,EAAE,EACrE,gBAAgB,GAAE,OAAc,GAC/B,WAAW,CAAC,OAAO,CAAC,CAmBtB"}
|
|
@@ -568,6 +568,14 @@ export declare class GridProBaseDatasource extends GenesisGridDatasourceElement
|
|
|
568
568
|
private mapTransaction;
|
|
569
569
|
protected pagination: boolean;
|
|
570
570
|
loadMore(): void;
|
|
571
|
+
/**
|
|
572
|
+
* Notifies the datasource of the field names of the currently visible columns.
|
|
573
|
+
* @remarks No-op by default. Datasources that support column-scoped requests override this to
|
|
574
|
+
* narrow the server query and reload data when the visible column set changes.
|
|
575
|
+
* @param visibleFields - Field names of the currently visible columns.
|
|
576
|
+
* @public
|
|
577
|
+
*/
|
|
578
|
+
setVisibleColumns(visibleFields: string[]): void;
|
|
571
579
|
restart(): void;
|
|
572
580
|
reloadResourceData(): void;
|
|
573
581
|
destroy(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.datasource.d.ts","sourceRoot":"","sources":["../../../src/datasource/base.datasource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,EACL,OAAO,EACP,UAAU,EAGV,iBAAiB,EACjB,gBAAgB,EAChB,aAAa,EACb,aAAa,EAId,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AAUrD,OAAO,EAA4B,KAAK,8BAA8B,EAAE,MAAM,cAAc,CAAC;AAE7F;;;GAGG;AACH,eAAO,MAAM,iBAAiB,MAAM,CAAC;AACrC;;;GAGG;AACH,eAAO,MAAM,YAAY,SAAS,CAAC;;;;QAS6D,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAoChD,CAAC;4IACO,CAAC;wFAKnC,CAAC;+IAMI,CAAC;2FAIZ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAuB6G,CAAC;;;;;;;;;;;;;;;;;;;;;;;mBAmD/G,CAAC;;;;;;;;;;;;;6BAqBsD,CAAC;8BAG9C,CAAC;kBAGtB,CAAA;;oBACyB,CAAC;;sBAK5B,CAAF;oBACkC,CAAC;;;;;;;;gDAc/B,CAAL;;;;;;;;;;;;;;;;qBAsBG,CAAJ;;;uBACgD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4EA+G9B,CAAC;yBAGZ,CAAP;UAAoD,GAAG;WACvC,GAAG;;gBACyC,GAAG;;;;;;;WAQxD,GAAH;YAG8B,GAAG;;;;;;;;;;;oBAmDJ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAyNuB,CAAC;cAIhD,CAAC;eAGA,CAAC;gBAC0C,CAAC;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"base.datasource.d.ts","sourceRoot":"","sources":["../../../src/datasource/base.datasource.ts"],"names":[],"mappings":"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"}
|
|
@@ -394,6 +394,7 @@ export declare class GridProBeta extends GridProBeta_base {
|
|
|
394
394
|
private disposed;
|
|
395
395
|
private readonly debouncedSaveColumnState;
|
|
396
396
|
private readonly debouncedSaveFilterModel;
|
|
397
|
+
private readonly debouncedNotifyDatasourceVisibleColumns;
|
|
397
398
|
autoCellRendererByType: boolean;
|
|
398
399
|
onlyTemplateColDefs: boolean;
|
|
399
400
|
/**
|
|
@@ -713,6 +714,12 @@ export declare class GridProBeta extends GridProBeta_base {
|
|
|
713
714
|
* @public
|
|
714
715
|
*/
|
|
715
716
|
get gridProDatasource(): GridProBaseDatasource;
|
|
717
|
+
/**
|
|
718
|
+
* Reports the currently visible columns to the datasource. The datasource decides what to do with
|
|
719
|
+
* them (e.g. narrowing the server request); the grid stays agnostic of that behaviour.
|
|
720
|
+
* @internal
|
|
721
|
+
*/
|
|
722
|
+
private notifyDatasourceVisibleColumns;
|
|
716
723
|
set gridOptions(options: GridOptions);
|
|
717
724
|
private setLocalGridOptions;
|
|
718
725
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid-pro-beta.d.ts","sourceRoot":"","sources":["../../src/grid-pro-beta.ts"],"names":[],"mappings":"AAOA,OAAO,EAAyB,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EACV,MAAM,EACN,WAAW,
|
|
1
|
+
{"version":3,"file":"grid-pro-beta.d.ts","sourceRoot":"","sources":["../../src/grid-pro-beta.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { DatasourceOptions } from '@genesislcap/foundation-comms';
|
|
1
2
|
import { GridProBaseDatasource } from '../datasource/base.datasource';
|
|
2
3
|
/**
|
|
3
4
|
* Interface for transaction data
|
|
@@ -405,6 +406,16 @@ export declare class GridProGenesisDatasource extends GridProGenesisDatasource_b
|
|
|
405
406
|
requestChanged(oldRequest: string, newRequest: string): void;
|
|
406
407
|
resourceNameChanged(oldValue: string, newValue: string): void;
|
|
407
408
|
keepColDefsOnClearRowData: boolean;
|
|
409
|
+
/**
|
|
410
|
+
* When enabled and column definitions are provided, the datasource requests data only for the
|
|
411
|
+
* columns that are currently visible. The visible set is seeded from the column config (columns
|
|
412
|
+
* not flagged with `hide`) and updated by the host grid via `setVisibleColumns`; the data
|
|
413
|
+
* is reloaded whenever that set changes.
|
|
414
|
+
* @remarks DATASERVER only.
|
|
415
|
+
* @default false
|
|
416
|
+
*/
|
|
417
|
+
requestVisibleColumnsOnly: boolean;
|
|
418
|
+
private _visibleColumns;
|
|
408
419
|
private dataSub;
|
|
409
420
|
private updateSub;
|
|
410
421
|
private requiresFullRowDataAndColDefs;
|
|
@@ -521,6 +532,38 @@ export declare class GridProGenesisDatasource extends GridProGenesisDatasource_b
|
|
|
521
532
|
* @param deletes - List of records to remove from the grid stream
|
|
522
533
|
*/
|
|
523
534
|
handleStreamDeletes(deletes?: any[]): void;
|
|
535
|
+
/**
|
|
536
|
+
* Extends the base options to constrain the requested fields to the visible columns when
|
|
537
|
+
* `requestVisibleColumnsOnly` is enabled.
|
|
538
|
+
* @remarks DATASERVER only; for other resource types the derived `fields` are ignored.
|
|
539
|
+
* @internal
|
|
540
|
+
*/
|
|
541
|
+
protected datasourceOptions(): DatasourceOptions;
|
|
542
|
+
/**
|
|
543
|
+
* Builds the DATASERVER `FIELDS` string (space-separated) from the visible columns, always
|
|
544
|
+
* including the `rowId` so rows can be tracked.
|
|
545
|
+
* @internal
|
|
546
|
+
*/
|
|
547
|
+
private getRequestedFields;
|
|
548
|
+
/**
|
|
549
|
+
* Returns the field names of the configured columns that are not hidden, used to seed the visible
|
|
550
|
+
* set before the host grid reports runtime visibility.
|
|
551
|
+
* @internal
|
|
552
|
+
*/
|
|
553
|
+
private getConfiguredVisibleColumns;
|
|
554
|
+
/**
|
|
555
|
+
* Updates the set of visible columns and reloads the data when the set changes.
|
|
556
|
+
* @remarks Called by the host grid on column visibility changes; no-ops unless
|
|
557
|
+
* `requestVisibleColumnsOnly` is enabled. DATASERVER only; no-ops for other resource types.
|
|
558
|
+
* @param visibleFields - Field names of the currently visible columns.
|
|
559
|
+
* @public
|
|
560
|
+
*/
|
|
561
|
+
setVisibleColumns(visibleFields: string[]): void;
|
|
562
|
+
/**
|
|
563
|
+
* Compares two column field lists irrespective of order.
|
|
564
|
+
* @internal
|
|
565
|
+
*/
|
|
566
|
+
private columnsChanged;
|
|
524
567
|
loadMore(): void;
|
|
525
568
|
}
|
|
526
569
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid-pro-genesis-datasource.d.ts","sourceRoot":"","sources":["../../../src/grid-pro-genesis-datasource/grid-pro-genesis-datasource.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"grid-pro-genesis-datasource.d.ts","sourceRoot":"","sources":["../../../src/grid-pro-genesis-datasource/grid-pro-genesis-datasource.ts"],"names":[],"mappings":"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"}
|
package/dist/dts/grid-pro.d.ts
CHANGED
|
@@ -400,6 +400,7 @@ export declare class GridPro extends GridPro_base {
|
|
|
400
400
|
private disposed;
|
|
401
401
|
private readonly debouncedSaveColumnState;
|
|
402
402
|
private readonly debouncedSaveFilterModel;
|
|
403
|
+
private readonly debouncedNotifyDatasourceVisibleColumns;
|
|
403
404
|
autoCellRendererByType: boolean;
|
|
404
405
|
onlyTemplateColDefs: boolean;
|
|
405
406
|
/**
|
|
@@ -765,6 +766,12 @@ export declare class GridPro extends GridPro_base {
|
|
|
765
766
|
* @public
|
|
766
767
|
*/
|
|
767
768
|
get gridProDatasource(): GridProBaseDatasource;
|
|
769
|
+
/**
|
|
770
|
+
* Reports the currently visible columns to the datasource. The datasource decides what to do with
|
|
771
|
+
* them (e.g. narrowing the server request); the grid stays agnostic of that behaviour.
|
|
772
|
+
* @internal
|
|
773
|
+
*/
|
|
774
|
+
private notifyDatasourceVisibleColumns;
|
|
768
775
|
set gridOptions(options: GridOptionsConfig);
|
|
769
776
|
private setLocalGridOptions;
|
|
770
777
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid-pro.d.ts","sourceRoot":"","sources":["../../src/grid-pro.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,MAAM,EACN,SAAS,EAGT,OAAO,EACP,WAAW,EACX,UAAU,EAEX,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAyB,IAAI,EAAkB,MAAM,yBAAyB,CAAC;AASnG,OAAO,EAAyB,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAuB/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAkBrE,OAAO,EACL,aAAa,EAKd,MAAM,wBAAwB,CAAC;AAGhC,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAEhB,yBAAyB,EAE1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAQL,iBAAiB,EAEjB,sBAAsB,EACtB,2BAA2B,EAE5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AA8BvD,OAAO,EAAE,aAAa,EAAE,CAAC;;;;;;;
|
|
1
|
+
{"version":3,"file":"grid-pro.d.ts","sourceRoot":"","sources":["../../src/grid-pro.ts"],"names":[],"mappings":"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"}
|
package/dist/dts/react.d.ts
CHANGED
|
@@ -134,15 +134,6 @@ export declare const StringEditor: React.ForwardRefExoticComponent<
|
|
|
134
134
|
>;
|
|
135
135
|
export type StringEditorRef = StringEditorWC;
|
|
136
136
|
|
|
137
|
-
export declare const GridProColumn: React.ForwardRefExoticComponent<
|
|
138
|
-
React.PropsWithChildren<
|
|
139
|
-
Omit<PublicOf<GridProColumnWC>, 'children' | 'style'> &
|
|
140
|
-
HTMLWCProps & {
|
|
141
|
-
}
|
|
142
|
-
> & React.RefAttributes<GridProColumnWC>
|
|
143
|
-
>;
|
|
144
|
-
export type GridProColumnRef = GridProColumnWC;
|
|
145
|
-
|
|
146
137
|
export declare const ActionRenderer: React.ForwardRefExoticComponent<
|
|
147
138
|
React.PropsWithChildren<
|
|
148
139
|
Omit<PublicOf<ActionRendererWC>, 'children' | 'style'> &
|
|
@@ -215,6 +206,15 @@ export declare const AgTextRenderer: React.ForwardRefExoticComponent<
|
|
|
215
206
|
>;
|
|
216
207
|
export type AgTextRendererRef = AgTextRendererWC;
|
|
217
208
|
|
|
209
|
+
export declare const GridProColumn: React.ForwardRefExoticComponent<
|
|
210
|
+
React.PropsWithChildren<
|
|
211
|
+
Omit<PublicOf<GridProColumnWC>, 'children' | 'style'> &
|
|
212
|
+
HTMLWCProps & {
|
|
213
|
+
}
|
|
214
|
+
> & React.RefAttributes<GridProColumnWC>
|
|
215
|
+
>;
|
|
216
|
+
export type GridProColumnRef = GridProColumnWC;
|
|
217
|
+
|
|
218
218
|
export declare const GridProClientSideDatasource: React.ForwardRefExoticComponent<
|
|
219
219
|
React.PropsWithChildren<
|
|
220
220
|
Omit<PublicOf<GridProClientSideDatasourceWC>, 'children' | 'style'> &
|
|
@@ -1,4 +1,30 @@
|
|
|
1
1
|
import { html, repeat, when } from '@microsoft/fast-element';
|
|
2
|
+
/** Narrows a column def (or group def) to a visible, field-bearing leaf column. */
|
|
3
|
+
function isVisibleColumnDef(colDef) {
|
|
4
|
+
return (typeof colDef === 'object' &&
|
|
5
|
+
colDef !== null &&
|
|
6
|
+
typeof colDef.field === 'string' &&
|
|
7
|
+
!colDef.hide);
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Resolves the field names of the currently visible columns.
|
|
11
|
+
* @remarks Prefers the grid's displayed columns (`getAllDisplayedColumns()` — already excludes
|
|
12
|
+
* hidden columns and children of collapsed groups, so no extra visibility check is needed); falls
|
|
13
|
+
* back to the current column defs (available earlier in the lifecycle than the columns), treating
|
|
14
|
+
* `hide` as not visible. Shared by the host grids to report the visible set to the datasource.
|
|
15
|
+
* Typed structurally so it works across the differing AG Grid type packages the grids depend on.
|
|
16
|
+
* @param displayedColumns - The grid's currently displayed columns, when available.
|
|
17
|
+
* @param colDefs - The current column defs, used as a fallback before the columns are populated.
|
|
18
|
+
* @public
|
|
19
|
+
*/
|
|
20
|
+
export function resolveVisibleColumnFields(displayedColumns, colDefs) {
|
|
21
|
+
if (displayedColumns === null || displayedColumns === void 0 ? void 0 : displayedColumns.length) {
|
|
22
|
+
return displayedColumns
|
|
23
|
+
.map((column) => column.getColDef().field)
|
|
24
|
+
.filter((field) => !!field);
|
|
25
|
+
}
|
|
26
|
+
return (colDefs !== null && colDefs !== void 0 ? colDefs : []).filter(isVisibleColumnDef).map((colDef) => colDef.field);
|
|
27
|
+
}
|
|
2
28
|
/**
|
|
3
29
|
* A directive that renders a set of grid-pro-column elements from a given input binding
|
|
4
30
|
*
|
|
@@ -556,6 +556,14 @@ export class GridProBaseDatasource extends GenesisGridDatasourceElement {
|
|
|
556
556
|
loadMore() {
|
|
557
557
|
throw new Error('loadMore() method must be implemented by subclass');
|
|
558
558
|
}
|
|
559
|
+
/**
|
|
560
|
+
* Notifies the datasource of the field names of the currently visible columns.
|
|
561
|
+
* @remarks No-op by default. Datasources that support column-scoped requests override this to
|
|
562
|
+
* narrow the server query and reload data when the visible column set changes.
|
|
563
|
+
* @param visibleFields - Field names of the currently visible columns.
|
|
564
|
+
* @public
|
|
565
|
+
*/
|
|
566
|
+
setVisibleColumns(visibleFields) { }
|
|
559
567
|
restart() {
|
|
560
568
|
throw new Error('restart() method must be implemented by subclass');
|
|
561
569
|
}
|
|
@@ -10,7 +10,7 @@ import debounce from 'lodash.debounce';
|
|
|
10
10
|
import { GridProCell } from './cell';
|
|
11
11
|
import { DateEditor, MultiselectEditor, NumberEditor, SelectEditor, StringEditor, } from './cell-editors';
|
|
12
12
|
import { ActionRenderer, ActionsMenuRenderer, BooleanRenderer, EditableRenderer, IconRenderer, SelectRenderer, StatusPillRenderer, } from './cell-renderers';
|
|
13
|
-
import { GridProColumn } from './column';
|
|
13
|
+
import { GridProColumn, resolveVisibleColumnFields } from './column';
|
|
14
14
|
import { GridProClientSideDatasource, GridProServerSideDatasource } from './datasource';
|
|
15
15
|
import { baseDatasourceEventNames } from './datasource/base.types';
|
|
16
16
|
import { GridProGenesisDatasource, gridProGenesisDatasourceEventNames, } from './grid-pro-genesis-datasource';
|
|
@@ -93,6 +93,9 @@ export class GridProBeta extends LifecycleMixin(FoundationElement) {
|
|
|
93
93
|
this.disposed = false;
|
|
94
94
|
this.debouncedSaveColumnState = debounce(this.saveColumnState.bind(this), DEBOUNCE_TIME);
|
|
95
95
|
this.debouncedSaveFilterModel = debounce(this.cacheFilterConfig.bind(this), DEBOUNCE_TIME);
|
|
96
|
+
// Coalesces bursts of column-visibility events (e.g. a "hide all" tool-panel toggle fires one
|
|
97
|
+
// per column) into a single datasource notification + reload.
|
|
98
|
+
this.debouncedNotifyDatasourceVisibleColumns = debounce(this.notifyDatasourceVisibleColumns.bind(this), DEBOUNCE_TIME);
|
|
96
99
|
// Genesis-specific attrs
|
|
97
100
|
this.autoCellRendererByType = false;
|
|
98
101
|
this.onlyTemplateColDefs = false;
|
|
@@ -867,16 +870,41 @@ export class GridProBeta extends LifecycleMixin(FoundationElement) {
|
|
|
867
870
|
this.querySelector('grid-pro-client-side-datasource') ||
|
|
868
871
|
this.querySelector('grid-pro-server-side-datasource'));
|
|
869
872
|
}
|
|
873
|
+
/**
|
|
874
|
+
* Reports the currently visible columns to the datasource. The datasource decides what to do with
|
|
875
|
+
* them (e.g. narrowing the server request); the grid stays agnostic of that behaviour.
|
|
876
|
+
* @internal
|
|
877
|
+
*/
|
|
878
|
+
notifyDatasourceVisibleColumns() {
|
|
879
|
+
var _a, _b, _c, _d;
|
|
880
|
+
const datasource = this.gridProDatasource;
|
|
881
|
+
if (!datasource)
|
|
882
|
+
return;
|
|
883
|
+
const visibleFields = resolveVisibleColumnFields((_b = (_a = this.gridApi) === null || _a === void 0 ? void 0 : _a.getAllDisplayedColumns) === null || _b === void 0 ? void 0 : _b.call(_a), (_d = (_c = this.gridApi) === null || _c === void 0 ? void 0 : _c.getColumnDefs) === null || _d === void 0 ? void 0 : _d.call(_c));
|
|
884
|
+
// Skip empty results so we never overwrite a known visible set with nothing (e.g. when the
|
|
885
|
+
// grid API/defs aren't populated yet during early lifecycle).
|
|
886
|
+
if (!visibleFields.length)
|
|
887
|
+
return;
|
|
888
|
+
datasource.setVisibleColumns(visibleFields);
|
|
889
|
+
}
|
|
870
890
|
set gridOptions(options) {
|
|
871
891
|
if (!this.applyingDatasourceGridOptions && options) {
|
|
872
892
|
this.userProvidedGridOptions = Object.assign({}, options);
|
|
873
893
|
}
|
|
894
|
+
// Column move/resize/pin/sort don't change which fields are visible, so they only need the
|
|
895
|
+
// column-state/autosize bookkeeping below; visibility notification is wired separately (via
|
|
896
|
+
// onColumnVisible/onDisplayedColumnsChanged) so it isn't tied to unrelated grid interactions.
|
|
874
897
|
const gridOnChangeCallback = () => {
|
|
875
898
|
if (this.disposed || !this.isConnected)
|
|
876
899
|
return;
|
|
877
900
|
this.debouncedSaveColumnState();
|
|
878
901
|
this.debouncedColumnAutosize();
|
|
879
902
|
};
|
|
903
|
+
const notifyVisibilityChanged = () => {
|
|
904
|
+
if (this.disposed || !this.isConnected)
|
|
905
|
+
return;
|
|
906
|
+
this.debouncedNotifyDatasourceVisibleColumns();
|
|
907
|
+
};
|
|
880
908
|
// Collect attributes and map them to AG Grid properties
|
|
881
909
|
Array.from(this.attributes).forEach((attribute) => {
|
|
882
910
|
const attrName = this.agPropertiesMap[attribute.name];
|
|
@@ -884,7 +912,7 @@ export class GridProBeta extends LifecycleMixin(FoundationElement) {
|
|
|
884
912
|
return;
|
|
885
913
|
this.agAttributes[attrName] = attribute.value;
|
|
886
914
|
});
|
|
887
|
-
const { columnDefs, components, defaultColDef, getRowId, onGridReady, onFilterChanged } = options, rest = __rest(options, ["columnDefs", "components", "defaultColDef", "getRowId", "onGridReady", "onFilterChanged"]);
|
|
915
|
+
const { columnDefs, components, defaultColDef, getRowId, onGridReady, onFilterChanged, onFirstDataRendered } = options, rest = __rest(options, ["columnDefs", "components", "defaultColDef", "getRowId", "onGridReady", "onFilterChanged", "onFirstDataRendered"]);
|
|
888
916
|
const derivedOptions = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, this.gridOptionsConfig), { defaultColDef: Object.assign({ enableCellChangeFlash: this.enableCellFlashing, filter: true, resizable: true, sortable: true }, defaultColDef), components: this.combineAllGridComponents(components), headerHeight: this.headerHeight, rowHeight: this.rowHeight, animateRows: false, suppressDragLeaveHidesColumns: true }), this.eventsAndCallbacks), { onGridReady: (event) => {
|
|
889
917
|
var _a, _b, _c;
|
|
890
918
|
this.gridApi = event.api;
|
|
@@ -914,6 +942,9 @@ export class GridProBeta extends LifecycleMixin(FoundationElement) {
|
|
|
914
942
|
event,
|
|
915
943
|
gridId: this.id,
|
|
916
944
|
});
|
|
945
|
+
// Seed the datasource with the initially visible columns before the load is kicked off, so
|
|
946
|
+
// a datasource that scopes its request to visible columns can narrow the first request.
|
|
947
|
+
this.notifyDatasourceVisibleColumns();
|
|
917
948
|
// TODO: prevent rendering datasource slot until grid is ready
|
|
918
949
|
// so there is no need for this even and handling it in datasources
|
|
919
950
|
(_c = this.gridProDatasource) === null || _c === void 0 ? void 0 : _c.$emit(datasourceEventNames.ready, {
|
|
@@ -922,7 +953,27 @@ export class GridProBeta extends LifecycleMixin(FoundationElement) {
|
|
|
922
953
|
this.restoreColumnState();
|
|
923
954
|
this.restoreCachedFilterConfig();
|
|
924
955
|
this.debouncedColumnAutosize();
|
|
925
|
-
},
|
|
956
|
+
}, onFirstDataRendered: (event) => {
|
|
957
|
+
// Safety net: by now the grid columns are populated, so (re)seed the datasource's visible
|
|
958
|
+
// columns in case the initial grid-ready seed ran before columns were available.
|
|
959
|
+
this.notifyDatasourceVisibleColumns();
|
|
960
|
+
if (onFirstDataRendered) {
|
|
961
|
+
onFirstDataRendered(event);
|
|
962
|
+
}
|
|
963
|
+
}, onColumnPinned: gridOnChangeCallback, onColumnResized: gridOnChangeCallback, onColumnMoved: gridOnChangeCallback,
|
|
964
|
+
// Primary visibility trigger: fires per-column on show/hide, from the tool panel, header
|
|
965
|
+
// menu, or API calls alike.
|
|
966
|
+
onColumnVisible: () => {
|
|
967
|
+
gridOnChangeCallback();
|
|
968
|
+
notifyVisibilityChanged();
|
|
969
|
+
},
|
|
970
|
+
// Fallback for bulk tool-panel operations (e.g. "select all") that may not cleanly emit one
|
|
971
|
+
// onColumnVisible per column across entry points; debounced alongside it so a burst still
|
|
972
|
+
// collapses into a single datasource reload.
|
|
973
|
+
onDisplayedColumnsChanged: () => {
|
|
974
|
+
gridOnChangeCallback();
|
|
975
|
+
notifyVisibilityChanged();
|
|
976
|
+
}, onFilterChanged: (filterChangedEvent) => {
|
|
926
977
|
if (this.disposed || !this.isConnected)
|
|
927
978
|
return;
|
|
928
979
|
this.debouncedSaveFilterModel();
|
|
@@ -48,6 +48,15 @@ let GridProGenesisDatasource = class GridProGenesisDatasource extends LifecycleM
|
|
|
48
48
|
addIndex: 0,
|
|
49
49
|
};
|
|
50
50
|
this.keepColDefsOnClearRowData = false;
|
|
51
|
+
/**
|
|
52
|
+
* When enabled and column definitions are provided, the datasource requests data only for the
|
|
53
|
+
* columns that are currently visible. The visible set is seeded from the column config (columns
|
|
54
|
+
* not flagged with `hide`) and updated by the host grid via `setVisibleColumns`; the data
|
|
55
|
+
* is reloaded whenever that set changes.
|
|
56
|
+
* @remarks DATASERVER only.
|
|
57
|
+
* @default false
|
|
58
|
+
*/
|
|
59
|
+
this.requestVisibleColumnsOnly = false;
|
|
51
60
|
this.requiresFullRowDataAndColDefs = true;
|
|
52
61
|
this._lastMoreRows = false;
|
|
53
62
|
this._isMoreRowsResult = false;
|
|
@@ -176,6 +185,7 @@ let GridProGenesisDatasource = class GridProGenesisDatasource extends LifecycleM
|
|
|
176
185
|
this.connectionSub = undefined;
|
|
177
186
|
}
|
|
178
187
|
this._sourceRef = undefined;
|
|
188
|
+
this._visibleColumns = undefined;
|
|
179
189
|
this.clearRowData();
|
|
180
190
|
this._lastMoreRows = false;
|
|
181
191
|
this._isMoreRowsResult = false;
|
|
@@ -566,6 +576,84 @@ let GridProGenesisDatasource = class GridProGenesisDatasource extends LifecycleM
|
|
|
566
576
|
super.handleStreamDeletes(deletes);
|
|
567
577
|
this.updateCachedRowArray();
|
|
568
578
|
}
|
|
579
|
+
/**
|
|
580
|
+
* Extends the base options to constrain the requested fields to the visible columns when
|
|
581
|
+
* `requestVisibleColumnsOnly` is enabled.
|
|
582
|
+
* @remarks DATASERVER only; for other resource types the derived `fields` are ignored.
|
|
583
|
+
* @internal
|
|
584
|
+
*/
|
|
585
|
+
datasourceOptions() {
|
|
586
|
+
const options = super.datasourceOptions();
|
|
587
|
+
if (this.requestVisibleColumnsOnly) {
|
|
588
|
+
const fields = this.getRequestedFields();
|
|
589
|
+
if (fields) {
|
|
590
|
+
options.fields = fields;
|
|
591
|
+
}
|
|
592
|
+
}
|
|
593
|
+
return options;
|
|
594
|
+
}
|
|
595
|
+
/**
|
|
596
|
+
* Builds the DATASERVER `FIELDS` string (space-separated) from the visible columns, always
|
|
597
|
+
* including the `rowId` so rows can be tracked.
|
|
598
|
+
* @internal
|
|
599
|
+
*/
|
|
600
|
+
getRequestedFields() {
|
|
601
|
+
var _a;
|
|
602
|
+
const visibleColumns = ((_a = this._visibleColumns) === null || _a === void 0 ? void 0 : _a.length)
|
|
603
|
+
? this._visibleColumns
|
|
604
|
+
: this.getConfiguredVisibleColumns();
|
|
605
|
+
if (!visibleColumns.length)
|
|
606
|
+
return undefined;
|
|
607
|
+
const fields = visibleColumns.includes(this.rowId)
|
|
608
|
+
? visibleColumns
|
|
609
|
+
: [this.rowId, ...visibleColumns];
|
|
610
|
+
return fields.join(' ');
|
|
611
|
+
}
|
|
612
|
+
/**
|
|
613
|
+
* Returns the field names of the configured columns that are not hidden, used to seed the visible
|
|
614
|
+
* set before the host grid reports runtime visibility.
|
|
615
|
+
* @internal
|
|
616
|
+
*/
|
|
617
|
+
getConfiguredVisibleColumns() {
|
|
618
|
+
var _a, _b;
|
|
619
|
+
const columnDefs = (_b = (_a = this.deferredGridOptions) === null || _a === void 0 ? void 0 : _a.columnDefs) !== null && _b !== void 0 ? _b : [];
|
|
620
|
+
return columnDefs
|
|
621
|
+
.filter((colDef) => !!colDef.field && !colDef.hide)
|
|
622
|
+
.map((colDef) => colDef.field);
|
|
623
|
+
}
|
|
624
|
+
/**
|
|
625
|
+
* Updates the set of visible columns and reloads the data when the set changes.
|
|
626
|
+
* @remarks Called by the host grid on column visibility changes; no-ops unless
|
|
627
|
+
* `requestVisibleColumnsOnly` is enabled. DATASERVER only; no-ops for other resource types.
|
|
628
|
+
* @param visibleFields - Field names of the currently visible columns.
|
|
629
|
+
* @public
|
|
630
|
+
*/
|
|
631
|
+
setVisibleColumns(visibleFields) {
|
|
632
|
+
var _a;
|
|
633
|
+
if (!this.requestVisibleColumnsOnly)
|
|
634
|
+
return;
|
|
635
|
+
const previous = (_a = this._visibleColumns) !== null && _a !== void 0 ? _a : this.getConfiguredVisibleColumns();
|
|
636
|
+
// Always seed the visible set so the initial request can be narrowed, even before the
|
|
637
|
+
// datasource has initialized and its resource type is known.
|
|
638
|
+
this._visibleColumns = visibleFields;
|
|
639
|
+
// Narrowing applies to DATASERVER only; reload once initialized and the visible set changes.
|
|
640
|
+
if (this.datasource.resourceType !== ResourceType.DATASERVER ||
|
|
641
|
+
!this.datasource.initialized ||
|
|
642
|
+
!this.columnsChanged(previous, visibleFields)) {
|
|
643
|
+
return;
|
|
644
|
+
}
|
|
645
|
+
this.reloadResourceData();
|
|
646
|
+
}
|
|
647
|
+
/**
|
|
648
|
+
* Compares two column field lists irrespective of order.
|
|
649
|
+
* @internal
|
|
650
|
+
*/
|
|
651
|
+
columnsChanged(previous, next) {
|
|
652
|
+
if (previous.length !== next.length)
|
|
653
|
+
return true;
|
|
654
|
+
const previousSet = new Set(previous);
|
|
655
|
+
return next.some((field) => !previousSet.has(field));
|
|
656
|
+
}
|
|
569
657
|
loadMore() {
|
|
570
658
|
switch (this.datasource.resourceType) {
|
|
571
659
|
case ResourceType.DATASERVER:
|
|
@@ -598,6 +686,9 @@ let GridProGenesisDatasource = class GridProGenesisDatasource extends LifecycleM
|
|
|
598
686
|
__decorate([
|
|
599
687
|
attr({ mode: 'boolean', attribute: 'keep-col-defs-on-clear-row-data' })
|
|
600
688
|
], GridProGenesisDatasource.prototype, "keepColDefsOnClearRowData", void 0);
|
|
689
|
+
__decorate([
|
|
690
|
+
attr({ mode: 'boolean', attribute: 'request-visible-columns-only' })
|
|
691
|
+
], GridProGenesisDatasource.prototype, "requestVisibleColumnsOnly", void 0);
|
|
601
692
|
GridProGenesisDatasource = __decorate([
|
|
602
693
|
customElement({
|
|
603
694
|
name: 'grid-pro-genesis-datasource',
|