You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					109 lines
				
				3.0 KiB
			
		
		
			
		
	
	
					109 lines
				
				3.0 KiB
			| 
											3 years ago
										 | "use strict"; | ||
|  | var __importDefault = (this && this.__importDefault) || function (mod) { | ||
|  |     return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
|  | }; | ||
|  | Object.defineProperty(exports, "__esModule", { value: true }); | ||
|  | const styled_components_1 = __importDefault(require("styled-components")); | ||
|  | const styled_system_1 = require("styled-system"); | ||
|  | const css_class_1 = require("../../utils/css-class"); | ||
|  | /** | ||
|  |  * @classdesc | ||
|  |  * | ||
|  |  * <img src="components/table.png" /> | ||
|  |  * | ||
|  |  * Main Table wrapper. Along with _TableRow_, _TableCell_, _TableCaption_, | ||
|  |  * _TableHead_ and _TableBody_ gives you the powerful tool for building tables. | ||
|  |  * | ||
|  |  * ### Related Components | ||
|  |  * | ||
|  |  * - _Table_: {@link LayoutProps} & standard table html props | ||
|  |  * - _TableBody_: standard tbody html props | ||
|  |  * - _TableCell_: {@link SpaceProps} & {@link ColorProps} & standard td html props | ||
|  |  * - _TableHead_: standard thead html props | ||
|  |  * - _TableRow_:  standard tr html props | ||
|  |  * | ||
|  |  * ### Usage | ||
|  |  * | ||
|  |  * ```javascript
 | ||
|  |  * import { | ||
|  |  *   Table, | ||
|  |  *   TableRow, | ||
|  |  *   TableCell, | ||
|  |  *   TableCaption, | ||
|  |  *   TableHead, | ||
|  |  *   TableBody, | ||
|  |  * } from '@adminjs/design-system' | ||
|  |  * ```
 | ||
|  |  * | ||
|  |  * @component | ||
|  |  * @hideconstructor | ||
|  |  * @subcategory Atoms | ||
|  |  * @see {@link https://storybook.adminjs.co/?path=/story/designsystem-atoms-table--default Storybook}
 | ||
|  |  * @example | ||
|  |  * return ( | ||
|  |  * <Box pt="x4"> | ||
|  |  * <Table> | ||
|  |  *   <TableCaption> | ||
|  |  *     <Text as="span">Monthly savings</Text> | ||
|  |  *     <Button variant="text" size="sm"> | ||
|  |  *       <Icon icon="Delete" /> | ||
|  |  *       Remove | ||
|  |  *     </Button> | ||
|  |  *   </TableCaption> | ||
|  |  *   <TableHead> | ||
|  |  *     <TableRow> | ||
|  |  *       <TableCell><CheckBox /></TableCell> | ||
|  |  *       <TableCell> | ||
|  |  *         <Link href="#"> | ||
|  |  *           Name | ||
|  |  *           <Icon icon="CaretUp" /> | ||
|  |  *         </Link> | ||
|  |  *       </TableCell> | ||
|  |  *       <TableCell> | ||
|  |  *         <Link href="#"> | ||
|  |  *           Last | ||
|  |  *           <Icon icon="CaretDown" /> | ||
|  |  *         </Link> | ||
|  |  *       </TableCell> | ||
|  |  *       <TableCell>Surname</TableCell> | ||
|  |  *       <TableCell>Gender</TableCell> | ||
|  |  *       <TableCell>Age</TableCell> | ||
|  |  *     </TableRow> | ||
|  |  *   </TableHead> | ||
|  |  *   <TableBody> | ||
|  |  *     <TableRow> | ||
|  |  *       <TableCell><CheckBox /></TableCell> | ||
|  |  *       <TableCell>Value 1</TableCell> | ||
|  |  *       <TableCell>Value 2</TableCell> | ||
|  |  *       <TableCell>Value 2</TableCell> | ||
|  |  *       <TableCell>Value 2</TableCell> | ||
|  |  *       <TableCell>Value 2</TableCell> | ||
|  |  *     </TableRow> | ||
|  |  *     <TableRow> | ||
|  |  *       <TableCell><CheckBox /></TableCell> | ||
|  |  *       <TableCell>Value 1</TableCell> | ||
|  |  *       <TableCell>Value 2</TableCell> | ||
|  |  *       <TableCell>Value 2</TableCell> | ||
|  |  *       <TableCell>Value 2</TableCell> | ||
|  |  *       <TableCell>Value 2</TableCell> | ||
|  |  *     </TableRow> | ||
|  |  *   </TableBody> | ||
|  |  * </Table> | ||
|  |  * </Box> | ||
|  |  * ) | ||
|  |  * @section design-system | ||
|  |  */ | ||
|  | const Table = styled_components_1.default.table `
 | ||
|  |   position: relative; | ||
|  |   font-family: ${({ theme }) => theme.font}; | ||
|  |   color: ${({ theme }) => theme.colors.grey100}; | ||
|  | 
 | ||
|  |   ${styled_system_1.layout}; | ||
|  |   border-collapse: collapse; | ||
|  | `;
 | ||
|  | Table.defaultProps = { | ||
|  |     width: 1, | ||
|  |     className: css_class_1.cssClass('Table'), | ||
|  | }; | ||
|  | exports.default = Table; |