import type { Meta, StoryObj } from "@storybook/react-native-web-vite"; import { InputTime } from "@jobber/components-native"; import { InputTimeBasic, InputTimeEmptyValue, InputTimeFormControlled, } from "./docs"; const meta = { title: "Components/Forms and Inputs/InputTime", component: InputTime, parameters: { viewport: { defaultViewport: "mobile1" }, showNativeOnWebDisclaimer: true, }, } satisfies Meta; export default meta; interface NativeInputTimeControlledStoryArgs { placeholder?: string; disabled?: boolean; invalid?: boolean | string; emptyValueLabel?: string; } interface NativeInputTimeFormStoryArgs { name: string; placeholder?: string; } type ControlledStory = StoryObj; type FormStory = StoryObj; export const Basic: ControlledStory = { render: InputTimeBasic, args: { placeholder: "Start time", }, }; export const Disabled: ControlledStory = { render: InputTimeBasic, args: { placeholder: "Start time", disabled: true, }, }; export const Invalid: ControlledStory = { render: InputTimeBasic, args: { placeholder: "Start time", invalid: "Start time is required", }, }; export const FormControlled: FormStory = { render: InputTimeFormControlled, args: { name: "startTime", placeholder: "Created time", }, }; export const EmptyValue: ControlledStory = { render: InputTimeEmptyValue, args: { placeholder: "Start time", emptyValueLabel: "Unscheduled", }, };