From d88e93cf91d679e0de869e3b9a09e14ef78fb493 Mon Sep 17 00:00:00 2001 From: azmiao <2362020227@qq.com> Date: Mon, 2 Nov 2026 10:23:00 +0800 Subject: [PATCH] style: add unified custom select dropdown --- web/src/features/admin/room-form-dialog.tsx | 16 +- web/src/features/queue/queue-page.tsx | 19 ++- web/src/features/queue/queue.css | 3 +- web/src/features/search/search-page.tsx | 17 +- web/src/features/search/search.css | 3 +- web/src/features/settings/settings-page.tsx | 43 +++-- web/src/features/settings/settings.css | 8 +- web/src/shared/ui/index.ts | 3 + web/src/shared/ui/select.css | 24 +++ web/src/shared/ui/select.tsx | 168 ++++++++++++++++++++ 10 files changed, 266 insertions(+), 38 deletions(-) create mode 100644 web/src/shared/ui/select.css create mode 100644 web/src/shared/ui/select.tsx diff --git a/web/src/features/admin/room-form-dialog.tsx b/web/src/features/admin/room-form-dialog.tsx index 1dd2ff6..c3c48d2 100644 --- a/web/src/features/admin/room-form-dialog.tsx +++ b/web/src/features/admin/room-form-dialog.tsx @@ -2,7 +2,7 @@ import type { AdminUpdateRoomRequest } from '@/core/api' import type { RoomListing } from '@/core/realtime' import { useId, useState } from 'react' import { api } from '@/core/api' -import { Modal } from '@/shared/ui' +import { Modal, Select } from '@/shared/ui' import { adminStore } from './admin-store' type PasswordChange = 'keep' | 'set' | 'remove' @@ -71,11 +71,15 @@ export function RoomFormDialog({ room, onSaved, onClose }: { room: RoomListing | {room && (