wewe-rss / apps /web /src /components /StatusDropdown.tsx
div-wang's picture
上传文件
95d29a5 verified
import React from 'react';
import {
Dropdown,
DropdownTrigger,
DropdownMenu,
DropdownItem,
Button,
} from '@nextui-org/react';
import { statusMap } from '@web/constants';
export function StatusDropdown({
value = 1,
onChange,
}: {
value: number;
onChange: (value: number) => void;
}) {
return (
<Dropdown>
<DropdownTrigger>
<Button size="sm" variant="bordered" className="capitalize">
{statusMap[value].label}
</Button>
</DropdownTrigger>
<DropdownMenu
disabledKeys={['0']}
aria-label="状态设置"
variant="flat"
disallowEmptySelection
selectionMode="single"
selectedKeys={[`${value}`]}
onSelectionChange={(keys) => {
onChange(+Array.from(keys)[0]);
}}
>
{Object.entries(statusMap).map(([key, value]) => {
return (
<DropdownItem color={value.color} key={`${key}`} value={`${key}`}>
{value.label}
</DropdownItem>
);
})}
</DropdownMenu>
</Dropdown>
);
}