mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-21 23:19:09 +00:00
feat: automation UI
merge with automation service
This commit is contained in:
committed by
Carlos Valente
parent
05e61e7bf8
commit
8b84963e17
@@ -1,4 +1,4 @@
|
||||
import { HTMLAttributes, ReactNode } from 'react';
|
||||
import { HTMLAttributes, PropsWithChildren, ReactNode } from 'react';
|
||||
import { Button } from '@chakra-ui/react';
|
||||
import { IoAdd } from '@react-icons/all-files/io5/IoAdd';
|
||||
|
||||
@@ -55,20 +55,19 @@ export function Card({ children, className, ...props }: { children: ReactNode }
|
||||
}
|
||||
|
||||
export function Table({ className, children }: { className?: string; children: ReactNode }) {
|
||||
const classes = cx([style.table, className]);
|
||||
return (
|
||||
<div className={style.pad}>
|
||||
<table className={classes}>{children}</table>
|
||||
<table className={cx([style.table, className])}>{children}</table>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
export function TableEmpty({ handleClick }: { handleClick: () => void }) {
|
||||
export function TableEmpty({ label, handleClick }: { label?: string; handleClick?: () => void }) {
|
||||
return (
|
||||
<tr className={style.empty}>
|
||||
<td colSpan={99}>
|
||||
<div>No data yet</div>
|
||||
<Button onClick={handleClick} variant='ontime-subtle' rightIcon={<IoAdd />} size='sm'>
|
||||
<div>{label ?? 'No data yet'}</div>
|
||||
<Button onClick={handleClick} isDisabled={!handleClick} variant='ontime-filled' rightIcon={<IoAdd />} size='sm'>
|
||||
New
|
||||
</Button>
|
||||
</td>
|
||||
@@ -124,3 +123,22 @@ export function Loader({ isLoading }: { isLoading: boolean }) {
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
type AllowedInlineTags = 'div' | 'td';
|
||||
type InlineProps<C extends AllowedInlineTags> = {
|
||||
as?: C;
|
||||
relation?: 'inner' | 'component' | 'section';
|
||||
align?: 'start' | 'end';
|
||||
className?: string;
|
||||
};
|
||||
|
||||
export function InlineElements<C extends AllowedInlineTags = 'div'>({
|
||||
children,
|
||||
as,
|
||||
relation = 'component',
|
||||
align = 'start',
|
||||
className,
|
||||
}: PropsWithChildren<InlineProps<C>>) {
|
||||
const Element = as ?? 'div';
|
||||
return <Element className={cx([style.inlineElements, style[relation], style[align], className])}>{children}</Element>;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user