munza-x-data-grid 1.5.0 → 1.5.2

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 (54) hide show
  1. package/README.md +288 -73
  2. package/dist/README.md +288 -0
  3. package/dist/components/feedback/NoDataFoundMsg.d.ts +2 -0
  4. package/dist/components/feedback/TableError.d.ts +2 -0
  5. package/dist/components/feedback/TableErrorMsg.d.ts +2 -0
  6. package/dist/components/feedback/TableNoData.d.ts +2 -0
  7. package/dist/components/feedback/TableRowSkeleton.d.ts +7 -0
  8. package/dist/components/feedback/TableSkeleton.d.ts +2 -0
  9. package/dist/components/header/HeaderFilter.d.ts +5 -0
  10. package/dist/components/header/HeaderMenu.d.ts +5 -0
  11. package/dist/components/header/HeaderSort.d.ts +5 -0
  12. package/dist/components/pagination/index.d.ts +4 -0
  13. package/dist/components/table/TBody.d.ts +2 -0
  14. package/dist/components/table/TCell.d.ts +6 -0
  15. package/dist/components/table/THead.d.ts +6 -0
  16. package/dist/components/table/THeader.d.ts +2 -0
  17. package/dist/components/table/TMain.d.ts +2 -0
  18. package/dist/components/toolbar/ToolbarFilter.d.ts +5 -0
  19. package/dist/components/toolbar/index.d.ts +2 -0
  20. package/dist/components/ui/badge.d.ts +9 -0
  21. package/dist/components/ui/button.d.ts +10 -0
  22. package/dist/components/ui/checkbox.d.ts +4 -0
  23. package/dist/components/ui/collapsible.d.ts +5 -0
  24. package/dist/components/ui/debounced-input.d.ts +7 -0
  25. package/dist/components/ui/dropdown-menu.d.ts +29 -0
  26. package/dist/components/ui/empty.d.ts +11 -0
  27. package/dist/components/ui/input.d.ts +3 -0
  28. package/dist/components/ui/label.d.ts +4 -0
  29. package/dist/components/ui/native-select.d.ts +8 -0
  30. package/dist/components/ui/separator.d.ts +4 -0
  31. package/dist/components/ui/skeleton.d.ts +2 -0
  32. package/dist/components/ui/table.d.ts +10 -0
  33. package/dist/contexts/GridContext.d.ts +39 -0
  34. package/dist/core/Grid.d.ts +3 -0
  35. package/dist/data-grid.cjs +44 -0
  36. package/dist/data-grid.js +7983 -0
  37. package/dist/hooks/useGrid.d.ts +2 -0
  38. package/dist/hooks/useGridState.d.ts +16 -0
  39. package/dist/hooks/useQueryArgs.d.ts +12 -0
  40. package/dist/hooks/useSyncScroll.d.ts +7 -0
  41. package/dist/index.css +4 -0
  42. package/dist/index.d.ts +5 -2
  43. package/dist/lib/utils.d.ts +2 -0
  44. package/dist/utils/buildQueryString.d.ts +2 -0
  45. package/dist/utils/buildSortString.d.ts +4 -0
  46. package/dist/utils/getPinStyles.d.ts +3 -0
  47. package/package.json +66 -45
  48. package/dist/App.d.ts +0 -2
  49. package/dist/Button.d.ts +0 -7
  50. package/dist/favicon.svg +0 -1
  51. package/dist/icons.svg +0 -24
  52. package/dist/main.d.ts +0 -0
  53. package/dist/munza-x-data-grid.js +0 -192
  54. package/dist/munza-x-data-grid.umd.cjs +0 -6
