@bsol-oss/react-datatable5 12.0.0-beta.1 → 12.0.0-beta.11

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 (51) hide show
  1. package/dist/index.d.ts +55 -45
  2. package/dist/index.js +379 -309
  3. package/dist/index.mjs +376 -308
  4. package/dist/types/components/DataTable/DataTable.d.ts +1 -1
  5. package/dist/types/components/DataTable/DataTableServer.d.ts +1 -1
  6. package/dist/types/components/DataTable/DefaultTable.d.ts +5 -5
  7. package/dist/types/components/DataTable/components/TextCell.d.ts +10 -0
  8. package/dist/types/components/DataTable/context/DataTableContext.d.ts +2 -1
  9. package/dist/types/components/DataTable/controls/DensityFeature.d.ts +23 -0
  10. package/dist/types/components/DataTable/controls/DensityToggleButton.d.ts +6 -0
  11. package/dist/types/components/DataTable/controls/EditSortingButton.d.ts +7 -0
  12. package/dist/types/components/DataTable/controls/FilterDialog.d.ts +5 -0
  13. package/dist/types/components/DataTable/controls/PageSizeControl.d.ts +4 -0
  14. package/dist/types/components/DataTable/controls/Pagination.d.ts +1 -0
  15. package/dist/types/components/DataTable/controls/ReloadButton.d.ts +5 -0
  16. package/dist/types/components/DataTable/controls/ResetFilteringButton.d.ts +4 -0
  17. package/dist/types/components/DataTable/controls/ResetSelectionButton.d.ts +4 -0
  18. package/dist/types/components/DataTable/controls/ResetSortingButton.d.ts +4 -0
  19. package/dist/types/components/DataTable/controls/RowCountText.d.ts +1 -0
  20. package/dist/types/components/DataTable/controls/SelectAllRowsToggle.d.ts +8 -0
  21. package/dist/types/components/DataTable/controls/TableControls.d.ts +21 -0
  22. package/dist/types/components/DataTable/controls/TableFilterTags.d.ts +1 -0
  23. package/dist/types/components/DataTable/controls/TableFilters.d.ts +1 -0
  24. package/dist/types/components/DataTable/controls/TableSelector.d.ts +1 -0
  25. package/dist/types/components/DataTable/controls/TableSorter.d.ts +1 -0
  26. package/dist/types/components/DataTable/controls/TableViewer.d.ts +1 -0
  27. package/dist/types/components/DataTable/controls/ViewDialog.d.ts +5 -0
  28. package/dist/types/components/DataTable/display/CardHeader.d.ts +13 -0
  29. package/dist/types/components/DataTable/display/DataDisplay.d.ts +6 -0
  30. package/dist/types/components/DataTable/display/EmptyState.d.ts +5 -0
  31. package/dist/types/components/DataTable/display/ErrorAlert.d.ts +4 -0
  32. package/dist/types/components/DataTable/display/RecordDisplay.d.ts +9 -0
  33. package/dist/types/components/DataTable/display/Table.d.ts +10 -0
  34. package/dist/types/components/DataTable/display/TableBody.d.ts +21 -0
  35. package/dist/types/components/DataTable/display/TableCardContainer.d.ts +7 -0
  36. package/dist/types/components/DataTable/display/TableCards.d.ts +11 -0
  37. package/dist/types/components/DataTable/display/TableComponent.d.ts +6 -0
  38. package/dist/types/components/DataTable/display/TableDataDisplay.d.ts +6 -0
  39. package/dist/types/components/DataTable/display/TableFooter.d.ts +9 -0
  40. package/dist/types/components/DataTable/display/TableHeader.d.ts +13 -0
  41. package/dist/types/components/DataTable/display/TableLoadingComponent.d.ts +5 -0
  42. package/dist/types/components/DataTable/display/TextCell.d.ts +10 -0
  43. package/dist/types/components/DataTable/useDataTable.d.ts +1 -1
  44. package/dist/types/components/Form/SchemaFormContext.d.ts +13 -0
  45. package/dist/types/components/Form/components/core/DefaultForm.d.ts +7 -0
  46. package/dist/types/components/Form/components/core/FormBody.d.ts +1 -0
  47. package/dist/types/components/Form/components/core/FormRoot.d.ts +39 -0
  48. package/dist/types/components/Form/components/core/FormTitle.d.ts +1 -0
  49. package/dist/types/components/Form/components/core/SubmitButton.d.ts +1 -0
  50. package/dist/types/index.d.ts +37 -35
  51. package/package.json +2 -2
