@reforgium/data-grid 2.0.1 → 2.1.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/README.md +683 -643
- package/fesm2022/reforgium-data-grid-column-manager.mjs +58 -50
- package/fesm2022/reforgium-data-grid.mjs +142 -49
- package/package.json +1 -1
- package/types/reforgium-data-grid.d.ts +33 -5
package/package.json
CHANGED
|
@@ -653,6 +653,18 @@ type DataGridConfigProvider = {
|
|
|
653
653
|
loadingMode: 'spinner' | 'skeleton';
|
|
654
654
|
/** Whether pagination starts from page 0 (true) or page 1 (false). */
|
|
655
655
|
pageStartFromZero: boolean;
|
|
656
|
+
/** Whether to defer rendering of the main grid content for code-splitting. */
|
|
657
|
+
deferContent: boolean;
|
|
658
|
+
/** Whether to defer rendering of the header (groups + columns). */
|
|
659
|
+
deferHeader: boolean;
|
|
660
|
+
/** Whether to defer rendering of pinned rows (top + bottom). */
|
|
661
|
+
deferPinned: boolean;
|
|
662
|
+
/** Whether to defer rendering of cell content. */
|
|
663
|
+
deferCells: boolean;
|
|
664
|
+
/** Whether to defer rendering of header icons (sort/expand/checkbox). */
|
|
665
|
+
deferIcons: boolean;
|
|
666
|
+
/** Whether to defer rendering of the tooltip. */
|
|
667
|
+
deferTooltip: boolean;
|
|
656
668
|
/** Text strings for UI labels and messages. */
|
|
657
669
|
translations: DataGridTranslations;
|
|
658
670
|
/** Debounce timings in milliseconds for resize and scroll events to optimize performance. */
|
|
@@ -977,6 +989,8 @@ declare class DataGridVm<Data extends AnyDict> {
|
|
|
977
989
|
*/
|
|
978
990
|
calcScrollbar(): void;
|
|
979
991
|
private recomputeStickyOffsets;
|
|
992
|
+
private layoutSignature;
|
|
993
|
+
private stickySignature;
|
|
980
994
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DataGridVm<any>, never>;
|
|
981
995
|
static ɵprov: _angular_core.ɵɵInjectableDeclaration<DataGridVm<any>>;
|
|
982
996
|
}
|
|
@@ -1191,6 +1205,13 @@ declare class DataGrid<Data extends AnyDict> {
|
|
|
1191
1205
|
* to reduce flickering during fast scrolling. Default is 8.
|
|
1192
1206
|
*/
|
|
1193
1207
|
virtualBuffer: _angular_core.InputSignal<number>;
|
|
1208
|
+
/**
|
|
1209
|
+
* Locks vertical scrolling while keeping horizontal scrolling enabled.
|
|
1210
|
+
*
|
|
1211
|
+
* Useful when the grid height is fixed by the parent and vertical scrolling
|
|
1212
|
+
* should be managed externally.
|
|
1213
|
+
*/
|
|
1214
|
+
lockVerticalScroll: _angular_core.InputSignalWithTransform<boolean, string | boolean | undefined>;
|
|
1194
1215
|
/**
|
|
1195
1216
|
* Header group configuration for creating multi-level column headers.
|
|
1196
1217
|
*
|
|
@@ -1219,6 +1240,12 @@ declare class DataGrid<Data extends AnyDict> {
|
|
|
1219
1240
|
*/
|
|
1220
1241
|
loading: _angular_core.InputSignalWithTransform<boolean, string | boolean | undefined>;
|
|
1221
1242
|
loadingMode: _angular_core.InputSignal<"spinner" | "skeleton">;
|
|
1243
|
+
deferContent: _angular_core.InputSignalWithTransform<boolean, string | boolean | undefined>;
|
|
1244
|
+
deferHeader: _angular_core.InputSignalWithTransform<boolean, string | boolean | undefined>;
|
|
1245
|
+
deferPinned: _angular_core.InputSignalWithTransform<boolean, string | boolean | undefined>;
|
|
1246
|
+
deferCells: _angular_core.InputSignalWithTransform<boolean, string | boolean | undefined>;
|
|
1247
|
+
deferIcons: _angular_core.InputSignalWithTransform<boolean, string | boolean | undefined>;
|
|
1248
|
+
deferTooltip: _angular_core.InputSignalWithTransform<boolean, string | boolean | undefined>;
|
|
1222
1249
|
/**
|
|
1223
1250
|
* Function or property name for getting a unique row key.
|
|
1224
1251
|
*
|
|
@@ -1332,6 +1359,8 @@ declare class DataGrid<Data extends AnyDict> {
|
|
|
1332
1359
|
private lastEndIndex;
|
|
1333
1360
|
protected startIndex: number;
|
|
1334
1361
|
protected headerHeight: _angular_core.WritableSignal<number>;
|
|
1362
|
+
private tooltipEl;
|
|
1363
|
+
protected tooltipState: _angular_core.WritableSignal<TooltipState>;
|
|
1335
1364
|
protected stickyRowIndex: _angular_core.WritableSignal<number | null>;
|
|
1336
1365
|
protected stickyRowTopPx: _angular_core.WritableSignal<number>;
|
|
1337
1366
|
protected stickyRowData: _angular_core.Signal<Data | null>;
|
|
@@ -1419,12 +1448,9 @@ declare class DataGrid<Data extends AnyDict> {
|
|
|
1419
1448
|
protected trackPinnedRow: (row: GridPinnedRow) => number | undefined;
|
|
1420
1449
|
protected cellClass(col: GridColumn<Data>, row: Data): string | undefined;
|
|
1421
1450
|
protected ariaSort(col: GridColumn<Data>): 'ascending' | 'descending' | 'none';
|
|
1422
|
-
private tooltipEl;
|
|
1423
|
-
protected tooltipState: _angular_core.WritableSignal<TooltipState>;
|
|
1424
1451
|
protected resolveTooltip(row: Data, col: GridColumn<Data>): string | TemplateRef<GridTooltipContext<AnyDict>> | null;
|
|
1425
1452
|
protected showTooltip(event: MouseEvent, row: Data, col: GridColumn<Data>, index: number): void;
|
|
1426
1453
|
protected hideTooltip(): void;
|
|
1427
|
-
private positionTooltip;
|
|
1428
1454
|
protected isStickyRowIndex(index: number): boolean;
|
|
1429
1455
|
protected resolveRowTemplate(row: Data, index: number): TemplateRef<AnyType> | null;
|
|
1430
1456
|
private initVm;
|
|
@@ -1435,7 +1461,9 @@ declare class DataGrid<Data extends AnyDict> {
|
|
|
1435
1461
|
private initScroll;
|
|
1436
1462
|
private initObserver;
|
|
1437
1463
|
private initExpander;
|
|
1464
|
+
private positionTooltip;
|
|
1438
1465
|
private scheduleScrollbarUpdate;
|
|
1466
|
+
private finalizeScroll;
|
|
1439
1467
|
private scheduleScrollTick;
|
|
1440
1468
|
private clearScrollRaf;
|
|
1441
1469
|
private ensureRenderSlots;
|
|
@@ -1446,9 +1474,9 @@ declare class DataGrid<Data extends AnyDict> {
|
|
|
1446
1474
|
private updateStickyFromScroll;
|
|
1447
1475
|
private findStickyIndexBefore;
|
|
1448
1476
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DataGrid<any>, never>;
|
|
1449
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DataGrid<any>, "re-data-grid", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "pinnedRows": { "alias": "pinnedRows"; "required": false; "isSignal": true; }; "isRowSticky": { "alias": "isRowSticky"; "required": false; "isSignal": true; }; "getRowTemplate": { "alias": "getRowTemplate"; "required": false; "isSignal": true; }; "hasIndexColumn": { "alias": "hasIndexColumn"; "required": false; "isSignal": true; }; "selection": { "alias": "selection"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "rowHeight": { "alias": "rowHeight"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "virtualBuffer": { "alias": "virtualBuffer"; "required": false; "isSignal": true; }; "headerGroups": { "alias": "headerGroups"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "loadingMode": { "alias": "loadingMode"; "required": false; "isSignal": true; }; "rowKey": { "alias": "rowKey"; "required": false; "isSignal": true; }; "pageStartFromZero": { "alias": "pageStartFromZero"; "required": false; "isSignal": true; }; }, { "pageChange": "pageChange"; "sortChange": "sortChange"; "selectChange": "selectChange"; "rowClick": "rowClick"; "rowContext": "rowContext"; "rowDoubleClick": "rowDoubleClick"; "cellClick": "cellClick"; "cellContext": "cellContext"; "cellDoubleClick": "cellDoubleClick"; }, ["cellTypedSlotRefs", "cellDataSlotRefs", "declarativeColumnRefs", "headerSlotRefs", "emptySlotRefs", "loadingSlotRefs", "sortIcSlotRefs", "expanderIcSlotRefs", "stickyRowSlotRefs", "rowSlotRefs"], never, true, never>;
|
|
1477
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DataGrid<any>, "re-data-grid", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "pinnedRows": { "alias": "pinnedRows"; "required": false; "isSignal": true; }; "isRowSticky": { "alias": "isRowSticky"; "required": false; "isSignal": true; }; "getRowTemplate": { "alias": "getRowTemplate"; "required": false; "isSignal": true; }; "hasIndexColumn": { "alias": "hasIndexColumn"; "required": false; "isSignal": true; }; "selection": { "alias": "selection"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "rowHeight": { "alias": "rowHeight"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "virtualBuffer": { "alias": "virtualBuffer"; "required": false; "isSignal": true; }; "lockVerticalScroll": { "alias": "lockVerticalScroll"; "required": false; "isSignal": true; }; "headerGroups": { "alias": "headerGroups"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "loadingMode": { "alias": "loadingMode"; "required": false; "isSignal": true; }; "deferContent": { "alias": "deferContent"; "required": false; "isSignal": true; }; "deferHeader": { "alias": "deferHeader"; "required": false; "isSignal": true; }; "deferPinned": { "alias": "deferPinned"; "required": false; "isSignal": true; }; "deferCells": { "alias": "deferCells"; "required": false; "isSignal": true; }; "deferIcons": { "alias": "deferIcons"; "required": false; "isSignal": true; }; "deferTooltip": { "alias": "deferTooltip"; "required": false; "isSignal": true; }; "rowKey": { "alias": "rowKey"; "required": false; "isSignal": true; }; "pageStartFromZero": { "alias": "pageStartFromZero"; "required": false; "isSignal": true; }; }, { "pageChange": "pageChange"; "sortChange": "sortChange"; "selectChange": "selectChange"; "rowClick": "rowClick"; "rowContext": "rowContext"; "rowDoubleClick": "rowDoubleClick"; "cellClick": "cellClick"; "cellContext": "cellContext"; "cellDoubleClick": "cellDoubleClick"; }, ["cellTypedSlotRefs", "cellDataSlotRefs", "declarativeColumnRefs", "headerSlotRefs", "emptySlotRefs", "loadingSlotRefs", "sortIcSlotRefs", "expanderIcSlotRefs", "stickyRowSlotRefs", "rowSlotRefs"], never, true, never>;
|
|
1450
1478
|
}
|
|
1451
1479
|
|
|
1452
1480
|
export { DATA_GRID_CONFIG, DEFAULT_DATA_GRID_DEFAULTS, DataGrid, DataGridCellEmptyDirective, DataGridCellLoadingDirective, DataGridCellTemplateDirective, DataGridDeclarativeCellDirective, DataGridDeclarativeColumn, DataGridDeclarativeHeaderDirective, DataGridExpanderIconDirective, DataGridHeaderTemplateDirective, DataGridRowDirective, DataGridSortIconDirective, DataGridStickyRowDirective, DataGridTypeCellTemplateDirective, provideDataGridDefaults };
|
|
1453
|
-
export type { DataGridConfigProvider, DataGridRowTemplateContext, DataGridStickyRowTemplateContext, DeclarativeColumnDef, GridCellClickEvent, GridCellContextEvent, GridCellDoubleClickEvent, GridCellRenderer, GridColumn, GridColumns, GridHeaderGroup, GridPageChangeEvent, GridPinnedRow, GridPinnedRows, GridRowClickEvent, GridRowContextEvent, GridRowDoubleClickEvent, GridSelectEvent, GridSelection, GridSortEvent, RenderTemplateData };
|
|
1481
|
+
export type { BaseGridColumn, DataGridConfigProvider, DataGridRowTemplateContext, DataGridStickyRowTemplateContext, DeclarativeColumnDef, GridCellAlign, GridCellClickEvent, GridCellContextEvent, GridCellDoubleClickEvent, GridCellRenderer, GridCellRendererType, GridColumn, GridColumnTooltip, GridColumns, GridHeaderGroup, GridPageChangeEvent, GridPaginationMode, GridPinnedPosition, GridPinnedRow, GridPinnedRows, GridRowClickEvent, GridRowContextEvent, GridRowDoubleClickEvent, GridSelectEvent, GridSelectMode, GridSelection, GridSortEvent, GridSortOrder, GridStickySide, GridTooltipContext, HeaderTemplateData, RenderTemplateData };
|
|
1454
1482
|
//# sourceMappingURL=reforgium-data-grid.d.ts.map
|