UNPKG

@ozen-ui/kit

Version:

React component library

13 lines (12 loc) 1.44 kB
import { __assign, __rest } from "tslib"; import React, { forwardRef } from 'react'; import { useThemeProps } from '../../hooks/useThemeProps'; import { cn } from '../../utils/classname'; import './Table.css'; import { TABLE_DEFAULT_COMPRESSED, TABLE_DEFAULT_DIVIDER, TABLE_DEFAULT_FULL_WIDTH, TABLE_DEFAULT_SIZE, TABLE_DEFAULT_STICKY_HEADER, TABLE_DEFAULT_STRIPED, } from './constants'; export var cnTable = cn('Table'); export var Table = forwardRef(function (inProps, ref) { var _a = useThemeProps({ name: 'Table', props: inProps }), _b = _a.size, size = _b === void 0 ? TABLE_DEFAULT_SIZE : _b, _c = _a.divider, divider = _c === void 0 ? TABLE_DEFAULT_DIVIDER : _c, _d = _a.fullWidth, fullWidth = _d === void 0 ? TABLE_DEFAULT_FULL_WIDTH : _d, _e = _a.stickyHeader, stickyHeader = _e === void 0 ? TABLE_DEFAULT_STICKY_HEADER : _e, _f = _a.compressed, compressed = _f === void 0 ? TABLE_DEFAULT_COMPRESSED : _f, _g = _a.striped, striped = _g === void 0 ? TABLE_DEFAULT_STRIPED : _g, children = _a.children, className = _a.className, other = __rest(_a, ["size", "divider", "fullWidth", "stickyHeader", "compressed", "striped", "children", "className"]); return (React.createElement("table", __assign({ className: cnTable({ compressed: compressed, size: size, stickyHeader: stickyHeader, fullWidth: fullWidth, divider: divider, striped: striped }, [className]) }, other, { ref: ref }), children)); }); Table.displayName = 'Table';