@@ -1,7 +1,7 @@
1
1
  import { ColumnDef, ColumnFiltersState, ColumnOrderState, FilterFn, OnChangeFn, PaginationState, RowSelectionState, SortingState, VisibilityState } from "@tanstack/react-table";
2
2
  import { ReactNode } from "react";
3
3
  import { RankingInfo } from "@tanstack/match-sorter-utils";
4
- import { DensityState } from "../Controls/DensityFeature";
4
+ import { DensityState } from "./controls/DensityFeature";
5
5
  import { UseTranslationResponse } from "react-i18next";
6
6
  declare module "@tanstack/react-table" {
7
7
  interface FilterFns {
@@ -1,7 +1,7 @@
1
1
  import { ReactNode } from "react";
2
2
  import { UseQueryResult } from "@tanstack/react-query";
3
3
  import { ColumnDef, ColumnFiltersState, ColumnOrderState, OnChangeFn, PaginationState, RowSelectionState, SortingState, VisibilityState } from "@tanstack/react-table";
4
- import { DensityState } from "../Controls/DensityFeature";
4
+ import { DensityState } from "./controls/DensityFeature";
5
5
  import { DataResponse } from "./useDataTableServer";
6
6
  import { UseTranslationResponse } from "react-i18next";
7
7
  export interface DataTableServerProps<TData extends DataResponse = DataResponse<unknown>> {
@@ -1,9 +1,9 @@
1
1
  import { TableHeaderProps as ChakraHeaderProps } from "@chakra-ui/react";
2
- import { TableBodyProps } from "./TableBody";
3
- import { TableControlsProps } from "./TableControls";
4
- import { TableFooterProps } from "./TableFooter";
5
- import { TableHeaderProps } from "./TableHeader";
6
- import { TableProps } from "./Table";
2
+ import { TableBodyProps } from "./display/TableBody";
3
+ import { TableControlsProps } from "./controls/TableControls";
4
+ import { TableFooterProps } from "./display/TableFooter";
5
+ import { TableHeaderProps } from "./display/TableHeader";
6
+ import { TableProps } from "./display/Table";
7
7
  export interface DefaultTableProps {
8
8
  showFooter?: boolean;
9
9
  showSelector?: boolean;
@@ -0,0 +1,10 @@
1
+ import { FlexProps, TextProps } from "@chakra-ui/react";
2
+ import { ReactNode } from "react";
3
+ export interface TextCellProps {
4
+ label?: string;
5
+ noOfLines?: number[];
6
+ children: string | number | ReactNode | ReactNode[];
7
+ containerProps?: FlexProps;
8
+ textProps?: TextProps;
9
+ }
10
+ export declare const TextCell: ({ label, containerProps, textProps, children, }: TextCellProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,7 +1,8 @@
1
1
  /// <reference types="react" />
2
2
  import { OnChangeFn, Table } from "@tanstack/react-table";
3
3
  import { UseTranslationResponse } from "react-i18next";
4
- export interface DataTableContext<TData = unknown> {
4
+ import { DataTableProps } from "../DataTable";
5
+ export interface DataTableContext<TData = unknown> extends DataTableProps {
5
6
  table: Table<TData>;
6
7
  globalFilter: string;
7
8
  setGlobalFilter: OnChangeFn<string>;
@@ -0,0 +1,23 @@
1
+ import { OnChangeFn, Updater, RowData, TableFeature } from "@tanstack/react-table";
2
+ export type DensityState = "sm" | "md" | "lg";
3
+ export interface DensityTableState {
4
+ density: DensityState;
5
+ }
6
+ export interface DensityOptions {
7
+ enableDensity?: boolean;
8
+ onDensityChange?: OnChangeFn<DensityState>;
9
+ }
10
+ export interface DensityInstance {
11
+ setDensity: (updater: Updater<DensityState>) => void;
12
+ toggleDensity: (value?: DensityState) => void;
13
+ getDensityValue: (value?: DensityState) => number;
14
+ }
15
+ declare module "@tanstack/react-table" {
16
+ interface TableState extends DensityTableState {
17
+ }
18
+ interface TableOptionsResolved<TData extends RowData> extends DensityOptions {
19
+ }
20
+ interface Table<TData extends RowData> extends DensityInstance {
21
+ }
22
+ }
23
+ export declare const DensityFeature: TableFeature<any>;
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ export interface DensityToggleButtonProps {
3
+ icon?: React.ReactElement;
4
+ text?: string;
5
+ }
6
+ export declare const DensityToggleButton: ({ text, icon, }: DensityToggleButtonProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ export interface EditSortingButtonProps {
3
+ title?: string;
4
+ icon?: React.ReactElement;
5
+ text?: string;
6
+ }
7
+ export declare const EditSortingButton: ({ text, icon, title, }: EditSortingButtonProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ export interface EditFilterButtonProps {
3
+ icon?: React.ReactElement;
4
+ }
5
+ export declare const FilterDialog: ({ icon, }: EditFilterButtonProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ export interface PageSizeControlProps {
2
+ pageSizes?: number[];
3
+ }
4
+ export declare const PageSizeControl: ({ pageSizes, }: PageSizeControlProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const Pagination: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ export interface ReloadButtonProps {
2
+ text?: string;
3
+ variant?: string;
4
+ }
5
+ export declare const ReloadButton: ({ text, variant, }: ReloadButtonProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ export interface ResetFilteringButtonProps {
2
+ text?: string;
3
+ }
4
+ export declare const ResetFilteringButton: ({ text, }: ResetFilteringButtonProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ export interface ResetSelectionButtonProps {
2
+ text?: string;
3
+ }
4
+ export declare const ResetSelectionButton: ({ text, }: ResetSelectionButtonProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ export interface ResetSortingButtonProps {
2
+ text?: string;
3
+ }
4
+ export declare const ResetSortingButton: ({ text, }: ResetSortingButtonProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const RowCountText: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ export interface SelectAllRowsToggleProps {
3
+ selectAllIcon?: React.ReactElement;
4
+ clearAllIcon?: React.ReactElement;
5
+ selectAllText?: string;
6
+ clearAllText?: string;
7
+ }
8
+ export declare const SelectAllRowsToggle: ({ selectAllIcon, clearAllIcon, selectAllText, clearAllText, }: SelectAllRowsToggleProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,21 @@
1
+ import { ReactNode } from "react";
2
+ export interface TableControlsProps {
3
+ totalText?: string;
4
+ fitTableWidth?: boolean;
5
+ fitTableHeight?: boolean;
6
+ children?: ReactNode;
7
+ showGlobalFilter?: boolean;
8
+ showFilter?: boolean;
9
+ showFilterName?: boolean;
10
+ showFilterTags?: boolean;
11
+ showReload?: boolean;
12
+ showPagination?: boolean;
13
+ showPageSizeControl?: boolean;
14
+ showPageCountText?: boolean;
15
+ showView?: boolean;
16
+ filterOptions?: string[];
17
+ extraItems?: ReactNode;
18
+ loading?: boolean;
19
+ hasError?: boolean;
20
+ }
21
+ export declare const TableControls: ({ fitTableWidth, fitTableHeight, children, showGlobalFilter, showFilter, showFilterName, showFilterTags, showReload, showPagination, showPageSizeControl, showPageCountText, showView, filterOptions, extraItems, loading, hasError, }: TableControlsProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const TableFilterTags: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const TableFilter: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const TableSelector: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const TableSorter: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const TableViewer: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import React from "react";
2
+ export interface EditViewButtonProps {
3
+ icon?: React.ReactElement;
4
+ }
5
+ export declare const ViewDialog: ({ icon }: EditViewButtonProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,13 @@
1
+ import { ImageProps } from "@chakra-ui/react";
2
+ import { Row } from "@tanstack/react-table";
3
+ import { IconType } from "react-icons";
4
+ export interface CardHeaderProps<TData> {
5
+ row: Row<TData>;
6
+ imageColumnId?: keyof TData;
7
+ titleColumnId?: keyof TData;
8
+ tagColumnId?: keyof TData;
9
+ tagIcon?: IconType;
10
+ showTag?: boolean;
11
+ imageProps?: ImageProps;
12
+ }
13
+ export declare const CardHeader: <TData>({ row, imageColumnId, titleColumnId, tagColumnId, tagIcon, showTag, imageProps, }: CardHeaderProps<TData>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { UseTranslationResponse } from "react-i18next";
2
+ export interface DataDisplayProps {
3
+ variant?: "horizontal" | "stats" | "";
4
+ translate?: UseTranslationResponse<any, any>;
5
+ }
6
+ export declare const DataDisplay: ({ variant }: DataDisplayProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ export interface EmptyStateProps {
2
+ title?: string;
3
+ description?: string;
4
+ }
5
+ export declare const EmptyState: ({ title, description, }: EmptyStateProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ export interface ErrorAlertProps {
2
+ showMessage?: boolean;
3
+ }
4
+ export declare const ErrorAlert: ({ showMessage }: ErrorAlertProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,9 @@
1
+ import { BoxProps } from "@chakra-ui/react";
2
+ import { UseTranslationResponse } from "react-i18next";
3
+ export interface RecordDisplayProps {
4
+ object: object | null;
5
+ boxProps?: BoxProps;
6
+ translate?: UseTranslationResponse<any, any>;
7
+ prefix?: string;
8
+ }
9
+ export declare const RecordDisplay: ({ object, boxProps, translate, prefix, }: RecordDisplayProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,10 @@
1
+ import { TableRootProps } from "@chakra-ui/react";
2
+ import { ReactNode } from "react";
3
+ export interface TableProps extends TableRootProps {
4
+ showLoading?: boolean;
5
+ loadingComponent?: ReactNode;
6
+ emptyComponent?: ReactNode;
7
+ canResize?: boolean;
8
+ children: ReactNode;
9
+ }
10
+ export declare const Table: ({ children, emptyComponent, canResize, ...props }: TableProps) => string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,21 @@
1
+ import { Row } from "@tanstack/react-table";
2
+ export interface TableBodyProps {
3
+ pinnedBgColor?: {
4
+ light: string;
5
+ dark: string;
6
+ };
7
+ showSelector?: boolean;
8
+ alwaysShowSelector?: boolean;
9
+ canResize?: boolean;
10
+ }
11
+ export interface TableRowSelectorProps<TData> {
12
+ index: number;
13
+ row: Row<TData>;
14
+ hoveredRow: number;
15
+ pinnedBgColor?: {
16
+ light: string;
17
+ dark: string;
18
+ };
19
+ alwaysShowSelector?: boolean;
20
+ }
21
+ export declare const TableBody: ({ pinnedBgColor, showSelector, alwaysShowSelector, canResize, }: TableBodyProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,7 @@
1
+ import { GridProps } from "@chakra-ui/react";
2
+ import { ReactNode } from "react";
3
+ export interface TableCardContainerProps extends GridProps {
4
+ children: ReactNode;
5
+ variant?: "carousel" | "";
6
+ }
7
+ export declare const TableCardContainer: ({ children, variant, ...props }: TableCardContainerProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,11 @@
1
+ import { CardBodyProps } from "@chakra-ui/react";
2
+ import { Row } from "@tanstack/react-table";
3
+ import { ReactNode } from "react";
4
+ export interface TableCardsProps<TData> {
5
+ isSelectable?: boolean;
6
+ showDisplayNameOnly?: boolean;
7
+ renderTitle?: (row: Row<TData>) => ReactNode | undefined;
8
+ cardBodyProps?: CardBodyProps;
9
+ }
10
+ export declare const DefaultCardTitle: () => import("react/jsx-runtime").JSX.Element;
11
+ export declare const TableCards: <TData>({ isSelectable, showDisplayNameOnly, renderTitle, cardBodyProps, }: TableCardsProps<TData>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { Table } from "@tanstack/react-table";
2
+ import React from "react";
3
+ export interface TableRendererProps<TData> {
4
+ render: (render: Table<TData>) => React.ReactElement;
5
+ }
6
+ export declare const TableComponent: <TData>({ render, }: TableRendererProps<TData>) => React.ReactElement<unknown, string | React.JSXElementConstructor<any>>;
@@ -0,0 +1,6 @@
1
+ import { ReactNode } from "react";
2
+ export interface TableDataDisplayProps {
3
+ colorPalette?: string;
4
+ emptyComponent?: ReactNode;
5
+ }
6
+ export declare const TableDataDisplay: ({ colorPalette, emptyComponent, }: TableDataDisplayProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,9 @@
1
+ export interface TableFooterProps {
2
+ pinnedBgColor?: {
3
+ light: string;
4
+ dark: string;
5
+ };
6
+ showSelector?: boolean;
7
+ alwaysShowSelector?: boolean;
8
+ }
9
+ export declare const TableFooter: ({ pinnedBgColor, showSelector, alwaysShowSelector, }: TableFooterProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,13 @@
1
+ import { TableHeaderProps as ChakraTableHeaderProps } from "@chakra-ui/react";
2
+ export interface TableHeaderProps {
3
+ canResize?: boolean;
4
+ pinnedBgColor?: {
5
+ light: string;
6
+ dark: string;
7
+ };
8
+ showSelector?: boolean;
9
+ isSticky?: boolean;
10
+ alwaysShowSelector?: boolean;
11
+ tHeadProps?: ChakraTableHeaderProps;
12
+ }
13
+ export declare const TableHeader: ({ canResize, pinnedBgColor, showSelector, isSticky, alwaysShowSelector, tHeadProps, }: TableHeaderProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ import { ReactNode } from "react";
2
+ export interface TableLoadingComponentProps {
3
+ render: (loading: boolean) => ReactNode;
4
+ }
5
+ export declare const TableLoadingComponent: ({ render, }: TableLoadingComponentProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,10 @@
1
+ import { FlexProps, TextProps } from "@chakra-ui/react";
2
+ import { ReactNode } from "react";
3
+ export interface TextCellProps {
4
+ label?: string;
5
+ noOfLines?: number[];
6
+ children: string | number | ReactNode | ReactNode[];
7
+ containerProps?: FlexProps;
8
+ textProps?: TextProps;
9
+ }
10
+ export declare const TextCell: ({ label, containerProps, textProps, children, }: TextCellProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,5 @@
1
1
  import { ColumnFiltersState, ColumnOrderState, OnChangeFn, PaginationState, RowSelectionState, SortingState, VisibilityState } from "@tanstack/react-table";
2
- import { DensityState } from "../Controls/DensityFeature";
2
+ import { DensityState } from "./controls/DensityFeature";
3
3
  import { UseTranslationResponse } from "react-i18next";
4
4
  export interface DataTableDefaultState {
5
5
  sorting?: SortingState;
@@ -16,5 +16,18 @@ export interface SchemaFormContext<TData extends FieldValues> {
16
16
  setIdMap: Dispatch<SetStateAction<Record<string, object>>>;
17
17
  translate: UseTranslationResponse<any, any>;
18
18
  requestOptions: AxiosRequestConfig;
19
+ isSuccess: boolean;
20
+ setIsSuccess: Dispatch<SetStateAction<boolean>>;
21
+ isError: boolean;
22
+ setIsError: Dispatch<SetStateAction<boolean>>;
23
+ isSubmiting: boolean;
24
+ setIsSubmiting: Dispatch<SetStateAction<boolean>>;
25
+ isConfirming: boolean;
26
+ setIsConfirming: Dispatch<SetStateAction<boolean>>;
27
+ validatedData: TData | undefined;
28
+ setValidatedData: Dispatch<SetStateAction<TData>>;
29
+ error: unknown;
30
+ setError: Dispatch<SetStateAction<unknown>>;
31
+ getUpdatedData: () => TData | Promise<TData>;
19
32
  }
20
33
  export declare const SchemaFormContext: import("react").Context<SchemaFormContext<unknown>>;
@@ -0,0 +1,7 @@
1
+ import { FormRootProps } from "./FormRoot";
2
+ import { FieldValues } from "react-hook-form";
3
+ export interface DefaultFormProps<TData extends FieldValues> {
4
+ formConfig: Omit<FormRootProps<TData>, "children">;
5
+ showTitle?: boolean;
6
+ }
7
+ export declare const DefaultForm: <TData extends FieldValues>({ formConfig, showTitle, }: DefaultFormProps<TData>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const FormBody: <TData extends object>() => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,39 @@
1
+ import { ForeignKeyProps } from "@/components/Form/components/fields/StringInputField";
2
+ import { AxiosRequestConfig } from "axios";
3
+ import { JSONSchema7 } from "json-schema";
4
+ import { Dispatch, ReactNode, SetStateAction } from "react";
5
+ import { FieldValues, SubmitHandler, UseFormReturn } from "react-hook-form";
6
+ import { UseTranslationResponse } from "react-i18next";
7
+ export interface FormRootProps<TData extends FieldValues> {
8
+ schema: JSONSchema7;
9
+ serverUrl: string;
10
+ requestUrl?: string;
11
+ idMap: Record<string, object>;
12
+ setIdMap: Dispatch<SetStateAction<Record<string, object>>>;
13
+ form: UseFormReturn;
14
+ translate: UseTranslationResponse<any, any>;
15
+ children: ReactNode;
16
+ order?: string[];
17
+ ignore?: string[];
18
+ include?: string[];
19
+ onSubmit?: SubmitHandler<TData>;
20
+ rowNumber?: number | string;
21
+ requestOptions?: AxiosRequestConfig;
22
+ getUpdatedData?: () => TData | Promise<TData> | void;
23
+ }
24
+ export interface CustomJSONSchema7Definition extends JSONSchema7 {
25
+ variant: string;
26
+ in_table: string;
27
+ column_ref: string;
28
+ display_column: string;
29
+ gridColumn: string;
30
+ gridRow: string;
31
+ foreign_key: ForeignKeyProps;
32
+ children: ReactNode;
33
+ }
34
+ export declare const idPickerSanityCheck: (column: string, foreign_key?: {
35
+ table?: string | undefined;
36
+ column?: string | undefined;
37
+ display_column?: string | undefined;
38
+ } | undefined) => void;
39
+ export declare const FormRoot: <TData extends FieldValues>({ schema, idMap, setIdMap, form, serverUrl, translate, children, order, ignore, include, onSubmit, rowNumber, requestOptions, getUpdatedData, }: FormRootProps<TData>) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const FormTitle: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const SubmitButton: () => import("react/jsx-runtime").JSX.Element;
@@ -57,51 +57,53 @@ declare module "@tanstack/react-table" {
57
57
  renderFilter?: (column: Column<TData>) => ReactNode;
58
58
  }
59
59
  }
60
- export * from "./components/Controls/DensityToggleButton";
61
- export * from "./components/Controls/FilterDialog";
62
- export * from "./components/Controls/EditOrderButton";
63
- export * from "./components/Controls/EditSortingButton";
64
- export * from "./components/Controls/ViewDialog";
65
- export * from "./components/Controls/PageSizeControl";
66
- export * from "./components/Controls/ResetFilteringButton";
67
- export * from "./components/Controls/ResetSelectionButton";
68
- export * from "./components/Controls/ResetSortingButton";
69
- export * from "./components/Controls/RowCountText";
70
- export * from "./components/Controls/Pagination";
71
- export * from "./components/DataTable/CardHeader";
72
- export * from "./components/DataTable/DataDisplay";
60
+ export * from "./components/DataTable/controls/DensityToggleButton";
61
+ export * from "./components/DataTable/controls/EditSortingButton";
62
+ export * from "./components/DataTable/controls/FilterDialog";
63
+ export * from "./components/DataTable/controls/PageSizeControl";
64
+ export * from "./components/DataTable/controls/Pagination";
65
+ export * from "./components/DataTable/controls/ResetFilteringButton";
66
+ export * from "./components/DataTable/controls/ResetSelectionButton";
67
+ export * from "./components/DataTable/controls/ResetSortingButton";
68
+ export * from "./components/DataTable/controls/RowCountText";
69
+ export * from "./components/DataTable/controls/ViewDialog";
70
+ export * from "./components/DataTable/display/CardHeader";
71
+ export * from "./components/DataTable/display/EmptyState";
72
+ export * from "./components/DataTable/display/ErrorAlert";
73
+ export * from "./components/DataTable/context/useDataTableContext";
74
+ export * from "./components/DataTable/display/DataDisplay";
73
75
  export * from "./components/DataTable/DataTable";
74
76
  export * from "./components/DataTable/DataTableServer";
75
77
  export * from "./components/DataTable/DefaultTable";
76
- export * from "./components/DataTable/ReloadButton";
77
- export * from "./components/DataTable/Table";
78
- export * from "./components/DataTable/TableBody";
79
- export * from "./components/DataTable/TableCardContainer";
80
- export * from "./components/DataTable/TableCards";
81
- export * from "./components/DataTable/TableComponent";
82
- export * from "./components/DataTable/TableControls";
83
- export * from "./components/DataTable/TableFilters";
84
- export * from "./components/DataTable/TableFilterTags";
85
- export * from "./components/DataTable/TableFooter";
86
- export * from "./components/DataTable/TableHeader";
87
- export * from "./components/DataTable/TableLoadingComponent";
88
- export * from "./components/DataTable/TableOrderer";
89
- export * from "./components/DataTable/TableSelector";
90
- export * from "./components/DataTable/TableSorter";
91
- export * from "./components/DataTable/TableViewer";
92
- export * from "./components/DataTable/TextCell";
78
+ export * from "./components/DataTable/controls/ReloadButton";
79
+ export * from "./components/DataTable/display/Table";
80
+ export * from "./components/DataTable/display/TableBody";
81
+ export * from "./components/DataTable/display/TableCardContainer";
82
+ export * from "./components/DataTable/display/TableCards";
83
+ export * from "./components/DataTable/display/TableComponent";
84
+ export * from "./components/DataTable/controls/TableControls";
85
+ export * from "./components/DataTable/controls/TableFilters";
86
+ export * from "./components/DataTable/controls/TableFilterTags";
87
+ export * from "./components/DataTable/display/TableFooter";
88
+ export * from "./components/DataTable/display/TableHeader";
89
+ export * from "./components/DataTable/display/TableLoadingComponent";
90
+ export * from "./components/DataTable/controls/TableSelector";
91
+ export * from "./components/DataTable/controls/TableSorter";
92
+ export * from "./components/DataTable/controls/TableViewer";
93
+ export * from "./components/DataTable/display/TextCell";
93
94
  export * from "./components/DataTable/useDataTable";
94
- export * from "./components/DataTable/context/useDataTableContext";
95
95
  export * from "./components/DataTable/useDataTableServer";
96
96
  export * from "./components/DataTable/utils/getColumns";
97
- export * from "./components/DataTable/components/EmptyState";
98
- export * from "./components/DataTable/components/ErrorAlert";
97
+ export * from "./components/DataTable/display/TableDataDisplay";
99
98
  export * from "./components/Filter/FilterOptions";
100
99
  export * from "./components/Filter/GlobalFilter";
101
- export * from "./components/Form/Form";
100
+ export * from "./components/Form/components/core/DefaultForm";
101
+ export * from "./components/Form/components/core/FormRoot";
102
+ export * from "./components/Form/components/core/FormTitle";
103
+ export * from "./components/Form/components/core/FormBody";
102
104
  export * from "./components/Form/useForm";
103
105
  export * from "./components/DatePicker/DatePicker";
104
106
  export * from "./components/DatePicker/getMultiDates";
105
107
  export * from "./components/DatePicker/getRangeDates";
106
108
  export * from "./components/DatePicker/RangeDatePicker";
107
- export * from "./components/DataTable/components/RecordDisplay";
109
+ export * from "./components/DataTable/display/RecordDisplay";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bsol-oss/react-datatable5",
3
- "version": "12.0.0-beta.1",
3
+ "version": "12.0.0-beta.11",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -41,7 +41,7 @@
41
41
  "@emotion/react": "^11.13.5",
42
42
  "@tanstack/match-sorter-utils": "^8.15.1",
43
43
  "@tanstack/react-query": "^5.66.9",
44
- "@tanstack/react-table": "^8.16.0",
44
+ "@tanstack/react-table": "^8.21.2",
45
45
  "@uidotdev/usehooks": "^2.4.1",
46
46
  "axios": "^1.7.9",
47
47
  "dayjs": "^1.11.13",