Build fixes
This commit is contained in:
parent
1e0f8ba2c6
commit
c42bc20069
@ -1,5 +1,4 @@
|
|||||||
import '@glideapps/glide-data-grid/dist/index.css';
|
import '@glideapps/glide-data-grid/dist/index.css';
|
||||||
import React from 'react';
|
|
||||||
|
|
||||||
import { MantineBetterMenusProvider } from '../MantineBetterMenu';
|
import { MantineBetterMenusProvider } from '../MantineBetterMenu';
|
||||||
import { GlidlerFormAdaptor } from './components/adaptors/GlidlerFormAdaptor';
|
import { GlidlerFormAdaptor } from './components/adaptors/GlidlerFormAdaptor';
|
||||||
|
|||||||
@ -78,7 +78,7 @@ export interface GridlerProps extends PropsWithChildren {
|
|||||||
pageSize?: number;
|
pageSize?: number;
|
||||||
progressiveScroll?: boolean;
|
progressiveScroll?: boolean;
|
||||||
RenderCell?: <TRowType extends Record<string, string>>(
|
RenderCell?: <TRowType extends Record<string, string>>(
|
||||||
row: any,
|
row: TRowType,
|
||||||
colindex: number,
|
colindex: number,
|
||||||
colid: string,
|
colid: string,
|
||||||
value: any,
|
value: any,
|
||||||
@ -176,7 +176,7 @@ export interface GridlerState {
|
|||||||
key: K,
|
key: K,
|
||||||
value: (current: GridlerStoreState[K]) => Partial<GridlerStoreState[K]>
|
value: (current: GridlerStoreState[K]) => Partial<GridlerStoreState[K]>
|
||||||
) => Promise<void>;
|
) => Promise<void>;
|
||||||
toCell: <TRowType extends Record<string, string>>(row: any, col: number) => GridCell;
|
toCell: <TRowType extends Record<string, string>>(row: TRowType, col: number) => GridCell;
|
||||||
}
|
}
|
||||||
|
|
||||||
export type GridlerStoreState = GridlerProps & GridlerState;
|
export type GridlerStoreState = GridlerProps & GridlerState;
|
||||||
@ -215,13 +215,13 @@ const { Provider, useStore: useGridlerStore } = createSyncStore<GridlerStoreStat
|
|||||||
kind: GridCellKind.Loading,
|
kind: GridCellKind.Loading,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
getCellsForSelection: (selection: Rectangle, abortSignal: AbortSignal) => {
|
getCellsForSelection: (selection: Rectangle, _abortSignal: AbortSignal) => {
|
||||||
return async () => {
|
return async () => {
|
||||||
const state = get();
|
const state = get();
|
||||||
//const firstPage = Math.max(0, Math.floor(selection.y / state.pageSize));
|
//const firstPage = Math.max(0, Math.floor(selection.y / state.pageSize));
|
||||||
//const lastPage = Math.floor((selection.y + selection.height) / state.pageSize);
|
//const lastPage = Math.floor((selection.y + selection.height) / state.pageSize);
|
||||||
|
|
||||||
await state.setStateFN('_visibleArea', (cv) => {
|
await state.setStateFN('_visibleArea', (_cv) => {
|
||||||
//if (r.x === cv.x && r.y === cv.y && r.width === cv.width && r.height === cv.height)
|
//if (r.x === cv.x && r.y === cv.y && r.width === cv.width && r.height === cv.height)
|
||||||
// return cv;
|
// return cv;
|
||||||
return selection;
|
return selection;
|
||||||
@ -382,8 +382,8 @@ const { Provider, useStore: useGridlerStore } = createSyncStore<GridlerStoreStat
|
|||||||
onColumnResize: (
|
onColumnResize: (
|
||||||
column: GridColumn,
|
column: GridColumn,
|
||||||
newSize: number,
|
newSize: number,
|
||||||
colIndex: number,
|
_colIndex: number,
|
||||||
newSizeWithGrow: number
|
_newSizeWithGrow: number
|
||||||
) => {
|
) => {
|
||||||
const s = get();
|
const s = get();
|
||||||
const col = s.renderColumns?.find((col) => col.id === column.id);
|
const col = s.renderColumns?.find((col) => col.id === column.id);
|
||||||
@ -615,9 +615,9 @@ const { Provider, useStore: useGridlerStore } = createSyncStore<GridlerStoreStat
|
|||||||
},
|
},
|
||||||
onVisibleRegionChanged: (
|
onVisibleRegionChanged: (
|
||||||
region: Rectangle,
|
region: Rectangle,
|
||||||
tx: number,
|
_tx: number,
|
||||||
ty: number,
|
_ty: number,
|
||||||
extras: {
|
_extras: {
|
||||||
freezeRegion?: Rectangle;
|
freezeRegion?: Rectangle;
|
||||||
freezeRegions?: readonly Rectangle[];
|
freezeRegions?: readonly Rectangle[];
|
||||||
selected?: Item;
|
selected?: Item;
|
||||||
@ -632,8 +632,8 @@ const { Provider, useStore: useGridlerStore } = createSyncStore<GridlerStoreStat
|
|||||||
//console.log('Gridler:Debug:VisibleRegionChanged', r);
|
//console.log('Gridler:Debug:VisibleRegionChanged', r);
|
||||||
const state = get();
|
const state = get();
|
||||||
const firstPage = Math.max(0, Math.floor(region.y / state.pageSize));
|
const firstPage = Math.max(0, Math.floor(region.y / state.pageSize));
|
||||||
const lastPage = Math.floor((region.y + region.height) / state.pageSize);
|
// const lastPage = Math.floor((region.y + region.height) / state.pageSize);
|
||||||
const upperPage = state.pageSize * firstPage;
|
// const upperPage = state.pageSize * firstPage;
|
||||||
|
|
||||||
const previousPage = Math.max(0, Math.floor(state._visiblePages.y / state.pageSize));
|
const previousPage = Math.max(0, Math.floor(state._visiblePages.y / state.pageSize));
|
||||||
const pageDif = firstPage - previousPage;
|
const pageDif = firstPage - previousPage;
|
||||||
@ -843,7 +843,7 @@ const { Provider, useStore: useGridlerStore } = createSyncStore<GridlerStoreStat
|
|||||||
}
|
}
|
||||||
}, [props.selectedRow]);
|
}, [props.selectedRow]);
|
||||||
|
|
||||||
getState('_events').addEventListener('reload', (e: Event) => {
|
getState('_events').addEventListener('reload', (_e: Event) => {
|
||||||
getState('reload')?.();
|
getState('reload')?.();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@ -1,4 +1,5 @@
|
|||||||
import '@testing-library/jest-dom'
|
import '@testing-library/jest-dom'
|
||||||
|
import { vi } from 'vitest'
|
||||||
|
|
||||||
// Mock window.matchMedia for Mantine components
|
// Mock window.matchMedia for Mantine components
|
||||||
Object.defineProperty(window, 'matchMedia', {
|
Object.defineProperty(window, 'matchMedia', {
|
||||||
|
|||||||
@ -3,19 +3,22 @@
|
|||||||
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
|
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
|
||||||
"target": "ES2022",
|
"target": "ES2022",
|
||||||
"useDefineForClassFields": true,
|
"useDefineForClassFields": true,
|
||||||
"lib": ["ES2022", "DOM", "DOM.Iterable"],
|
"lib": [
|
||||||
|
"ES2022",
|
||||||
|
"DOM",
|
||||||
|
"DOM.Iterable"
|
||||||
|
],
|
||||||
"module": "ESNext",
|
"module": "ESNext",
|
||||||
"skipLibCheck": true,
|
"skipLibCheck": true,
|
||||||
|
|
||||||
/* Bundler mode */
|
/* Bundler mode */
|
||||||
"moduleResolution": "bundler",
|
"moduleResolution": "bundler",
|
||||||
"allowImportingTsExtensions": true,
|
"allowImportingTsExtensions": true,
|
||||||
"verbatimModuleSyntax": true,
|
"verbatimModuleSyntax": true,
|
||||||
"moduleDetection": "force",
|
"moduleDetection": "force",
|
||||||
|
"noEmit": true,
|
||||||
"declaration": true,
|
"declaration": true,
|
||||||
"emitDeclarationOnly": true,
|
"emitDeclarationOnly": true,
|
||||||
"jsx": "react-jsx",
|
"jsx": "react-jsx",
|
||||||
|
|
||||||
/* Linting */
|
/* Linting */
|
||||||
"strict": true,
|
"strict": true,
|
||||||
"noUnusedLocals": true,
|
"noUnusedLocals": true,
|
||||||
@ -24,5 +27,7 @@
|
|||||||
"noFallthroughCasesInSwitch": true,
|
"noFallthroughCasesInSwitch": true,
|
||||||
"noUncheckedSideEffectImports": true
|
"noUncheckedSideEffectImports": true
|
||||||
},
|
},
|
||||||
"include": ["src"]
|
"include": [
|
||||||
|
"src"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
@ -1,7 +1,11 @@
|
|||||||
{
|
{
|
||||||
"files": [],
|
"files": [],
|
||||||
"references": [
|
"references": [
|
||||||
{ "path": "./tsconfig.app.json" },
|
{
|
||||||
{ "path": "./tsconfig.node.json" }
|
"path": "./tsconfig.app.json"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "./tsconfig.node.json"
|
||||||
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@ -29,6 +29,8 @@ export default defineConfig({
|
|||||||
fileName: (format) => `lib.${format}.js`,
|
fileName: (format) => `lib.${format}.js`,
|
||||||
},
|
},
|
||||||
emptyOutDir: true,
|
emptyOutDir: true,
|
||||||
|
outDir: "dist",
|
||||||
|
|
||||||
rollupOptions: {
|
rollupOptions: {
|
||||||
external: Object.keys(peerDependencies),
|
external: Object.keys(peerDependencies),
|
||||||
},
|
},
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user