diff --git a/packages/stage-ui/src/components/form/select/select.story.vue b/packages/stage-ui/src/components/form/select/select.story.vue new file mode 100644 index 000000000..071c1d96a --- /dev/null +++ b/packages/stage-ui/src/components/form/select/select.story.vue @@ -0,0 +1,162 @@ + + + + + + + + + + + + + Selected: {{ basicValue || 'none' }} + + + + + + + + + Grouped value: {{ groupedValue || 'none' }} + + + + + + + + + + + + + {{ slotProps.option.label }} + + {{ slotProps.option.description }} + + + + + {{ slotProps.option.value }} + + + + + + Custom option value: {{ customValue || 'none' }} + + + + + + + + + Disabled selection: {{ disabledValue || 'none' }} + + + + + diff --git a/packages/ui/README.md b/packages/ui/README.md index 5eecf80f4..cc7b63ac9 100644 --- a/packages/ui/README.md +++ b/packages/ui/README.md @@ -58,6 +58,7 @@ import { Button } from '@proj-airi/ui' * [TransitionVertical](src/components/Animations/TransitionVertical.vue) * [Form](src/components/Form) * [Checkbox](src/components/Form/Checkbox) + * [Select](src/components/Form/Select) * [Field](src/components/Form/Field) * [Input](src/components/Form/Input) * [Radio](src/components/Form/Radio) diff --git a/packages/ui/src/components/form/index.ts b/packages/ui/src/components/form/index.ts index 7d88fa18f..9e36478d4 100644 --- a/packages/ui/src/components/form/index.ts +++ b/packages/ui/src/components/form/index.ts @@ -5,5 +5,6 @@ export * from './field' export * from './input' export * from './radio' export * from './range' +export * from './select' export * from './select-tab' export * from './textarea' diff --git a/packages/ui/src/components/form/select/index.ts b/packages/ui/src/components/form/select/index.ts new file mode 100644 index 000000000..1b0abd8ca --- /dev/null +++ b/packages/ui/src/components/form/select/index.ts @@ -0,0 +1,2 @@ +export { default as SelectOption } from './select-option.vue' +export { default as Select } from './select.vue' diff --git a/packages/ui/src/components/form/select/select-option.vue b/packages/ui/src/components/form/select/select-option.vue new file mode 100644 index 000000000..6ba2f1773 --- /dev/null +++ b/packages/ui/src/components/form/select/select-option.vue @@ -0,0 +1,89 @@ + + + + + + + + + + {{ props.option.label }} + + + + + + + + + {{ props.option.label }} + + + + {{ props.option.description }} + + + + + + diff --git a/packages/ui/src/components/form/select/select.vue b/packages/ui/src/components/form/select/select.vue new file mode 100644 index 000000000..94b3ba087 --- /dev/null +++ b/packages/ui/src/components/form/select/select.vue @@ -0,0 +1,175 @@ + + + + + + + + + + + + + + + + + + + + + {{ group.groupLabel }} + + + + + + + + + + + + + + + +
+ Selected: {{ basicValue || 'none' }} +
+ Grouped value: {{ groupedValue || 'none' }} +
+ Custom option value: {{ customValue || 'none' }} +
+ Disabled selection: {{ disabledValue || 'none' }} +