From b22c3bb2d5cbeb77340637fe1be4775ff20111ab Mon Sep 17 00:00:00 2001 From: Garry Xiao Date: Fri, 6 Dec 2024 23:20:36 +1300 Subject: [PATCH] Refactor loadData of GridLoader --- package-lock.json | 4 ++-- package.json | 2 +- src/components/GridLoader.ts | 22 +++++++++++----------- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index 116f701..f548316 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@etsoo/react", - "version": "1.8.12", + "version": "1.8.13", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@etsoo/react", - "version": "1.8.12", + "version": "1.8.13", "license": "MIT", "dependencies": { "@dnd-kit/core": "^6.3.0", diff --git a/package.json b/package.json index cce1f77..fa5ae01 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@etsoo/react", - "version": "1.8.12", + "version": "1.8.13", "description": "TypeScript ReactJs UI Independent Framework", "main": "lib/index.js", "types": "lib/index.d.ts", diff --git a/src/components/GridLoader.ts b/src/components/GridLoader.ts index a6c7606..1edcec9 100644 --- a/src/components/GridLoader.ts +++ b/src/components/GridLoader.ts @@ -81,17 +81,17 @@ export function GridDataGetData( /** * Grid Json data */ -export type GridJsonData = Omit; - -/** - * Grid data load props - */ -export type GridLoadDataProps = { +export type GridJsonData = { /** * Query paging data */ queryPaging: QueryPagingData; +}; +/** + * Grid data load props + */ +export type GridLoadDataProps = GridJsonData & { /** * Data related */ @@ -116,7 +116,10 @@ export type GridLoadDataPartialProps = { /** * Grid data loader */ -export type GridLoader = { +export type GridLoader< + T extends object, + P extends GridJsonData = GridLoadDataProps +> = { /** * Auto load data, otherwise call reset * @default true @@ -136,10 +139,7 @@ export type GridLoader = { /** * Load data */ - loadData: ( - props: GridLoadDataProps, - lastItem?: T - ) => PromiseLike; + loadData: (props: P, lastItem?: T) => PromiseLike; /** * Handler for init load