@brainfish-ai/components 0.13.2 → 0.13.3
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/esm/chunks/{data-table.Dy9YQmzm.js → data-table.BnZmrDk6.js} +19 -3
- package/dist/esm/chunks/data-table.BnZmrDk6.js.map +1 -0
- package/dist/esm/components/data-table.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/stats.html +1 -1
- package/package.json +1 -1
- package/dist/esm/chunks/data-table.Dy9YQmzm.js.map +0 -1
|
@@ -59,13 +59,29 @@ function DataTable({
|
|
|
59
59
|
getExpandedRowModel: getExpandedRowModel(),
|
|
60
60
|
getSortedRowModel: getSortedRowModel()
|
|
61
61
|
});
|
|
62
|
-
return /* @__PURE__ */ React__default.createElement("div", { className: cn("overflow-hidden rounded-md border border-border bg-card", className), ...props }, /* @__PURE__ */ React__default.createElement(Table, { className: "overflow-hidden" }, /* @__PURE__ */ React__default.createElement(TableHeader, null, table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ React__default.createElement(TableRow, { key: headerGroup.id }, headerGroup.headers.map((header) => /* @__PURE__ */ React__default.createElement(
|
|
62
|
+
return /* @__PURE__ */ React__default.createElement("div", { className: cn("overflow-hidden rounded-md border border-border bg-card", className), ...props }, /* @__PURE__ */ React__default.createElement(Table, { className: "overflow-hidden" }, /* @__PURE__ */ React__default.createElement(TableHeader, null, table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ React__default.createElement(TableRow, { key: headerGroup.id }, headerGroup.headers.map((header) => /* @__PURE__ */ React__default.createElement(
|
|
63
|
+
TableHead,
|
|
64
|
+
{
|
|
65
|
+
key: header.id,
|
|
66
|
+
className: "space-x-4 first:pl-4 last:pr-4 py-4 text-current",
|
|
67
|
+
style: { width: header.getSize() }
|
|
68
|
+
},
|
|
69
|
+
header.isPlaceholder ? null : flexRender(header.column.columnDef.header, header.getContext())
|
|
70
|
+
))))), /* @__PURE__ */ React__default.createElement(TableBody, null, table.getRowModel().rows?.length ? table.getRowModel().rows.map((row) => /* @__PURE__ */ React__default.createElement(React__default.Fragment, { key: row.original.id || row.id }, /* @__PURE__ */ React__default.createElement(
|
|
63
71
|
TableRow,
|
|
64
72
|
{
|
|
65
73
|
"data-state": row.getIsSelected() && "selected",
|
|
66
74
|
className: cn(row.getIsExpanded() && "custom-dashed-border-b")
|
|
67
75
|
},
|
|
68
|
-
row.getVisibleCells().map((cell) => /* @__PURE__ */ React__default.createElement(
|
|
76
|
+
row.getVisibleCells().map((cell) => /* @__PURE__ */ React__default.createElement(
|
|
77
|
+
TableCell,
|
|
78
|
+
{
|
|
79
|
+
key: cell.id,
|
|
80
|
+
className: "first:pl-4 last:pr-4 py-4",
|
|
81
|
+
style: { width: cell.column.getSize() }
|
|
82
|
+
},
|
|
83
|
+
flexRender(cell.column.columnDef.cell, cell.getContext())
|
|
84
|
+
))
|
|
69
85
|
), /* @__PURE__ */ React__default.createElement(AnimatePresence, { initial: false }, row.getIsExpanded() && (() => {
|
|
70
86
|
const expandedColumn = columns.find((col) => col.expandedContent);
|
|
71
87
|
return expandedColumn?.expandedContent ? /* @__PURE__ */ React__default.createElement(TableRow, { key: `${row.id}-expanded` }, /* @__PURE__ */ React__default.createElement(
|
|
@@ -80,4 +96,4 @@ function DataTable({
|
|
|
80
96
|
}
|
|
81
97
|
|
|
82
98
|
export { DataTable as D };
|
|
83
|
-
//# sourceMappingURL=data-table.
|
|
99
|
+
//# sourceMappingURL=data-table.BnZmrDk6.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-table.BnZmrDk6.js","sources":["../../../src/components/data-table/data-table.tsx"],"sourcesContent":["import React from 'react';\nimport {\n ColumnDef,\n flexRender,\n getCoreRowModel,\n useReactTable,\n ExpandedState,\n SortingState,\n getPaginationRowModel,\n getFilteredRowModel,\n getExpandedRowModel,\n getSortedRowModel,\n Row,\n} from '@tanstack/react-table';\nimport { motion, AnimatePresence } from 'framer-motion';\n\nimport { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from '../ui/table';\n\nimport { cn } from '@/lib/utils';\n\n// Framer Motion Accordion Variants for bouncy accordion effect\nconst accordionVariants = {\n initial: {\n height: 0,\n },\n animate: {\n height: 'auto',\n transition: {\n height: {\n type: 'spring',\n stiffness: 450, // increase to make it more stiff (less bouncy), therefore increasing the speed of the animation\n damping: 20, // increase to make it more dampened and slow\n },\n },\n },\n exit: {\n height: 0,\n transition: {\n height: {\n duration: 0.1,\n ease: 'linear',\n },\n },\n },\n};\n\nexport type ExtendedColumnDef<TData, TValue = unknown> = ColumnDef<TData, TValue> & {\n expandedContent?: (row: Row<TData>) => React.ReactNode;\n};\n\nexport interface DataTableProps<TData, TValue> extends React.HTMLAttributes<HTMLDivElement> {\n columns: ExtendedColumnDef<TData, TValue>[];\n data: TData[];\n getRowCanExpand?: (row: Row<TData>) => boolean;\n className?: string;\n expandeRowClassName?: string;\n}\n\nexport function DataTable<TData extends Record<string, any> & { id?: string | number }, TValue>({\n columns,\n data,\n getRowCanExpand = () => true,\n className,\n expandeRowClassName,\n ...props\n}: DataTableProps<TData, TValue>) {\n const [expanded, setExpanded] = React.useState<ExpandedState>({});\n const [sorting, setSorting] = React.useState<SortingState>([]);\n\n // Reset expanded state when data changes. Collapse all rows when data changes.\n React.useEffect(() => {\n setExpanded({});\n }, [data]);\n\n const table = useReactTable({\n data,\n columns,\n getCoreRowModel: getCoreRowModel(),\n state: {\n expanded,\n sorting,\n },\n onExpandedChange: setExpanded,\n onSortingChange: setSorting,\n getRowCanExpand: columns.some((col) => col.expandedContent) ? getRowCanExpand : undefined,\n getPaginationRowModel: getPaginationRowModel(),\n getFilteredRowModel: getFilteredRowModel(),\n getExpandedRowModel: getExpandedRowModel(),\n getSortedRowModel: getSortedRowModel(),\n });\n\n return (\n <div className={cn('overflow-hidden rounded-md border border-border bg-card', className)} {...props}>\n <Table className=\"overflow-hidden\">\n <TableHeader>\n {table.getHeaderGroups().map((headerGroup) => (\n <TableRow key={headerGroup.id}>\n {headerGroup.headers.map((header) => (\n <TableHead\n key={header.id}\n className=\"space-x-4 first:pl-4 last:pr-4 py-4 text-current\"\n style={{ width: header.getSize() }}\n >\n {header.isPlaceholder ? null : flexRender(header.column.columnDef.header, header.getContext())}\n </TableHead>\n ))}\n </TableRow>\n ))}\n </TableHeader>\n <TableBody>\n {table.getRowModel().rows?.length ? (\n table.getRowModel().rows.map((row) => (\n <React.Fragment key={row.original.id || row.id}>\n <TableRow\n data-state={row.getIsSelected() && 'selected'}\n className={cn(row.getIsExpanded() && 'custom-dashed-border-b')}\n >\n {row.getVisibleCells().map((cell) => (\n <TableCell\n key={cell.id}\n className=\"first:pl-4 last:pr-4 py-4\"\n style={{ width: cell.column.getSize() }}\n >\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </TableCell>\n ))}\n </TableRow>\n <AnimatePresence initial={false}>\n {row.getIsExpanded() &&\n (() => {\n // Find the first column with expandedContent\n const expandedColumn = columns.find((col) => col.expandedContent);\n\n return expandedColumn?.expandedContent ? (\n <TableRow key={`${row.id}-expanded`}>\n <TableCell\n colSpan={row.getVisibleCells().length}\n className={cn('first:pl-4 last:pr-4 py-4 overflow-hidden', expandeRowClassName)}\n >\n <motion.div variants={accordionVariants} initial=\"initial\" animate=\"animate\" exit=\"exit\">\n {expandedColumn.expandedContent(row)}\n </motion.div>\n </TableCell>\n </TableRow>\n ) : null;\n })()}\n </AnimatePresence>\n </React.Fragment>\n ))\n ) : (\n <TableRow>\n <TableCell colSpan={columns.length} className=\"h-24 text-center\">\n No results.\n </TableCell>\n </TableRow>\n )}\n </TableBody>\n </Table>\n </div>\n );\n}\n"],"names":["React"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { D as DataTable } from '../chunks/data-table.
|
|
1
|
+
export { D as DataTable } from '../chunks/data-table.BnZmrDk6.js';
|
|
2
2
|
//# sourceMappingURL=data-table.js.map
|
package/dist/esm/index.js
CHANGED
|
@@ -23,7 +23,7 @@ export { S as SimpleSelect } from './chunks/simpleSelect.Bzw8xrbM.js';
|
|
|
23
23
|
export { D as DatePicker } from './chunks/date-picker.WGre3lsB.js';
|
|
24
24
|
export { C as Combobox } from './chunks/combobox.D30-HM1I.js';
|
|
25
25
|
export { F as Filter, a as Filters, O as Operator } from './chunks/filters.Dx9TXuJ4.js';
|
|
26
|
-
export { D as DataTable } from './chunks/data-table.
|
|
26
|
+
export { D as DataTable } from './chunks/data-table.BnZmrDk6.js';
|
|
27
27
|
import React__default, { useState, useEffect, useCallback } from 'react';
|
|
28
28
|
import { useDropzone } from 'react-dropzone';
|
|
29
29
|
import { CloudArrowUp, CaretDown, CaretUp, FileVideo, Circle, CheckCircle } from '@phosphor-icons/react';
|