@nanahoshi/mona-ui 0.20.1 → 0.22.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.
Files changed (23) hide show
  1. package/fesm2022/nanahoshi-mona-ui-color-gradient.mjs +5 -3
  2. package/fesm2022/nanahoshi-mona-ui-color-picker.mjs +4 -3
  3. package/fesm2022/nanahoshi-mona-ui-date-picker.mjs +4 -2
  4. package/fesm2022/nanahoshi-mona-ui-datetime-picker.mjs +4 -2
  5. package/fesm2022/{nanahoshi-mona-ui-grid-grid-footer-cell.component-DLqCAee3.mjs → nanahoshi-mona-ui-grid-grid-footer-cell.component-cJjJ1b6M.mjs} +7 -4
  6. package/fesm2022/{nanahoshi-mona-ui-grid-grid-footer-table-cell.directive-Bd2twji1.mjs → nanahoshi-mona-ui-grid-grid-footer-table-cell.directive-CkkLBnoI.mjs} +12 -6
  7. package/fesm2022/nanahoshi-mona-ui-grid-grid-list.component-Do-ktlth.mjs +164 -0
  8. package/fesm2022/{nanahoshi-mona-ui-grid-grid-toggle.component-CtEs5t9x.mjs → nanahoshi-mona-ui-grid-grid-toggle.component-BDMX9KGc.mjs} +47 -36
  9. package/fesm2022/nanahoshi-mona-ui-grid-grid-virtual-list.component-Cs1gPJps.mjs +239 -0
  10. package/fesm2022/{nanahoshi-mona-ui-grid-nanahoshi-mona-ui-grid-BIK61ieq.mjs → nanahoshi-mona-ui-grid-nanahoshi-mona-ui-grid-CIfTr1Qm.mjs} +564 -300
  11. package/fesm2022/nanahoshi-mona-ui-grid.mjs +1 -1
  12. package/fesm2022/nanahoshi-mona-ui-internal-filter-input.mjs +3 -2
  13. package/fesm2022/nanahoshi-mona-ui-internal-tree.mjs +17 -14
  14. package/fesm2022/nanahoshi-mona-ui-locales.mjs +26 -13
  15. package/fesm2022/nanahoshi-mona-ui-pager.mjs +10 -5
  16. package/fesm2022/nanahoshi-mona-ui-time-picker.mjs +11 -3
  17. package/package.json +1 -1
  18. package/types/nanahoshi-mona-ui-grid.d.ts +87 -42
  19. package/types/nanahoshi-mona-ui-i18n.d.ts +1 -0
  20. package/types/nanahoshi-mona-ui-locales.d.ts +13 -0
  21. package/types/nanahoshi-mona-ui-pager.d.ts +1 -0
  22. package/fesm2022/nanahoshi-mona-ui-grid-grid-list.component-hakVMhqu.mjs +0 -145
  23. package/fesm2022/nanahoshi-mona-ui-grid-grid-virtual-list.component-DoAGYLzr.mjs +0 -233
