umami/components/pages/reports/FieldSelectForm.js

25 lines
764 B
JavaScript
Raw Normal View History

2023-07-02 07:02:49 +02:00
import { Menu, Item, Form, FormRow } from 'react-basics';
import { useMessages } from 'hooks';
import styles from './FieldSelectForm.module.css';
2023-08-08 08:02:38 +02:00
export default function FieldSelectForm({ items, onSelect }) {
2023-07-02 07:02:49 +02:00
const { formatMessage, labels } = useMessages();
return (
<Form>
<FormRow label={formatMessage(labels.fields)}>
2023-08-08 08:02:38 +02:00
<Menu className={styles.menu} onSelect={key => onSelect(items[key])}>
{items.map(({ name, label, type }, index) => {
2023-07-02 07:02:49 +02:00
return (
<Item key={index} className={styles.item}>
2023-07-18 18:09:22 +02:00
<div>{label || name}</div>
2023-08-04 09:51:52 +02:00
{type && <div className={styles.type}>{type}</div>}
2023-07-02 07:02:49 +02:00
</Item>
);
})}
</Menu>
</FormRow>
</Form>
);
}