import VBadge from './VBadge.vue'; import type {VBadgeProps} from './types'; import {Story, Meta} from '@storybook/vue3'; import {defaultRounded, defaultColors} from '@gits-id/theme/defaultTheme'; import './VBadge.dark.scss'; const colors = defaultColors; export default { title: 'Components/Badge', component: VBadge, } as Meta; const Template: Story = (args) => ({ components: { VBadge, }, setup() { return {args, colors}; }, template: `
{{ args.label || color }}
`, }); export const Variants = Template.bind({}); Variants.args = {}; Variants.parameters = { docs: { source: { code: ` text text text text text text text text `, }, }, }; export const Rounded: Story = (args) => ({ components: { VBadge, }, setup() { return {args, defaultRounded}; }, template: `
{{ args.label || rounded }}
`, }); export const Dismissable: Story = (args) => ({ components: { VBadge, }, setup() { return {args}; }, template: `
small default large
`, }); export const Sizes: Story = (args) => ({ components: { VBadge, }, setup() { return {args, defaultRounded}; }, template: `
small default large
`, }); export const Large = Template.bind({}); Large.args = { large: true, }; Large.parameters = { docs: { source: { code: ` text `, }, }, }; export const Small = Template.bind({}); Small.args = { small: true, }; Small.parameters = { docs: { source: { code: ` text `, }, }, }; export const Outlined = Template.bind({}); Outlined.args = { outlined: true, }; Outlined.parameters = { docs: { source: { code: ` text `, }, }, }; const SingleTemplate: Story = (args) => ({ components: { VBadge, }, setup() { return {args}; }, template: `{{ args.label || 'Text' }}`, }); export const CustomClass = SingleTemplate.bind({}); CustomClass.args = { class: 'uppercase text-sm bg-teal-500 text-white', }; CustomClass.parameters = { docs: { source: { code: ` text `, }, }, }; export const DarkMode = () => ({ components: {VBadge}, setup() { return { colors, variants: ['default', 'outlined'], }; }, template: `

{{ variant }}

{{ color }}
`, });