material-react-table-narender 2.13.12 → 2.13.13

Sign up to get free protection for your applications and to get access to all the features.
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "2.13.12",
2
+ "version": "2.13.13",
3
3
  "license": "MIT",
4
4
  "name": "material-react-table-narender",
5
5
  "description": "A fully featured Material UI V5 implementation of TanStack React Table V8, written from the ground up in TypeScript.",
@@ -142,6 +142,14 @@ export const useMRT_TableInstance = <TData extends MRT_RowData>(
142
142
  const [isFullScreen, setIsFullScreen] = useState<boolean>(
143
143
  initialState?.isFullScreen ?? false,
144
144
  );
145
+
146
+ const [enableKeyboardShortcuts, setEnableKeyboardShortcuts] = useState<boolean>(
147
+ initialState?.enableKeyboardShortcuts ?? false,
148
+ );
149
+
150
+ // const [isFullScreen, setIsFullScreen] = useState<boolean>(
151
+ // initialState?.isFullScreen ?? false,
152
+ // );
145
153
  const [pagination, onPaginationChange] = useState<MRT_PaginationState>(
146
154
  initialState?.pagination ?? { pageIndex: 0, pageSize: 10 },
147
155
  );
@@ -174,6 +182,7 @@ export const useMRT_TableInstance = <TData extends MRT_RowData>(
174
182
  hoveredColumn,
175
183
  hoveredRow,
176
184
  isFullScreen,
185
+ enableKeyboardShortcuts,
177
186
  pagination,
178
187
  showAlertBanner,
179
188
  showColumnFilters,
@@ -302,6 +311,8 @@ export const useMRT_TableInstance = <TData extends MRT_RowData>(
302
311
  statefulTableOptions.onHoveredRowChange ?? setHoveredRow;
303
312
  table.setIsFullScreen =
304
313
  statefulTableOptions.onIsFullScreenChange ?? setIsFullScreen;
314
+ table.setEnableKeyboardShortcuts =
315
+ statefulTableOptions.onEnableKeyboardShortcutsChange ?? setEnableKeyboardShortcuts;
305
316
  table.setShowAlertBanner =
306
317
  statefulTableOptions.onShowAlertBannerChange ?? setShowAlertBanner;
307
318
  table.setShowColumnFilters =
package/src/types.ts CHANGED
@@ -345,6 +345,7 @@ export type MRT_TableInstance<TData extends MRT_RowData> = Omit<
345
345
  setShowColumnFilters: Dispatch<SetStateAction<boolean>>;
346
346
  setShowGlobalFilter: Dispatch<SetStateAction<boolean>>;
347
347
  setShowToolbarDropZone: Dispatch<SetStateAction<boolean>>;
348
+ setEnableKeyboardShortcuts : Dispatch<SetStateAction<boolean>>;
348
349
  };
349
350
 
350
351
  export type MRT_DefinedTableOptions<TData extends MRT_RowData> = Omit<
@@ -395,6 +396,7 @@ export interface MRT_TableState<TData extends MRT_RowData> extends TableState {
395
396
  hoveredColumn: Partial<MRT_Column<TData>> | null;
396
397
  hoveredRow: Partial<MRT_Row<TData>> | null;
397
398
  isFullScreen: boolean;
399
+ enableKeyboardShortcuts : boolean;
398
400
  isLoading: boolean;
399
401
  isSaving: boolean;
400
402
  showAlertBanner: boolean;
@@ -1184,6 +1186,7 @@ export interface MRT_TableOptions<TData extends MRT_RowData>
1184
1186
  onHoveredColumnChange?: OnChangeFn<Partial<MRT_Column<TData>> | null>;
1185
1187
  onHoveredRowChange?: OnChangeFn<Partial<MRT_Row<TData>> | null>;
1186
1188
  onIsFullScreenChange?: OnChangeFn<boolean>;
1189
+ onEnableKeyboardShortcutsChange?: OnChangeFn<boolean>;
1187
1190
  onShowAlertBannerChange?: OnChangeFn<boolean>;
1188
1191
  onShowColumnFiltersChange?: OnChangeFn<boolean>;
1189
1192
  onShowGlobalFilterChange?: OnChangeFn<boolean>;
@@ -81,9 +81,16 @@ export const cellKeyboardShortcuts = <TData extends MRT_RowData = MRT_RowData>({
81
81
  }) => {
82
82
  debugger;
83
83
 
84
+ const {
85
+ getState,
86
+ setEnableKeyboardShortcuts,
87
+ } = table;
88
+
89
+ const { enableKeyboardShortcuts } = getState();
90
+
84
91
  if (event.altKey && event.key.toLowerCase() === 'n') {
85
92
  event.preventDefault();
86
- table.options.enableKeyboardShortcuts = !table.options.enableKeyboardShortcuts;
93
+ setEnableKeyboardShortcuts(!enableKeyboardShortcuts);
87
94
  return;
88
95
  }
89
96