eru-grid 0.0.32 → 0.0.33

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eru-grid",
3
- "version": "0.0.32",
3
+ "version": "0.0.33",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^21.1.2",
6
6
  "@angular/core": "^21.1.2",
@@ -73,6 +73,9 @@ interface GridFeatures {
73
73
  headerRowHeight?: number;
74
74
  dataRowHeight?: number;
75
75
  cursorOnHover?: string;
76
+ boardCardHoverBg?: string;
77
+ boardCardSelectedBg?: string;
78
+ boardCardSelectedOutline?: string;
76
79
  }
77
80
  interface GridStyles {
78
81
  subTotalStyle?: 'bold' | 'italic' | 'highlighted';
@@ -574,6 +577,7 @@ declare class EruGridStore {
574
577
  private readonly _rows;
575
578
  private _groupRows;
576
579
  private readonly _selectedRowIds;
580
+ private readonly _activeBoardRow;
577
581
  private readonly _rowGrandTotal;
578
582
  private readonly _dynamicDataRequest;
579
583
  private readonly _dynamicData;
@@ -610,6 +614,7 @@ declare class EruGridStore {
610
614
  count: number;
611
615
  }[]>;
612
616
  readonly selectedRowIds: _angular_core.Signal<Set<string>>;
617
+ readonly activeBoardRow: _angular_core.Signal<any>;
613
618
  readonly configuration: _angular_core.Signal<GridConfiguration>;
614
619
  readonly isLoading: _angular_core.Signal<boolean>;
615
620
  readonly requestQueue: _angular_core.Signal<RowDataRequest[]>;
@@ -636,7 +641,7 @@ declare class EruGridStore {
636
641
  readonly isPivotMode: _angular_core.Signal<boolean>;
637
642
  readonly isEditingEnabled: _angular_core.Signal<boolean>;
638
643
  readonly displayColumns: _angular_core.Signal<Field[]>;
639
- readonly displayData: _angular_core.Signal<Row[] | PivotRow[]>;
644
+ readonly displayData: _angular_core.Signal<PivotRow[] | Row[]>;
640
645
  readonly pivotGrandTotalData: _angular_core.Signal<PivotRow[]>;
641
646
  readonly pivotDisplayData: _angular_core.Signal<PivotRow[]>;
642
647
  readonly tableDisplayData: _angular_core.Signal<Row[]>;
@@ -669,6 +674,8 @@ declare class EruGridStore {
669
674
  addRows(newRows: Row[]): void;
670
675
  updateRow(rowId: string, updates: Partial<Row>): void;
671
676
  selectRow(rowId: string): void;
677
+ /** Mark the single active board card (last clicked) for the selected-state highlight. */
678
+ setActiveBoardRow(row: any): void;
672
679
  deselectRow(rowId: string): void;
673
680
  toggleRowSelection(rowId: string): void;
674
681
  selectAllRowsInGroup(groupId: string): void;
@@ -933,7 +940,7 @@ declare class EruGridService {
933
940
  get pivotConfiguration(): _angular_core.Signal<PivotConfiguration | null>;
934
941
  get pivotResult(): _angular_core.Signal<eru_grid.PivotResult | null>;
935
942
  get displayColumns(): _angular_core.Signal<Field[]>;
936
- get displayData(): _angular_core.Signal<eru_grid.Row[] | eru_grid.PivotRow[]>;
943
+ get displayData(): _angular_core.Signal<eru_grid.PivotRow[] | eru_grid.Row[]>;
937
944
  get isEditingEnabled(): _angular_core.Signal<boolean>;
938
945
  get configuration(): _angular_core.Signal<GridConfiguration>;
939
946
  get isLoading(): _angular_core.Signal<boolean>;
@@ -1007,6 +1014,14 @@ declare class EruGridComponent implements OnInit, AfterViewInit, OnDestroy {
1007
1014
  * Default: 208 (matches the built-in default card height).
1008
1015
  */
1009
1016
  boardCardHeight: number;
1017
+ /**
1018
+ * Vertical gap in pixels between board cards. Added to the CDK virtual-scroll
1019
+ * item size so the space appears below each card without overlap.
1020
+ * Default: 0 (cards stacked flush).
1021
+ */
1022
+ boardCardGap: number;
1023
+ /** Total slot size per board card = card height + gap. Drives CDK itemSize. */
1024
+ get boardCardSlot(): number;
1010
1025
  /**
1011
1026
  * Fires when a user clicks a row (table mode) or card (board mode).
1012
1027
  * Consumers can subscribe to drive navigation, side-panel detail views,
@@ -1018,6 +1033,9 @@ declare class EruGridComponent implements OnInit, AfterViewInit, OnDestroy {
1018
1033
  group?: RowGroup;
1019
1034
  }>;
1020
1035
  emitRowSelect(row: Row, mode: 'table' | 'board', group?: RowGroup): void;
1036
+ /** Whether a board card is the active (last-clicked) one. Compared by row
1037
+ * reference so it works for entity and query data alike. */
1038
+ isBoardCardActive(row: Row): boolean;
1021
1039
  initialMinHeight: number;
1022
1040
  initialTotalWidth: number;
1023
1041
  viewport: CdkVirtualScrollViewport;
@@ -1336,7 +1354,7 @@ declare class EruGridComponent implements OnInit, AfterViewInit, OnDestroy {
1336
1354
  requestBoardRowsForGroup(group: RowGroup): void;
1337
1355
  loadBoardAll(): void;
1338
1356
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EruGridComponent, never>;
1339
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<EruGridComponent, "eru-grid", never, { "gridConfig": { "alias": "gridConfig"; "required": false; }; "boardCardTemplate": { "alias": "boardCardTemplate"; "required": false; }; "boardCardHeight": { "alias": "boardCardHeight"; "required": false; }; }, { "rowSelect": "rowSelect"; }, never, never, true, never>;
1357
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<EruGridComponent, "eru-grid", never, { "gridConfig": { "alias": "gridConfig"; "required": false; }; "boardCardTemplate": { "alias": "boardCardTemplate"; "required": false; }; "boardCardHeight": { "alias": "boardCardHeight"; "required": false; }; "boardCardGap": { "alias": "boardCardGap"; "required": false; }; }, { "rowSelect": "rowSelect"; }, never, never, true, never>;
1340
1358
  }
1341
1359
  interface GroupItem {
1342
1360
  type: 'header' | 'row' | 'table-header' | 'row-place-holder' | 'ghost-loading';