Files
Modrinth-plus/packages/ui/src/stories/base/Checkbox.stories.ts
Calum H. 620894aecb feat: backups page cleanup before worlds (#5844)
* feat: card alignment + fix modals

* feat: change admon title in restore alert modal

* fix: lint

* feat: backups queue api into api-client

* feat: impl backup queue api endpoints into frontend

* feat: ack fix

* feat: bulk actions

* feat: bulk delete impl

* fix: lint

* fix: align error states

* fix: transition group

* feat: ready for qa

* fix: lint

* feat: qa

* feat: stacked admonitions component

* fix: issues with stacking

* feat: hook up admonition stacking + fix app csp for staging kyros nodes

* fix: logs.vue

* qa: close stack on admonitions click

* fix: all problems with stacked admonitions

* qa: admonition cleanup and copy overhaul draft

* fix: qa issues padding

* fix: padding bug

* feat: qa

* fix: intercom in app csp bug

* fix: positioning intercom

* feat: loading overlay on top of console + admon consistency changes

* feat: scroll indicator fade in backup delete modal + admon timestamp fix

* feat: move action bar behind modal

* fix: lint + i18n

* fix: server ping spam on filter (cache but clear on unmount)

* fix: 1 admon fade in flicker issue

* chore: temp staging undo

* qa: changes

* fix: lint

* chore: revert staging to use staging

* fix: scoping
2026-04-27 19:03:48 +00:00

65 lines
1.4 KiB
TypeScript

import type { Meta, StoryObj } from '@storybook/vue3-vite'
import Checkbox from '../../components/base/Checkbox.vue'
const meta = {
title: 'Base/Checkbox',
component: Checkbox,
} satisfies Meta<typeof Checkbox>
export default meta
type Story = StoryObj<typeof meta>
export const Default: Story = {
args: {
label: 'Accept terms and conditions',
modelValue: false,
},
}
export const Checked: Story = {
args: {
label: 'Accept terms and conditions',
modelValue: true,
},
}
export const Disabled: Story = {
args: {
label: 'Disabled checkbox',
modelValue: false,
disabled: true,
},
}
export const Indeterminate: Story = {
args: {
label: 'Indeterminate state',
modelValue: false,
indeterminate: true,
},
}
export const LabelClass: Story = {
args: {
label: 'Custom label class',
labelClass: 'text-brand font-bold',
modelValue: true,
},
}
export const AllStates: StoryObj = {
render: () => ({
components: { Checkbox },
template: /*html*/ `
<div style="display: flex; flex-direction: column; gap: 1rem;">
<Checkbox label="Unchecked" :model-value="false" />
<Checkbox label="Checked" :model-value="true" />
<Checkbox label="Indeterminate" :model-value="false" :indeterminate="true" />
<Checkbox label="Disabled unchecked" :model-value="false" :disabled="true" />
<Checkbox label="Disabled checked" :model-value="true" :disabled="true" />
</div>
`,
}),
}