import type { Meta, StoryObj } from '@storybook/react-vite';
import { KycFailedDialogView } from '@/components/events/kyc/kyc-failed.dialog.view';
import { KycMethodSelectionDialogView } from '@/components/events/kyc/kyc-method-selection.dialog.view';
import { KycPendingDialogView } from '@/components/events/kyc/kyc-pending.dialog.view';
import { KycPromptDialogView } from '@/components/events/kyc/kyc-prompt.dialog.view';
import { KycSuccessDialogView } from '@/components/events/kyc/kyc-success.dialog.view';
import { Dialog } from '@/components/ui/dialog';

const meta = {
  title: 'Events/KycDialog',
  component: KycPromptDialogView,
  decorators: [
    Story => (
      <Dialog open={true}>
        <Story />
      </Dialog>
    ),
  ],
} satisfies Meta<typeof KycPromptDialogView>;

export default meta;
type Story = StoryObj<typeof meta>;

export const Prompt: Story = {
  args: {
  },
};

export const MethodSelection: Story = {
  render: () => <KycMethodSelectionDialogView onSubmit={async () => Promise.resolve()} />,
  args: {
  },
};

export const Pending: Story = {
  render: () => <KycPendingDialogView />,
  args: {
  },
};

export const Success: Story = {
  render: () => <KycSuccessDialogView />,
  args: {
  },
};

export const Failed: Story = {
  render: () => <KycFailedDialogView />,
  args: {
  },
};
