@bwp-web/components 0.10.0 → 0.11.1

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 (43) hide show
  1. package/dist/BiampTable/BiampTable.d.ts +27 -0
  2. package/dist/BiampTable/BiampTable.d.ts.map +1 -0
  3. package/dist/BiampTable/BiampTableCellActionButton.d.ts +13 -0
  4. package/dist/BiampTable/BiampTableCellActionButton.d.ts.map +1 -0
  5. package/dist/BiampTable/BiampTableColumnVisibility.d.ts +18 -0
  6. package/dist/BiampTable/BiampTableColumnVisibility.d.ts.map +1 -0
  7. package/dist/BiampTable/BiampTableContainer.d.ts +9 -0
  8. package/dist/BiampTable/BiampTableContainer.d.ts.map +1 -0
  9. package/dist/BiampTable/BiampTableEmptyState.d.ts +4 -0
  10. package/dist/BiampTable/BiampTableEmptyState.d.ts.map +1 -0
  11. package/dist/BiampTable/BiampTableErrorState.d.ts +4 -0
  12. package/dist/BiampTable/BiampTableErrorState.d.ts.map +1 -0
  13. package/dist/BiampTable/BiampTablePagination.d.ts +14 -0
  14. package/dist/BiampTable/BiampTablePagination.d.ts.map +1 -0
  15. package/dist/BiampTable/BiampTableStatusMessage.d.ts +14 -0
  16. package/dist/BiampTable/BiampTableStatusMessage.d.ts.map +1 -0
  17. package/dist/BiampTable/BiampTableToolbar.d.ts +4 -0
  18. package/dist/BiampTable/BiampTableToolbar.d.ts.map +1 -0
  19. package/dist/BiampTable/BiampTableToolbarActionButton.d.ts +12 -0
  20. package/dist/BiampTable/BiampTableToolbarActionButton.d.ts.map +1 -0
  21. package/dist/BiampTable/BiampTableToolbarActions.d.ts +4 -0
  22. package/dist/BiampTable/BiampTableToolbarActions.d.ts.map +1 -0
  23. package/dist/BiampTable/BiampTableToolbarExport.d.ts +13 -0
  24. package/dist/BiampTable/BiampTableToolbarExport.d.ts.map +1 -0
  25. package/dist/BiampTable/BiampTableToolbarFilters.d.ts +28 -0
  26. package/dist/BiampTable/BiampTableToolbarFilters.d.ts.map +1 -0
  27. package/dist/BiampTable/BiampTableToolbarSearch.d.ts +19 -0
  28. package/dist/BiampTable/BiampTableToolbarSearch.d.ts.map +1 -0
  29. package/dist/BiampTable/index.d.ts +16 -0
  30. package/dist/BiampTable/index.d.ts.map +1 -0
  31. package/dist/BiampTable/tanstack-meta.d.ts +10 -0
  32. package/dist/BiampTable/tanstack-meta.d.ts.map +1 -0
  33. package/dist/BiampTable/useDebouncedCallback.d.ts +9 -0
  34. package/dist/BiampTable/useDebouncedCallback.d.ts.map +1 -0
  35. package/dist/BiampTable/useLoadingDelay.d.ts +17 -0
  36. package/dist/BiampTable/useLoadingDelay.d.ts.map +1 -0
  37. package/dist/index.cjs +867 -2
  38. package/dist/index.cjs.map +1 -1
  39. package/dist/index.d.ts +1 -0
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +886 -1
  42. package/dist/index.js.map +1 -1
  43. package/package.json +6 -2