@@ -31,8 +31,8 @@ interface ColumnConfig {
31
31
  readonly editable: boolean;
32
32
  readonly field: string;
33
33
  readonly filterable: boolean;
34
- readonly format: ColumnFormat | null;
35
34
  readonly footerTemplate: TemplateRef<unknown> | null;
35
+ readonly format: ColumnFormat | null;
36
36
  readonly groupFooterTemplate: TemplateRef<unknown> | null;
37
37
  readonly headerTemplate: TemplateRef<unknown> | null;
38
38
  readonly hidden: boolean;
@@ -43,6 +43,7 @@ interface ColumnConfig {
43
43
  readonly maxWidth: number | null;
44
44
  readonly minWidth: number | null;
45
45
  readonly removeConfirmation: boolean;
46
+ readonly sortable: boolean;
46
47
  readonly stateKey: string | null;
47
48
  readonly title: string;
48
49
  readonly titleTemplate: TemplateRef<unknown> | null;
@@ -616,6 +617,29 @@ declare class GridSortableDirective {
616
617
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<GridSortableDirective, "mona-grid[monaGridSortable]", never, { "options": { "alias": "monaGridSortable"; "required": false; "isSignal": true; }; "sort": { "alias": "sort"; "required": false; "isSignal": true; }; }, { "columnSort": "columnSort"; "sort": "sortChange"; }, never, never, true, never>;
617
618
  }
618
619
 
620
+ /** The paging, sorting, and filtering requested by a server-bound Grid. */
621
+ interface GridDataState {
622
+ readonly filter: readonly CompositeFilterDescriptor[];
623
+ readonly skip: number;
624
+ readonly sort: readonly SortDescriptor[];
625
+ readonly take: number;
626
+ }
627
+
628
+ declare class GridServerBindingDirective {
629
+ #private;
630
+ /** @description Emitted once per user paging, sorting, or filtering action with the requested server state. */
631
+ readonly dataStateChange: _angular_core.OutputEmitterRef<GridDataState>;
632
+ /** @description Shows a loading overlay while the application requests server data. */
633
+ readonly loading: _angular_core.InputSignal<boolean>;
634
+ /** @description Zero-based offset of the supplied server page. External changes do not request data. */
635
+ readonly skip: _angular_core.InputSignal<number>;
636
+ /** @description Total matching server records before paging. Must be a non-negative integer. */
637
+ readonly total: _angular_core.InputSignal<number>;
638
+ constructor();
639
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<GridServerBindingDirective, never>;
640
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<GridServerBindingDirective, "mona-grid[monaGridServerBinding]", never, { "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "skip": { "alias": "skip"; "required": false; "isSignal": true; }; "total": { "alias": "total"; "required": true; "isSignal": true; }; }, { "dataStateChange": "dataStateChange"; }, never, never, true, never>;
641
+ }
642
+
619
643
  type GridStateVersion = 1;
620
644
  type GridStateFilterValue = boolean | number | string | null | readonly (boolean | number | string | null)[];
621
645
  interface GridStateFilterDescriptor {
@@ -803,6 +827,10 @@ declare class GridColumnComponent implements GridColumnDefinition {
803
827
  * @description The minimum width of this column in pixels.
804
828
  */
805
829
  readonly minWidth: _angular_core.InputSignal<number>;
830
+ /**
831
+ * @description Whether this column can be sorted through its header when grid sorting is enabled. Has no effect if sorting is disabled on the grid.
832
+ */
833
+ readonly sortable: _angular_core.InputSignal<boolean>;
806
834
  /**
807
835
  * @description A stable key used to persist state for columns whose field is empty or unstable.
808
836
  */
@@ -821,7 +849,7 @@ declare class GridColumnComponent implements GridColumnDefinition {
821
849
  readonly width: _angular_core.InputSignal<number | null | undefined>;
822
850
  getColumn(): Column;
823
851
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<GridColumnComponent, never>;
824
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<GridColumnComponent, "mona-grid-column", never, { "aggregate": { "alias": "aggregate"; "required": false; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "field": { "alias": "field"; "required": false; "isSignal": true; }; "filterable": { "alias": "filterable"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "hidden": { "alias": "hidden"; "required": false; "isSignal": true; }; "locked": { "alias": "locked"; "required": false; "isSignal": true; }; "lockedPosition": { "alias": "lockedPosition"; "required": false; "isSignal": true; }; "maxWidth": { "alias": "maxWidth"; "required": false; "isSignal": true; }; "minWidth": { "alias": "minWidth"; "required": false; "isSignal": true; }; "stateKey": { "alias": "stateKey"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; }, {}, ["cellTemplate", "editTemplate", "footerTemplate", "groupFooterTemplate", "headerTemplate", "titleTemplate"], never, true, never>;
852
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<GridColumnComponent, "mona-grid-column", never, { "aggregate": { "alias": "aggregate"; "required": false; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "field": { "alias": "field"; "required": false; "isSignal": true; }; "filterable": { "alias": "filterable"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "hidden": { "alias": "hidden"; "required": false; "isSignal": true; }; "locked": { "alias": "locked"; "required": false; "isSignal": true; }; "lockedPosition": { "alias": "lockedPosition"; "required": false; "isSignal": true; }; "maxWidth": { "alias": "maxWidth"; "required": false; "isSignal": true; }; "minWidth": { "alias": "minWidth"; "required": false; "isSignal": true; }; "sortable": { "alias": "sortable"; "required": false; "isSignal": true; }; "stateKey": { "alias": "stateKey"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; }, {}, ["cellTemplate", "editTemplate", "footerTemplate", "groupFooterTemplate", "headerTemplate", "titleTemplate"], never, true, never>;
825
853
  }
826
854
 
827
855
  interface ColumnFilterState {
@@ -894,21 +922,21 @@ interface RowEditDataItem extends Record<string, unknown> {
894
922
  }
895
923
  declare class GridService {
896
924
  #private;
925
+ readonly add$: Subject<GridAddEvent>;
897
926
  readonly addRowData: _angular_core.Signal<Record<PropertyKey, unknown> | null>;
898
927
  readonly addRowVisible: _angular_core.Signal<boolean>;
899
- readonly add$: Subject<GridAddEvent>;
900
- readonly allBulkSelectionRowsSelected: _angular_core.Signal<boolean>;
901
928
  readonly aggregateColumns: _angular_core.Signal<ImmutableList<Column>>;
902
929
  readonly aggregateMap: _angular_core.Signal<ImmutableDictionary<string, GridAggregateBucket>>;
903
930
  readonly aggregateRows: _angular_core.Signal<Record<PropertyKey, unknown>[]>;
931
+ readonly allBulkSelectionRowsSelected: _angular_core.Signal<boolean>;
904
932
  readonly appliedFilters: _angular_core.WritableSignal<ImmutableDictionary<string, ColumnFilterState>>;
905
933
  readonly appliedGroupSorts: _angular_core.WritableSignal<ImmutableDictionary<string, ColumnSortState>>;
906
934
  readonly appliedSorts: _angular_core.WritableSignal<ImmutableDictionary<string, ColumnSortState>>;
907
935
  readonly bodyScrollElement: _angular_core.WritableSignal<HTMLElement | null>;
908
936
  readonly bodyTableElement: _angular_core.WritableSignal<HTMLTableElement | null>;
909
937
  readonly bulkSelectionRows: _angular_core.Signal<ImmutableList<Row>>;
910
- readonly cellEdit$: Subject<CellEditEvent>;
911
938
  readonly cancel$: Subject<GridCancelEvent>;
939
+ readonly cellEdit$: Subject<CellEditEvent>;
912
940
  /** Set of currently collapsed group keys (global, shared by both paginated and virtual list). */
913
941
  readonly collapsedGroupKeys: _angular_core.WritableSignal<ImmutableSet<string>>;
914
942
  readonly columnReorder$: Subject<ColumnReorderEvent>;
@@ -916,14 +944,16 @@ declare class GridService {
916
944
  readonly columnSort$: Subject<ColumnSortEvent>;
917
945
  readonly columns: _angular_core.WritableSignal<ImmutableList<Column>>;
918
946
  readonly contextMenuItems: _angular_core.WritableSignal<ImmutableSet<PopupMenuItem>>;
919
- readonly detailColumnWidth = 36;
947
+ readonly dataStateChange$: Subject<GridDataState>;
920
948
  readonly detailColumnOffset: _angular_core.Signal<number>;
921
- readonly detailStructuralWidth: _angular_core.Signal<0 | 36>;
949
+ readonly detailColumnWidth = 36;
950
+ readonly detailStructuralWidth: _angular_core.Signal<36 | 0>;
951
+ readonly draggingRowUid: _angular_core.WritableSignal<string | null>;
952
+ readonly edit$: Subject<GridEditEvent>;
922
953
  readonly editBaseDict: _angular_core.Signal<ImmutableDictionary<string, RowEditDataItem>>;
923
954
  readonly editContext: _angular_core.Signal<GridEditContext | null>;
924
- readonly edit$: Subject<GridEditEvent>;
925
- readonly editViewDict: _angular_core.Signal<ImmutableDictionary<string, RowEditDataItem>>;
926
955
  readonly editSession: _angular_core.Signal<GridEditSession | null>;
956
+ readonly editViewDict: _angular_core.Signal<ImmutableDictionary<string, RowEditDataItem>>;
927
957
  readonly editableOptions: _angular_core.WritableSignal<EditableOptions>;
928
958
  readonly editingRowUid: _angular_core.Signal<string | null>;
929
959
  readonly expandedKeys: _angular_core.WritableSignal<ImmutableSet<string>>;
@@ -936,23 +966,24 @@ declare class GridService {
936
966
  readonly groupColumns: _angular_core.Signal<ImmutableList<Column>>;
937
967
  readonly groupStructuralWidth: _angular_core.Signal<number>;
938
968
  readonly groupableOptions: _angular_core.WritableSignal<GroupableOptions>;
939
- readonly hasLeftLockedColumns: _angular_core.Signal<boolean>;
940
969
  readonly hasFooter: _angular_core.Signal<boolean>;
970
+ readonly hasLeftLockedColumns: _angular_core.Signal<boolean>;
941
971
  readonly hasLiveScrollbarGutterWidth: _angular_core.Signal<boolean>;
942
972
  readonly headerTableElement: _angular_core.WritableSignal<HTMLTableElement | null>;
943
973
  readonly horizontalScrollLeft: _angular_core.Signal<number>;
944
974
  readonly isInEditMode: _angular_core.Signal<boolean>;
945
975
  readonly lastLeftStructuralOffset: _angular_core.Signal<number | null>;
976
+ readonly leadingLogicalColumnCount: _angular_core.Signal<number>;
977
+ readonly leadingStructuralColumnCount: _angular_core.Signal<number>;
978
+ readonly leadingStructuralWidth: _angular_core.Signal<number>;
946
979
  readonly leftLockedStructuralWidth: _angular_core.Signal<number>;
947
980
  readonly lockedColumnStates: _angular_core.Signal<ReadonlyMap<string, GridLockedColumnState>>;
948
- readonly leadingStructuralWidth: _angular_core.Signal<number>;
949
- readonly leadingStructuralColumnCount: _angular_core.Signal<number>;
950
- readonly leadingLogicalColumnCount: _angular_core.Signal<number>;
951
981
  readonly masterDetailEmptyCellWidth: _angular_core.Signal<number>;
952
982
  readonly masterDetailRowWidth: _angular_core.Signal<number>;
953
983
  readonly masterDetailTemplate: _angular_core.WritableSignal<TemplateRef<unknown> | null>;
954
984
  readonly messages: _angular_core.Signal<_nanahoshi_mona_ui_i18n.MonaGridMessages>;
955
985
  readonly newRowFactory: _angular_core.WritableSignal<() => Record<PropertyKey, unknown>>;
986
+ readonly pagerTotal: _angular_core.Signal<number>;
956
987
  readonly paginationState: _angular_core.WritableSignal<PaginationState>;
957
988
  readonly remove$: Subject<GridRemoveEvent>;
958
989
  readonly reorderableOptions: _angular_core.Signal<ReorderableOptions>;
@@ -966,11 +997,10 @@ declare class GridService {
966
997
  readonly rowReorderColumnWidth = 36;
967
998
  readonly rowReorderDisabledReason: _angular_core.Signal<RowReorderDisabledReason>;
968
999
  readonly rowReorderInteractionEnabled: _angular_core.Signal<boolean>;
969
- readonly rowReorderStructuralWidth: _angular_core.Signal<0 | 36>;
1000
+ readonly rowReorderStructuralWidth: _angular_core.Signal<36 | 0>;
970
1001
  readonly rowReorderableOptions: _angular_core.Signal<RowReorderableOptions>;
971
1002
  readonly rows: _angular_core.WritableSignal<ImmutableList<Row>>;
972
1003
  readonly save$: Subject<GridSaveEvent>;
973
- readonly draggingRowUid: _angular_core.WritableSignal<string | null>;
974
1004
  readonly scrollEnd$: Subject<void>;
975
1005
  readonly scrollEndThreshold: _angular_core.WritableSignal<number>;
976
1006
  readonly scrollbarGutterWidth: _angular_core.Signal<number>;
@@ -980,10 +1010,13 @@ declare class GridService {
980
1010
  readonly selectedKeysChange$: rxjs.Observable<ImmutableSet<unknown>>;
981
1011
  readonly selectedKeysLoad$: BehaviorSubject<ImmutableSet<unknown>>;
982
1012
  readonly selectedRows: _angular_core.Signal<ImmutableSet<Row>>;
983
- readonly selectionColumnWidth = 40;
984
- readonly selectionColumnVisible: _angular_core.Signal<boolean>;
985
1013
  readonly selectionColumnOffset: _angular_core.Signal<number>;
1014
+ readonly selectionColumnVisible: _angular_core.Signal<boolean>;
1015
+ readonly selectionColumnWidth = 40;
986
1016
  readonly selectionStructuralWidth: _angular_core.Signal<0 | 40>;
1017
+ readonly serverBindingEnabled: _angular_core.Signal<boolean>;
1018
+ readonly serverLoading: _angular_core.Signal<boolean>;
1019
+ readonly serverTotal: _angular_core.Signal<number>;
987
1020
  readonly someBulkSelectionRowsSelected: _angular_core.Signal<boolean>;
988
1021
  readonly sortableOptions: _angular_core.WritableSignal<SortableOptions>;
989
1022
  readonly structuralColIndexMap: _angular_core.Signal<Map<StructuralColumnKind, number>>;
@@ -1013,8 +1046,11 @@ declare class GridService {
1013
1046
  findTextWidthOfColumn(column: Column, element: HTMLTableCellElement): number;
1014
1047
  getColumnStateId(column: Column): string | null;
1015
1048
  getColumnWidth(column: Column): number;
1049
+ getDataState(): GridDataState;
1016
1050
  getGroupDescriptors(columns: Iterable<Column>): GroupDescriptor[];
1017
1051
  getRowReorderAriaLabel(row: Row, absoluteIndex: number): string;
1052
+ /** Sort order shared by models, persistence, and server requests. */
1053
+ getSortDescriptors(): SortDescriptor[];
1018
1054
  handleMultipleSelection(event: MouseEvent, row: Row): void;
1019
1055
  handleRowClick(event: MouseEvent, row: Row): void;
1020
1056
  handleSingleSelection(event: MouseEvent, row: Row): void;
@@ -1030,6 +1066,9 @@ declare class GridService {
1030
1066
  patchAddCell(field: string, value: unknown): void;
1031
1067
  patchCellEdit(rowUid: string, field: string, value: unknown): void;
1032
1068
  removeRow(row: Row, originalEvent?: Event): boolean;
1069
+ requestDataStateChange(options?: {
1070
+ readonly resetPage?: boolean;
1071
+ }): void;
1033
1072
  requestRowReorder(row: Row, previousPageIndex: number, currentPageIndex: number): boolean;
1034
1073
  resolveAggregateValue(bucket: GridAggregateBucket | null, aggregateFunction: AggregateFunction | null): unknown;
1035
1074
  saveAddRow(originalEvent?: Event): boolean;
@@ -1054,11 +1093,15 @@ declare class GridService {
1054
1093
  setResizableOptions(options: Partial<ResizableOptions>): void;
1055
1094
  setRowExpanded(row: Row, expanded: boolean): void;
1056
1095
  setRowReorderableOptions(options: RowReorderableOptions): void;
1096
+ setRowSelected(row: Row, selected: boolean): void;
1057
1097
  setRows(value: Iterable<Record<PropertyKey, unknown>>, rowKey?: GridKeySelector<unknown> | null): void;
1098
+ setScrollEndThreshold(threshold: number): void;
1058
1099
  setSelectableOptions(options: SelectableOptions): void;
1059
- setRowSelected(row: Row, selected: boolean): void;
1100
+ setServerBindingEnabled(enabled: boolean): void;
1101
+ setServerLoading(loading: boolean): void;
1102
+ setServerSkip(skip: number): void;
1103
+ setServerTotal(total: number): void;
1060
1104
  setSortableOptions(options: Partial<SortableOptions>): void;
1061
- setScrollEndThreshold(threshold: number): void;
1062
1105
  setVirtualScrollOptions(options: VirtualScrollOptions): void;
1063
1106
  startAddRow(originalEvent?: Event): boolean;
1064
1107
  startCellEdit(uid: string, row: Row, column: Column, originalEvent?: Event): boolean;
@@ -1070,9 +1113,12 @@ declare class GridService {
1070
1113
  private applyColumnIndexes;
1071
1114
  private buildGroupAggregates;
1072
1115
  private buildGroupKey;
1073
- private compareComparableValues;
1116
+ private clearEditSession;
1117
+ private cloneFilter;
1118
+ private cloneFilterValue;
1074
1119
  private createAggregateBucket;
1075
1120
  private createAggregateMap;
1121
+ private createEditSession;
1076
1122
  private deserializeCompositeFilter;
1077
1123
  private deserializeFilterDescriptor;
1078
1124
  private deserializeFilterValue;
@@ -1088,14 +1134,11 @@ declare class GridService {
1088
1134
  private measureElementScrollbarGutter;
1089
1135
  private measureFallbackScrollbarGutter;
1090
1136
  private orderColumnsByLockBucket;
1091
- private reconcileColumn;
1092
- private selectRowRange;
1093
- private clearEditSession;
1094
- private createEditSession;
1095
1137
  private patchSessionField;
1138
+ private reconcileColumn;
1096
1139
  private resolveEditedRowData;
1097
1140
  private resolveSessionRowData;
1098
- private validateSessionForSave;
1141
+ private selectRowRange;
1099
1142
  private serializeFilter;
1100
1143
  private serializeFilterDescriptor;
1101
1144
  private serializeFilterValue;
@@ -1103,13 +1146,14 @@ declare class GridService {
1103
1146
  private setHorizontalScrollLeft;
1104
1147
  private setHorizontalScrollSyncEffects;
1105
1148
  private setScrollbarGutterEffects;
1106
- private toComparableValue;
1107
1149
  private updateColumns;
1150
+ private validateServerInteger;
1151
+ private validateSessionForSave;
1108
1152
  private withColumnIndices;
1109
1153
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<GridService, never>;
1110
1154
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<GridService>;
1111
1155
  }
1112
- type RowReorderDisabledReason = "disabled" | "editing" | "filtered" | "grouped" | "single-row" | "sorted" | "virtual-scroll" | null;
1156
+ type RowReorderDisabledReason = "disabled" | "editing" | "filtered" | "grouped" | "server-binding" | "single-row" | "sorted" | "virtual-scroll" | null;
1113
1157
 
1114
1158
  declare const gridBaseThemeVariants: (props?: ({
1115
1159
  rounded?: "small" | "none" | "medium" | "large" | null | undefined;
@@ -1158,21 +1202,21 @@ declare class GridComponent<T> implements GridVariantInput {
1158
1202
  protected readonly gridHeaderElement: _angular_core.Signal<ElementRef<HTMLDivElement>>;
1159
1203
  protected readonly gridHeaderTableElement: _angular_core.Signal<ElementRef<HTMLTableElement>>;
1160
1204
  protected readonly gridService: GridService;
1161
- protected readonly messages: _angular_core.Signal<_nanahoshi_mona_ui_i18n.MonaGridMessages>;
1162
1205
  protected readonly gridWidthSet: _angular_core.WritableSignal<boolean>;
1163
1206
  protected readonly groupColumnList: _angular_core.Signal<CdkDropList<any> | undefined>;
1164
- protected readonly groupPanelPlaceholderClass: _angular_core.Signal<string>;
1165
1207
  protected readonly groupPanelClass: _angular_core.Signal<string>;
1208
+ protected readonly groupPanelPlaceholderClass: _angular_core.Signal<string>;
1166
1209
  protected readonly groupPanelPlaceholderVisible: _angular_core.WritableSignal<boolean>;
1167
1210
  protected readonly groupable: _angular_core.Signal<boolean>;
1168
1211
  protected readonly groupingInProgress: _angular_core.WritableSignal<boolean>;
1169
1212
  protected readonly headerClass: _angular_core.Signal<string>;
1170
- protected readonly headerMarginRight: _angular_core.Signal<number>;
1171
- protected readonly headerTableClass: _angular_core.Signal<string>;
1213
+ protected readonly headerMarginInlineEnd: _angular_core.Signal<number>;
1172
1214
  protected readonly headerTableCellClass: _angular_core.Signal<string>;
1215
+ protected readonly headerTableClass: _angular_core.Signal<string>;
1173
1216
  protected readonly headerTableColumnTitleClass: _angular_core.Signal<string>;
1174
1217
  protected readonly headerTableColumnWrapClass: _angular_core.Signal<string>;
1175
1218
  protected readonly headerTableRowClass: _angular_core.Signal<string>;
1219
+ protected readonly messages: _angular_core.Signal<_nanahoshi_mona_ui_i18n.MonaGridMessages>;
1176
1220
  protected readonly noDataClass: _angular_core.Signal<string>;
1177
1221
  protected readonly noDataTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
1178
1222
  protected readonly resizing: _angular_core.WritableSignal<boolean>;
@@ -1212,12 +1256,6 @@ declare class GridComponent<T> implements GridVariantInput {
1212
1256
  * @default "fitView"
1213
1257
  */
1214
1258
  readonly resizeMethod: _angular_core.InputSignal<ResizeMethod>;
1215
- /**
1216
- * @description Field name or selector used to derive a stable identity for each row.
1217
- * The resolved value must be unique within the grid data.
1218
- * @default null
1219
- */
1220
- readonly rowKey: _angular_core.InputSignal<GridKeySelector<unknown>>;
1221
1259
  /**
1222
1260
  * @description Whether the pager is responsive.
1223
1261
  * If set to `true`, the pager will be displayed as a dropdown when the grid width gets smaller.
@@ -1229,6 +1267,12 @@ declare class GridComponent<T> implements GridVariantInput {
1229
1267
  * @default "medium"
1230
1268
  */
1231
1269
  readonly rounded: _angular_core.InputSignal<"small" | "none" | "medium" | "large" | null | undefined>;
1270
+ /**
1271
+ * @description Field name or selector used to derive a stable identity for each row.
1272
+ * The resolved value must be unique within the grid data.
1273
+ * @default null
1274
+ */
1275
+ readonly rowKey: _angular_core.InputSignal<GridKeySelector<unknown>>;
1232
1276
  /**
1233
1277
  * @description Additional CSS classes merged onto the host element via `tailwind-merge`.
1234
1278
  * @default ""
@@ -1247,8 +1291,8 @@ declare class GridComponent<T> implements GridVariantInput {
1247
1291
  protected onColumnResizeEnd(event: ColumnResizeEvent): void;
1248
1292
  protected onColumnResizeStart(): void;
1249
1293
  protected onColumnSort(column: Column): void;
1250
- protected onGroupingColumnRemove(event: Event, column: Column): void;
1251
1294
  protected onGroupColumnReorder(column: Column, moveAs: "prev" | "next"): void;
1295
+ protected onGroupingColumnRemove(event: Event, column: Column): void;
1252
1296
  protected onGroupingColumnSort(column: Column): void;
1253
1297
  protected onPageChange(event: PageChangeEvent): void;
1254
1298
  protected onPageSizeChange(data: PageSizeChangeEvent): void;
@@ -1257,8 +1301,8 @@ declare class GridComponent<T> implements GridVariantInput {
1257
1301
  private clampCalculatedWidth;
1258
1302
  private clearDragState;
1259
1303
  private createFitViewWidthMap;
1260
- private getTableColumnHeaderCellList;
1261
1304
  private getColumnLockBucket;
1305
+ private getTableColumnHeaderCellList;
1262
1306
  private getToolbarFocusTargets;
1263
1307
  private isElementDisabled;
1264
1308
  private isElementHidden;
@@ -1271,7 +1315,7 @@ declare class GridComponent<T> implements GridVariantInput {
1271
1315
  private setResizeObserver;
1272
1316
  private syncToolbarFocusTargets;
1273
1317
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<GridComponent<any>, never>;
1274
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<GridComponent<any>, "mona-grid", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "pageSizeValues": { "alias": "pageSizeValues"; "required": false; "isSignal": true; }; "resizeMethod": { "alias": "resizeMethod"; "required": false; "isSignal": true; }; "rowKey": { "alias": "rowKey"; "required": false; "isSignal": true; }; "responsivePager": { "alias": "responsivePager"; "required": false; "isSignal": true; }; "rounded": { "alias": "rounded"; "required": false; "isSignal": true; }; "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, ["columnDefinitions", "gridDetailTemplate", "noDataTemplate", "toolbarTemplate"], never, true, never>;
1318
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<GridComponent<any>, "mona-grid", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "pageSizeValues": { "alias": "pageSizeValues"; "required": false; "isSignal": true; }; "resizeMethod": { "alias": "resizeMethod"; "required": false; "isSignal": true; }; "responsivePager": { "alias": "responsivePager"; "required": false; "isSignal": true; }; "rounded": { "alias": "rounded"; "required": false; "isSignal": true; }; "rowKey": { "alias": "rowKey"; "required": false; "isSignal": true; }; "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, ["columnDefinitions", "gridDetailTemplate", "noDataTemplate", "toolbarTemplate"], never, true, never>;
1275
1319
  }
1276
1320
 
1277
1321
  declare const GRID_DEFAULT_MESSAGES: {
@@ -1304,6 +1348,7 @@ declare const GRID_DEFAULT_MESSAGES: {
1304
1348
  rowReorderDisabledEditing: string;
1305
1349
  rowReorderDisabledFiltered: string;
1306
1350
  rowReorderDisabledGrouped: string;
1351
+ rowReorderDisabledServerBinding: string;
1307
1352
  rowReorderDisabledSingleRow: string;
1308
1353
  rowReorderDisabledSorted: string;
1309
1354
  rowReorderDisabledVirtualScroll: string;
@@ -1317,5 +1362,5 @@ declare const GRID_DEFAULT_MESSAGES: {
1317
1362
  selectRow: (rowNumber: number) => string;
1318
1363
  };
1319
1364
 
1320
- export { CellEditEvent, ColumnReorderEvent, ColumnSortEvent, GRID_DEFAULT_MESSAGES, GridAddCommandDirective, GridAddEvent, GridCancelCommandDirective, GridCancelEvent, GridCellTemplateDirective, GridColumnComponent, GridColumnTitleTemplateDirective, GridCommandColumnComponent, GridComponent, GridContextMenuDirective, GridDetailTemplateDirective, GridEditCommandDirective, GridEditEvent, GridEditTemplateDirective, GridEditableDirective, GridExportDirective, GridFilterableDirective, GridFooterTemplateDirective, GridGroupFooterTemplateDirective, GridGroupableDirective, GridHeaderTemplateDirective, GridNoDataTemplateDirective, GridRemoveCommandDirective, GridRemoveEvent, GridReorderableDirective, GridResizableDirective, GridRowReorderableDirective, GridSaveCommandDirective, GridSaveEvent, GridSelectableDirective, GridSortableDirective, GridStatePersistenceDirective, GridToolbarTemplateDirective, GridVirtualScrollDirective, RowEditEvent, RowReorderEvent };
1321
- export type { AggregateFunction, Column, ColumnConfig, ColumnFormat, ColumnKind, ColumnResizeEvent, EditableOptions, FilterableOptions, GridColumnLockedPosition, GridColumnState, GridEditFormContext, GridEditOperation, GridEditSchemaFactory, GridEditSession, GridEditTemplateContext, GridSaveOperation, GridState, GridStateCompositeFilterDescriptor, GridStateFilterDescriptor, GridStateFilterValue, GridStateLoadResult, GridStateLoadStatus, GridStatePersistenceOptions, GridStateSortDescriptor, GridStateVersion, GroupDescriptor, GroupableOptions, ReorderableOptions, ResizableOptions, ResizeMethod, RowReorderableOptions, SelectableOptions, SortableOptions };
1365
+ export { CellEditEvent, ColumnReorderEvent, ColumnSortEvent, GRID_DEFAULT_MESSAGES, GridAddCommandDirective, GridAddEvent, GridCancelCommandDirective, GridCancelEvent, GridCellTemplateDirective, GridColumnComponent, GridColumnTitleTemplateDirective, GridCommandColumnComponent, GridComponent, GridContextMenuDirective, GridDetailTemplateDirective, GridEditCommandDirective, GridEditEvent, GridEditTemplateDirective, GridEditableDirective, GridExportDirective, GridFilterableDirective, GridFooterTemplateDirective, GridGroupFooterTemplateDirective, GridGroupableDirective, GridHeaderTemplateDirective, GridNoDataTemplateDirective, GridRemoveCommandDirective, GridRemoveEvent, GridReorderableDirective, GridResizableDirective, GridRowReorderableDirective, GridSaveCommandDirective, GridSaveEvent, GridSelectableDirective, GridServerBindingDirective, GridSortableDirective, GridStatePersistenceDirective, GridToolbarTemplateDirective, GridVirtualScrollDirective, RowEditEvent, RowReorderEvent };
1366
+ export type { AggregateFunction, Column, ColumnConfig, ColumnFormat, ColumnKind, ColumnResizeEvent, EditableOptions, FilterableOptions, GridColumnLockedPosition, GridColumnState, GridDataState, GridEditFormContext, GridEditOperation, GridEditSchemaFactory, GridEditSession, GridEditTemplateContext, GridSaveOperation, GridState, GridStateCompositeFilterDescriptor, GridStateFilterDescriptor, GridStateFilterValue, GridStateLoadResult, GridStateLoadStatus, GridStatePersistenceOptions, GridStateSortDescriptor, GridStateVersion, GroupDescriptor, GroupableOptions, ReorderableOptions, ResizableOptions, ResizeMethod, RowReorderableOptions, SelectableOptions, SortableOptions };
@@ -256,6 +256,7 @@ interface MonaGridMessages {
256
256
  readonly rowReorderDisabledEditing: string;
257
257
  readonly rowReorderDisabledFiltered: string;
258
258
  readonly rowReorderDisabledGrouped: string;
259
+ readonly rowReorderDisabledServerBinding: string;
259
260
  readonly rowReorderDisabledSingleRow: string;
260
261
  readonly rowReorderDisabledSorted: string;
261
262
  readonly rowReorderDisabledVirtualScroll: string;
@@ -225,6 +225,7 @@ declare const MONA_AR_SA_LOCALE: {
225
225
  rowReorderDisabledEditing: string;
226
226
  rowReorderDisabledFiltered: string;
227
227
  rowReorderDisabledGrouped: string;
228
+ rowReorderDisabledServerBinding: string;
228
229
  rowReorderDisabledSingleRow: string;
229
230
  rowReorderDisabledSorted: string;
230
231
  rowReorderDisabledVirtualScroll: string;
@@ -601,6 +602,7 @@ declare const MONA_ES_ES_LOCALE: {
601
602
  rowReorderDisabledEditing: string;
602
603
  rowReorderDisabledFiltered: string;
603
604
  rowReorderDisabledGrouped: string;
605
+ rowReorderDisabledServerBinding: string;
604
606
  rowReorderDisabledSingleRow: string;
605
607
  rowReorderDisabledSorted: string;
606
608
  rowReorderDisabledVirtualScroll: string;
@@ -977,6 +979,7 @@ declare const MONA_DE_DE_LOCALE: {
977
979
  rowReorderDisabledEditing: string;
978
980
  rowReorderDisabledFiltered: string;
979
981
  rowReorderDisabledGrouped: string;
982
+ rowReorderDisabledServerBinding: string;
980
983
  rowReorderDisabledSingleRow: string;
981
984
  rowReorderDisabledSorted: string;
982
985
  rowReorderDisabledVirtualScroll: string;
@@ -1353,6 +1356,7 @@ declare const MONA_FR_FR_LOCALE: {
1353
1356
  rowReorderDisabledEditing: string;
1354
1357
  rowReorderDisabledFiltered: string;
1355
1358
  rowReorderDisabledGrouped: string;
1359
+ rowReorderDisabledServerBinding: string;
1356
1360
  rowReorderDisabledSingleRow: string;
1357
1361
  rowReorderDisabledSorted: string;
1358
1362
  rowReorderDisabledVirtualScroll: string;
@@ -1729,6 +1733,7 @@ declare const MONA_IT_IT_LOCALE: {
1729
1733
  rowReorderDisabledEditing: string;
1730
1734
  rowReorderDisabledFiltered: string;
1731
1735
  rowReorderDisabledGrouped: string;
1736
+ rowReorderDisabledServerBinding: string;
1732
1737
  rowReorderDisabledSingleRow: string;
1733
1738
  rowReorderDisabledSorted: string;
1734
1739
  rowReorderDisabledVirtualScroll: string;
@@ -2105,6 +2110,7 @@ declare const MONA_JA_JP_LOCALE: {
2105
2110
  rowReorderDisabledEditing: string;
2106
2111
  rowReorderDisabledFiltered: string;
2107
2112
  rowReorderDisabledGrouped: string;
2113
+ rowReorderDisabledServerBinding: string;
2108
2114
  rowReorderDisabledSingleRow: string;
2109
2115
  rowReorderDisabledSorted: string;
2110
2116
  rowReorderDisabledVirtualScroll: string;
@@ -2481,6 +2487,7 @@ declare const MONA_KO_KR_LOCALE: {
2481
2487
  rowReorderDisabledEditing: string;
2482
2488
  rowReorderDisabledFiltered: string;
2483
2489
  rowReorderDisabledGrouped: string;
2490
+ rowReorderDisabledServerBinding: string;
2484
2491
  rowReorderDisabledSingleRow: string;
2485
2492
  rowReorderDisabledSorted: string;
2486
2493
  rowReorderDisabledVirtualScroll: string;
@@ -2857,6 +2864,7 @@ declare const MONA_PT_BR_LOCALE: {
2857
2864
  rowReorderDisabledEditing: string;
2858
2865
  rowReorderDisabledFiltered: string;
2859
2866
  rowReorderDisabledGrouped: string;
2867
+ rowReorderDisabledServerBinding: string;
2860
2868
  rowReorderDisabledSingleRow: string;
2861
2869
  rowReorderDisabledSorted: string;
2862
2870
  rowReorderDisabledVirtualScroll: string;
@@ -3233,6 +3241,7 @@ declare const MONA_ZH_CN_LOCALE: {
3233
3241
  rowReorderDisabledEditing: string;
3234
3242
  rowReorderDisabledFiltered: string;
3235
3243
  rowReorderDisabledGrouped: string;
3244
+ rowReorderDisabledServerBinding: string;
3236
3245
  rowReorderDisabledSingleRow: string;
3237
3246
  rowReorderDisabledSorted: string;
3238
3247
  rowReorderDisabledVirtualScroll: string;
@@ -3609,6 +3618,7 @@ declare const MONA_ZH_TW_LOCALE: {
3609
3618
  rowReorderDisabledEditing: string;
3610
3619
  rowReorderDisabledFiltered: string;
3611
3620
  rowReorderDisabledGrouped: string;
3621
+ rowReorderDisabledServerBinding: string;
3612
3622
  rowReorderDisabledSingleRow: string;
3613
3623
  rowReorderDisabledSorted: string;
3614
3624
  rowReorderDisabledVirtualScroll: string;
@@ -3985,6 +3995,7 @@ declare const MONA_TR_TR_LOCALE: {
3985
3995
  rowReorderDisabledEditing: string;
3986
3996
  rowReorderDisabledFiltered: string;
3987
3997
  rowReorderDisabledGrouped: string;
3998
+ rowReorderDisabledServerBinding: string;
3988
3999
  rowReorderDisabledSingleRow: string;
3989
4000
  rowReorderDisabledSorted: string;
3990
4001
  rowReorderDisabledVirtualScroll: string;
@@ -4361,6 +4372,7 @@ declare const MONA_ID_ID_LOCALE: {
4361
4372
  rowReorderDisabledEditing: string;
4362
4373
  rowReorderDisabledFiltered: string;
4363
4374
  rowReorderDisabledGrouped: string;
4375
+ rowReorderDisabledServerBinding: string;
4364
4376
  rowReorderDisabledSingleRow: string;
4365
4377
  rowReorderDisabledSorted: string;
4366
4378
  rowReorderDisabledVirtualScroll: string;
@@ -4737,6 +4749,7 @@ declare const MONA_RU_RU_LOCALE: {
4737
4749
  rowReorderDisabledEditing: string;
4738
4750
  rowReorderDisabledFiltered: string;
4739
4751
  rowReorderDisabledGrouped: string;
4752
+ rowReorderDisabledServerBinding: string;
4740
4753
  rowReorderDisabledSingleRow: string;
4741
4754
  rowReorderDisabledSorted: string;
4742
4755
  rowReorderDisabledVirtualScroll: string;
@@ -87,6 +87,7 @@ declare class PagerComponent implements PagerVariantInputs {
87
87
  private readonly navigationButtonsTemplateList;
88
88
  protected readonly baseClasses: Signal<string>;
89
89
  protected readonly firstPageNavigationTemplate: Signal<PagerNavigationButtonsTemplateDirective | undefined>;
90
+ protected readonly hasPages: Signal<boolean>;
90
91
  protected readonly iconSize: Signal<18 | 20 | 22>;
91
92
  protected readonly infoClasses: Signal<string>;
92
93
  protected readonly infoVisible: Signal<boolean>;