Token foundation: fix 16 palette colours to match official ADS_COLORS, add 5 new palettes (teal, brown, purple, fuchsia, yellow), realign semantic tokens (primary=navy, info=bright blue), fix border radii to 8px base, add responsive heading typography. Component migration: swap primary/info references across all existing components, update Button (44px/semibold), Switch (green/compact), Chip (30px/8px radius + colour variants), SideNav (80px rail), Tag (11 colours). New components: SideNav, TopBar, Avatar, Tabs, PageHeader, Slider, RangeSlider, FileInput, DataTable, List, Autocomplete. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
43 lines
824 B
TypeScript
43 lines
824 B
TypeScript
import type { Meta, StoryObj } from '@storybook/react'
|
|
import { FileInput } from './FileInput'
|
|
|
|
const meta: Meta<typeof FileInput> = {
|
|
title: 'Atoms/FileInput',
|
|
component: FileInput,
|
|
tags: ['autodocs'],
|
|
parameters: { layout: 'padded' },
|
|
}
|
|
|
|
export default meta
|
|
type Story = StoryObj<typeof FileInput>
|
|
|
|
export const Default: Story = {
|
|
args: {
|
|
label: 'Upload document',
|
|
description: 'Supported formats: PDF, DOCX, PNG',
|
|
},
|
|
}
|
|
|
|
export const Multiple: Story = {
|
|
args: {
|
|
label: 'Upload files',
|
|
multiple: true,
|
|
accept: '.pdf,.docx,.png,.jpg',
|
|
},
|
|
}
|
|
|
|
export const WithError: Story = {
|
|
name: 'With error',
|
|
args: {
|
|
label: 'Upload evidence',
|
|
error: 'File size must be under 10MB',
|
|
},
|
|
}
|
|
|
|
export const Disabled: Story = {
|
|
args: {
|
|
label: 'Upload document',
|
|
disabled: true,
|
|
},
|
|
}
|