@@ -0,0 +1,27 @@
1
+ import { type BoxProps } from '@mui/material';
2
+ import { type Table } from '@tanstack/react-table';
3
+ import { type ReactNode } from 'react';
4
+ import './tanstack-meta';
5
+ export type BiampTableProps<TData> = BoxProps & {
6
+ /** TanStack Table instance to connect to. */
7
+ table: Table<TData>;
8
+ /** Called when a clickable body row is clicked. Receives the row's original data. */
9
+ onRowClick?: (row: TData) => void;
10
+ /**
11
+ * Controls which rows are clickable. When omitted, all rows are clickable if
12
+ * `onRowClick` is provided. Has no effect when `onRowClick` is not provided.
13
+ */
14
+ isRowClickable?: (row: TData) => boolean;
15
+ /** When true, shows a LinearProgress bar below the table header. */
16
+ loading?: boolean;
17
+ /** When truthy, shown in place of table body rows. Pass `true` or an `Error` for the default error state (an `Error`'s message is displayed), or a custom ReactNode. */
18
+ error?: boolean | Error | ReactNode;
19
+ /** When truthy and the table has no rows, shown instead of an empty body. Pass `true` for the default empty state, or a custom ReactNode. */
20
+ empty?: boolean | ReactNode;
21
+ /** When true, hides the "select all" header checkbox while keeping individual row checkboxes. */
22
+ hideSelectAll?: boolean;
23
+ /** Returns a human-readable name for a row, used in ARIA labels (e.g. "Select: Conference Room A"). Falls back to row index. */
24
+ getRowLabel?: (row: TData) => string;
25
+ };
26
+ export declare function BiampTable<TData>({ table, onRowClick, isRowClickable, loading, error, empty, hideSelectAll, getRowLabel, sx, ...boxProps }: BiampTableProps<TData>): import("react/jsx-runtime").JSX.Element;
27
+ //# sourceMappingURL=BiampTable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTable.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,QAAQ,EAUd,MAAM,eAAe,CAAC;AAKvB,OAAO,EAAc,KAAK,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAG9C,OAAO,iBAAiB,CAAC;AAGzB,MAAM,MAAM,eAAe,CAAC,KAAK,IAAI,QAAQ,GAAG;IAC9C,6CAA6C;IAC7C,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACpB,qFAAqF;IACrF,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAC;IAClC;;;OAGG;IACH,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,OAAO,CAAC;IACzC,oEAAoE;IACpE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wKAAwK;IACxK,KAAK,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS,CAAC;IACpC,6IAA6I;IAC7I,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,iGAAiG;IACjG,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gIAAgI;IAChI,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,MAAM,CAAC;CACtC,CAAC;AAEF,wBAAgB,UAAU,CAAC,KAAK,EAAE,EAChC,KAAK,EACL,UAAU,EACV,cAAc,EACd,OAAO,EACP,KAAK,EACL,KAAK,EACL,aAAa,EACb,WAAW,EACX,EAAE,EACF,GAAG,QAAQ,EACZ,EAAE,eAAe,CAAC,KAAK,CAAC,2CAmQxB"}
@@ -0,0 +1,13 @@
1
+ import { type IconButtonProps } from '@mui/material';
2
+ import type React from 'react';
3
+ export type BiampTableCellActionButtonProps<C extends React.ElementType = 'button'> = {
4
+ /** Tooltip label for the action button. */
5
+ label: string;
6
+ /** Icon to display inside the button. */
7
+ icon: React.ReactNode;
8
+ } & IconButtonProps<C, {
9
+ component?: C;
10
+ }>;
11
+ /** Icon button with a tooltip, designed for use inside table cell action columns. */
12
+ export declare function BiampTableCellActionButton<C extends React.ElementType = 'button'>({ label, icon, ...props }: BiampTableCellActionButtonProps<C>): import("react/jsx-runtime").JSX.Element;
13
+ //# sourceMappingURL=BiampTableCellActionButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTableCellActionButton.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTableCellActionButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,eAAe,EAAW,MAAM,eAAe,CAAC;AAC1E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,MAAM,+BAA+B,CACzC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,QAAQ,IACpC;IACF,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;CACvB,GAAG,eAAe,CAAC,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,CAAC,CAAA;CAAE,CAAC,CAAC;AAE1C,qFAAqF;AACrF,wBAAgB,0BAA0B,CACxC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,QAAQ,EACtC,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,+BAA+B,CAAC,CAAC,CAAC,2CAgB9D"}
@@ -0,0 +1,18 @@
1
+ import { type PopoverProps } from '@mui/material';
2
+ import type { Table, VisibilityState } from '@tanstack/react-table';
3
+ /**
4
+ * Returns the number of columns whose visibility differs from the default.
5
+ * Pass `defaultVisibility` if some columns start hidden; otherwise all
6
+ * columns are assumed visible by default.
7
+ */
8
+ export declare function getColumnVisibilityDirtyCount<TData>(table: Table<TData>, defaultVisibility?: VisibilityState): number;
9
+ export type BiampTableColumnVisibilityProps<TData> = Omit<PopoverProps, 'open'> & {
10
+ /** TanStack Table instance to connect to. */
11
+ table: Table<TData>;
12
+ /** Called after column visibility changes. */
13
+ onChange?: (visibility: VisibilityState) => void;
14
+ /** Label for the "show all" toggle. @default "Show all" */
15
+ showAllLabel?: string;
16
+ };
17
+ export declare function BiampTableColumnVisibility<TData>({ table, onChange, showAllLabel, anchorEl, anchorOrigin, transformOrigin, slotProps, ...popoverProps }: BiampTableColumnVisibilityProps<TData>): import("react/jsx-runtime").JSX.Element;
18
+ //# sourceMappingURL=BiampTableColumnVisibility.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTableColumnVisibility.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTableColumnVisibility.tsx"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,YAAY,EAIlB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGpE;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EACjD,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,EACnB,iBAAiB,GAAE,eAAoB,GACtC,MAAM,CASR;AAED,MAAM,MAAM,+BAA+B,CAAC,KAAK,IAAI,IAAI,CACvD,YAAY,EACZ,MAAM,CACP,GAAG;IACF,6CAA6C;IAC7C,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACpB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,KAAK,IAAI,CAAC;IACjD,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAcF,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,EAChD,KAAK,EACL,QAAQ,EACR,YAAyB,EACzB,QAAQ,EACR,YAA0D,EAC1D,eAA0D,EAC1D,SAAS,EACT,GAAG,YAAY,EAChB,EAAE,+BAA+B,CAAC,KAAK,CAAC,2CAgFxC"}
@@ -0,0 +1,9 @@
1
+ import { StackProps } from '@mui/material';
2
+ export type BiampTableContainerProps = {
3
+ /** Show a top border. @default true */
4
+ withBorderTop?: boolean;
5
+ /** Show a bottom border. @default false */
6
+ withBorderBottom?: boolean;
7
+ } & StackProps;
8
+ export declare function BiampTableContainer({ withBorderTop, withBorderBottom, children, ...props }: BiampTableContainerProps): import("react/jsx-runtime").JSX.Element;
9
+ //# sourceMappingURL=BiampTableContainer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTableContainer.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTableContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,UAAU,EAAE,MAAM,eAAe,CAAC;AAElD,MAAM,MAAM,wBAAwB,GAAG;IACrC,uCAAuC;IACvC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2CAA2C;IAC3C,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B,GAAG,UAAU,CAAC;AAEf,wBAAgB,mBAAmB,CAAC,EAClC,aAAoB,EACpB,gBAAwB,EACxB,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,wBAAwB,2CAuB1B"}
@@ -0,0 +1,4 @@
1
+ import { type BiampTableStatusMessageProps } from './BiampTableStatusMessage';
2
+ export type BiampTableEmptyStateProps = Partial<BiampTableStatusMessageProps>;
3
+ export declare function BiampTableEmptyState({ icon, title, ...rest }: BiampTableEmptyStateProps): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=BiampTableEmptyState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTableEmptyState.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTableEmptyState.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,2BAA2B,CAAC;AAEnC,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAE9E,wBAAgB,oBAAoB,CAAC,EACnC,IAAwB,EACxB,KAAyB,EACzB,GAAG,IAAI,EACR,EAAE,yBAAyB,2CAS3B"}
@@ -0,0 +1,4 @@
1
+ import { type BiampTableStatusMessageProps } from './BiampTableStatusMessage';
2
+ export type BiampTableErrorStateProps = Partial<BiampTableStatusMessageProps>;
3
+ export declare function BiampTableErrorState({ icon, title, ...rest }: BiampTableErrorStateProps): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=BiampTableErrorState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTableErrorState.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTableErrorState.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,2BAA2B,CAAC;AAEnC,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAE9E,wBAAgB,oBAAoB,CAAC,EACnC,IAAkC,EAClC,KAAwB,EACxB,GAAG,IAAI,EACR,EAAE,yBAAyB,2CAI3B"}
@@ -0,0 +1,14 @@
1
+ import { BoxProps } from '@mui/material';
2
+ import type { Table } from '@tanstack/react-table';
3
+ export type BiampTablePaginationProps<TData> = BoxProps & {
4
+ /** TanStack Table instance to connect to. */
5
+ table: Table<TData>;
6
+ /** Rows-per-page options. When omitted, the selector is hidden and defaults to 25. */
7
+ rowsPerPageOptions?: number[];
8
+ /** When true, keeps the previous row count visible instead of dropping to 0. */
9
+ loading?: boolean;
10
+ /** Hide pagination when all rows fit on one page. @default true */
11
+ autoHide?: boolean;
12
+ };
13
+ export declare function BiampTablePagination<TData>({ table, rowsPerPageOptions, loading, autoHide, ...boxProps }: BiampTablePaginationProps<TData>): import("react/jsx-runtime").JSX.Element | null;
14
+ //# sourceMappingURL=BiampTablePagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTablePagination.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTablePagination.tsx"],"names":[],"mappings":"AACA,OAAO,EAAO,QAAQ,EAAmB,MAAM,eAAe,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,MAAM,MAAM,yBAAyB,CAAC,KAAK,IAAI,QAAQ,GAAG;IACxD,6CAA6C;IAC7C,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACpB,sFAAsF;IACtF,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,gFAAgF;IAChF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,EAC1C,KAAK,EACL,kBAAkB,EAClB,OAAO,EACP,QAAe,EACf,GAAG,QAAQ,EACZ,EAAE,yBAAyB,CAAC,KAAK,CAAC,kDAgClC"}
@@ -0,0 +1,14 @@
1
+ import { type StackProps } from '@mui/material';
2
+ import { type JSX, type ReactNode } from 'react';
3
+ export type BiampTableStatusMessageProps = StackProps & {
4
+ /** Required icon element rendered at 56×56. */
5
+ icon: JSX.Element;
6
+ /** Required title text. */
7
+ title: string;
8
+ /** Optional description text. */
9
+ description?: string;
10
+ /** Optional extra content (e.g. retry buttons). */
11
+ children?: ReactNode;
12
+ };
13
+ export declare function BiampTableStatusMessage({ icon, title, description, children, ...stackProps }: BiampTableStatusMessageProps): import("react/jsx-runtime").JSX.Element;
14
+ //# sourceMappingURL=BiampTableStatusMessage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTableStatusMessage.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTableStatusMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,UAAU,EAAc,MAAM,eAAe,CAAC;AACnE,OAAO,EAAgB,KAAK,GAAG,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE/D,MAAM,MAAM,4BAA4B,GAAG,UAAU,GAAG;IACtD,+CAA+C;IAC/C,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC;IAClB,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,EACtC,IAAI,EACJ,KAAK,EACL,WAAW,EACX,QAAQ,EACR,GAAG,UAAU,EACd,EAAE,4BAA4B,2CAY9B"}
@@ -0,0 +1,4 @@
1
+ import { type BoxProps } from '@mui/material';
2
+ export type BiampTableToolbarProps = BoxProps;
3
+ export declare function BiampTableToolbar({ children, ...props }: BiampTableToolbarProps): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=BiampTableToolbar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTableToolbar.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTableToolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC;AAE9C,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,sBAAsB,2CAaxB"}
@@ -0,0 +1,12 @@
1
+ import { type BadgeProps, type IconButtonProps } from '@mui/material';
2
+ import type React from 'react';
3
+ export type BiampTableToolbarActionButtonProps = {
4
+ /** Accessible label for the icon button. */
5
+ label: string;
6
+ /** Icon to display inside the button. */
7
+ icon: React.ReactNode;
8
+ /** Optional badge content. Shown as a dot indicator when provided. */
9
+ badgeContent?: BadgeProps['badgeContent'];
10
+ } & Omit<IconButtonProps, 'children' | 'aria-label'>;
11
+ export declare function BiampTableToolbarActionButton({ label, icon, badgeContent, ...props }: BiampTableToolbarActionButtonProps): import("react/jsx-runtime").JSX.Element;
12
+ //# sourceMappingURL=BiampTableToolbarActionButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTableToolbarActionButton.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTableToolbarActionButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,UAAU,EAEf,KAAK,eAAe,EACrB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,MAAM,MAAM,kCAAkC,GAAG;IAC/C,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,sEAAsE;IACtE,YAAY,CAAC,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;CAC3C,GAAG,IAAI,CAAC,eAAe,EAAE,UAAU,GAAG,YAAY,CAAC,CAAC;AAErD,wBAAgB,6BAA6B,CAAC,EAC5C,KAAK,EACL,IAAI,EACJ,YAAY,EACZ,GAAG,KAAK,EACT,EAAE,kCAAkC,2CA+BpC"}
@@ -0,0 +1,4 @@
1
+ import { type BoxProps } from '@mui/material';
2
+ export type BiampTableToolbarActionsProps = BoxProps;
3
+ export declare function BiampTableToolbarActions({ children, ...props }: BiampTableToolbarActionsProps): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=BiampTableToolbarActions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTableToolbarActions.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTableToolbarActions.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,MAAM,6BAA6B,GAAG,QAAQ,CAAC;AAErD,wBAAgB,wBAAwB,CAAC,EACvC,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,6BAA6B,2CAM/B"}
@@ -0,0 +1,13 @@
1
+ import { type BiampTableToolbarActionButtonProps } from './BiampTableToolbarActionButton';
2
+ export type BiampTableToolbarExportProps = {
3
+ /** Called when the export button is clicked. */
4
+ onExport: () => void;
5
+ /** When true, shows a spinner instead of the icon and disables the button. */
6
+ loading?: boolean;
7
+ /** Icon element for the button. @default DownloadIcon */
8
+ icon?: React.ReactNode;
9
+ /** Accessible label for the button. @default "Export" */
10
+ label?: string;
11
+ } & Omit<BiampTableToolbarActionButtonProps, 'icon' | 'label' | 'onClick' | 'badgeContent'>;
12
+ export declare function BiampTableToolbarExport({ onExport, loading, icon, label, ...props }: BiampTableToolbarExportProps): import("react/jsx-runtime").JSX.Element;
13
+ //# sourceMappingURL=BiampTableToolbarExport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTableToolbarExport.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTableToolbarExport.tsx"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,kCAAkC,EACxC,MAAM,iCAAiC,CAAC;AAEzC,MAAM,MAAM,4BAA4B,GAAG;IACzC,gDAAgD;IAChD,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,8EAA8E;IAC9E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yDAAyD;IACzD,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,IAAI,CACN,kCAAkC,EAClC,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,cAAc,CAC9C,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,EACtC,QAAQ,EACR,OAAO,EACP,IAAoC,EACpC,KAAgB,EAChB,GAAG,KAAK,EACT,EAAE,4BAA4B,2CAU9B"}
@@ -0,0 +1,28 @@
1
+ import { type DrawerProps } from '@mui/material';
2
+ import { type ReactNode } from 'react';
3
+ export type BiampTableToolbarFiltersProps = {
4
+ /** Number of currently active filters. Shown as a badge on the trigger button. */
5
+ activeFilterCount: number;
6
+ /** Filter form content rendered inside the drawer body. */
7
+ children: ReactNode;
8
+ /** Called when the user clicks the reset / clear-all button. */
9
+ onReset: () => void;
10
+ /** Called when the drawer is closed (via close button, apply, or backdrop click). */
11
+ onApply?: () => void;
12
+ /** Icon for the toolbar trigger button. @default FilterIcon */
13
+ icon?: ReactNode;
14
+ /** Drawer heading. @default "Filters" */
15
+ title?: string;
16
+ /** Reset button label. @default "Clear filters" */
17
+ resetLabel?: string;
18
+ /** Apply button label. @default "Apply" */
19
+ applyLabel?: string;
20
+ /** Accessible label for the drawer close button. @default "Close" */
21
+ closeLabel?: string;
22
+ /** Accessible label for the toolbar trigger button. @default "Filters" */
23
+ buttonLabel?: string;
24
+ /** Additional props forwarded to the MUI Drawer. */
25
+ DrawerProps?: Partial<DrawerProps>;
26
+ };
27
+ export declare function BiampTableToolbarFilters({ activeFilterCount, children, onReset, onApply, icon, title, resetLabel, applyLabel, closeLabel, buttonLabel, DrawerProps: drawerProps, }: BiampTableToolbarFiltersProps): import("react/jsx-runtime").JSX.Element;
28
+ //# sourceMappingURL=BiampTableToolbarFilters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTableToolbarFilters.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTableToolbarFilters.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,WAAW,EAGjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,KAAK,SAAS,EAAmB,MAAM,OAAO,CAAC;AAGxD,MAAM,MAAM,6BAA6B,GAAG;IAC1C,kFAAkF;IAClF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,2DAA2D;IAC3D,QAAQ,EAAE,SAAS,CAAC;IACpB,gEAAgE;IAChE,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,qFAAqF;IACrF,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,+DAA+D;IAC/D,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oDAAoD;IACpD,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;CACpC,CAAC;AAEF,wBAAgB,wBAAwB,CAAC,EACvC,iBAAiB,EACjB,QAAQ,EACR,OAAO,EACP,OAAO,EACP,IAAkC,EAClC,KAAiB,EACjB,UAA4B,EAC5B,UAAoB,EACpB,UAAoB,EACpB,WAAuB,EACvB,WAAW,EAAE,WAAW,GACzB,EAAE,6BAA6B,2CAoG/B"}
@@ -0,0 +1,19 @@
1
+ import { type TextFieldProps } from '@mui/material';
2
+ export type BiampTableToolbarSearchProps = {
3
+ /** Called with the debounced search string whenever the value changes. */
4
+ onChange: (value: string) => void;
5
+ /** Initial value for the search field. When this prop changes the input resets. */
6
+ defaultValue?: string;
7
+ /** Debounce delay in milliseconds. @default BIAMP_TABLE_DEBOUNCE_DELAY (300) */
8
+ debounceDelay?: number;
9
+ /** Maximum character length for the input. @default 120 */
10
+ maxLength?: number;
11
+ /** Maximum width of the text field. @default 280 */
12
+ maxWidth?: number;
13
+ /** Placeholder text. @default "Search" */
14
+ placeholder?: string;
15
+ /** Accessible label for the clear button. @default "Clear search" */
16
+ clearLabel?: string;
17
+ } & Omit<TextFieldProps, 'onChange' | 'value' | 'defaultValue'>;
18
+ export declare function BiampTableToolbarSearch({ onChange, defaultValue, debounceDelay, maxLength, maxWidth, placeholder, clearLabel, sx, ...textFieldProps }: BiampTableToolbarSearchProps): import("react/jsx-runtime").JSX.Element;
19
+ //# sourceMappingURL=BiampTableToolbarSearch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BiampTableToolbarSearch.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTableToolbarSearch.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,eAAe,CAAC;AAQvB,MAAM,MAAM,4BAA4B,GAAG;IACzC,0EAA0E;IAC1E,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,mFAAmF;IACnF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gFAAgF;IAChF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,OAAO,GAAG,cAAc,CAAC,CAAC;AAShE,wBAAgB,uBAAuB,CAAC,EACtC,QAAQ,EACR,YAAiB,EACjB,aAA0C,EAC1C,SAAe,EACf,QAAc,EACd,WAAsB,EACtB,UAA2B,EAC3B,EAAE,EACF,GAAG,cAAc,EAClB,EAAE,4BAA4B,2CA6D9B"}
@@ -0,0 +1,16 @@
1
+ export { BiampTable, type BiampTableProps } from './BiampTable';
2
+ export { BiampTableContainer, type BiampTableContainerProps, } from './BiampTableContainer';
3
+ export { BiampTableCellActionButton, type BiampTableCellActionButtonProps, } from './BiampTableCellActionButton';
4
+ export { BiampTableColumnVisibility, type BiampTableColumnVisibilityProps, getColumnVisibilityDirtyCount, } from './BiampTableColumnVisibility';
5
+ export { BiampTableEmptyState, type BiampTableEmptyStateProps, } from './BiampTableEmptyState';
6
+ export { BiampTableErrorState, type BiampTableErrorStateProps, } from './BiampTableErrorState';
7
+ export { BiampTablePagination, type BiampTablePaginationProps, } from './BiampTablePagination';
8
+ export { BiampTableStatusMessage, type BiampTableStatusMessageProps, } from './BiampTableStatusMessage';
9
+ export { BiampTableToolbar, type BiampTableToolbarProps, } from './BiampTableToolbar';
10
+ export { BiampTableToolbarActionButton, type BiampTableToolbarActionButtonProps, } from './BiampTableToolbarActionButton';
11
+ export { BiampTableToolbarActions, type BiampTableToolbarActionsProps, } from './BiampTableToolbarActions';
12
+ export { BiampTableToolbarExport, type BiampTableToolbarExportProps, } from './BiampTableToolbarExport';
13
+ export { BiampTableToolbarFilters, type BiampTableToolbarFiltersProps, } from './BiampTableToolbarFilters';
14
+ export { BiampTableToolbarSearch, type BiampTableToolbarSearchProps, } from './BiampTableToolbarSearch';
15
+ export { useDebouncedCallback, BIAMP_TABLE_DEBOUNCE_DELAY, } from './useDebouncedCallback';
16
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/BiampTable/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EACL,mBAAmB,EACnB,KAAK,wBAAwB,GAC9B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,0BAA0B,EAC1B,KAAK,+BAA+B,GACrC,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,0BAA0B,EAC1B,KAAK,+BAA+B,EACpC,6BAA6B,GAC9B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,oBAAoB,EACpB,KAAK,yBAAyB,GAC/B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,oBAAoB,EACpB,KAAK,yBAAyB,GAC/B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,oBAAoB,EACpB,KAAK,yBAAyB,GAC/B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,uBAAuB,EACvB,KAAK,4BAA4B,GAClC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,iBAAiB,EACjB,KAAK,sBAAsB,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,6BAA6B,EAC7B,KAAK,kCAAkC,GACxC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,wBAAwB,EACxB,KAAK,6BAA6B,GACnC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,uBAAuB,EACvB,KAAK,4BAA4B,GAClC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,wBAAwB,EACxB,KAAK,6BAA6B,GACnC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,uBAAuB,EACvB,KAAK,4BAA4B,GAClC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { RowData } from '@tanstack/react-table';
2
+ declare module '@tanstack/react-table' {
3
+ interface ColumnMeta<TData extends RowData, TValue> {
4
+ /** CSS min-width applied to this column's header cell. */
5
+ minWidth?: number | string;
6
+ /** Make this column sticky to the left or right edge of the table. */
7
+ sticky?: 'left' | 'right';
8
+ }
9
+ }
10
+ //# sourceMappingURL=tanstack-meta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tanstack-meta.d.ts","sourceRoot":"","sources":["../../src/BiampTable/tanstack-meta.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,QAAQ,uBAAuB,CAAC;IACrC,UAAU,UAAU,CAAC,KAAK,SAAS,OAAO,EAAE,MAAM;QAChD,0DAA0D;QAC1D,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAC3B,sEAAsE;QACtE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;KAC3B;CACF"}
@@ -0,0 +1,9 @@
1
+ /** Default debounce delay (ms) shared across all BiampTable components. */
2
+ export declare const BIAMP_TABLE_DEBOUNCE_DELAY = 300;
3
+ /**
4
+ * Returns a debounced version of the given callback.
5
+ * The debounced function delays invocation until `delay` ms after
6
+ * the last call. The pending timer is cleared on unmount.
7
+ */
8
+ export declare function useDebouncedCallback<Args extends unknown[]>(callback: (...args: Args) => void, delay?: number): (...args: Args) => void;
9
+ //# sourceMappingURL=useDebouncedCallback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDebouncedCallback.d.ts","sourceRoot":"","sources":["../../src/BiampTable/useDebouncedCallback.ts"],"names":[],"mappings":"AAEA,2EAA2E;AAC3E,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,SAAS,OAAO,EAAE,EACzD,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,IAAI,EACjC,KAAK,GAAE,MAAmC,GACzC,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,IAAI,CAuBzB"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Delays showing a loading indicator so that fast loads don't cause a flicker.
3
+ *
4
+ * State machine:
5
+ * idle ──(loading=true)──▶ delaying ──(delay ms)──▶ loading ──(minDuration ms)──▶ ending
6
+ * ▲ │ │
7
+ * └──(loading=false)───────┘ └────────(loading=false)──────┘
8
+ *
9
+ * - Waits `delay` ms before showing the indicator.
10
+ * - Once shown, keeps it visible for at least `minDuration` ms.
11
+ * - If loading finishes before the delay, no indicator is shown at all.
12
+ */
13
+ export declare function useLoadingDelay(loading: boolean, { delay, minDuration }?: {
14
+ delay?: number | undefined;
15
+ minDuration?: number | undefined;
16
+ }): boolean;
17
+ //# sourceMappingURL=useLoadingDelay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useLoadingDelay.d.ts","sourceRoot":"","sources":["../../src/BiampTable/useLoadingDelay.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,EAChB,EAAE,KAAW,EAAE,WAAiB,EAAE;;;CAAK,GACtC,OAAO,CAoCT"}