Files
AstralRinth/packages/ui/src/stories/base/DropArea.stories.ts
T
Truman Gao daf804947c devex: storybook for UI Package (#4984)
* add storybook

* clean up stories

* small fix

* add stories for all components

* add vintl

* default to dark mode

* fix  teleport

* add theme addon

* add new modal story

* delete broken stories

* move all stories to central stories folder

* fix paths

* add pnpm run storybook

* remove chromatic

* add add-stories.md

* fix types

* fix unncessary args field

* cover more addordion states

* pt2

* remove old vintl

* fix: missing style + ctx

---------

Co-authored-by: Calum H. (IMB11) <contact@cal.engineer>
2026-01-02 00:32:58 +00:00

39 lines
1.1 KiB
TypeScript

import type { Meta, StoryObj } from '@storybook/vue3-vite'
import DropArea from '../../components/base/DropArea.vue'
const meta = {
title: 'Base/DropArea',
component: DropArea,
} satisfies Meta<typeof DropArea>
export default meta
export const Default: StoryObj = {
render: () => ({
components: { DropArea },
template: `
<DropArea accept="*" @change="(files) => console.log('Files dropped:', files)">
<div class="p-8 border-2 border-dashed border-divider rounded-lg text-center">
<p class="text-secondary">Drag and drop files anywhere on the page</p>
<p class="text-sm text-secondary mt-2">The drop overlay will appear when you drag files over</p>
</div>
</DropArea>
`,
}),
}
export const ImagesOnly: StoryObj = {
render: () => ({
components: { DropArea },
template: `
<DropArea accept="image/*" @change="(files) => console.log('Images dropped:', files)">
<div class="p-8 border-2 border-dashed border-divider rounded-lg text-center">
<p class="text-secondary">Drop images here</p>
<p class="text-sm text-secondary mt-2">Only accepts image files</p>
</div>
</DropArea>
`,
}),
}