import type { Meta, StoryObj } from '@storybook/react-vite'; import { InputNumber, Space } from 'antd'; import { CloudServerOutlined, DashboardOutlined, DesktopOutlined, SafetyOutlined, ThunderboltOutlined, } from '@ant-design/icons'; import { NotificationLayout } from './NotificationLayout'; import { NotificationCard } from './NotificationCard'; import { NotificationEvent } from './NotificationEvent'; import { NotificationHeader } from './NotificationHeader'; const noop = () => undefined; function OutboundGroup() { return ( } title="Outbound" extra={ } > ); } function XrayGroup() { return ( } title="Xray" extra={ } > ); } function NodeGroup() { return ( } title="Nodes" extra={ } > ); } function SystemGroup() { return ( } title="System" extra={ } > ); } function SecurityGroup() { return ( } title="Security" extra={ } > ); } const meta = { title: 'UI/Notifications/NotificationLayout', component: NotificationLayout, tags: ['autodocs'], parameters: { layout: 'padded', docs: { description: { component: 'Responsive auto-fit grid (min 260px columns) that arranges notification event-group cards; the Telegram and email notification tabs on the settings page render their groups inside it.', }, }, }, argTypes: { children: { description: 'Grid items, typically one NotificationCard per event group.' }, }, } satisfies Meta; export default meta; type Story = StoryObj; export const AllEventGroups: Story = { args: { children: ( <> ), }, }; export const TwoGroups: Story = { args: { children: ( <> ), }, }; export const SingleGroup: Story = { args: { children: , }, };