{"version":3,"file":"Table.cjs","sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef, useState } from \"react\";\nimport { TableContextProvider } from \"./tableContext.js\";\nimport type { TableProps } from \"./types.js\";\n\nconst Table = forwardRef<HTMLTableElement, TableProps>(\n    (\n        {\n            className,\n            caption,\n            children,\n            collapseToList = false,\n            fullWidth = false,\n            tabIndex,\n            ...rest\n        },\n        ref,\n    ) => {\n        const [hasStickyHead, setHasStickyHead] = useState<boolean>(false);\n\n        return (\n            <TableContextProvider state={{ collapseToList, setHasStickyHead }}>\n                <table\n                    className={clsx(\"jkl-table\", className, {\n                        [\"jkl-table--full-width\"]: fullWidth,\n                        [\"jkl-table--collapse-to-list\"]: collapseToList,\n                    })}\n                    {...rest}\n                    // For content in a scrollable table to be accessible with keyboard\n                    // navigation we need to set tabIndex\n                    // eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex\n                    tabIndex={hasStickyHead ? 0 : tabIndex}\n                    ref={ref}\n                >\n                    {caption}\n                    {children}\n                </table>\n            </TableContextProvider>\n        );\n    },\n);\n\nTable.displayName = \"Table\";\n\nexport { Table };\n"],"names":["Table","forwardRef","className","caption","children","collapseToList","fullWidth","tabIndex","rest","ref","hasStickyHead","setHasStickyHead","useState","TableContextProvider","state","jsxs","clsx","displayName"],"mappings":"gNAKMA,EAAQC,EAAAA,WACV,EAEQC,UAAAA,EACAC,QAAAA,EACAC,SAAAA,EACAC,eAAAA,GAAiB,EACjBC,UAAAA,GAAY,EACZC,SAAAA,KACGC,GAEPC,KAEA,MAAOC,EAAeC,GAAoBC,EAAAA,UAAkB,GAE5D,aACKC,EAAAA,qBAAA,CAAqBC,MAAO,CAAET,eAAAA,EAAgBM,iBAAAA,GAC3CP,SAAAW,EAAAA,KAAC,QAAA,CACGb,UAAWc,EAAAA,KAAK,YAAad,EAAW,CACnC,wBAA0BI,EAC1B,8BAAgCD,OAEjCG,EAIJD,SAAUG,EAAgB,EAAIH,EAC9BE,IAAAA,EAECL,SAAA,CAAAD,EACAC,SAOrBJ,EAAMiB,YAAc"}