From e6e8d6a14391b28bbf08d632ef2aadffe5d4e0e5 Mon Sep 17 00:00:00 2001 From: keven1024 Date: Mon, 21 Apr 2025 09:03:17 +0800 Subject: [PATCH] feat(front): add UI components for label, progress, and select elements with TypeScript support --- front/components/ui/label/Label.vue | 28 ++++++++++ front/components/ui/label/index.ts | 1 + front/components/ui/progress/Progress.vue | 41 ++++++++++++++ front/components/ui/progress/index.ts | 1 + front/components/ui/select/Select.vue | 18 ++++++ front/components/ui/select/SelectContent.vue | 55 +++++++++++++++++++ front/components/ui/select/SelectGroup.vue | 14 +++++ front/components/ui/select/SelectItem.vue | 45 +++++++++++++++ front/components/ui/select/SelectItemText.vue | 14 +++++ front/components/ui/select/SelectLabel.vue | 16 ++++++ .../ui/select/SelectScrollDownButton.vue | 28 ++++++++++ .../ui/select/SelectScrollUpButton.vue | 28 ++++++++++ .../components/ui/select/SelectSeparator.vue | 21 +++++++ front/components/ui/select/SelectTrigger.vue | 32 +++++++++++ front/components/ui/select/SelectValue.vue | 14 +++++ front/components/ui/select/index.ts | 11 ++++ front/components/ui/switch/Switch.vue | 41 ++++++++++++++ front/components/ui/switch/index.ts | 1 + 18 files changed, 409 insertions(+) create mode 100644 front/components/ui/label/Label.vue create mode 100644 front/components/ui/label/index.ts create mode 100644 front/components/ui/progress/Progress.vue create mode 100644 front/components/ui/progress/index.ts create mode 100644 front/components/ui/select/Select.vue create mode 100644 front/components/ui/select/SelectContent.vue create mode 100644 front/components/ui/select/SelectGroup.vue create mode 100644 front/components/ui/select/SelectItem.vue create mode 100644 front/components/ui/select/SelectItemText.vue create mode 100644 front/components/ui/select/SelectLabel.vue create mode 100644 front/components/ui/select/SelectScrollDownButton.vue create mode 100644 front/components/ui/select/SelectScrollUpButton.vue create mode 100644 front/components/ui/select/SelectSeparator.vue create mode 100644 front/components/ui/select/SelectTrigger.vue create mode 100644 front/components/ui/select/SelectValue.vue create mode 100644 front/components/ui/select/index.ts create mode 100644 front/components/ui/switch/Switch.vue create mode 100644 front/components/ui/switch/index.ts diff --git a/front/components/ui/label/Label.vue b/front/components/ui/label/Label.vue new file mode 100644 index 0000000..33e5c6c --- /dev/null +++ b/front/components/ui/label/Label.vue @@ -0,0 +1,28 @@ + + + diff --git a/front/components/ui/label/index.ts b/front/components/ui/label/index.ts new file mode 100644 index 0000000..572c2f0 --- /dev/null +++ b/front/components/ui/label/index.ts @@ -0,0 +1 @@ +export { default as Label } from './Label.vue' diff --git a/front/components/ui/progress/Progress.vue b/front/components/ui/progress/Progress.vue new file mode 100644 index 0000000..377f85c --- /dev/null +++ b/front/components/ui/progress/Progress.vue @@ -0,0 +1,41 @@ + + + diff --git a/front/components/ui/progress/index.ts b/front/components/ui/progress/index.ts new file mode 100644 index 0000000..eace989 --- /dev/null +++ b/front/components/ui/progress/index.ts @@ -0,0 +1 @@ +export { default as Progress } from './Progress.vue' diff --git a/front/components/ui/select/Select.vue b/front/components/ui/select/Select.vue new file mode 100644 index 0000000..dc1f83d --- /dev/null +++ b/front/components/ui/select/Select.vue @@ -0,0 +1,18 @@ + + + diff --git a/front/components/ui/select/SelectContent.vue b/front/components/ui/select/SelectContent.vue new file mode 100644 index 0000000..bde01cf --- /dev/null +++ b/front/components/ui/select/SelectContent.vue @@ -0,0 +1,55 @@ + + + diff --git a/front/components/ui/select/SelectGroup.vue b/front/components/ui/select/SelectGroup.vue new file mode 100644 index 0000000..4f36d92 --- /dev/null +++ b/front/components/ui/select/SelectGroup.vue @@ -0,0 +1,14 @@ + + + diff --git a/front/components/ui/select/SelectItem.vue b/front/components/ui/select/SelectItem.vue new file mode 100644 index 0000000..cddae64 --- /dev/null +++ b/front/components/ui/select/SelectItem.vue @@ -0,0 +1,45 @@ + + + diff --git a/front/components/ui/select/SelectItemText.vue b/front/components/ui/select/SelectItemText.vue new file mode 100644 index 0000000..cff32ac --- /dev/null +++ b/front/components/ui/select/SelectItemText.vue @@ -0,0 +1,14 @@ + + + diff --git a/front/components/ui/select/SelectLabel.vue b/front/components/ui/select/SelectLabel.vue new file mode 100644 index 0000000..7da0ce2 --- /dev/null +++ b/front/components/ui/select/SelectLabel.vue @@ -0,0 +1,16 @@ + + + diff --git a/front/components/ui/select/SelectScrollDownButton.vue b/front/components/ui/select/SelectScrollDownButton.vue new file mode 100644 index 0000000..37162fd --- /dev/null +++ b/front/components/ui/select/SelectScrollDownButton.vue @@ -0,0 +1,28 @@ + + + diff --git a/front/components/ui/select/SelectScrollUpButton.vue b/front/components/ui/select/SelectScrollUpButton.vue new file mode 100644 index 0000000..d80dacc --- /dev/null +++ b/front/components/ui/select/SelectScrollUpButton.vue @@ -0,0 +1,28 @@ + + + diff --git a/front/components/ui/select/SelectSeparator.vue b/front/components/ui/select/SelectSeparator.vue new file mode 100644 index 0000000..ab51b07 --- /dev/null +++ b/front/components/ui/select/SelectSeparator.vue @@ -0,0 +1,21 @@ + + + diff --git a/front/components/ui/select/SelectTrigger.vue b/front/components/ui/select/SelectTrigger.vue new file mode 100644 index 0000000..97c69a2 --- /dev/null +++ b/front/components/ui/select/SelectTrigger.vue @@ -0,0 +1,32 @@ + + + diff --git a/front/components/ui/select/SelectValue.vue b/front/components/ui/select/SelectValue.vue new file mode 100644 index 0000000..f198b96 --- /dev/null +++ b/front/components/ui/select/SelectValue.vue @@ -0,0 +1,14 @@ + + + diff --git a/front/components/ui/select/index.ts b/front/components/ui/select/index.ts new file mode 100644 index 0000000..31b9294 --- /dev/null +++ b/front/components/ui/select/index.ts @@ -0,0 +1,11 @@ +export { default as Select } from './Select.vue' +export { default as SelectContent } from './SelectContent.vue' +export { default as SelectGroup } from './SelectGroup.vue' +export { default as SelectItem } from './SelectItem.vue' +export { default as SelectItemText } from './SelectItemText.vue' +export { default as SelectLabel } from './SelectLabel.vue' +export { default as SelectScrollDownButton } from './SelectScrollDownButton.vue' +export { default as SelectScrollUpButton } from './SelectScrollUpButton.vue' +export { default as SelectSeparator } from './SelectSeparator.vue' +export { default as SelectTrigger } from './SelectTrigger.vue' +export { default as SelectValue } from './SelectValue.vue' diff --git a/front/components/ui/switch/Switch.vue b/front/components/ui/switch/Switch.vue new file mode 100644 index 0000000..5f59ee1 --- /dev/null +++ b/front/components/ui/switch/Switch.vue @@ -0,0 +1,41 @@ + + + diff --git a/front/components/ui/switch/index.ts b/front/components/ui/switch/index.ts new file mode 100644 index 0000000..87b4b17 --- /dev/null +++ b/front/components/ui/switch/index.ts @@ -0,0 +1 @@ +export { default as Switch } from './Switch.vue'