import type { Meta, StoryObj } from '@storybook/react';
import { REGEXP_ONLY_DIGITS_AND_CHARS } from 'input-otp';
import {
InputOTP,
InputOTPGroup,
InputOTPSeparator,
InputOTPSlot,
} from '@konobangu/design-system/components/ui/input-otp';
/**
* Accessible one-time password component with copy paste functionality.
*/
const meta = {
title: 'ui/InputOTP',
component: InputOTP,
tags: ['autodocs'],
argTypes: {},
args: {
maxLength: 6,
pattern: REGEXP_ONLY_DIGITS_AND_CHARS,
children: null,
},
render: (args) => (
),
parameters: {
layout: 'centered',
},
} satisfies Meta;
export default meta;
type Story = StoryObj;
/**
* The default form of the InputOTP field.
*/
export const Default: Story = {};
/**
* Use multiple groups to separate the input slots.
*/
export const SeparatedGroup: Story = {
render: (args) => (
),
};