diff --git a/packages/ui/src/components/base/TwoFactorAuthCodeInput.vue b/packages/ui/src/components/base/TwoFactorAuthCodeInput.vue new file mode 100644 index 0000000000..838ffcbb78 --- /dev/null +++ b/packages/ui/src/components/base/TwoFactorAuthCodeInput.vue @@ -0,0 +1,186 @@ + + + diff --git a/packages/ui/src/components/base/index.ts b/packages/ui/src/components/base/index.ts index 5afcec8f57..8357bf5aa0 100644 --- a/packages/ui/src/components/base/index.ts +++ b/packages/ui/src/components/base/index.ts @@ -97,4 +97,5 @@ export type { export { default as TimeFramePicker } from './TimeFramePicker.vue' export { default as Timeline } from './Timeline.vue' export { default as Toggle } from './Toggle.vue' +export { default as TwoFactorAuthCodeInput } from './TwoFactorAuthCodeInput.vue' export { default as UnsavedChangesPopup } from './UnsavedChangesPopup.vue' diff --git a/packages/ui/src/stories/base/TwoFactorAuthCodeInput.stories.ts b/packages/ui/src/stories/base/TwoFactorAuthCodeInput.stories.ts new file mode 100644 index 0000000000..14a4ac8bea --- /dev/null +++ b/packages/ui/src/stories/base/TwoFactorAuthCodeInput.stories.ts @@ -0,0 +1,51 @@ +import type { Meta, StoryObj } from '@storybook/vue3-vite' +import { ref } from 'vue' + +import TwoFactorAuthCodeInput from '../../components/base/TwoFactorAuthCodeInput.vue' + +const meta = { + title: 'Base/TwoFactorAuthCodeInput', + component: TwoFactorAuthCodeInput, +} satisfies Meta + +export default meta +type Story = StoryObj + +export const Default: Story = { + render: () => ({ + components: { TwoFactorAuthCodeInput }, + setup() { + const code = ref('') + return { code } + }, + template: ` + + `, + }), +} + +export const Filled: Story = { + render: () => ({ + components: { TwoFactorAuthCodeInput }, + setup() { + const code = ref('123456') + return { code } + }, + template: ` + + `, + }), +} + +export const Disabled: Story = { + render: () => ({ + components: { TwoFactorAuthCodeInput }, + setup() { + const code = ref('123456') + return { code } + }, + template: ` + + `, + }), +}