@jamsrui/data-grid 0.0.26 → 0.0.28
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.
- package/dist/data-grid-body.mjs +1 -1
- package/dist/data-grid-column-visibility.d.mts +3 -4
- package/dist/data-grid-column-visibility.mjs +1 -1
- package/dist/data-grid-config.d.mts +2 -2
- package/dist/data-grid-context.d.mts +0 -1
- package/dist/data-grid-header.d.mts +8 -1
- package/dist/data-grid-header.mjs +1 -1
- package/dist/data-grid-pagination.d.mts +15 -3
- package/dist/data-grid-pagination.mjs +1 -1
- package/dist/data-grid-table.d.mts +2 -2
- package/dist/data-grid-table.mjs +1 -1
- package/dist/data-grid.d.mts +11 -3
- package/dist/data-grid.mjs +1 -1
- package/dist/index.d.mts +40 -6
- package/dist/index.mjs +1 -1
- package/dist/use-data-grid.d.mts +6 -16
- package/dist/use-data-grid.mjs +1 -1
- package/dist/use-react-table.d.mts +6 -0
- package/dist/use-react-table.mjs +1 -0
- package/package.json +15 -15
- package/dist/data-grid-loading.d.mts +0 -9
- package/dist/data-grid-loading.mjs +0 -1
package/dist/data-grid-body.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{jsx as t,jsxs as y}from"react/jsx-runtime";import{TableBody as
|
|
1
|
+
"use client";import{jsx as t,jsxs as y}from"react/jsx-runtime";import{TableBody as a,TableCell as i,TableRow as m}from"@jamsrui/table";import{flexRender as d}from"@tanstack/react-table";import{useDataGridContext as l}from"./data-grid-context.mjs";import{DataGridEmpty as p}from"./data-grid-empty.mjs";import{getPinningStyles as s}from"./utils.mjs";const w=()=>{const{table:r,isEmpty:n}=l();return y(a,{children:[n&&t(p,{}),r.getRowModel().rows.map(o=>t(m,{children:o.getVisibleCells().map(e=>t(i,{"data-pinned":e.column.getIsPinned()||void 0,style:{width:e.column.getSize(),...s(e.column)},children:d(e.column.columnDef.cell,e.getContext())},e.id))},o.id))]})};export{w as DataGridBody};
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import * as
|
|
2
|
-
import { UIProps } from '@jamsrui/utils';
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
2
|
|
|
4
|
-
declare const DataGridColumnVisibility: (
|
|
3
|
+
declare const DataGridColumnVisibility: () => react_jsx_runtime.JSX.Element;
|
|
5
4
|
declare namespace DataGridColumnVisibility {
|
|
6
|
-
interface Props
|
|
5
|
+
interface Props {
|
|
7
6
|
}
|
|
8
7
|
}
|
|
9
8
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{jsx as
|
|
1
|
+
"use client";import{jsx as i,jsxs as r}from"react/jsx-runtime";import{Button as o}from"@jamsrui/button";import{Settings2Icon as l}from"@jamsrui/icons";import{Menu as t}from"@jamsrui/menu";import{AnimatedTickIcon as s}from"@jamsrui/icons/animated";import{useDataGridContext as m}from"./data-grid-context.mjs";const c=()=>{const{table:n}=m();return r(t,{children:[i(t.Trigger,{children:r(o,{size:"sm",variant:"flat",children:[i(l,{}),"Column Visibility"]})}),i(t.Content,{children:n.getAllLeafColumns().filter(e=>e.getCanHide()).map(e=>{const a=e.columnDef.meta?.headerTitle??e.id;return r(t.Item,{preventCloseOnClick:!0,disabled:!e.getCanHide(),onClick:e.getToggleVisibilityHandler(),textValue:a,className:"capitalize",children:[i(s,{className:"text-primary",isSelected:e.getIsVisible()}),a]},e.id)})})]})};export{c as DataGridColumnVisibility};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { WithGlobalConfig } from '@jamsrui/core';
|
|
3
3
|
import { DataGrid } from './data-grid.mjs';
|
|
4
|
-
import './use-data-grid.mjs';
|
|
5
4
|
import '@tanstack/react-table';
|
|
6
|
-
import '
|
|
5
|
+
import 'react';
|
|
6
|
+
import './use-data-grid.mjs';
|
|
7
7
|
|
|
8
8
|
declare const useDataGridConfig: () => DataGridConfig.Props;
|
|
9
9
|
declare const DataGridConfig: (props: Omit<Partial<DataGridConfig.Props>, "children"> & {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
2
|
import { useDataGrid } from './use-data-grid.mjs';
|
|
3
3
|
import '@tanstack/react-table';
|
|
4
|
-
import '@jamsrui/table';
|
|
5
4
|
|
|
6
5
|
declare const useDataGridContext: () => DataGridContext.Props;
|
|
7
6
|
declare const DataGridContext: react.Context<DataGridContext.Props | null>;
|
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { Header } from '@tanstack/react-table';
|
|
2
3
|
|
|
3
4
|
declare const DataGridHeader: () => react_jsx_runtime.JSX.Element;
|
|
4
5
|
declare namespace DataGridHeader {
|
|
5
6
|
interface Props {
|
|
6
7
|
}
|
|
7
8
|
}
|
|
9
|
+
declare const DataGridHeaderColumn: (props: {
|
|
10
|
+
header: Header<any, unknown>;
|
|
11
|
+
children: React.ReactNode;
|
|
12
|
+
hideResizer?: boolean;
|
|
13
|
+
hideDropdown?: boolean;
|
|
14
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
8
15
|
|
|
9
|
-
export { DataGridHeader };
|
|
16
|
+
export { DataGridHeader, DataGridHeaderColumn };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{jsx as e,jsxs as a}from"react/jsx-runtime";import{IconButton as u}from"@jamsrui/icon-button";import{ArrowDownIcon as
|
|
1
|
+
"use client";import{jsx as e,jsxs as a}from"react/jsx-runtime";import{IconButton as u}from"@jamsrui/icon-button";import{ArrowDownIcon as l,ArrowLeftToLineIcon as m,ArrowRightToLineIcon as g,ArrowUpIcon as s,ChevronsUpDownIcon as p,EllipsisVerticalIcon as f,EyeClosedIcon as I}from"@jamsrui/icons";import{Menu as o}from"@jamsrui/menu";import{TableColumn as C,TableHeader as b,TableRow as h}from"@jamsrui/table";import{cn as d}from"@jamsrui/utils";import{flexRender as R}from"@tanstack/react-table";import{useDataGridContext as v}from"./data-grid-context.mjs";import{getPinningStyles as w}from"./utils.mjs";const N=()=>{const{table:t}=v(),r=t.getHeaderGroups();return e(b,{children:r.map(i=>e(h,{children:i.headers.map(n=>e(C,{className:"relative",colSpan:n.colSpan,"data-pinned":n.column.getIsPinned()||void 0,style:{width:n.getSize(),...w(n.column)},children:n.isPlaceholder?null:R(n.column.columnDef.header,n.getContext())},n.id))},i.id))})},S=({column:t})=>a(o,{children:[e(o.Trigger,{children:e(u,{label:"More",size:"sm",variant:"light",className:"invisible group-hover/th:visible",children:e(f,{className:"size-4"})})}),a(o.Content,{children:[e(o.Group,{children:a(o.RadioGroup,{value:t.getIsSorted()||"",children:[a(o.RadioItem,{disabled:!t.getCanSort(),preventCloseOnClick:!1,value:"asc",onClick:()=>{t.getIsSorted()==="asc"?t.clearSorting():t.toggleSorting(!1)},textValue:"Asc",children:[e(s,{}),"Asc",e(o.ItemIndicator,{className:"ml-auto"})]}),a(o.RadioItem,{disabled:!t.getCanSort(),preventCloseOnClick:!1,value:"desc",onClick:()=>{t.getIsSorted()==="desc"?t.clearSorting():t.toggleSorting(!0)},textValue:"Desc",children:[e(l,{}),"Desc",e(o.ItemIndicator,{className:"ml-auto"})]})]})}),e(o.Separator,{}),a(o.Item,{disabled:!t.getCanHide(),onClick:t.getToggleVisibilityHandler(),textValue:"Hide Column",children:[e(I,{}),"Hide Column"]}),e(o.Separator,{}),e(o.Group,{children:a(o.RadioGroup,{value:t.getIsPinned()||"",children:[a(o.RadioItem,{preventCloseOnClick:!1,value:"left",onClick:()=>{t.pin(t.getIsPinned()==="left"?!1:"left")},textValue:"Pin To Left",children:[e(m,{}),"Pin To Left",e(o.ItemIndicator,{className:"ml-auto"})]}),a(o.RadioItem,{preventCloseOnClick:!1,value:"right",onClick:()=>t.pin(t.getIsPinned()==="right"?!1:"right"),textValue:"Pin To Right",children:[e(g,{}),"Pin To Right",e(o.ItemIndicator,{className:"ml-auto"})]})]})})]})]}),k=({header:t})=>e("span",{"data-slot":"data-grid-header-resizer","aria-label":"resize",onDoubleClick:()=>t.column.resetSize(),onMouseDown:t.getResizeHandler(),onTouchStart:t.getResizeHandler(),role:"presentation",className:d("absolute right-0 top-1/2 h-3/5 w-[2px] -translate-y-1/2 cursor-ew-resize bg-slate-300/30 transition-all duration-500 select-none touch-none","invisible group-hover/table:visible",{"isResizing cursor-ew-resize":t.column.getIsResizing()})}),P=t=>{const{header:r,children:i,hideResizer:n=!1,hideDropdown:c=!1}=t;return a("div",{className:"flex","data-slot":"data-grid-header-column","data-sort":r.column.getIsSorted(),children:[e("button",{onClick:r.column.getToggleSortingHandler(),type:"button",className:d("flex w-full cursor-default select-none gap-1 overflow-hidden pr-1 text-transform-inherit",{"":r.column.getCanSort()}),children:a("span",{className:"flex w-full grow items-center overflow-hidden font-medium",children:[i,{asc:e(s,{className:"size-3 shrink-0"}),desc:e(l,{className:"size-3 shrink-0"}),empty:e(p,{className:"size-3 shrink-0"})}[r.column.getIsSorted()||"empty"]]})}),!c&&e(S,{column:r.column}),!n&&e(k,{header:r})]})};export{N as DataGridHeader,P as DataGridHeaderColumn};
|
|
@@ -1,9 +1,21 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { Select } from '@jamsrui/select';
|
|
3
|
+
import { UIProps } from '@jamsrui/utils';
|
|
2
4
|
|
|
3
|
-
declare const
|
|
5
|
+
declare const DataGridPaginationSelector: (props: DataGridPaginationSelector.Props) => react_jsx_runtime.JSX.Element;
|
|
6
|
+
declare namespace DataGridPaginationSelector {
|
|
7
|
+
interface Props extends Select.Props {
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
declare const DataGridPaginationControls: (props: DataGridPaginationControls.Props) => react_jsx_runtime.JSX.Element;
|
|
11
|
+
declare namespace DataGridPaginationControls {
|
|
12
|
+
interface Props extends UIProps<"div"> {
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
declare const DataGridPagination: (props: DataGridPagination.Props) => react_jsx_runtime.JSX.Element | null;
|
|
4
16
|
declare namespace DataGridPagination {
|
|
5
|
-
interface Props<
|
|
17
|
+
interface Props extends UIProps<"div"> {
|
|
6
18
|
}
|
|
7
19
|
}
|
|
8
20
|
|
|
9
|
-
export { DataGridPagination };
|
|
21
|
+
export { DataGridPagination, DataGridPaginationControls, DataGridPaginationSelector };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{jsx as e,jsxs as
|
|
1
|
+
"use client";import{Fragment as P,jsx as e,jsxs as c}from"react/jsx-runtime";import{useState as x}from"react";import{IconButton as g}from"@jamsrui/icon-button";import{ChevronDoubleLeftIcon as v,ChevronDoubleRightIcon as h,ChevronLeftIcon as C,ChevronRightIcon as b}from"@jamsrui/icons";import{Label as I}from"@jamsrui/label";import{Select as l}from"@jamsrui/select";import{useRenderElement as G}from"@jamsrui/hooks";import{cn as u}from"@jamsrui/utils";import{useDataGridContext as m}from"./data-grid-context.mjs";const N=a=>{const{className:n,...r}=a,{table:t}=m(),[s,d]=x(10),p=o=>{const i=Number(o);t.setPageSize(i),d(i)};return c(l,{className:u("flex flex-row items-center gap-2",n),onValueChange:p,returnFocus:!1,size:"sm",value:s,"data-slot":"pagination-selector",...r,children:[e(I,{children:"Rows Per Page:"}),e(l.Trigger,{className:"px-1"}),e(l.Popover,{children:e(l.Content,{children:[10,20,50,100,500].map(o=>e(l.Item,{textValue:o.toString(),value:o,children:o.toString()},o.toString()))})})]})},D=a=>{const{className:n,...r}=a,{table:t}=m(),s=()=>{t.nextPage()},d=()=>{t.previousPage()},p=()=>{t.setPageIndex(0)},o=()=>{t.setPageIndex(t.getPageCount()-1)},i=t.getPageCount(),f=i?t.getState().pagination.pageIndex+1:0;return c("div",{"data-slot":"pagination-controls",className:u("flex gap-1 md:gap-4",n),...r,children:[c("div",{className:"flex items-center justify-center text-sm font-medium",children:["Page ",f," of ",i]}),c("div",{className:"flex items-center",children:[e(g,{disabled:!t.getCanPreviousPage(),label:"Go to first page",onClick:p,radius:"full",size:"sm",variant:"light",children:e(v,{height:20,width:20})}),e(g,{disabled:!t.getCanPreviousPage(),label:"Go to previous page",onClick:d,radius:"full",size:"sm",variant:"light",children:e(C,{height:20,width:20})}),e(g,{disabled:!t.getCanNextPage(),label:"Go to next page",onClick:s,radius:"full",size:"sm",variant:"light",children:e(b,{height:20,width:20})}),e(g,{disabled:!t.getCanNextPage(),label:"Go to last page",onClick:o,radius:"full",size:"sm",variant:"light",children:e(h,{height:20,width:20})})]})]})},z=a=>{const{isEmpty:n}=m();if(n)return null;const{children:r=c(P,{children:[e(N,{}),e(D,{})]}),...t}=a,s=G("div",{props:[{className:"flex flex-col w-full justify-between gap-4 md:flex-row md:items-center mt-2","data-slot":"pagination",children:r},t]});return e(P,{children:s})};export{z as DataGridPagination,D as DataGridPaginationControls,N as DataGridPaginationSelector};
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { Table } from '@jamsrui/table';
|
|
2
3
|
|
|
3
4
|
declare const DataGridTable: (props: DataGridTable.Props) => react_jsx_runtime.JSX.Element;
|
|
4
5
|
declare namespace DataGridTable {
|
|
5
|
-
interface Props {
|
|
6
|
-
children: React.ReactNode;
|
|
6
|
+
interface Props extends Table.Props {
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
|
package/dist/data-grid-table.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{jsx as
|
|
1
|
+
"use client";import{Fragment as d,jsx as a,jsxs as m}from"react/jsx-runtime";import{Table as l}from"@jamsrui/table";import{DataGridBody as s}from"./data-grid-body.mjs";import{DataGridHeader as i}from"./data-grid-header.mjs";import{cn as p}from"@jamsrui/utils";const T=e=>{const{children:r=m(d,{children:[a(i,{}),a(s,{})]}),className:o,...t}=e;return a(l,{className:p("w-full table-fixed",o),...t,children:r})};export{T as DataGridTable};
|
package/dist/data-grid.d.mts
CHANGED
|
@@ -1,11 +1,19 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { RowData } from '@tanstack/react-table';
|
|
3
|
+
import { ReactNode } from 'react';
|
|
2
4
|
import { useDataGrid } from './use-data-grid.mjs';
|
|
3
|
-
import '@tanstack/react-table';
|
|
4
|
-
import '@jamsrui/table';
|
|
5
5
|
|
|
6
|
+
declare module "@tanstack/react-table" {
|
|
7
|
+
interface ColumnMeta<TData extends RowData, TValue> {
|
|
8
|
+
headerTitle?: string;
|
|
9
|
+
headerClassName?: string;
|
|
10
|
+
cellClassName?: string;
|
|
11
|
+
expandedContent?: (row: TData) => ReactNode;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
6
14
|
declare const DataGrid: (props: DataGrid.Props) => react_jsx_runtime.JSX.Element;
|
|
7
15
|
declare namespace DataGrid {
|
|
8
|
-
interface Props extends useDataGrid.Props
|
|
16
|
+
interface Props extends useDataGrid.Props {
|
|
9
17
|
}
|
|
10
18
|
}
|
|
11
19
|
|
package/dist/data-grid.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{
|
|
1
|
+
"use client";import{jsx as o}from"react/jsx-runtime";import{DataGridContext as t}from"./data-grid-context.mjs";import{useDataGrid as r}from"./use-data-grid.mjs";const m=a=>{const e=r(a);return o(t,{value:e,children:a.children})};export{m as DataGrid};
|
package/dist/index.d.mts
CHANGED
|
@@ -1,8 +1,42 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import * as _tanstack_react_table from '@tanstack/react-table';
|
|
2
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
|
+
export { DataGridBody } from './data-grid-body.mjs';
|
|
4
|
+
export { DataGridColumnVisibility } from './data-grid-column-visibility.mjs';
|
|
5
|
+
import { DataGridConfig } from './data-grid-config.mjs';
|
|
6
|
+
export { DataGridHeader, DataGridHeaderColumn } from './data-grid-header.mjs';
|
|
7
|
+
import { DataGridPagination, DataGridPaginationSelector } from './data-grid-pagination.mjs';
|
|
3
8
|
export { DataGridRowSelect, DataGridRowSelectAll } from './data-grid-row-select.mjs';
|
|
4
|
-
import '
|
|
5
|
-
import './
|
|
6
|
-
|
|
7
|
-
import '@jamsrui/table';
|
|
9
|
+
import { DataGridTable } from './data-grid-table.mjs';
|
|
10
|
+
import { DataGrid as DataGrid$1 } from './data-grid.mjs';
|
|
11
|
+
export { useDataGridTable } from './use-react-table.mjs';
|
|
8
12
|
import '@jamsrui/core';
|
|
13
|
+
import '@jamsrui/select';
|
|
14
|
+
import '@jamsrui/utils';
|
|
15
|
+
import '@jamsrui/table';
|
|
16
|
+
import 'react';
|
|
17
|
+
import './use-data-grid.mjs';
|
|
18
|
+
|
|
19
|
+
declare const DataGrid: ((props: DataGrid$1.Props) => react_jsx_runtime.JSX.Element) & {
|
|
20
|
+
Body: () => react_jsx_runtime.JSX.Element;
|
|
21
|
+
ColumnVisibility: () => react_jsx_runtime.JSX.Element;
|
|
22
|
+
Config: (props: Omit<Partial<DataGridConfig.Props>, "children"> & {
|
|
23
|
+
merge?: boolean;
|
|
24
|
+
children: React.ReactNode;
|
|
25
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
26
|
+
HeaderColumn: (props: {
|
|
27
|
+
header: _tanstack_react_table.Header<any, unknown>;
|
|
28
|
+
children: React.ReactNode;
|
|
29
|
+
hideResizer?: boolean;
|
|
30
|
+
hideDropdown?: boolean;
|
|
31
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
32
|
+
Header: () => react_jsx_runtime.JSX.Element;
|
|
33
|
+
Pagination: (props: DataGridPagination.Props) => react_jsx_runtime.JSX.Element | null;
|
|
34
|
+
PaginationSelector: (props: DataGridPaginationSelector.Props) => react_jsx_runtime.JSX.Element;
|
|
35
|
+
RowSelect: ({ row }: {
|
|
36
|
+
row: _tanstack_react_table.Row<any>;
|
|
37
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
38
|
+
RowSelectAll: () => react_jsx_runtime.JSX.Element;
|
|
39
|
+
Table: (props: DataGridTable.Props) => react_jsx_runtime.JSX.Element;
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
export { DataGrid, DataGridConfig, DataGridPagination, DataGridPaginationSelector, DataGridTable };
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{DataGridBody as a}from"./data-grid-body.mjs";import{DataGridColumnVisibility as i}from"./data-grid-column-visibility.mjs";import{DataGridConfig as o}from"./data-grid-config.mjs";import{DataGridHeader as r,DataGridHeaderColumn as t}from"./data-grid-header.mjs";import{DataGridPagination as e,DataGridPaginationSelector as m}from"./data-grid-pagination.mjs";import{DataGridRowSelect as d,DataGridRowSelectAll as l}from"./data-grid-row-select.mjs";import{DataGridTable as n}from"./data-grid-table.mjs";import{DataGrid as D}from"./data-grid.mjs";import{useDataGridTable as w}from"./use-react-table.mjs";const S=Object.assign(D,{Body:a,ColumnVisibility:i,Config:o,HeaderColumn:t,Header:r,Pagination:e,PaginationSelector:m,RowSelect:d,RowSelectAll:l,Table:n});export{S as DataGrid,a as DataGridBody,i as DataGridColumnVisibility,o as DataGridConfig,r as DataGridHeader,t as DataGridHeaderColumn,e as DataGridPagination,m as DataGridPaginationSelector,d as DataGridRowSelect,l as DataGridRowSelectAll,n as DataGridTable,w as useDataGridTable};
|
package/dist/use-data-grid.d.mts
CHANGED
|
@@ -1,23 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { TableOptions } from '@tanstack/react-table';
|
|
3
|
-
import { Table } from '@jamsrui/table';
|
|
1
|
+
import { Table } from '@tanstack/react-table';
|
|
4
2
|
|
|
5
|
-
declare const useDataGrid:
|
|
6
|
-
table:
|
|
7
|
-
isLoading: boolean | undefined;
|
|
3
|
+
declare const useDataGrid: (props: useDataGrid.Props) => {
|
|
4
|
+
table: Table<any>;
|
|
8
5
|
isEmpty: boolean;
|
|
9
|
-
rootProps: {
|
|
10
|
-
isHeaderSticky: boolean | undefined;
|
|
11
|
-
variant: "bordered" | "solid" | undefined;
|
|
12
|
-
radius: "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "full" | "none" | undefined;
|
|
13
|
-
density: "compact" | "standard" | "comfortable" | undefined;
|
|
14
|
-
allowHover: boolean | undefined;
|
|
15
|
-
separateRows: boolean | undefined;
|
|
16
|
-
};
|
|
17
6
|
};
|
|
18
7
|
declare namespace useDataGrid {
|
|
19
|
-
interface Props
|
|
20
|
-
|
|
8
|
+
interface Props {
|
|
9
|
+
table: Table<any>;
|
|
10
|
+
children: React.ReactNode;
|
|
21
11
|
}
|
|
22
12
|
}
|
|
23
13
|
|
package/dist/use-data-grid.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{useMemo as
|
|
1
|
+
"use client";import{useMemo as r}from"react";const s=a=>{const{table:e}=a,t=e.getCoreRowModel().rows.length===0;return r(()=>({table:e,isEmpty:t}),[t,e])};export{s as useDataGrid};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as _tanstack_react_table from '@tanstack/react-table';
|
|
2
|
+
import { TableOptions } from '@tanstack/react-table';
|
|
3
|
+
|
|
4
|
+
declare const useDataGridTable: <TData>(props: Pick<TableOptions<TData>, "data" | "columns"> & Partial<Omit<TableOptions<TData>, "data" | "columns">>) => _tanstack_react_table.Table<TData>;
|
|
5
|
+
|
|
6
|
+
export { useDataGridTable };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{getCoreRowModel as p,getExpandedRowModel as P,getFilteredRowModel as M,getPaginationRowModel as O,getSortedRowModel as h,useReactTable as T}from"@tanstack/react-table";import{useState as t}from"react";const x=e=>{const{data:o,columns:n,state:i,...a}=e,[l,s]=t([]),[r,g]=t({pageSize:10,pageIndex:0}),[c,d]=t({}),[S,m]=t([]),[u,R]=t({}),[F,w]=t({bottom:[],top:[]}),[C,b]=t([]);return T({columnResizeMode:"onChange",columnResizeDirection:"ltr",getCoreRowModel:p(),getPaginationRowModel:O(),getSortedRowModel:h(),getFilteredRowModel:M(),onSortingChange:s,onColumnFiltersChange:m,onColumnVisibilityChange:d,onRowSelectionChange:R,onPaginationChange:g,getExpandedRowModel:P(),onColumnOrderChange:b,onRowPinningChange:w,...a,state:{sorting:l,columnFilters:S,columnVisibility:c,rowSelection:u,pagination:r,columnOrder:C,...i},data:o,columns:n})};export{x as useDataGridTable};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jamsrui/data-grid",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.28",
|
|
4
4
|
"peerDependencies": {
|
|
5
5
|
"@tanstack/react-table": ">=8",
|
|
6
6
|
"react": ">=19"
|
|
@@ -10,20 +10,20 @@
|
|
|
10
10
|
"@dnd-kit/modifiers": "^9.0.0",
|
|
11
11
|
"@dnd-kit/sortable": "^10.0.0",
|
|
12
12
|
"@dnd-kit/utilities": "^3.2.2",
|
|
13
|
-
"@jamsrui/button": "^0.0.
|
|
14
|
-
"@jamsrui/
|
|
15
|
-
"@jamsrui/
|
|
16
|
-
"@jamsrui/
|
|
17
|
-
"@jamsrui/
|
|
18
|
-
"@jamsrui/
|
|
19
|
-
"@jamsrui/
|
|
20
|
-
"@jamsrui/
|
|
21
|
-
"@jamsrui/
|
|
22
|
-
"@jamsrui/
|
|
23
|
-
"@jamsrui/
|
|
24
|
-
"@jamsrui/
|
|
25
|
-
"@jamsrui/
|
|
26
|
-
"@jamsrui/
|
|
13
|
+
"@jamsrui/button": "^0.0.21",
|
|
14
|
+
"@jamsrui/core": "^0.0.15",
|
|
15
|
+
"@jamsrui/hooks": "^0.0.19",
|
|
16
|
+
"@jamsrui/divider": "^0.0.19",
|
|
17
|
+
"@jamsrui/checkbox": "^0.0.20",
|
|
18
|
+
"@jamsrui/icon-button": "^0.0.19",
|
|
19
|
+
"@jamsrui/icons": "^0.0.16",
|
|
20
|
+
"@jamsrui/input": "^0.0.22",
|
|
21
|
+
"@jamsrui/label": "^0.0.13",
|
|
22
|
+
"@jamsrui/linear-progress": "^0.0.19",
|
|
23
|
+
"@jamsrui/table": "^0.0.20",
|
|
24
|
+
"@jamsrui/utils": "^0.0.19",
|
|
25
|
+
"@jamsrui/select": "^0.0.22",
|
|
26
|
+
"@jamsrui/menu": "^0.0.22"
|
|
27
27
|
},
|
|
28
28
|
"exports": {
|
|
29
29
|
".": {
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use client";import{jsx as e}from"react/jsx-runtime";import{LinearProgress as r}from"@jamsrui/linear-progress";const t=a=>e(r,{className:"absolute inset-0",...a});export{t as DataGridLoading};
|