@ishibashi0112/spreadsheet-grid 0.35.0 → 0.37.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 (46) hide show
  1. package/dist/controllers/clipboardController.d.ts +31 -0
  2. package/dist/controllers/columnAutosizeRunner.d.ts +20 -0
  3. package/dist/controllers/columnHeaderDragController.d.ts +44 -0
  4. package/dist/controllers/columnMenuController.d.ts +49 -0
  5. package/dist/controllers/contextMenuController.d.ts +30 -0
  6. package/dist/controllers/editController.d.ts +27 -0
  7. package/dist/controllers/filterPopoverController.d.ts +53 -0
  8. package/dist/controllers/globalFilteredOrder.d.ts +38 -0
  9. package/dist/controllers/historyController.d.ts +28 -0
  10. package/dist/controllers/keyboardController.d.ts +36 -0
  11. package/dist/controllers/panelHeaderDragController.d.ts +21 -0
  12. package/dist/controllers/pointerInteractionsController.d.ts +74 -0
  13. package/dist/controllers/popoverSupport.d.ts +18 -0
  14. package/dist/controllers/rowDragController.d.ts +40 -0
  15. package/dist/controllers/selectOptionsCollector.d.ts +31 -0
  16. package/dist/controllers/serverSideRowModel.d.ts +36 -0
  17. package/dist/controllers/systemColorSchemeStore.d.ts +5 -0
  18. package/dist/controllers/toolPanelController.d.ts +36 -0
  19. package/dist/controllers/tooltipController.d.ts +6 -0
  20. package/dist/controllers/viewportSyncController.d.ts +30 -0
  21. package/dist/hooks/useCellContextMenuController.d.ts +7 -13
  22. package/dist/hooks/useColumnAutosizeRunner.d.ts +3 -13
  23. package/dist/hooks/useColumnHeaderDragController.d.ts +5 -16
  24. package/dist/hooks/useColumnMenuController.d.ts +10 -12
  25. package/dist/hooks/useColumnSelectOptionsCollector.d.ts +2 -10
  26. package/dist/hooks/useController.d.ts +5 -0
  27. package/dist/hooks/useFilterPopoverController.d.ts +16 -25
  28. package/dist/hooks/useGlobalFilteredOrder.d.ts +4 -8
  29. package/dist/hooks/useGridClipboardController.d.ts +4 -21
  30. package/dist/hooks/useGridEditController.d.ts +5 -20
  31. package/dist/hooks/useGridHistoryController.d.ts +2 -15
  32. package/dist/hooks/useGridKeyboardInteractions.d.ts +3 -23
  33. package/dist/hooks/useGridPointerInteractions.d.ts +15 -39
  34. package/dist/hooks/useGridStore.d.ts +7 -0
  35. package/dist/hooks/useGridViewportSync.d.ts +3 -19
  36. package/dist/hooks/useResolvedGridTheme.d.ts +2 -1
  37. package/dist/hooks/useRowDragController.d.ts +4 -13
  38. package/dist/hooks/useServerSideRowModel.d.ts +5 -18
  39. package/dist/hooks/useToolPanelController.d.ts +7 -9
  40. package/dist/index.cjs +8 -8
  41. package/dist/index.js +4044 -4037
  42. package/dist/logic/chunkedLoop.d.ts +8 -0
  43. package/dist/logic/theme.d.ts +3 -0
  44. package/dist/logic/valueStore.d.ts +6 -0
  45. package/dist/model/gridStore.d.ts +24 -0
  46. package/package.json +1 -1
@@ -0,0 +1,8 @@
1
+ export declare const CHUNK_BUDGET_MS = 10;
2
+ export declare const nowMs: () => number;
3
+ export type RunChunkedOptions = {
4
+ budgetMs?: number;
5
+ isCancelled?: () => boolean;
6
+ onYield?: (done: number, total: number) => void;
7
+ };
8
+ export declare const runChunked: (total: number, visit: (index: number) => void, { budgetMs, isCancelled, onYield }?: RunChunkedOptions) => Promise<boolean>;
@@ -0,0 +1,3 @@
1
+ import type { GridTheme } from '../model/gridTypes.core';
2
+ export type ResolvedGridTheme = 'light' | 'dark';
3
+ export declare const resolveGridTheme: (theme: GridTheme, systemPrefersDark: boolean) => ResolvedGridTheme;
@@ -0,0 +1,6 @@
1
+ export type ValueStore<S> = {
2
+ getSnapshot: () => S;
3
+ setSnapshot: (next: S) => void;
4
+ subscribe: (listener: () => void) => () => void;
5
+ };
6
+ export declare const createValueStore: <S>(initial: S) => ValueStore<S>;
@@ -0,0 +1,24 @@
1
+ import type { GridUiAction } from './gridActions';
2
+ import type { GridUiState } from './gridTypes.core';
3
+ export type GridStoreListener = () => void;
4
+ export type GridViewState = {
5
+ scrollTop: number;
6
+ viewportWidth: number;
7
+ viewportHeight: number;
8
+ hoveredRowIndex: number | null;
9
+ hoveredColumnIndex: number | null;
10
+ isCornerHovered: boolean;
11
+ };
12
+ export declare const createInitialGridViewState: () => GridViewState;
13
+ export type Updater<T> = T | ((prev: T) => T);
14
+ export declare const resolveUpdater: <T>(updater: Updater<T>, prev: T) => T;
15
+ export type GridViewStatePatch = Partial<GridViewState> | ((prev: GridViewState) => Partial<GridViewState>);
16
+ export type GridStore = {
17
+ getState: () => GridUiState;
18
+ dispatch: (action: GridUiAction) => void;
19
+ getViewState: () => GridViewState;
20
+ setViewState: (patch: GridViewStatePatch) => void;
21
+ subscribe: (listener: GridStoreListener) => () => void;
22
+ };
23
+ export type GridUiReducer = (state: GridUiState, action: GridUiAction) => GridUiState;
24
+ export declare const createGridStore: (initialState: GridUiState, reducer?: GridUiReducer, initialViewState?: GridViewState) => GridStore;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ishibashi0112/spreadsheet-grid",
3
- "version": "0.35.0",
3
+ "version": "0.37.0",
4
4
  "description": "React 19 製のカスタム仮想化データグリッド。100 万行対応の仮想化・3 ペイン固定列・ソート/フィルター・クライアント/サーバーサイド行モデル対応。",
5
5
  "keywords": [
6
6
  "react",