lizaui 9.0.60 → 9.0.61

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../node_modules/.pnpm/lucide-react@0.554.0_react@19.2.0/node_modules/lucide-react/dist/esm/icons/chevrons-up-down.js","../../src/components/table/header/table-header.tsx","../../src/components/table/context/table.context.tsx","../../src/components/table/hook/use-table-context.tsx","../../src/components/table/hook/use-column-resize.tsx","../../src/components/table/header/resize-handle.tsx","../../src/components/table/header/table-header-column.tsx","../../src/components/table/body/table-empty-state.tsx","../../src/components/table/body/table-body.tsx","../../src/components/table/body/table-body-row.tsx","../../src/components/table/body/table-body-column.tsx","../../src/components/table/header/table-header-row.tsx","../../src/components/table/search/table-search-column.tsx","../../src/components/table/search/table-search-row.tsx","../../src/components/table/table.tsx","../../src/components/table/hook/use-table.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.554.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m7 15 5 5 5-5\", key: \"1hf1tw\" }],\n [\"path\", { d: \"m7 9 5-5 5 5\", key: \"sgt6xg\" }]\n];\nconst ChevronsUpDown = createLucideIcon(\"chevrons-up-down\", __iconNode);\n\nexport { __iconNode, ChevronsUpDown as default };\n//# sourceMappingURL=chevrons-up-down.js.map\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableHeaderProps } from \"../interface/table.interface\";\n\nexport const TableHeader: FC<TableHeaderProps> = React.memo(({ children, className, ...props }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"min-h-[100px] sticky top-0 z-10\", className), [className]);\n\n\tconst clonedChildren = useMemo(\n\t\t() => React.Children.map(children, (child) => (isValidElement(child) ? React.cloneElement(child as ReactElement, { ...props }) : child)),\n\t\t[children, props],\n\t);\n\n\treturn <thead className={mergedClass}>{clonedChildren}</thead>;\n});\nTableHeader.displayName = \"TableHeader\";\n","import { createContext } from \"react\";\n\nimport { type TableContextProps } from \"../interface/table.interface\";\n\nconst initialValues: TableContextProps = {\n\tcolor: \"primary\",\n\tdisabledKeys: [],\n\tisChecks: true,\n\tselectKeys: [],\n\tisActions: true,\n\twidthAction: 100,\n\ttotalColumn: 0,\n\tsortDescriptors: [],\n\tonSortChange: () => {},\n\tcolumnWidths: {},\n\tonColumnResize: () => {},\n\tonColumnResizeEnd: () => {},\n};\n\nexport const TableContext = createContext<TableContextProps>(initialValues);\n","import { useContext } from \"react\";\r\nimport { TableContext } from \"../context/table.context\";\r\n\r\nexport const useTableContext = () => {\r\n\treturn useContext(TableContext);\r\n};\r\n","import { useCallback, useRef, useState, useEffect } from \"react\";\n\ninterface UseColumnResizeProps {\n\tcolumnId: string;\n\tinitialWidth?: number;\n\tminWidth?: number;\n\tmaxWidth?: number;\n\tonResize?: (columnId: string, width: number) => void;\n\tonResizeEnd?: (columnId: string, width: number) => void;\n}\n\nexport function useColumnResize({\n\tcolumnId,\n\tinitialWidth = 150,\n\tminWidth = 80,\n\tmaxWidth = 800,\n\tonResize,\n\tonResizeEnd,\n}: UseColumnResizeProps) {\n\tconst [width, setWidth] = useState(initialWidth);\n\tconst [isResizing, setIsResizing] = useState(false);\n\tconst startXRef = useRef(0);\n\tconst startWidthRef = useRef(0);\n\tconst columnRef = useRef<HTMLTableCellElement>(null);\n\n\tuseEffect(() => {\n\t\tif (initialWidth !== width) {\n\t\t\tsetWidth(initialWidth);\n\t\t}\n\t}, [initialWidth]);\n\n\tconst handlePointerDown = useCallback(\n\t\t(e: React.PointerEvent<HTMLDivElement>) => {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\n\t\t\tconst target = e.currentTarget;\n\t\t\ttarget.setPointerCapture(e.pointerId);\n\n\t\t\tstartXRef.current = e.clientX;\n\t\t\tstartWidthRef.current = width;\n\t\t\tsetIsResizing(true);\n\n\t\t\t// Prevent text selection during resize\n\t\t\tdocument.body.style.userSelect = \"none\";\n\t\t\tdocument.body.style.cursor = \"col-resize\";\n\t\t},\n\t\t[width],\n\t);\n\n\tconst handlePointerMove = useCallback(\n\t\t(e: PointerEvent) => {\n\t\t\tif (!isResizing) return;\n\n\t\t\tconst delta = e.clientX - startXRef.current;\n\t\t\tconst newWidth = Math.max(minWidth, Math.min(maxWidth, startWidthRef.current + delta));\n\n\t\t\tsetWidth(newWidth);\n\t\t\tonResize?.(columnId, newWidth);\n\t\t},\n\t\t[isResizing, minWidth, maxWidth, columnId, onResize],\n\t);\n\n\tconst handlePointerUp = useCallback(\n\t\t(e: PointerEvent) => {\n\t\t\tif (!isResizing) return;\n\n\t\t\tsetIsResizing(false);\n\t\t\tdocument.body.style.userSelect = \"\";\n\t\t\tdocument.body.style.cursor = \"\";\n\n\t\t\tconst delta = e.clientX - startXRef.current;\n\t\t\tconst finalWidth = Math.max(minWidth, Math.min(maxWidth, startWidthRef.current + delta));\n\n\t\t\tonResizeEnd?.(columnId, finalWidth);\n\t\t},\n\t\t[isResizing, minWidth, maxWidth, columnId, onResizeEnd],\n\t);\n\n\tuseEffect(() => {\n\t\tif (isResizing) {\n\t\t\tdocument.addEventListener(\"pointermove\", handlePointerMove);\n\t\t\tdocument.addEventListener(\"pointerup\", handlePointerUp);\n\n\t\t\treturn () => {\n\t\t\t\tdocument.removeEventListener(\"pointermove\", handlePointerMove);\n\t\t\t\tdocument.removeEventListener(\"pointerup\", handlePointerUp);\n\t\t\t};\n\t\t}\n\t}, [isResizing, handlePointerMove, handlePointerUp]);\n\n\treturn {\n\t\twidth,\n\t\tisResizing,\n\t\tcolumnRef,\n\t\thandlePointerDown,\n\t\tsetWidth,\n\t};\n}\n\nexport type UseColumnResizeReturn = ReturnType<typeof useColumnResize>;\n","import { memo } from \"react\";\nimport clsx from \"clsx\";\n\ninterface ResizeHandleProps {\n\tonPointerDown: (e: React.PointerEvent<HTMLDivElement>) => void;\n\tisResizing: boolean;\n\tclassName?: string;\n}\n\nexport const ResizeHandle = memo(({ onPointerDown, isResizing, className }: ResizeHandleProps) => {\n\treturn (\n\t\t<div\n\t\t\tclassName={clsx(\n\t\t\t\t\"absolute top-0 right-0 h-full w-1 cursor-col-resize select-none touch-none group/resize z-10\",\n\t\t\t\t\"hover:bg-default/50 active:bg-default transition-colors\",\n\t\t\t\tisResizing && \"bg-default\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tonPointerDown={onPointerDown}\n\t\t\trole=\"separator\"\n\t\t\taria-orientation=\"vertical\"\n\t\t\taria-label=\"Resize column\"\n\t\t>\n\t\t\t{/* Extended hit area for better UX */}\n\t\t\t<div className=\"absolute inset-y-0 -left-2 -right-2\" />\n\n\t\t\t{/* Visual indicator on hover */}\n\t\t\t<div\n\t\t\t\tclassName={clsx(\n\t\t\t\t\t\"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2\",\n\t\t\t\t\t\"w-1 h-8 rounded-full bg-default opacity-0 group-hover/resize:opacity-100 transition-opacity\",\n\t\t\t\t\tisResizing && \"opacity-100\",\n\t\t\t\t)}\n\t\t\t/>\n\t\t</div>\n\t);\n});\n\nResizeHandle.displayName = \"ResizeHandle\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { type TableHeaderColumnProps } from \"../interface/table.interface\";\nimport { Tooltip } from \"@/components/tooltip\";\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { ChevronsUpDown, ChevronUp, ChevronDown } from \"lucide-react\";\nimport { useColumnResize } from \"../hook/use-column-resize\";\nimport { ResizeHandle } from \"./resize-handle\";\n\nexport const TableHeaderColumn: FC<TableHeaderColumnProps> = React.memo(\n\t({\n\t\tchildren,\n\t\tclassName,\n\t\tstyle = {},\n\t\ticon = null,\n\t\ttext = \"\",\n\t\tsize,\n\t\theader,\n\t\tcolspan = undefined,\n\t\tresizable: resizableProp,\n\t\tminWidth: minWidthProp,\n\t\tmaxWidth: maxWidthProp,\n\t\tonResize: onResizeProp,\n\t\tonResizeEnd: onResizeEndProp,\n\t}) => {\n\t\tconst { sortDescriptors, onSortChange, columnWidths, onColumnResize, onColumnResizeEnd } = useTableContext();\n\n\t\t// Determine if column is resizable\n\t\tconst isResizable = resizableProp ?? header?.resizable ?? false;\n\t\tconst columnId = header?.id || \"\";\n\t\tconst initialWidth = columnWidths?.[columnId] || size || header?.size || 150;\n\t\tconst minWidth = minWidthProp ?? header?.minWidth ?? 80;\n\t\tconst maxWidth = maxWidthProp ?? header?.maxWidth ?? 800;\n\n\t\t// Use resize hook if column is resizable\n\t\tconst {\n\t\t\twidth: resizedWidth,\n\t\t\tisResizing,\n\t\t\tcolumnRef,\n\t\t\thandlePointerDown,\n\t\t} = useColumnResize({\n\t\t\tcolumnId,\n\t\t\tinitialWidth,\n\t\t\tminWidth,\n\t\t\tmaxWidth,\n\t\t\tonResize: (id, width) => {\n\t\t\t\tonResizeProp?.(width);\n\t\t\t\tonColumnResize?.(id, width);\n\t\t\t},\n\t\t\tonResizeEnd: (id, width) => {\n\t\t\t\tonResizeEndProp?.(width);\n\t\t\t\tonColumnResizeEnd?.(id, width);\n\t\t\t},\n\t\t});\n\n\t\tconst mergedClass = useMemo(() => twMerge(\"px-2 border-b border-divider relative\", className), [className]);\n\n\t\tconst effectiveWidth = isResizable ? resizedWidth : (size || header?.size);\n\n\t\tconst mergedStyle = useMemo(\n\t\t\t() => ({\n\t\t\t\t...style,\n\t\t\t\twidth: effectiveWidth ? `${effectiveWidth}px` : style.width,\n\t\t\t\tminWidth: effectiveWidth ? `${effectiveWidth}px` : style.minWidth,\n\t\t\t}),\n\t\t\t[style, effectiveWidth],\n\t\t);\n\n\t\tconst isChildrenEmpty = !children || (typeof children === \"string\" && children.trim() === \"\");\n\t\tconst isSortable = header?.sort;\n\n\t\tconst currentSort = useMemo(() =>\n\t\t\tsortDescriptors?.find((d) => d.column === header?.id),\n\t\t\t[sortDescriptors, header?.id]\n\t\t);\n\n\t\tconst sortOrderIndex = useMemo(() => {\n\t\t\tif (!sortDescriptors || sortDescriptors.length <= 1 || !currentSort) return null;\n\t\t\treturn sortDescriptors.findIndex((d) => d.column === header?.id) + 1;\n\t\t}, [sortDescriptors, currentSort, header?.id]);\n\n\t\tconst handleSort = () => {\n\t\t\tif (isSortable && onSortChange && header?.id) {\n\t\t\t\tonSortChange(header.id);\n\t\t\t}\n\t\t};\n\n\t\tconst renderSortIcon = () => {\n\t\t\tif (!isSortable) return icon;\n\n\t\t\tif (currentSort) {\n\t\t\t\treturn (\n\t\t\t\t\t<div className=\"flex items-center gap-0.5\">\n\t\t\t\t\t\t{sortOrderIndex && (\n\t\t\t\t\t\t\t<span className=\"text-[10px] font-medium text-foreground-500 dark:text-foreground-500\">\n\t\t\t\t\t\t\t\t{sortOrderIndex}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{currentSort.direction === \"asc\" ? (\n\t\t\t\t\t\t\t<ChevronUp className=\"h-4 w-4 text-foreground-500 dark:text-foreground-500\" />\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<ChevronDown className=\"h-4 w-4 text-foreground-500 dark:text-foreground-500\" />\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn <ChevronsUpDown className=\"h-4 w-4 text-default-300\" />;\n\t\t};\n\n\t\treturn (\n\t\t\t<th\n\t\t\t\tref={isResizable ? columnRef : undefined}\n\t\t\t\tclassName={twMerge(\n\t\t\t\t\tmergedClass,\n\t\t\t\t\tisSortable ? \"cursor-pointer transition-colors\" : \"\",\n\t\t\t\t\tisResizing && \"select-none\"\n\t\t\t\t)}\n\t\t\t\tstyle={mergedStyle}\n\t\t\t\tcolSpan={colspan}\n\t\t\t\tonClick={handleSort}\n\t\t\t>\n\t\t\t\t{isChildrenEmpty ? (\n\t\t\t\t\t<div className=\"flex justify-between items-center gap-x-2 font-medium\">\n\t\t\t\t\t\t<div className=\"flex items-center gap-x-2\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-xs text-foreground-500 dark:text-foreground-500 text-left\">{text}</p>\n\t\t\t\t\t\t\t{header?.information && (\n\t\t\t\t\t\t\t\t<Tooltip content={header?.information || \"\"}>\n\t\t\t\t\t\t\t\t\t<svg\n\t\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"text-default-300 cursor-pointer dark:text-foreground-500\"\n\t\t\t\t\t\t\t\t\t\twidth={16}\n\t\t\t\t\t\t\t\t\t\theight={16}\n\t\t\t\t\t\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<g fill=\"none\">\n\t\t\t\t\t\t\t\t\t\t\t<circle cx={12} cy={12} r={10} stroke=\"currentColor\" strokeWidth=\"1.5\" />\n\t\t\t\t\t\t\t\t\t\t\t<path stroke=\"currentColor\" strokeLinecap=\"round\" strokeWidth=\"1.5\" d=\"M12 17v-6\" />\n\t\t\t\t\t\t\t\t\t\t\t<circle cx={1} cy={1} r={1} fill=\"currentColor\" transform=\"matrix(1 0 0 -1 11 9)\" />\n\t\t\t\t\t\t\t\t\t\t</g>\n\t\t\t\t\t\t\t\t\t</svg>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex-1 flex justify-end\">{renderSortIcon()}</div>\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\tchildren\n\t\t\t\t)}\n\n\t\t\t\t{/* Resize handle */}\n\t\t\t\t{isResizable && (\n\t\t\t\t\t<ResizeHandle\n\t\t\t\t\t\tonPointerDown={handlePointerDown}\n\t\t\t\t\t\tisResizing={isResizing}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</th>\n\t\t);\n\t},\n);\nTableHeaderColumn.displayName = \"TableHeaderColumn\";\n","import { memo } from \"react\";\n\ninterface TableEmptyStateProps {\n text?: string;\n}\n\nexport const TableEmptyState = memo(({ text = \"No data available\" }: TableEmptyStateProps) => {\n return (\n <div className=\"w-full flex flex-col items-center justify-center\">\n <div className=\"flex flex-col items-center justify-center gap-3 px-5 py-7 max-w-sm\">\n <svg viewBox=\"0 0 1567 1024\" className=\"w-16 h-16 text-default-300 dark:text-default-400\">\n <path\n d=\"M156.662 699.758h21.097a10.444 10.444 0 0 1 10.236 10.444c0 5.765-4.491 10.444-10.236 10.444h-21.097v21.098a10.444 10.444 0 0 1-10.444 10.235 10.277 10.277 0 0 1-10.444-10.235v-21.098h-21.097a10.444 10.444 0 0 1-10.235-10.444c0-5.765 4.49-10.444 10.235-10.444h21.097v-21.097a10.444 10.444 0 0 1 10.444-10.235c5.765 0 10.444 4.49 10.444 10.235zm1378.628-83.553v-21.097a10.277 10.277 0 0 0-10.444-10.235 10.444 10.444 0 0 0-10.444 10.235v21.097h-21.097a10.277 10.277 0 0 0-10.235 10.444c0 5.598 4.595 10.444 10.235 10.444h21.097v21.097c0 5.745 4.679 10.236 10.444 10.236a10.444 10.444 0 0 0 10.444-10.236v-21.097h21.098c5.744 0 10.235-4.679 10.235-10.444a10.444 10.444 0 0 0-10.235-10.444zM776.46 960.862H250.597a20.805 20.805 0 0 1-20.826-20.888c0-11.53 9.463-20.889 20.826-20.889h94.728a83 83 0 0 1-11.112-41.672v-605.97a83.49 83.49 0 0 1 83.637-83.448h62.581v-20.993a83.49 83.49 0 0 1 83.637-83.449h501.152a83.45 83.45 0 0 1 83.637 83.449v605.97c0 15.185-4.053 29.41-11.134 41.672h115.554c11.552 0 20.91 9.274 20.91 20.888 0 11.53-9.296 20.888-20.889 20.888h-250.66v20.993c0 15.186-4.052 29.41-11.133 41.672h11.196c11.489 0 20.826 9.275 20.826 20.889 0 11.53-9.463 20.888-20.826 20.888H892.808a41.66 41.66 0 0 1-6.413 50.863 41.67 41.67 0 0 1-59.072 0zm76.368-41.777h66.424c22.978 0 41.61-18.59 41.61-41.88V270.461c0-22.56-18.048-40.69-40.314-40.69H416.304c-22.267 0-40.315 18.214-40.315 40.69v606.742c0 23.124 18.8 41.881 41.59 41.881h317.084l-10.737-10.757a41.69 41.69 0 0 1-10.862-40.377l-19.719-19.74a146.26 146.26 0 0 1-190.981-220.517 146.218 146.218 0 0 1 220.518 190.981l19.739 19.74a41.63 41.63 0 0 1 40.377 10.84zm149.81-104.441h62.853a41.797 41.797 0 0 0 41.59-41.777v-605.76c0-23.145-18.633-41.777-41.59-41.777H563.775a41.797 41.797 0 0 0-41.567 41.776v20.889h396.794a83.45 83.45 0 0 1 83.637 83.449zM266.327 46.999h31.123c8.774 0 15.876 6.955 15.876 15.666 0 8.648-7.102 15.666-15.876 15.666h-31.123v31.124c0 8.773-6.956 15.875-15.666 15.875a15.77 15.77 0 0 1-15.667-15.875V78.33H203.87a15.73 15.73 0 0 1-15.875-15.666c0-8.648 7.102-15.666 15.875-15.666h31.123V15.875C234.993 7.102 241.95 0 250.66 0c8.647 0 15.666 7.102 15.666 15.875zM20.888 939.974c0-11.53 9.463-20.889 20.826-20.889h125.455c11.489 0 20.826 9.275 20.826 20.889 0 11.53-9.463 20.888-20.826 20.888H41.714a20.805 20.805 0 0 1-20.826-20.888m658.734-135.022A104.442 104.442 0 1 0 531.9 657.23a104.442 104.442 0 0 0 147.722 147.722m-220.08-491.627a20.89 20.89 0 0 1 20.868-20.889h229.792a20.888 20.888 0 1 1 0 41.777H480.431a20.826 20.826 0 0 1-20.888-20.888m0 104.441c0-11.53 9.296-20.888 20.743-20.888H814.79c11.447 0 20.742 9.274 20.742 20.888 0 11.53-9.295 20.888-20.742 20.888H480.285a20.763 20.763 0 0 1-20.742-20.888m0 104.442c0-11.53 9.317-20.889 20.847-20.889h146.302c11.51 0 20.846 9.275 20.846 20.889 0 11.53-9.316 20.888-20.846 20.888H480.389a20.805 20.805 0 0 1-20.846-20.888M62.666 396.878a62.665 62.665 0 1 1 0-125.33 62.665 62.665 0 0 1 0 125.33m0-31.333a31.332 31.332 0 1 0 0-62.665 31.332 31.332 0 0 0 0 62.665m1295.075-93.997a62.665 62.665 0 1 1 0-125.33 62.665 62.665 0 0 1 0 125.33m0-31.333a31.332 31.332 0 1 0 0-62.664 31.332 31.332 0 0 0 0 62.664\"\n fill=\"currentColor\"\n />\n </svg>\n <p className=\"text-sm font-medium text-default-700 dark:text-default-200\">{text}</p>\n </div>\n </div>\n );\n});\n\nTableEmptyState.displayName = \"TableEmptyState\";\n","import React, { type ReactElement, isValidElement, memo, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableBodyProps, type TableShareProps } from \"../interface/table.interface\";\nimport LoaderCircle from \"@/components/loader/loader-circle\";\nimport { TableEmptyState } from \"./table-empty-state\";\n\nfunction TableBodyComponent<TData extends object>({\n\tchildren,\n\tclassName,\n\tdata = [],\n\temptyText = \"No data available\",\n\tisLoading = false,\n\tloadingLabel = \"Loading ...\",\n\trowKey,\n\t...props\n}: TableBodyProps<TData>) {\n\tconst { totalColumn, isActions, isChecks } = useTableContext();\n\tconst total = Number(totalColumn) + Number(isActions) + Number(isChecks);\n\n\t// Filter out dataHeader if it was passed via cloneElement to avoid DOM warnings\n\tconst domProps = { ...(props as any) };\n\tdelete domProps.dataHeader;\n\n\tconst mergedClass = useMemo(() => twMerge(className), [className]);\n\n\tconst renderedRows = useMemo(() => {\n\t\tif (!data || data.length === 0) return null;\n\n\t\tif (typeof children === \"function\") {\n\t\t\treturn data.map((el, index) => {\n\t\t\t\tconst child = children({ item: el, index });\n\t\t\t\tconst keyValue = rowKey ? rowKey(el, index) : index;\n\n\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\tkey: keyValue,\n\t\t\t\t\t })\n\t\t\t\t\t: null;\n\t\t\t});\n\t\t} else {\n\t\t\treturn React.Children.map(children, (child, index) =>\n\t\t\t\tisValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\tkey: rowKey ? rowKey(data[index] as TData, index) : index,\n\t\t\t\t\t })\n\t\t\t\t\t: child,\n\t\t\t);\n\t\t}\n\t}, [children, data, rowKey]);\n\n\tlet fallbackContent: React.ReactNode = null;\n\n\tif (isLoading) {\n\t\tfallbackContent = (\n\t\t\t<tr className=\"border-b border-divider\">\n\t\t\t\t<td className=\"px-2 py-2.5 w-full\" colSpan={total}>\n\t\t\t\t\t<div className=\"flex justify-center relative\">\n\t\t\t\t\t\t<div className=\"flex flex-col justify-center items-center gap-2\">\n\t\t\t\t\t\t\t<div className=\"mt-3.5\">\n\t\t\t\t\t\t\t\t<LoaderCircle size={45} />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-sm text-default-800\">{loadingLabel}</p>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t);\n\t} else if (data.length === 0) {\n\t\tfallbackContent = (\n\t\t\t<tr className=\"border-b border-divider\">\n\t\t\t\t<td className=\"px-2 py-10 w-full\" colSpan={total}>\n\t\t\t\t\t<TableEmptyState text={emptyText} />\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t);\n\t}\n\n\treturn (\n\t\t<tbody className={mergedClass} {...domProps}>\n\t\t\t{renderedRows}\n\t\t\t{fallbackContent}\n\t\t</tbody>\n\t);\n}\n\nexport const TableBody = memo(<TData extends object>(props: TableBodyProps<TData>) => {\n\treturn <TableBodyComponent {...props} />;\n}) as <TData extends object>(props: TableBodyProps<TData>) => React.JSX.Element;\n","import { twMerge } from \"tailwind-merge\";\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { forwardRef, memo, useMemo, useId } from \"react\";\nimport clsx from \"clsx\";\nimport { type TableBodyRowProps } from \"../interface/table.interface\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\n\nexport const TableBodyRow = memo(\n\tforwardRef<HTMLTableRowElement, TableBodyRowProps>(({ children, className, keyCurrent, onChangeCheck, disabled, style, isCheck = true,}, ref) => {\n\t\tconst uui = useId();\n\t\tconst { isChecks, selectKeys, disabledKeys, color } = useTableContext();\n\n\t\tconst check = useMemo(() => selectKeys?.some((el) => el.id === keyCurrent.id), [selectKeys, keyCurrent.id]);\n\n\t\tconst disabledCheck = useMemo(() => disabledKeys?.some((el) => el === keyCurrent.id), [disabledKeys, keyCurrent.id]);\n\n\t\tconst handleChange = (value: boolean) => {\n\t\t\tif (disabledCheck || disabled) return;\n\t\t\tonChangeCheck?.(keyCurrent, value);\n\t\t};\n\n\t\tconst rowClass = useMemo(\n\t\t\t() =>\n\t\t\t\ttwMerge(\n\t\t\t\t\t\"relative border-b border-divider min-h-[40px] h-[40px] transition-colors duration-200 ease-in-out\",\n\t\t\t\t\tclsx({\n\t\t\t\t\t\t\"bg-content1 dark:hover:bg-default-100 hover:bg-default-100\": !check,\n\t\t\t\t\t\t\"bg-default-100 dark:bg-default-200\": check,\n\t\t\t\t\t}),\n\t\t\t\t\tclassName,\n\t\t\t\t),\n\t\t\t[check, className],\n\t\t);\n\n\t\treturn (\n\t\t\t<tr className={rowClass} ref={ref} style={style}>\n\t\t\t\t{isChecks && (\n\t\t\t\t\t<td className=\"px-2 py-1\">\n\t\t\t\t\t\t{isCheck && (\n\t\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\t\tid={uui}\n\t\t\t\t\t\t\t\tonChange={(e) => handleChange(e.target.checked)}\n\t\t\t\t\t\t\t\tchecked={check || false}\n\t\t\t\t\t\t\t\tclassName=\"flex justify-center\"\n\t\t\t\t\t\t\t\tdisabled={disabledCheck || disabled}\n\t\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</td>\n\t\t\t\t)}\n\t\t\t\t{children}\n\t\t\t</tr>\n\t\t);\n\t}),\n);\n\nTableBodyRow.displayName = \"TableBodyRow\";\n","import { forwardRef, memo, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableBodyColumnProps } from \"../interface/table.interface\";\n\nexport const TableBodyColumn = memo(\n\tforwardRef<HTMLTableCellElement, TableBodyColumnProps>(({ children, className, text , style, colspan= undefined}, ref) => {\n\t\tconst mergedClass = useMemo(\n\t\t\t() => twMerge(\"px-2 py-1 text-gray-900 dark:text-default-500 text-sm\", className),\n\t\t\t[className]\n\t\t);\n\n\t\tconst isChildrenEmpty = !children || (typeof children === \"string\" && children.trim() === \"\");\n\n\t\treturn (\n\t\t\t<td ref={ref} className={mergedClass} style={style} colSpan={colspan}>\n\t\t\t\t{isChildrenEmpty ? (\n\t\t\t\t\t<p className=\"line-clamp-1 text-sm\">{text}</p>\n\t\t\t\t) : (\n\t\t\t\t\tchildren\n\t\t\t\t)}\n\t\t\t</td>\n\t\t);\n\t})\n);\n\nTableBodyColumn.displayName = \"TableBodyColumn\";\n","import React, { type FC, type ReactElement, isValidElement, useMemo, useId } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableHeaderRowProps, type TableShareProps } from \"../interface/table.interface\";\n\nimport { TableHeaderColumn } from \"./table-header-column\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\n\nexport const TableHeaderRow: FC<TableHeaderRowProps> = React.memo(\n\t({ children, className, dataHeader = [], valueCheck = false, disabledCheck, onChangeCheck, ...props }) => {\n\t\tconst uui = useId();\n\t\tconst { isChecks, widthAction, isActions, color } = useTableContext();\n\n\t\tconst handleChange = (value: boolean) => {\n\t\t\tif (disabledCheck) return;\n\t\t\tonChangeCheck?.(value);\n\t\t};\n\n\t\tconst headerChildren = useMemo(() => {\n\t\t\tif (typeof children === \"function\") {\n\t\t\t\treturn dataHeader.map((el, index) => {\n\t\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\t\tconst keyValue = el.id ?? el.header ?? index;\n\n\t\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\tkey: keyValue,\n\t\t\t\t\t })\n\t\t\t\t\t\t: null;\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn React.Children.map(children, (child, index) =>\n\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\tkey: (dataHeader[index] as any)?.id ?? dataHeader[index]?.header ?? index,\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t })\n\t\t\t\t\t\t: child,\n\t\t\t\t);\n\t\t\t}\n\t\t}, [children, dataHeader, props]);\n\n\t\treturn (\n\t\t\t<tr className={twMerge(\"bg-default-100 h-[45px]\", className)}>\n\t\t\t\t{isChecks && (\n\t\t\t\t\t<TableHeaderColumn className=\"min-w-10 w-10\">\n\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\tid={uui}\n\t\t\t\t\t\t\tonChange={(e) => handleChange(e.target.checked)}\n\t\t\t\t\t\t\tchecked={valueCheck}\n\t\t\t\t\t\t\tclassName=\"flex justify-center\"\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TableHeaderColumn>\n\t\t\t\t)}\n\n\t\t\t\t{headerChildren}\n\n\t\t\t\t{isActions && <TableHeaderColumn color={color} style={{ minWidth: `${widthAction}px`, width: `${widthAction}px` }} />}\n\t\t\t</tr>\n\t\t);\n\t},\n);\nTableHeaderRow.displayName = \"TableHeaderRow\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableSearchColumnProps } from \"../interface/table.interface\";\n\nexport const TableSearchColumn: FC<TableSearchColumnProps> = React.memo(({ children, className = \"\", style = {}, colspan= undefined}) => {\n\tconst mergedClass = useMemo(() => twMerge(\"table-column-search px-2 border-b border-divider\", className), [className]);\n\n\treturn (\n\t\t<th className={mergedClass} style={style} colSpan={colspan}>\n\t\t\t{children}\n\t\t</th>\n\t);\n});\nTableSearchColumn.displayName = \"TableSearchColumn\";\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableSearchRowProps, type TableShareProps } from \"../interface/table.interface\";\n\nimport { TableSearchColumn } from \"./table-search-column\";\n\nexport const TableSearchRow: FC<TableSearchRowProps> = React.memo(({ children, className, dataHeader = [], ...props }) => {\n\tconst { isChecks, widthAction, isActions } = useTableContext();\n\n\tconst mergedClass = useMemo(() => twMerge(\"bg-default-100 dark:bg-default-100 h-[45px]\", className), [className]);\n\n\tconst renderedChildren = useMemo(() => {\n\t\tif (typeof children === \"function\") {\n\t\t\treturn dataHeader.map((el, index) => {\n\t\t\t\tconst child = children({ item: el });\n\t\t\t\tconst keyValue = el.id ?? el.header ?? index;\n\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\tkey: keyValue,\n\t\t\t\t })\n\t\t\t\t\t: null;\n\t\t\t});\n\t\t} else {\n\t\t\treturn React.Children.map(children, (child, index) =>\n\t\t\t\tisValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\tkey: dataHeader[index]?.id ?? dataHeader[index]?.header ?? index,\n\t\t\t\t })\n\t\t\t\t\t: child,\n\t\t\t);\n\t\t}\n\t}, [children, dataHeader]);\n\n\treturn (\n\t\t<tr className={mergedClass} {...props}>\n\t\t\t{isChecks && <TableSearchColumn className=\"min-w-10 w-10\" />}\n\t\t\t{renderedChildren}\n\t\t\t{isActions && <TableSearchColumn style={{ minWidth: `${widthAction}px`, width: `${widthAction}px` }} />}\n\t\t</tr>\n\t);\n});\nTableSearchRow.displayName = \"TableSearchRow\";\n","import { TableHeader } from \"./header/table-header\";\nimport { TableHeaderColumn } from \"./header/table-header-column\";\nimport { twMerge } from \"tailwind-merge\";\nimport { TableBody } from \"./body/table-body\";\nimport { TableBodyRow } from \"./body/table-body-row\";\nimport { TableBodyColumn } from \"./body/table-body-column\";\nimport { TableContext } from \"./context/table.context\";\nimport { TableHeaderRow } from \"./header/table-header-row\";\nimport { TableSearchRow } from \"./search/table-search-row\";\nimport { TableSearchColumn } from \"./search/table-search-column\";\nimport { type TableProps } from \"./interface/table.interface\";\nimport React, { type ReactElement, isValidElement, useMemo } from \"react\";\nimport { AnimatePresence } from \"framer-motion\";\nimport { LazyMotion } from \"framer-motion\";\n\nexport const TableHOC = ({ className, children, classNameContainer, ...props }: TableProps) => {\n\tconst {\n\t\tcolor = \"primary\",\n\t\tdisabledKeys,\n\t\tisChecks = true,\n\t\tselectKeys = [],\n\t\tisActions = true,\n\t\twidthAction = 100,\n\t\tdataHeader,\n\t\tsortDescriptors,\n\t\tonSortChange,\n\t\tcolumnWidths = {},\n\t\tonColumnResize,\n\t\tonColumnResizeEnd,\n\t\t...otherProps\n\t} = props;\n\n\tconst tableClass = useMemo(() => twMerge(\"table-main-container w-full border-collapse table-auto\", className), [className]);\n\tconst containerClass = useMemo(() => twMerge(\"max-w-full overflow-x-auto overflow-y-auto bg-content1\", classNameContainer), [classNameContainer]);\n\n\treturn (\n\t\t<TableContext.Provider\n\t\t\tvalue={{\n\t\t\t\tcolor,\n\t\t\t\tdisabledKeys,\n\t\t\t\tisChecks,\n\t\t\t\tselectKeys,\n\t\t\t\tisActions,\n\t\t\t\twidthAction,\n\t\t\t\ttotalColumn: dataHeader?.length || 0,\n\t\t\t\tsortDescriptors,\n\t\t\t\tonSortChange,\n\t\t\t\tcolumnWidths,\n\t\t\t\tonColumnResize,\n\t\t\t\tonColumnResizeEnd,\n\t\t\t}}\n\t\t>\n\t\t\t<div className={containerClass}>\n\t\t\t\t<AnimatePresence>\n\t\t\t\t\t<LazyMotion features={() => import(\"framer-motion\").then((res) => res.domAnimation)}>\n\t\t\t\t\t\t<table className={tableClass}>\n\t\t\t\t\t\t\t{React.Children.map(children, (child) =>\n\t\t\t\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t\t\t\t? React.cloneElement(child as ReactElement<any>, {\n\t\t\t\t\t\t\t\t\t\t\tdataHeader,\n\t\t\t\t\t\t\t\t\t\t\t...otherProps,\n\t\t\t\t\t\t\t\t\t })\n\t\t\t\t\t\t\t\t\t: child,\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</table>\n\t\t\t\t\t</LazyMotion>\n\t\t\t\t</AnimatePresence>\n\t\t\t</div>\n\t\t</TableContext.Provider>\n\t);\n};\n\nexport const Table = Object.assign(TableHOC, {\n\tHeader: TableHeader,\n\n\tHeaderRow: TableHeaderRow,\n\tHeaderColumn: TableHeaderColumn,\n\n\tSearchRow: TableSearchRow,\n\tSearchColumn: TableSearchColumn,\n\n\tBody: TableBody,\n\n\tBodyRow: TableBodyRow,\n\tBodyColumn: TableBodyColumn,\n});\n","import { useCallback, useState } from \"react\";\n\nimport { type TableKeyCurrent, type TableValueSearchProps } from \"../interface/table-share.interface\";\nimport { type TableHookProps, type SortDescriptor, type ColumnWidths } from \"../interface/table.interface\";\n\ninterface TableProps {\n\tinitialSelectKey?: TableKeyCurrent[];\n\tinitialDisabledKeys?: string[];\n\tinitialValueSearch?: TableValueSearchProps;\n\tinitialSortDescriptors?: SortDescriptor[];\n\tinitialColumnWidths?: ColumnWidths;\n}\n\nexport const useTable = ({\n\tinitialDisabledKeys = [],\n\tinitialSelectKey = [],\n\tinitialValueSearch = {},\n\tinitialSortDescriptors = [],\n\tinitialColumnWidths = {},\n}: TableProps): TableHookProps => {\n\tconst [selectKeys, setSelectKeys] = useState<TableKeyCurrent[]>(initialSelectKey);\n\tconst [disabledKeys, setDisabledKeys] = useState<string[]>(initialDisabledKeys);\n\tconst [valueSearch, setValueSearch] = useState<TableValueSearchProps>(initialValueSearch);\n\tconst [sortDescriptors, setSortDescriptors] = useState<SortDescriptor[]>(initialSortDescriptors);\n\tconst [columnWidths, setColumnWidths] = useState<ColumnWidths>(initialColumnWidths);\n\n\tconst handleSelectKey = useCallback((value: TableKeyCurrent) => {\n\t\tsetSelectKeys((prev) => {\n\t\t\tconst exists = prev.some((el) => el.id === value.id);\n\t\t\tif (exists) {\n\t\t\t\treturn prev.filter((el) => el.id !== value.id);\n\t\t\t}\n\t\t\treturn [...prev, value];\n\t\t});\n\t}, []);\n\n\tconst handleSelectKeys = useCallback((value: TableKeyCurrent[]) => {\n\t\tsetSelectKeys(value);\n\t}, []);\n\n\tconst handleDisabledKeys = useCallback((value: string[]) => {\n\t\tsetDisabledKeys(value);\n\t}, []);\n\n const handleResetSelectKeys = useCallback(() => {\n setSelectKeys([]);\n }, []);\n\n\tconst handleSetValueSearch = useCallback((key: string, value: string) => {\n\t\tsetValueSearch((prev) => {\n\t\t\tif (prev[key] === value) return prev; // Avoid unnecessary updates\n\n\t\t\tconst newState = { ...prev };\n\n\t\t\tif (value) {\n\t\t\t\tnewState[key] = value;\n\t\t\t} else {\n\t\t\t\tdelete newState[key];\n\t\t\t}\n\n\t\t\treturn newState;\n\t\t});\n\t}, []);\n\n\tconst handleSort = useCallback((column: string) => {\n\t\tsetSortDescriptors((prev) => {\n\t\t\tconst existingIndex = prev.findIndex((s) => s.column === column);\n\n\t\t\tif (existingIndex !== -1) {\n\t\t\t\tconst existing = prev[existingIndex];\n\t\t\t\t// Toggle: asc -> desc -> remove\n\t\t\t\tif (existing.direction === \"asc\") {\n\t\t\t\t\tconst newSorts = [...prev];\n\t\t\t\t\tnewSorts[existingIndex] = { ...existing, direction: \"desc\" };\n\t\t\t\t\treturn newSorts;\n\t\t\t\t} else {\n\t\t\t\t\t// Remove if it was desc\n\t\t\t\t\treturn prev.filter((s) => s.column !== column);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Add new sort\n\t\t\treturn [...prev, { column, direction: \"asc\" }];\n\t\t});\n\t}, []);\n\n\tconst handleColumnResize = useCallback((columnId: string, width: number) => {\n\t\tsetColumnWidths((prev) => ({\n\t\t\t...prev,\n\t\t\t[columnId]: width,\n\t\t}));\n\t}, []);\n\n\tconst handleColumnResizeEnd = useCallback((columnId: string, width: number) => {\n\t\tsetColumnWidths((prev) => ({\n\t\t\t...prev,\n\t\t\t[columnId]: width,\n\t\t}));\n\t}, []);\n\n\treturn {\n\t\tselectKeys,\n\t\tdisabledKeys,\n\t\tvalueSearch,\n\t\tsortDescriptors,\n\t\tcolumnWidths,\n\t\thandleSelectKeys,\n\t\thandleSelectKey,\n\t\thandleDisabledKeys,\n\t\thandleSetValueSearch,\n\t\thandleResetSelectKeys,\n\t\thandleSort,\n\t\thandleColumnResize,\n\t\thandleColumnResizeEnd,\n\t};\n};\n"],"names":["createLucideIcon","TableHeader","React","memo","t0","$","_c","children","className","props","t1","twMerge","mergedClass","t2","t3","child","isValidElement","cloneElement","Children","map","clonedChildren","jsx","displayName","initialValues","color","disabledKeys","isChecks","selectKeys","isActions","widthAction","totalColumn","sortDescriptors","onSortChange","columnWidths","onColumnResize","onColumnResizeEnd","TableContext","createContext","useTableContext","useContext","useColumnResize","columnId","initialWidth","minWidth","maxWidth","onResize","onResizeEnd","undefined","width","setWidth","useState","isResizing","setIsResizing","startXRef","useRef","startWidthRef","columnRef","t4","t5","useEffect","t6","e","preventDefault","stopPropagation","target","currentTarget","setPointerCapture","pointerId","current","clientX","document","body","style","userSelect","cursor","handlePointerDown","t7","e_0","delta","newWidth","Math","max","min","handlePointerMove","t8","e_1","delta_0","finalWidth","handlePointerUp","t10","t9","addEventListener","removeEventListener","t11","ResizeHandle","onPointerDown","clsx","Symbol","for","jsxs","TableHeaderColumn","icon","text","size","header","colspan","resizable","resizableProp","minWidthProp","maxWidthProp","onResizeProp","onResizeEndProp","isResizable","id","id_0","width_0","resizedWidth","effectiveWidth","t12","mergedStyle","t13","trim","isChildrenEmpty","isSortable","sort","t14","find","d","column","currentSort","t15","length","findIndex","d_0","sortOrderIndex","t16","handleSort","t17","direction","ChevronUp","ChevronDown","renderSortIcon","t18","t19","t20","t21","t22","information","Tooltip","t23","t24","TableEmptyState","TableBodyComponent","rowKey","data","emptyText","isLoading","loadingLabel","total","Number","domProps","dataHeader","bb0","el","index","item","keyValue","key","child_0","index_0","renderedRows","fallbackContent","LoaderCircle","TableBody","TableBodyRow","forwardRef","ref","keyCurrent","onChangeCheck","disabled","isCheck","uui","useId","some","check","el_0","disabledCheck","value","handleChange","rowClass","Checkbox","checked","TableBodyColumn","TableHeaderRow","valueCheck","headerChildren","TableSearchColumn","TableSearchRow","renderedChildren","TableHOC","classNameContainer","otherProps","tableClass","useMemo","containerClass","AnimatePresence","LazyMotion","then","res","domAnimation","Table","Object","assign","Header","HeaderRow","HeaderColumn","SearchRow","SearchColumn","Body","BodyRow","BodyColumn","useTable","initialDisabledKeys","initialSelectKey","initialValueSearch","initialSortDescriptors","initialColumnWidths","setSelectKeys","setDisabledKeys","valueSearch","setValueSearch","setSortDescriptors","setColumnWidths","prev","exists","filter","handleSelectKey","value_0","handleSelectKeys","value_1","handleDisabledKeys","handleResetSelectKeys","value_2","prev_0","newState","handleSetValueSearch","prev_1","existingIndex","s","existing","newSorts","s_0","prev_2","handleColumnResize","columnId_0","prev_3","handleColumnResizeEnd"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../node_modules/.pnpm/lucide-react@0.554.0_react@19.2.0/node_modules/lucide-react/dist/esm/icons/chevrons-up-down.js","../../src/components/table/header/table-header.tsx","../../src/components/table/context/table.context.tsx","../../src/components/table/hook/use-table-context.tsx","../../src/components/table/hook/use-column-resize.tsx","../../src/components/table/header/resize-handle.tsx","../../src/components/table/header/table-header-column.tsx","../../src/components/table/body/table-empty-state.tsx","../../src/components/table/body/table-body.tsx","../../src/components/table/body/table-body-row.tsx","../../src/components/table/body/table-body-column.tsx","../../src/components/table/header/table-header-row.tsx","../../src/components/table/search/table-search-column.tsx","../../src/components/table/search/table-search-row.tsx","../../src/components/table/table.tsx","../../src/components/table/hook/use-table.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.554.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m7 15 5 5 5-5\", key: \"1hf1tw\" }],\n [\"path\", { d: \"m7 9 5-5 5 5\", key: \"sgt6xg\" }]\n];\nconst ChevronsUpDown = createLucideIcon(\"chevrons-up-down\", __iconNode);\n\nexport { __iconNode, ChevronsUpDown as default };\n//# sourceMappingURL=chevrons-up-down.js.map\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableHeaderProps } from \"../interface/table.interface\";\n\nexport const TableHeader: FC<TableHeaderProps> = React.memo(({ children, className, ...props }) => {\n\tconst mergedClass = useMemo(() => twMerge(\"min-h-[100px] sticky top-0 z-10\", className), [className]);\n\n\tconst clonedChildren = useMemo(\n\t\t() => React.Children.map(children, (child) => (isValidElement(child) ? React.cloneElement(child as ReactElement, { ...props }) : child)),\n\t\t[children, props],\n\t);\n\n\treturn <thead className={mergedClass}>{clonedChildren}</thead>;\n});\nTableHeader.displayName = \"TableHeader\";\n","import { createContext } from \"react\";\n\nimport { type TableContextProps } from \"../interface/table.interface\";\n\nconst initialValues: TableContextProps = {\n\tcolor: \"primary\",\n\tdisabledKeys: [],\n\tisChecks: true,\n\tselectKeys: [],\n\tisActions: true,\n\twidthAction: 100,\n\ttotalColumn: 0,\n\tsortDescriptor: null,\n\tonSortChange: () => {},\n\tcolumnWidths: {},\n\tonColumnResize: () => {},\n\tonColumnResizeEnd: () => {},\n};\n\nexport const TableContext = createContext<TableContextProps>(initialValues);\n","import { useContext } from \"react\";\r\nimport { TableContext } from \"../context/table.context\";\r\n\r\nexport const useTableContext = () => {\r\n\treturn useContext(TableContext);\r\n};\r\n","import { useCallback, useRef, useState, useEffect } from \"react\";\n\ninterface UseColumnResizeProps {\n\tcolumnId: string;\n\tinitialWidth?: number;\n\tminWidth?: number;\n\tmaxWidth?: number;\n\tonResize?: (columnId: string, width: number) => void;\n\tonResizeEnd?: (columnId: string, width: number) => void;\n}\n\nexport function useColumnResize({\n\tcolumnId,\n\tinitialWidth = 150,\n\tminWidth = 80,\n\tmaxWidth = 800,\n\tonResize,\n\tonResizeEnd,\n}: UseColumnResizeProps) {\n\tconst [width, setWidth] = useState(initialWidth);\n\tconst [isResizing, setIsResizing] = useState(false);\n\tconst startXRef = useRef(0);\n\tconst startWidthRef = useRef(0);\n\tconst columnRef = useRef<HTMLTableCellElement>(null);\n\n\tuseEffect(() => {\n\t\tif (initialWidth !== width) {\n\t\t\tsetWidth(initialWidth);\n\t\t}\n\t}, [initialWidth]);\n\n\tconst handlePointerDown = useCallback(\n\t\t(e: React.PointerEvent<HTMLDivElement>) => {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\n\t\t\tconst target = e.currentTarget;\n\t\t\ttarget.setPointerCapture(e.pointerId);\n\n\t\t\tstartXRef.current = e.clientX;\n\t\t\tstartWidthRef.current = width;\n\t\t\tsetIsResizing(true);\n\n\t\t\t// Prevent text selection during resize\n\t\t\tdocument.body.style.userSelect = \"none\";\n\t\t\tdocument.body.style.cursor = \"col-resize\";\n\t\t},\n\t\t[width],\n\t);\n\n\tconst handlePointerMove = useCallback(\n\t\t(e: PointerEvent) => {\n\t\t\tif (!isResizing) return;\n\n\t\t\tconst delta = e.clientX - startXRef.current;\n\t\t\tconst newWidth = Math.max(minWidth, Math.min(maxWidth, startWidthRef.current + delta));\n\n\t\t\tsetWidth(newWidth);\n\t\t\tonResize?.(columnId, newWidth);\n\t\t},\n\t\t[isResizing, minWidth, maxWidth, columnId, onResize],\n\t);\n\n\tconst handlePointerUp = useCallback(\n\t\t(e: PointerEvent) => {\n\t\t\tif (!isResizing) return;\n\n\t\t\tsetIsResizing(false);\n\t\t\tdocument.body.style.userSelect = \"\";\n\t\t\tdocument.body.style.cursor = \"\";\n\n\t\t\tconst delta = e.clientX - startXRef.current;\n\t\t\tconst finalWidth = Math.max(minWidth, Math.min(maxWidth, startWidthRef.current + delta));\n\n\t\t\tonResizeEnd?.(columnId, finalWidth);\n\t\t},\n\t\t[isResizing, minWidth, maxWidth, columnId, onResizeEnd],\n\t);\n\n\tuseEffect(() => {\n\t\tif (isResizing) {\n\t\t\tdocument.addEventListener(\"pointermove\", handlePointerMove);\n\t\t\tdocument.addEventListener(\"pointerup\", handlePointerUp);\n\n\t\t\treturn () => {\n\t\t\t\tdocument.removeEventListener(\"pointermove\", handlePointerMove);\n\t\t\t\tdocument.removeEventListener(\"pointerup\", handlePointerUp);\n\t\t\t};\n\t\t}\n\t}, [isResizing, handlePointerMove, handlePointerUp]);\n\n\treturn {\n\t\twidth,\n\t\tisResizing,\n\t\tcolumnRef,\n\t\thandlePointerDown,\n\t\tsetWidth,\n\t};\n}\n\nexport type UseColumnResizeReturn = ReturnType<typeof useColumnResize>;\n","import { memo } from \"react\";\nimport clsx from \"clsx\";\n\ninterface ResizeHandleProps {\n\tonPointerDown: (e: React.PointerEvent<HTMLDivElement>) => void;\n\tisResizing: boolean;\n\tclassName?: string;\n}\n\nexport const ResizeHandle = memo(({ onPointerDown, isResizing, className }: ResizeHandleProps) => {\n\treturn (\n\t\t<div\n\t\t\tclassName={clsx(\n\t\t\t\t\"absolute top-0 right-0 h-full w-1 cursor-col-resize select-none touch-none group/resize z-10\",\n\t\t\t\t\"hover:bg-default/50 active:bg-default transition-colors\",\n\t\t\t\tisResizing && \"bg-default\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tonPointerDown={onPointerDown}\n\t\t\trole=\"separator\"\n\t\t\taria-orientation=\"vertical\"\n\t\t\taria-label=\"Resize column\"\n\t\t>\n\t\t\t{/* Extended hit area for better UX */}\n\t\t\t<div className=\"absolute inset-y-0 -left-2 -right-2\" />\n\n\t\t\t{/* Visual indicator on hover */}\n\t\t\t<div\n\t\t\t\tclassName={clsx(\n\t\t\t\t\t\"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2\",\n\t\t\t\t\t\"w-1 h-8 rounded-full bg-default opacity-0 group-hover/resize:opacity-100 transition-opacity\",\n\t\t\t\t\tisResizing && \"opacity-100\",\n\t\t\t\t)}\n\t\t\t/>\n\t\t</div>\n\t);\n});\n\nResizeHandle.displayName = \"ResizeHandle\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport { type TableHeaderColumnProps } from \"../interface/table.interface\";\nimport { Tooltip } from \"@/components/tooltip\";\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { ChevronsUpDown, ChevronUp, ChevronDown } from \"lucide-react\";\nimport { useColumnResize } from \"../hook/use-column-resize\";\nimport { ResizeHandle } from \"./resize-handle\";\n\n\texport const TableHeaderColumn: FC<TableHeaderColumnProps> = React.memo(\n\t({\n\t\tchildren,\n\t\tclassName,\n\t\tstyle = {},\n\t\ticon = null,\n\t\ttext = \"\",\n\t\tsize,\n\t\theader,\n\t\tcolspan = undefined,\n\t\tresizable: resizableProp,\n\t\tminWidth: minWidthProp,\n\t\tmaxWidth: maxWidthProp,\n\t\tonResize: onResizeProp,\n\t\tonResizeEnd: onResizeEndProp,\n\t}) => {\n\t\tconst { sortDescriptor, onSortChange, columnWidths, onColumnResize, onColumnResizeEnd } = useTableContext();\t\t// Determine if column is resizable\n\t\tconst isResizable = resizableProp ?? header?.resizable ?? false;\n\t\tconst columnId = header?.id || \"\";\n\t\tconst initialWidth = columnWidths?.[columnId] || size || header?.size || 150;\n\t\tconst minWidth = minWidthProp ?? header?.minWidth ?? 80;\n\t\tconst maxWidth = maxWidthProp ?? header?.maxWidth ?? 800;\n\n\t\t// Use resize hook if column is resizable\n\t\tconst {\n\t\t\twidth: resizedWidth,\n\t\t\tisResizing,\n\t\t\tcolumnRef,\n\t\t\thandlePointerDown,\n\t\t} = useColumnResize({\n\t\t\tcolumnId,\n\t\t\tinitialWidth,\n\t\t\tminWidth,\n\t\t\tmaxWidth,\n\t\t\tonResize: (id, width) => {\n\t\t\t\tonResizeProp?.(width);\n\t\t\t\tonColumnResize?.(id, width);\n\t\t\t},\n\t\t\tonResizeEnd: (id, width) => {\n\t\t\t\tonResizeEndProp?.(width);\n\t\t\t\tonColumnResizeEnd?.(id, width);\n\t\t\t},\n\t\t});\n\n\t\tconst mergedClass = useMemo(() => twMerge(\"px-2 border-b border-divider relative\", className), [className]);\n\n\t\tconst effectiveWidth = isResizable ? resizedWidth : (size || header?.size);\n\n\t\tconst mergedStyle = useMemo(\n\t\t\t() => ({\n\t\t\t\t...style,\n\t\t\t\twidth: effectiveWidth ? `${effectiveWidth}px` : style.width,\n\t\t\t\tminWidth: effectiveWidth ? `${effectiveWidth}px` : style.minWidth,\n\t\t\t}),\n\t\t\t[style, effectiveWidth],\n\t\t);\n\n\t\tconst isChildrenEmpty = !children || (typeof children === \"string\" && children.trim() === \"\");\n\t\tconst isSortable = header?.sort;\n\n\t\tconst isCurrentlySorted = useMemo(() =>\n\t\t\tsortDescriptor?.column === header?.id,\n\t\t\t[sortDescriptor, header?.id]\n\t\t);\n\n\t\tconst handleSort = () => {\n\t\t\tif (isSortable && onSortChange && header?.id) {\n\t\t\t\tonSortChange(header.id);\n\t\t\t}\n\t\t};\n\n\t\tconst renderSortIcon = () => {\n\t\t\tif (!isSortable) return icon;\n\n\t\t\tif (isCurrentlySorted && sortDescriptor) {\n\t\t\t\treturn sortDescriptor.direction === \"asc\" ? (\n\t\t\t\t\t<ChevronUp className=\"h-4 w-4 text-foreground-500 dark:text-foreground-500\" />\n\t\t\t\t) : (\n\t\t\t\t\t<ChevronDown className=\"h-4 w-4 text-foreground-500 dark:text-foreground-500\" />\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn <ChevronsUpDown className=\"h-4 w-4 text-default-300\" />;\n\t\t};\n\n\t\treturn (\n\t\t\t<th\n\t\t\t\tref={isResizable ? columnRef : undefined}\n\t\t\t\tclassName={twMerge(\n\t\t\t\t\tmergedClass,\n\t\t\t\t\tisSortable ? \"cursor-pointer transition-colors\" : \"\",\n\t\t\t\t\tisResizing && \"select-none\"\n\t\t\t\t)}\n\t\t\t\tstyle={mergedStyle}\n\t\t\t\tcolSpan={colspan}\n\t\t\t\tonClick={handleSort}\n\t\t\t>\n\t\t\t\t{isChildrenEmpty ? (\n\t\t\t\t\t<div className=\"flex justify-between items-center gap-x-2 font-medium\">\n\t\t\t\t\t\t<div className=\"flex items-center gap-x-2\">\n\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-xs text-foreground-500 dark:text-foreground-500 text-left\">{text}</p>\n\t\t\t\t\t\t\t{header?.information && (\n\t\t\t\t\t\t\t\t<Tooltip content={header?.information || \"\"}>\n\t\t\t\t\t\t\t\t\t<svg\n\t\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\t\t\t\t\tclassName=\"text-default-300 cursor-pointer dark:text-foreground-500\"\n\t\t\t\t\t\t\t\t\t\twidth={16}\n\t\t\t\t\t\t\t\t\t\theight={16}\n\t\t\t\t\t\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<g fill=\"none\">\n\t\t\t\t\t\t\t\t\t\t\t<circle cx={12} cy={12} r={10} stroke=\"currentColor\" strokeWidth=\"1.5\" />\n\t\t\t\t\t\t\t\t\t\t\t<path stroke=\"currentColor\" strokeLinecap=\"round\" strokeWidth=\"1.5\" d=\"M12 17v-6\" />\n\t\t\t\t\t\t\t\t\t\t\t<circle cx={1} cy={1} r={1} fill=\"currentColor\" transform=\"matrix(1 0 0 -1 11 9)\" />\n\t\t\t\t\t\t\t\t\t\t</g>\n\t\t\t\t\t\t\t\t\t</svg>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex-1 flex justify-end\">{renderSortIcon()}</div>\n\t\t\t\t\t</div>\n\t\t\t\t) : (\n\t\t\t\t\tchildren\n\t\t\t\t)}\n\n\t\t\t\t{/* Resize handle */}\n\t\t\t\t{isResizable && (\n\t\t\t\t\t<ResizeHandle\n\t\t\t\t\t\tonPointerDown={handlePointerDown}\n\t\t\t\t\t\tisResizing={isResizing}\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t</th>\n\t\t);\n\t},\n);\nTableHeaderColumn.displayName = \"TableHeaderColumn\";\n","import { memo } from \"react\";\n\ninterface TableEmptyStateProps {\n text?: string;\n}\n\nexport const TableEmptyState = memo(({ text = \"No data available\" }: TableEmptyStateProps) => {\n return (\n <div className=\"w-full flex flex-col items-center justify-center\">\n <div className=\"flex flex-col items-center justify-center gap-3 px-5 py-7 max-w-sm\">\n <svg viewBox=\"0 0 1567 1024\" className=\"w-16 h-16 text-default-300 dark:text-default-400\">\n <path\n d=\"M156.662 699.758h21.097a10.444 10.444 0 0 1 10.236 10.444c0 5.765-4.491 10.444-10.236 10.444h-21.097v21.098a10.444 10.444 0 0 1-10.444 10.235 10.277 10.277 0 0 1-10.444-10.235v-21.098h-21.097a10.444 10.444 0 0 1-10.235-10.444c0-5.765 4.49-10.444 10.235-10.444h21.097v-21.097a10.444 10.444 0 0 1 10.444-10.235c5.765 0 10.444 4.49 10.444 10.235zm1378.628-83.553v-21.097a10.277 10.277 0 0 0-10.444-10.235 10.444 10.444 0 0 0-10.444 10.235v21.097h-21.097a10.277 10.277 0 0 0-10.235 10.444c0 5.598 4.595 10.444 10.235 10.444h21.097v21.097c0 5.745 4.679 10.236 10.444 10.236a10.444 10.444 0 0 0 10.444-10.236v-21.097h21.098c5.744 0 10.235-4.679 10.235-10.444a10.444 10.444 0 0 0-10.235-10.444zM776.46 960.862H250.597a20.805 20.805 0 0 1-20.826-20.888c0-11.53 9.463-20.889 20.826-20.889h94.728a83 83 0 0 1-11.112-41.672v-605.97a83.49 83.49 0 0 1 83.637-83.448h62.581v-20.993a83.49 83.49 0 0 1 83.637-83.449h501.152a83.45 83.45 0 0 1 83.637 83.449v605.97c0 15.185-4.053 29.41-11.134 41.672h115.554c11.552 0 20.91 9.274 20.91 20.888 0 11.53-9.296 20.888-20.889 20.888h-250.66v20.993c0 15.186-4.052 29.41-11.133 41.672h11.196c11.489 0 20.826 9.275 20.826 20.889 0 11.53-9.463 20.888-20.826 20.888H892.808a41.66 41.66 0 0 1-6.413 50.863 41.67 41.67 0 0 1-59.072 0zm76.368-41.777h66.424c22.978 0 41.61-18.59 41.61-41.88V270.461c0-22.56-18.048-40.69-40.314-40.69H416.304c-22.267 0-40.315 18.214-40.315 40.69v606.742c0 23.124 18.8 41.881 41.59 41.881h317.084l-10.737-10.757a41.69 41.69 0 0 1-10.862-40.377l-19.719-19.74a146.26 146.26 0 0 1-190.981-220.517 146.218 146.218 0 0 1 220.518 190.981l19.739 19.74a41.63 41.63 0 0 1 40.377 10.84zm149.81-104.441h62.853a41.797 41.797 0 0 0 41.59-41.777v-605.76c0-23.145-18.633-41.777-41.59-41.777H563.775a41.797 41.797 0 0 0-41.567 41.776v20.889h396.794a83.45 83.45 0 0 1 83.637 83.449zM266.327 46.999h31.123c8.774 0 15.876 6.955 15.876 15.666 0 8.648-7.102 15.666-15.876 15.666h-31.123v31.124c0 8.773-6.956 15.875-15.666 15.875a15.77 15.77 0 0 1-15.667-15.875V78.33H203.87a15.73 15.73 0 0 1-15.875-15.666c0-8.648 7.102-15.666 15.875-15.666h31.123V15.875C234.993 7.102 241.95 0 250.66 0c8.647 0 15.666 7.102 15.666 15.875zM20.888 939.974c0-11.53 9.463-20.889 20.826-20.889h125.455c11.489 0 20.826 9.275 20.826 20.889 0 11.53-9.463 20.888-20.826 20.888H41.714a20.805 20.805 0 0 1-20.826-20.888m658.734-135.022A104.442 104.442 0 1 0 531.9 657.23a104.442 104.442 0 0 0 147.722 147.722m-220.08-491.627a20.89 20.89 0 0 1 20.868-20.889h229.792a20.888 20.888 0 1 1 0 41.777H480.431a20.826 20.826 0 0 1-20.888-20.888m0 104.441c0-11.53 9.296-20.888 20.743-20.888H814.79c11.447 0 20.742 9.274 20.742 20.888 0 11.53-9.295 20.888-20.742 20.888H480.285a20.763 20.763 0 0 1-20.742-20.888m0 104.442c0-11.53 9.317-20.889 20.847-20.889h146.302c11.51 0 20.846 9.275 20.846 20.889 0 11.53-9.316 20.888-20.846 20.888H480.389a20.805 20.805 0 0 1-20.846-20.888M62.666 396.878a62.665 62.665 0 1 1 0-125.33 62.665 62.665 0 0 1 0 125.33m0-31.333a31.332 31.332 0 1 0 0-62.665 31.332 31.332 0 0 0 0 62.665m1295.075-93.997a62.665 62.665 0 1 1 0-125.33 62.665 62.665 0 0 1 0 125.33m0-31.333a31.332 31.332 0 1 0 0-62.664 31.332 31.332 0 0 0 0 62.664\"\n fill=\"currentColor\"\n />\n </svg>\n <p className=\"text-sm font-medium text-default-700 dark:text-default-200\">{text}</p>\n </div>\n </div>\n );\n});\n\nTableEmptyState.displayName = \"TableEmptyState\";\n","import React, { type ReactElement, isValidElement, memo, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableBodyProps, type TableShareProps } from \"../interface/table.interface\";\nimport LoaderCircle from \"@/components/loader/loader-circle\";\nimport { TableEmptyState } from \"./table-empty-state\";\n\nfunction TableBodyComponent<TData extends object>({\n\tchildren,\n\tclassName,\n\tdata = [],\n\temptyText = \"No data available\",\n\tisLoading = false,\n\tloadingLabel = \"Loading ...\",\n\trowKey,\n\t...props\n}: TableBodyProps<TData>) {\n\tconst { totalColumn, isActions, isChecks } = useTableContext();\n\tconst total = Number(totalColumn) + Number(isActions) + Number(isChecks);\n\n\t// Filter out dataHeader if it was passed via cloneElement to avoid DOM warnings\n\tconst domProps = { ...(props as any) };\n\tdelete domProps.dataHeader;\n\n\tconst mergedClass = useMemo(() => twMerge(className), [className]);\n\n\tconst renderedRows = useMemo(() => {\n\t\tif (!data || data.length === 0) return null;\n\n\t\tif (typeof children === \"function\") {\n\t\t\treturn data.map((el, index) => {\n\t\t\t\tconst child = children({ item: el, index });\n\t\t\t\tconst keyValue = rowKey ? rowKey(el, index) : index;\n\n\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\tkey: keyValue,\n\t\t\t\t\t })\n\t\t\t\t\t: null;\n\t\t\t});\n\t\t} else {\n\t\t\treturn React.Children.map(children, (child, index) =>\n\t\t\t\tisValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\tkey: rowKey ? rowKey(data[index] as TData, index) : index,\n\t\t\t\t\t })\n\t\t\t\t\t: child,\n\t\t\t);\n\t\t}\n\t}, [children, data, rowKey]);\n\n\tlet fallbackContent: React.ReactNode = null;\n\n\tif (isLoading) {\n\t\tfallbackContent = (\n\t\t\t<tr className=\"border-b border-divider\">\n\t\t\t\t<td className=\"px-2 py-2.5 w-full\" colSpan={total}>\n\t\t\t\t\t<div className=\"flex justify-center relative\">\n\t\t\t\t\t\t<div className=\"flex flex-col justify-center items-center gap-2\">\n\t\t\t\t\t\t\t<div className=\"mt-3.5\">\n\t\t\t\t\t\t\t\t<LoaderCircle size={45} />\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t<p className=\"line-clamp-1 text-sm text-default-800\">{loadingLabel}</p>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t);\n\t} else if (data.length === 0) {\n\t\tfallbackContent = (\n\t\t\t<tr className=\"border-b border-divider\">\n\t\t\t\t<td className=\"px-2 py-10 w-full\" colSpan={total}>\n\t\t\t\t\t<TableEmptyState text={emptyText} />\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t);\n\t}\n\n\treturn (\n\t\t<tbody className={mergedClass} {...domProps}>\n\t\t\t{renderedRows}\n\t\t\t{fallbackContent}\n\t\t</tbody>\n\t);\n}\n\nexport const TableBody = memo(<TData extends object>(props: TableBodyProps<TData>) => {\n\treturn <TableBodyComponent {...props} />;\n}) as <TData extends object>(props: TableBodyProps<TData>) => React.JSX.Element;\n","import { twMerge } from \"tailwind-merge\";\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { forwardRef, memo, useMemo, useId } from \"react\";\nimport clsx from \"clsx\";\nimport { type TableBodyRowProps } from \"../interface/table.interface\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\n\nexport const TableBodyRow = memo(\n\tforwardRef<HTMLTableRowElement, TableBodyRowProps>(({ children, className, keyCurrent, onChangeCheck, disabled, style, isCheck = true,}, ref) => {\n\t\tconst uui = useId();\n\t\tconst { isChecks, selectKeys, disabledKeys, color } = useTableContext();\n\n\t\tconst check = useMemo(() => selectKeys?.some((el) => el.id === keyCurrent.id), [selectKeys, keyCurrent.id]);\n\n\t\tconst disabledCheck = useMemo(() => disabledKeys?.some((el) => el === keyCurrent.id), [disabledKeys, keyCurrent.id]);\n\n\t\tconst handleChange = (value: boolean) => {\n\t\t\tif (disabledCheck || disabled) return;\n\t\t\tonChangeCheck?.(keyCurrent, value);\n\t\t};\n\n\t\tconst rowClass = useMemo(\n\t\t\t() =>\n\t\t\t\ttwMerge(\n\t\t\t\t\t\"relative border-b border-divider min-h-[40px] h-[40px] transition-colors duration-200 ease-in-out\",\n\t\t\t\t\tclsx({\n\t\t\t\t\t\t\"bg-content1 dark:hover:bg-default-100 hover:bg-default-100\": !check,\n\t\t\t\t\t\t\"bg-default-100 dark:bg-default-200\": check,\n\t\t\t\t\t}),\n\t\t\t\t\tclassName,\n\t\t\t\t),\n\t\t\t[check, className],\n\t\t);\n\n\t\treturn (\n\t\t\t<tr className={rowClass} ref={ref} style={style}>\n\t\t\t\t{isChecks && (\n\t\t\t\t\t<td className=\"px-2 py-1\">\n\t\t\t\t\t\t{isCheck && (\n\t\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\t\tid={uui}\n\t\t\t\t\t\t\t\tonChange={(e) => handleChange(e.target.checked)}\n\t\t\t\t\t\t\t\tchecked={check || false}\n\t\t\t\t\t\t\t\tclassName=\"flex justify-center\"\n\t\t\t\t\t\t\t\tdisabled={disabledCheck || disabled}\n\t\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</td>\n\t\t\t\t)}\n\t\t\t\t{children}\n\t\t\t</tr>\n\t\t);\n\t}),\n);\n\nTableBodyRow.displayName = \"TableBodyRow\";\n","import { forwardRef, memo, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableBodyColumnProps } from \"../interface/table.interface\";\n\nexport const TableBodyColumn = memo(\n\tforwardRef<HTMLTableCellElement, TableBodyColumnProps>(({ children, className, text , style, colspan= undefined}, ref) => {\n\t\tconst mergedClass = useMemo(\n\t\t\t() => twMerge(\"px-2 py-1 text-gray-900 dark:text-default-500 text-sm\", className),\n\t\t\t[className]\n\t\t);\n\n\t\tconst isChildrenEmpty = !children || (typeof children === \"string\" && children.trim() === \"\");\n\n\t\treturn (\n\t\t\t<td ref={ref} className={mergedClass} style={style} colSpan={colspan}>\n\t\t\t\t{isChildrenEmpty ? (\n\t\t\t\t\t<p className=\"line-clamp-1 text-sm\">{text}</p>\n\t\t\t\t) : (\n\t\t\t\t\tchildren\n\t\t\t\t)}\n\t\t\t</td>\n\t\t);\n\t})\n);\n\nTableBodyColumn.displayName = \"TableBodyColumn\";\n","import React, { type FC, type ReactElement, isValidElement, useMemo, useId } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableHeaderRowProps, type TableShareProps } from \"../interface/table.interface\";\n\nimport { TableHeaderColumn } from \"./table-header-column\";\nimport Checkbox from \"@/components/checkbox/checkbox\";\n\nexport const TableHeaderRow: FC<TableHeaderRowProps> = React.memo(\n\t({ children, className, dataHeader = [], valueCheck = false, disabledCheck, onChangeCheck, ...props }) => {\n\t\tconst uui = useId();\n\t\tconst { isChecks, widthAction, isActions, color } = useTableContext();\n\n\t\tconst handleChange = (value: boolean) => {\n\t\t\tif (disabledCheck) return;\n\t\t\tonChangeCheck?.(value);\n\t\t};\n\n\t\tconst headerChildren = useMemo(() => {\n\t\t\tif (typeof children === \"function\") {\n\t\t\t\treturn dataHeader.map((el, index) => {\n\t\t\t\t\tconst child = children({ item: el });\n\n\t\t\t\t\tconst keyValue = el.id ?? el.header ?? index;\n\n\t\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\tkey: keyValue,\n\t\t\t\t\t })\n\t\t\t\t\t\t: null;\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn React.Children.map(children, (child, index) =>\n\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\t\tkey: (dataHeader[index] as any)?.id ?? dataHeader[index]?.header ?? index,\n\t\t\t\t\t\t\t\t...props,\n\t\t\t\t\t\t })\n\t\t\t\t\t\t: child,\n\t\t\t\t);\n\t\t\t}\n\t\t}, [children, dataHeader, props]);\n\n\t\treturn (\n\t\t\t<tr className={twMerge(\"bg-default-100 h-[45px]\", className)}>\n\t\t\t\t{isChecks && (\n\t\t\t\t\t<TableHeaderColumn className=\"min-w-10 w-10\">\n\t\t\t\t\t\t<Checkbox\n\t\t\t\t\t\t\tid={uui}\n\t\t\t\t\t\t\tonChange={(e) => handleChange(e.target.checked)}\n\t\t\t\t\t\t\tchecked={valueCheck}\n\t\t\t\t\t\t\tclassName=\"flex justify-center\"\n\t\t\t\t\t\t\tcolor={color}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TableHeaderColumn>\n\t\t\t\t)}\n\n\t\t\t\t{headerChildren}\n\n\t\t\t\t{isActions && <TableHeaderColumn color={color} style={{ minWidth: `${widthAction}px`, width: `${widthAction}px` }} />}\n\t\t\t</tr>\n\t\t);\n\t},\n);\nTableHeaderRow.displayName = \"TableHeaderRow\";\n","import React, { type FC, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { type TableSearchColumnProps } from \"../interface/table.interface\";\n\nexport const TableSearchColumn: FC<TableSearchColumnProps> = React.memo(({ children, className = \"\", style = {}, colspan= undefined}) => {\n\tconst mergedClass = useMemo(() => twMerge(\"table-column-search px-2 border-b border-divider\", className), [className]);\n\n\treturn (\n\t\t<th className={mergedClass} style={style} colSpan={colspan}>\n\t\t\t{children}\n\t\t</th>\n\t);\n});\nTableSearchColumn.displayName = \"TableSearchColumn\";\n","import React, { type FC, type ReactElement, isValidElement, useMemo } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\n\nimport { useTableContext } from \"../hook/use-table-context\";\nimport { type TableSearchRowProps, type TableShareProps } from \"../interface/table.interface\";\n\nimport { TableSearchColumn } from \"./table-search-column\";\n\nexport const TableSearchRow: FC<TableSearchRowProps> = React.memo(({ children, className, dataHeader = [], ...props }) => {\n\tconst { isChecks, widthAction, isActions } = useTableContext();\n\n\tconst mergedClass = useMemo(() => twMerge(\"bg-default-100 dark:bg-default-100 h-[45px]\", className), [className]);\n\n\tconst renderedChildren = useMemo(() => {\n\t\tif (typeof children === \"function\") {\n\t\t\treturn dataHeader.map((el, index) => {\n\t\t\t\tconst child = children({ item: el });\n\t\t\t\tconst keyValue = el.id ?? el.header ?? index;\n\t\t\t\treturn isValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\tkey: keyValue,\n\t\t\t\t })\n\t\t\t\t\t: null;\n\t\t\t});\n\t\t} else {\n\t\t\treturn React.Children.map(children, (child, index) =>\n\t\t\t\tisValidElement(child)\n\t\t\t\t\t? React.cloneElement(child as ReactElement<TableShareProps>, {\n\t\t\t\t\t\t\tkey: dataHeader[index]?.id ?? dataHeader[index]?.header ?? index,\n\t\t\t\t })\n\t\t\t\t\t: child,\n\t\t\t);\n\t\t}\n\t}, [children, dataHeader]);\n\n\treturn (\n\t\t<tr className={mergedClass} {...props}>\n\t\t\t{isChecks && <TableSearchColumn className=\"min-w-10 w-10\" />}\n\t\t\t{renderedChildren}\n\t\t\t{isActions && <TableSearchColumn style={{ minWidth: `${widthAction}px`, width: `${widthAction}px` }} />}\n\t\t</tr>\n\t);\n});\nTableSearchRow.displayName = \"TableSearchRow\";\n","import { TableHeader } from \"./header/table-header\";\nimport { TableHeaderColumn } from \"./header/table-header-column\";\nimport { twMerge } from \"tailwind-merge\";\nimport { TableBody } from \"./body/table-body\";\nimport { TableBodyRow } from \"./body/table-body-row\";\nimport { TableBodyColumn } from \"./body/table-body-column\";\nimport { TableContext } from \"./context/table.context\";\nimport { TableHeaderRow } from \"./header/table-header-row\";\nimport { TableSearchRow } from \"./search/table-search-row\";\nimport { TableSearchColumn } from \"./search/table-search-column\";\nimport { type TableProps } from \"./interface/table.interface\";\nimport React, { type ReactElement, isValidElement, useMemo } from \"react\";\nimport { AnimatePresence } from \"framer-motion\";\nimport { LazyMotion } from \"framer-motion\";\n\nexport const TableHOC = ({ className, children, classNameContainer, ...props }: TableProps) => {\n\tconst {\n\t\tcolor = \"primary\",\n\t\tdisabledKeys,\n\t\tisChecks = true,\n\t\tselectKeys = [],\n\t\tisActions = true,\n\t\twidthAction = 100,\n\t\tdataHeader,\n\t\tsortDescriptor,\n\t\tonSortChange,\n\t\tcolumnWidths = {},\n\t\tonColumnResize,\n\t\tonColumnResizeEnd,\n\t\t...otherProps\n\t} = props;\n\n\tconst tableClass = useMemo(() => twMerge(\"table-main-container w-full border-collapse table-auto\", className), [className]);\n\tconst containerClass = useMemo(() => twMerge(\"max-w-full overflow-x-auto overflow-y-auto bg-content1\", classNameContainer), [classNameContainer]);\n\n\treturn (\n\t\t<TableContext.Provider\n\t\t\tvalue={{\n\t\t\t\tcolor,\n\t\t\t\tdisabledKeys,\n\t\t\t\tisChecks,\n\t\t\t\tselectKeys,\n\t\t\t\tisActions,\n\t\t\t\twidthAction,\n\t\t\t\ttotalColumn: dataHeader?.length || 0,\n\t\t\t\tsortDescriptor,\n\t\t\t\tonSortChange,\n\t\t\t\tcolumnWidths,\n\t\t\t\tonColumnResize,\n\t\t\t\tonColumnResizeEnd,\n\t\t\t}}\n\t\t>\n\t\t\t<div className={containerClass}>\n\t\t\t\t<AnimatePresence>\n\t\t\t\t\t<LazyMotion features={() => import(\"framer-motion\").then((res) => res.domAnimation)}>\n\t\t\t\t\t\t<table className={tableClass}>\n\t\t\t\t\t\t\t{React.Children.map(children, (child) =>\n\t\t\t\t\t\t\t\tisValidElement(child)\n\t\t\t\t\t\t\t\t\t? React.cloneElement(child as ReactElement<any>, {\n\t\t\t\t\t\t\t\t\t\t\tdataHeader,\n\t\t\t\t\t\t\t\t\t\t\t...otherProps,\n\t\t\t\t\t\t\t\t\t })\n\t\t\t\t\t\t\t\t\t: child,\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</table>\n\t\t\t\t\t</LazyMotion>\n\t\t\t\t</AnimatePresence>\n\t\t\t</div>\n\t\t</TableContext.Provider>\n\t);\n};\n\nexport const Table = Object.assign(TableHOC, {\n\tHeader: TableHeader,\n\n\tHeaderRow: TableHeaderRow,\n\tHeaderColumn: TableHeaderColumn,\n\n\tSearchRow: TableSearchRow,\n\tSearchColumn: TableSearchColumn,\n\n\tBody: TableBody,\n\n\tBodyRow: TableBodyRow,\n\tBodyColumn: TableBodyColumn,\n});\n","import { useCallback, useState } from \"react\";\n\nimport { type TableKeyCurrent, type TableValueSearchProps } from \"../interface/table-share.interface\";\nimport { type TableHookProps, type SortDescriptor, type ColumnWidths } from \"../interface/table.interface\";\n\ninterface TableProps {\n\tinitialSelectKey?: TableKeyCurrent[];\n\tinitialDisabledKeys?: string[];\n\tinitialValueSearch?: TableValueSearchProps;\n\tinitialSortDescriptor?: SortDescriptor | null;\n\tinitialColumnWidths?: ColumnWidths;\n}\n\nexport const useTable = ({\n\tinitialDisabledKeys = [],\n\tinitialSelectKey = [],\n\tinitialValueSearch = {},\n\tinitialSortDescriptor = null,\n\tinitialColumnWidths = {},\n}: TableProps): TableHookProps => {\n\tconst [selectKeys, setSelectKeys] = useState<TableKeyCurrent[]>(initialSelectKey);\n\tconst [disabledKeys, setDisabledKeys] = useState<string[]>(initialDisabledKeys);\n\tconst [valueSearch, setValueSearch] = useState<TableValueSearchProps>(initialValueSearch);\n\tconst [sortDescriptor, setSortDescriptor] = useState<SortDescriptor | null>(initialSortDescriptor);\n\tconst [columnWidths, setColumnWidths] = useState<ColumnWidths>(initialColumnWidths);\n\n\tconst handleSelectKey = useCallback((value: TableKeyCurrent) => {\n\t\tsetSelectKeys((prev) => {\n\t\t\tconst exists = prev.some((el) => el.id === value.id);\n\t\t\tif (exists) {\n\t\t\t\treturn prev.filter((el) => el.id !== value.id);\n\t\t\t}\n\t\t\treturn [...prev, value];\n\t\t});\n\t}, []);\n\n\tconst handleSelectKeys = useCallback((value: TableKeyCurrent[]) => {\n\t\tsetSelectKeys(value);\n\t}, []);\n\n\tconst handleDisabledKeys = useCallback((value: string[]) => {\n\t\tsetDisabledKeys(value);\n\t}, []);\n\n const handleResetSelectKeys = useCallback(() => {\n setSelectKeys([]);\n }, []);\n\n\tconst handleSetValueSearch = useCallback((key: string, value: string) => {\n\t\tsetValueSearch((prev) => {\n\t\t\tif (prev[key] === value) return prev; // Avoid unnecessary updates\n\n\t\t\tconst newState = { ...prev };\n\n\t\t\tif (value) {\n\t\t\t\tnewState[key] = value;\n\t\t\t} else {\n\t\t\t\tdelete newState[key];\n\t\t\t}\n\n\t\t\treturn newState;\n\t\t});\n\t}, []);\n\n\tconst handleSort = useCallback((column: string) => {\n\t\tsetSortDescriptor((prev) => {\n\t\t\t// Si ya existe ordenamiento en esta columna\n\t\t\tif (prev?.column === column) {\n\t\t\t\t// Toggle: asc -> desc -> remove\n\t\t\t\tif (prev.direction === \"asc\") {\n\t\t\t\t\treturn { column, direction: \"desc\" };\n\t\t\t\t} else {\n\t\t\t\t\t// Remove si era desc\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Nueva columna, iniciar con asc\n\t\t\treturn { column, direction: \"asc\" };\n\t\t});\n\t}, []);\n\n\tconst handleColumnResize = useCallback((columnId: string, width: number) => {\n\t\tsetColumnWidths((prev) => ({\n\t\t\t...prev,\n\t\t\t[columnId]: width,\n\t\t}));\n\t}, []);\n\n\tconst handleColumnResizeEnd = useCallback((columnId: string, width: number) => {\n\t\tsetColumnWidths((prev) => ({\n\t\t\t...prev,\n\t\t\t[columnId]: width,\n\t\t}));\n\t}, []);\n\n\treturn {\n\t\tselectKeys,\n\t\tdisabledKeys,\n\t\tvalueSearch,\n\t\tsortDescriptor,\n\t\tcolumnWidths,\n\t\thandleSelectKeys,\n\t\thandleSelectKey,\n\t\thandleDisabledKeys,\n\t\thandleSetValueSearch,\n\t\thandleResetSelectKeys,\n\t\thandleSort,\n\t\thandleColumnResize,\n\t\thandleColumnResizeEnd,\n\t};\n};\n"],"names":["createLucideIcon","TableHeader","React","memo","t0","$","_c","children","className","props","t1","twMerge","mergedClass","t2","t3","child","isValidElement","cloneElement","Children","map","clonedChildren","jsx","displayName","initialValues","color","disabledKeys","isChecks","selectKeys","isActions","widthAction","totalColumn","sortDescriptor","onSortChange","columnWidths","onColumnResize","onColumnResizeEnd","TableContext","createContext","useTableContext","useContext","useColumnResize","columnId","initialWidth","minWidth","maxWidth","onResize","onResizeEnd","undefined","width","setWidth","useState","isResizing","setIsResizing","startXRef","useRef","startWidthRef","columnRef","t4","t5","useEffect","t6","e","preventDefault","stopPropagation","target","currentTarget","setPointerCapture","pointerId","current","clientX","document","body","style","userSelect","cursor","handlePointerDown","t7","e_0","delta","newWidth","Math","max","min","handlePointerMove","t8","e_1","delta_0","finalWidth","handlePointerUp","t10","t9","addEventListener","removeEventListener","t11","ResizeHandle","onPointerDown","clsx","Symbol","for","jsxs","TableHeaderColumn","icon","text","size","header","colspan","resizable","resizableProp","minWidthProp","maxWidthProp","onResizeProp","onResizeEndProp","isResizable","id","id_0","width_0","resizedWidth","effectiveWidth","t12","mergedStyle","t13","trim","isChildrenEmpty","isSortable","sort","isCurrentlySorted","column","t14","handleSort","t15","direction","ChevronUp","ChevronDown","renderSortIcon","t16","t17","t18","t19","t20","information","Tooltip","t21","t22","TableEmptyState","TableBodyComponent","rowKey","data","emptyText","isLoading","loadingLabel","total","Number","domProps","dataHeader","bb0","length","el","index","item","keyValue","key","child_0","index_0","renderedRows","fallbackContent","LoaderCircle","TableBody","TableBodyRow","forwardRef","ref","keyCurrent","onChangeCheck","disabled","isCheck","uui","useId","some","check","el_0","disabledCheck","value","handleChange","rowClass","Checkbox","checked","TableBodyColumn","TableHeaderRow","valueCheck","headerChildren","TableSearchColumn","TableSearchRow","renderedChildren","TableHOC","classNameContainer","otherProps","tableClass","useMemo","containerClass","AnimatePresence","LazyMotion","then","res","domAnimation","Table","Object","assign","Header","HeaderRow","HeaderColumn","SearchRow","SearchColumn","Body","BodyRow","BodyColumn","useTable","initialDisabledKeys","initialSelectKey","initialValueSearch","initialSortDescriptor","initialColumnWidths","setSelectKeys","setDisabledKeys","valueSearch","setValueSearch","setSortDescriptor","setColumnWidths","prev","exists","filter","handleSelectKey","value_0","handleSelectKeys","value_1","handleDisabledKeys","handleResetSelectKeys","value_2","prev_0","newState","handleSetValueSearch","prev_1","prev_2","handleColumnResize","columnId_0","prev_3","handleColumnResizeEnd"],"mappings":"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","x_google_ignoreList":[0]}