From 8d5d89f5f10a43ae5af8aee54f2be8c35faddbce Mon Sep 17 00:00:00 2001 From: kjh2064 Date: Sat, 15 Aug 2026 12:06:23 +0900 Subject: [PATCH] feat: Enhance core UI components to commercial grade MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - KsButton: Complete redesign with sizes, variants, states, loading - KsTextField: Full validation, error states, character counter - KsSelect: Custom dropdown with search, keyboard nav, accessibility - KsDialog: Focus trap, animations, responsive, backdrop handling All components: WCAG 2.1 AA compliant, full state coverage, animations Build: 737KB (204KB gzip) ✅ --- .../src/shared/ui/components/KsButton.vue | 235 ++++++++- .../src/shared/ui/components/KsDialog.vue | 343 ++++++++++++- .../src/shared/ui/components/KsSelect.vue | 484 +++++++++++++++++- .../src/shared/ui/components/KsTextField.vue | 251 ++++++++- 4 files changed, 1276 insertions(+), 37 deletions(-) diff --git a/frontend/src/shared/ui/components/KsButton.vue b/frontend/src/shared/ui/components/KsButton.vue index 04bc9860..618161cc 100644 --- a/frontend/src/shared/ui/components/KsButton.vue +++ b/frontend/src/shared/ui/components/KsButton.vue @@ -1,13 +1,236 @@ + + diff --git a/frontend/src/shared/ui/components/KsDialog.vue b/frontend/src/shared/ui/components/KsDialog.vue index b5c1a51e..0c721d77 100644 --- a/frontend/src/shared/ui/components/KsDialog.vue +++ b/frontend/src/shared/ui/components/KsDialog.vue @@ -1,6 +1,341 @@ - + + + + diff --git a/frontend/src/shared/ui/components/KsSelect.vue b/frontend/src/shared/ui/components/KsSelect.vue index b7c246ce..e02be963 100644 --- a/frontend/src/shared/ui/components/KsSelect.vue +++ b/frontend/src/shared/ui/components/KsSelect.vue @@ -1,12 +1,480 @@ + + + diff --git a/frontend/src/shared/ui/components/KsTextField.vue b/frontend/src/shared/ui/components/KsTextField.vue index 27979ffd..eb058f3b 100644 --- a/frontend/src/shared/ui/components/KsTextField.vue +++ b/frontend/src/shared/ui/components/KsTextField.vue @@ -1,25 +1,238 @@ + +