@@ -0,0 +1,4 @@
1
+ declare const Pagination: ({ pagination }: {
2
+ pagination: number[];
3
+ }) => import("react/jsx-runtime").JSX.Element;
4
+ export default Pagination;
@@ -0,0 +1,2 @@
1
+ declare const TBody: () => import("react/jsx-runtime").JSX.Element;
2
+ export default TBody;
@@ -0,0 +1,6 @@
1
+ import { Cell } from '@tanstack/react-table';
2
+ interface TCellProps<T> {
3
+ cell: Cell<T, unknown>;
4
+ }
5
+ declare const TCell: <T>({ cell }: TCellProps<T>) => import("react/jsx-runtime").JSX.Element;
6
+ export default TCell;
@@ -0,0 +1,6 @@
1
+ import { Header } from '@tanstack/react-table';
2
+ interface THeadProps<T> {
3
+ header: Header<T, unknown>;
4
+ }
5
+ declare const THead: <T>({ header }: THeadProps<T>) => import("react/jsx-runtime").JSX.Element;
6
+ export default THead;
@@ -0,0 +1,2 @@
1
+ declare const THeader: () => import("react/jsx-runtime").JSX.Element;
2
+ export default THeader;
@@ -0,0 +1,2 @@
1
+ declare const TMain: () => import("react/jsx-runtime").JSX.Element;
2
+ export default TMain;
@@ -0,0 +1,5 @@
1
+ import { Column } from '@tanstack/react-table';
2
+ declare const ToolbarFilter: <T>({ column }: {
3
+ column: Column<T, unknown>;
4
+ }) => import("react/jsx-runtime").JSX.Element;
5
+ export default ToolbarFilter;
@@ -0,0 +1,2 @@
1
+ declare const Toolbar: () => import("react/jsx-runtime").JSX.Element;
2
+ export default Toolbar;
@@ -0,0 +1,9 @@
1
+ import { VariantProps } from 'class-variance-authority';
2
+ import * as React from 'react';
3
+ declare const badgeVariants: (props?: ({
4
+ variant?: "link" | "default" | "outline" | "secondary" | "ghost" | "destructive" | null | undefined;
5
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
6
+ declare function Badge({ className, variant, asChild, ...props }: React.ComponentProps<'span'> & VariantProps<typeof badgeVariants> & {
7
+ asChild?: boolean;
8
+ }): import("react/jsx-runtime").JSX.Element;
9
+ export { Badge };
@@ -0,0 +1,10 @@
1
+ import { VariantProps } from 'class-variance-authority';
2
+ import * as React from 'react';
3
+ declare const buttonVariants: (props?: ({
4
+ variant?: "link" | "default" | "outline" | "secondary" | "ghost" | "destructive" | null | undefined;
5
+ size?: "default" | "xs" | "sm" | "lg" | "icon" | "icon-xs" | "icon-sm" | "icon-lg" | null | undefined;
6
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
7
+ declare function Button({ className, variant, size, asChild, ...props }: React.ComponentProps<'button'> & VariantProps<typeof buttonVariants> & {
8
+ asChild?: boolean;
9
+ }): import("react/jsx-runtime").JSX.Element;
10
+ export { Button };
@@ -0,0 +1,4 @@
1
+ import { Checkbox as CheckboxPrimitive } from 'radix-ui';
2
+ import * as React from 'react';
3
+ declare function Checkbox({ className, ...props }: React.ComponentProps<typeof CheckboxPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ export { Checkbox };
@@ -0,0 +1,5 @@
1
+ import { Collapsible as CollapsiblePrimitive } from 'radix-ui';
2
+ declare function Collapsible({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.Root>): import("react/jsx-runtime").JSX.Element;
3
+ declare function CollapsibleTrigger({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>): import("react/jsx-runtime").JSX.Element;
4
+ declare function CollapsibleContent({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>): import("react/jsx-runtime").JSX.Element;
5
+ export { Collapsible, CollapsibleContent, CollapsibleTrigger };
@@ -0,0 +1,7 @@
1
+ import { default as React } from 'react';
2
+ declare const DebouncedInput: ({ value: initialValue, onChange, debounce, ...props }: {
3
+ value: string | number;
4
+ onChange: (value: string | number) => void;
5
+ debounce?: number;
6
+ } & Omit<React.InputHTMLAttributes<HTMLInputElement>, "onChange">) => import("react/jsx-runtime").JSX.Element;
7
+ export default DebouncedInput;
@@ -0,0 +1,29 @@
1
+ import { DropdownMenu as DropdownMenuPrimitive } from 'radix-ui';
2
+ import * as React from 'react';
3
+ declare function DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ declare function DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
5
+ declare function DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
6
+ declare function DropdownMenuContent({ className, align, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
7
+ declare function DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
8
+ declare function DropdownMenuItem({ className, inset, variant, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
9
+ inset?: boolean;
10
+ variant?: 'default' | 'destructive';
11
+ }): import("react/jsx-runtime").JSX.Element;
12
+ declare function DropdownMenuCheckboxItem({ className, children, checked, inset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem> & {
13
+ inset?: boolean;
14
+ }): import("react/jsx-runtime").JSX.Element;
15
+ declare function DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>): import("react/jsx-runtime").JSX.Element;
16
+ declare function DropdownMenuRadioItem({ className, children, inset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem> & {
17
+ inset?: boolean;
18
+ }): import("react/jsx-runtime").JSX.Element;
19
+ declare function DropdownMenuLabel({ className, inset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {
20
+ inset?: boolean;
21
+ }): import("react/jsx-runtime").JSX.Element;
22
+ declare function DropdownMenuSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>): import("react/jsx-runtime").JSX.Element;
23
+ declare function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>): import("react/jsx-runtime").JSX.Element;
24
+ declare function DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>): import("react/jsx-runtime").JSX.Element;
25
+ declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {
26
+ inset?: boolean;
27
+ }): import("react/jsx-runtime").JSX.Element;
28
+ declare function DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>): import("react/jsx-runtime").JSX.Element;
29
+ export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, };
@@ -0,0 +1,11 @@
1
+ import { VariantProps } from 'class-variance-authority';
2
+ declare function Empty({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
3
+ declare function EmptyHeader({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
4
+ declare const emptyMediaVariants: (props?: ({
5
+ variant?: "default" | "icon" | null | undefined;
6
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
7
+ declare function EmptyMedia({ className, variant, ...props }: React.ComponentProps<'div'> & VariantProps<typeof emptyMediaVariants>): import("react/jsx-runtime").JSX.Element;
8
+ declare function EmptyTitle({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
9
+ declare function EmptyDescription({ className, ...props }: React.ComponentProps<'p'>): import("react/jsx-runtime").JSX.Element;
10
+ declare function EmptyContent({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
11
+ export { Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, };
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ declare function Input({ className, type, ...props }: React.ComponentProps<'input'>): import("react/jsx-runtime").JSX.Element;
3
+ export { Input };
@@ -0,0 +1,4 @@
1
+ import { Label as LabelPrimitive } from 'radix-ui';
2
+ import * as React from 'react';
3
+ declare function Label({ className, ...props }: React.ComponentProps<typeof LabelPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ export { Label };
@@ -0,0 +1,8 @@
1
+ import * as React from 'react';
2
+ type NativeSelectProps = Omit<React.ComponentProps<'select'>, 'size'> & {
3
+ size?: 'sm' | 'default';
4
+ };
5
+ declare function NativeSelect({ className, size, ...props }: NativeSelectProps): import("react/jsx-runtime").JSX.Element;
6
+ declare function NativeSelectOption({ ...props }: React.ComponentProps<'option'>): import("react/jsx-runtime").JSX.Element;
7
+ declare function NativeSelectOptGroup({ className, ...props }: React.ComponentProps<'optgroup'>): import("react/jsx-runtime").JSX.Element;
8
+ export { NativeSelect, NativeSelectOptGroup, NativeSelectOption };
@@ -0,0 +1,4 @@
1
+ import { Separator as SeparatorPrimitive } from 'radix-ui';
2
+ import * as React from 'react';
3
+ declare function Separator({ className, orientation, decorative, ...props }: React.ComponentProps<typeof SeparatorPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ export { Separator };
@@ -0,0 +1,2 @@
1
+ declare function Skeleton({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
2
+ export { Skeleton };
@@ -0,0 +1,10 @@
1
+ import * as React from 'react';
2
+ declare function Table({ className, ...props }: React.ComponentProps<'table'>): import("react/jsx-runtime").JSX.Element;
3
+ declare function TableHeader({ className, ...props }: React.ComponentProps<'thead'>): import("react/jsx-runtime").JSX.Element;
4
+ declare function TableBody({ className, ...props }: React.ComponentProps<'tbody'>): import("react/jsx-runtime").JSX.Element;
5
+ declare function TableFooter({ className, ...props }: React.ComponentProps<'tfoot'>): import("react/jsx-runtime").JSX.Element;
6
+ declare function TableRow({ className, ...props }: React.ComponentProps<'tr'>): import("react/jsx-runtime").JSX.Element;
7
+ declare function TableHead({ className, ...props }: React.ComponentProps<'th'>): import("react/jsx-runtime").JSX.Element;
8
+ declare function TableCell({ className, ...props }: React.ComponentProps<'td'>): import("react/jsx-runtime").JSX.Element;
9
+ declare function TableCaption({ className, ...props }: React.ComponentProps<'caption'>): import("react/jsx-runtime").JSX.Element;
10
+ export { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, };
@@ -0,0 +1,39 @@
1
+ import { ColumnDef, ColumnFiltersState, OnChangeFn, PaginationState, Row, SortingState, Table, TableState } from '@tanstack/react-table';
2
+ import { default as React } from 'react';
3
+ export interface GridContextProps<T> {
4
+ table: Table<T>;
5
+ isLoading?: boolean;
6
+ isError?: boolean;
7
+ isFetching?: boolean;
8
+ paneRef1: React.RefObject<HTMLDivElement | null>;
9
+ paneRef2: React.RefObject<HTMLDivElement | null>;
10
+ globalFilter?: string;
11
+ setGlobalFilter?: React.Dispatch<React.SetStateAction<string>>;
12
+ renderSubComponent?: (props: {
13
+ row: Row<T>;
14
+ }) => React.ReactElement;
15
+ }
16
+ declare const GridContext: React.Context<GridContextProps<any> | undefined>;
17
+ interface GridContextProviderProps<T> {
18
+ children: React.ReactNode;
19
+ payload?: {
20
+ data: T[];
21
+ total: number;
22
+ };
23
+ columns: ColumnDef<T>[];
24
+ state?: Partial<TableState>;
25
+ onColumnFiltersChange?: OnChangeFn<ColumnFiltersState>;
26
+ onPaginationChange?: OnChangeFn<PaginationState>;
27
+ onSortingChange?: OnChangeFn<SortingState>;
28
+ manualPagination?: boolean;
29
+ isLoading?: boolean;
30
+ isError?: boolean;
31
+ isFetching?: boolean;
32
+ setGlobalFilter?: React.Dispatch<React.SetStateAction<string>>;
33
+ renderSubComponent?: (props: {
34
+ row: Row<T>;
35
+ }) => React.ReactElement;
36
+ getRowCanExpand?: (row: Row<T>) => boolean;
37
+ }
38
+ export declare const GridContextProvider: <T>({ children, payload, columns, state, onColumnFiltersChange, onPaginationChange, onSortingChange, setGlobalFilter, manualPagination, isError, isLoading, isFetching, getRowCanExpand, renderSubComponent, }: GridContextProviderProps<T>) => import("react/jsx-runtime").JSX.Element;
39
+ export default GridContext;
@@ -0,0 +1,3 @@
1
+ import { GridProps } from '../types';
2
+ declare const Grid: <T>({ columns, payload, state, onColumnFiltersChange, onPaginationChange, onSortingChange, isLoading, isError, setGlobalFilter, getRowCanExpand, renderSubComponent, manualPagination, isFetching, }: GridProps<T>) => import("react/jsx-runtime").JSX.Element;
3
+ export { Grid };