diff --git a/web/default/src/components/data-table/pagination.tsx b/web/default/src/components/data-table/pagination.tsx index a3df3c5b..7ae40c52 100644 --- a/web/default/src/components/data-table/pagination.tsx +++ b/web/default/src/components/data-table/pagination.tsx @@ -11,6 +11,7 @@ import { Button } from '@/components/ui/button' import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -45,6 +46,12 @@ export function DataTablePagination({

diff --git a/web/default/src/components/ui/select.tsx b/web/default/src/components/ui/select.tsx index ef0b5888..34c534df 100644 --- a/web/default/src/components/ui/select.tsx +++ b/web/default/src/components/ui/select.tsx @@ -93,7 +93,7 @@ function SelectContent({ data-slot='select-content' data-align-trigger={alignItemWithTrigger} className={cn( - 'dark bg-popover text-popover-foreground ring-foreground/10 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 relative isolate z-50 max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg shadow-md ring-1 duration-100 data-[align-trigger=true]:animate-none', + 'bg-popover text-popover-foreground ring-foreground/10 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 relative isolate z-50 max-h-(--available-height) w-(--anchor-width) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg shadow-md ring-1 duration-100 data-[align-trigger=true]:animate-none', className )} {...props} diff --git a/web/default/src/features/channels/components/dialogs/channel-test-dialog.tsx b/web/default/src/features/channels/components/dialogs/channel-test-dialog.tsx index 5e2a3419..2985e283 100644 --- a/web/default/src/features/channels/components/dialogs/channel-test-dialog.tsx +++ b/web/default/src/features/channels/components/dialogs/channel-test-dialog.tsx @@ -25,6 +25,7 @@ import { Label } from '@/components/ui/label' import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -431,21 +432,29 @@ export function ChannelTestDialog({

diff --git a/web/default/src/features/channels/components/dialogs/edit-tag-dialog.tsx b/web/default/src/features/channels/components/dialogs/edit-tag-dialog.tsx index 92c345d0..bd5b2a3a 100644 --- a/web/default/src/features/channels/components/dialogs/edit-tag-dialog.tsx +++ b/web/default/src/features/channels/components/dialogs/edit-tag-dialog.tsx @@ -18,6 +18,7 @@ import { ScrollArea } from '@/components/ui/scroll-area' import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -276,6 +277,12 @@ export function EditTagDialog({ open, onOpenChange }: EditTagDialogProps) {

+ items={[ + ...availableModels.map((model) => ({ + value: model, + label: model, + })), + ]} onValueChange={(value) => { if (value === null) return if (!selectedModels.includes(value)) { @@ -288,14 +295,16 @@ export function EditTagDialog({ open, onOpenChange }: EditTagDialogProps) { placeholder={t('Add from available models...')} /> - - - {availableModels.map((model) => ( - - {model} - - ))} - + + + + {availableModels.map((model) => ( + + {model} + + ))} + +
diff --git a/web/default/src/features/channels/components/dialogs/multi-key-manage-dialog.tsx b/web/default/src/features/channels/components/dialogs/multi-key-manage-dialog.tsx index 269e3266..bb355ef8 100644 --- a/web/default/src/features/channels/components/dialogs/multi-key-manage-dialog.tsx +++ b/web/default/src/features/channels/components/dialogs/multi-key-manage-dialog.tsx @@ -14,6 +14,7 @@ import { import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -257,18 +258,26 @@ export function MultiKeyManageDialog({ {/* Toolbar */}
diff --git a/web/default/src/features/channels/components/dialogs/param-override-editor-dialog.tsx b/web/default/src/features/channels/components/dialogs/param-override-editor-dialog.tsx index 255fcced..560e2456 100644 --- a/web/default/src/features/channels/components/dialogs/param-override-editor-dialog.tsx +++ b/web/default/src/features/channels/components/dialogs/param-override-editor-dialog.tsx @@ -38,6 +38,7 @@ import { ScrollArea } from '@/components/ui/scroll-area' import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -1722,6 +1723,12 @@ export function ParamOverrideEditorDialog( {t('Template')}
@@ -2339,6 +2356,10 @@ function RuleEditor(ruleEditorProps: RuleEditorProps) {
{t('Conditions')}
@@ -2515,6 +2538,12 @@ function ConditionEditor(conditionEditorProps: ConditionEditorProps) { {t('Match Mode')}
@@ -2889,6 +2920,10 @@ function PruneObjectsEditor(pruneObjectsEditorProps: PruneObjectsEditorProps) {
@@ -3021,6 +3058,12 @@ function PruneObjectsEditor(pruneObjectsEditorProps: PruneObjectsEditorProps) { {t('Match Mode')}
@@ -3126,6 +3171,12 @@ function SyncFieldsEditor(syncFieldsEditorProps: SyncFieldsEditorProps) {
{t('AWS Key Format')} @@ -1534,6 +1544,10 @@ export function ChannelMutateDrawer({ {t('Vertex AI Key Format')} @@ -1672,6 +1690,22 @@ export function ChannelMutateDrawer({ {t('API Base URL *')} @@ -1790,6 +1826,12 @@ export function ChannelMutateDrawer({ {t('Add Mode')} @@ -2027,6 +2071,16 @@ export function ChannelMutateDrawer({ {t('Key Update Mode')} @@ -2067,6 +2123,10 @@ export function ChannelMutateDrawer({ {t('Multi-Key Strategy')} diff --git a/web/default/src/features/dashboard/components/models/models-chart-preferences.tsx b/web/default/src/features/dashboard/components/models/models-chart-preferences.tsx index 0af10d9c..368df17d 100644 --- a/web/default/src/features/dashboard/components/models/models-chart-preferences.tsx +++ b/web/default/src/features/dashboard/components/models/models-chart-preferences.tsx @@ -16,6 +16,7 @@ import { Label } from '@/components/ui/label' import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -73,6 +74,12 @@ export function ModelsChartPreferences(props: ModelsChartPreferencesProps) {
@@ -99,6 +108,12 @@ export function ModelsChartPreferences(props: ModelsChartPreferencesProps) { {t('Default time granularity')}
@@ -125,6 +142,12 @@ export function ModelsChartPreferences(props: ModelsChartPreferencesProps) { {t('Default consumption chart')}
@@ -152,6 +177,12 @@ export function ModelsChartPreferences(props: ModelsChartPreferencesProps) { {t('Default model call chart')} diff --git a/web/default/src/features/dashboard/components/models/models-filter-dialog.tsx b/web/default/src/features/dashboard/components/models/models-filter-dialog.tsx index 2d4662dc..be6e3bf7 100644 --- a/web/default/src/features/dashboard/components/models/models-filter-dialog.tsx +++ b/web/default/src/features/dashboard/components/models/models-filter-dialog.tsx @@ -20,6 +20,7 @@ import { ScrollArea } from '@/components/ui/scroll-area' import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -197,6 +198,12 @@ export function ModelsFilter(props: ModelsFilterProps) {
diff --git a/web/default/src/features/models/components/dialogs/create-deployment-drawer.tsx b/web/default/src/features/models/components/dialogs/create-deployment-drawer.tsx index 046bcc27..4f18693b 100644 --- a/web/default/src/features/models/components/dialogs/create-deployment-drawer.tsx +++ b/web/default/src/features/models/components/dialogs/create-deployment-drawer.tsx @@ -18,6 +18,7 @@ import { Input } from '@/components/ui/input' import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -432,6 +433,12 @@ export function CreateDeploymentDrawer({ {t('Hardware type')} @@ -593,6 +602,10 @@ export function CreateDeploymentDrawer({ {t('Billing currency')} diff --git a/web/default/src/features/models/components/dialogs/upstream-conflict-dialog.tsx b/web/default/src/features/models/components/dialogs/upstream-conflict-dialog.tsx index 95a406bd..1a721d68 100644 --- a/web/default/src/features/models/components/dialogs/upstream-conflict-dialog.tsx +++ b/web/default/src/features/models/components/dialogs/upstream-conflict-dialog.tsx @@ -36,6 +36,7 @@ import { import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -550,6 +551,12 @@ export function UpstreamConflictDialog({ {t('Rows per page')} diff --git a/web/default/src/features/models/components/dialogs/view-logs-dialog.tsx b/web/default/src/features/models/components/dialogs/view-logs-dialog.tsx index 5fb91f2c..02bab9d7 100644 --- a/web/default/src/features/models/components/dialogs/view-logs-dialog.tsx +++ b/web/default/src/features/models/components/dialogs/view-logs-dialog.tsx @@ -12,6 +12,7 @@ import { import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -175,6 +176,27 @@ export function ViewLogsDialog({ {t('Container')}
{t('Stream')}
diff --git a/web/default/src/features/models/components/drawers/model-mutate-drawer.tsx b/web/default/src/features/models/components/drawers/model-mutate-drawer.tsx index 9028ba10..cd645291 100644 --- a/web/default/src/features/models/components/drawers/model-mutate-drawer.tsx +++ b/web/default/src/features/models/components/drawers/model-mutate-drawer.tsx @@ -27,6 +27,7 @@ import { RadioGroup, RadioGroupItem } from '@/components/ui/radio-group' import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -701,6 +702,12 @@ export function ModelMutateDrawer({ {t('Vendor')} @@ -801,6 +813,12 @@ export function ModelMutateDrawer({

{t('Endpoints')}

+ items={[ + ...Object.keys(ENDPOINT_TEMPLATES).map((key) => ({ + value: key, + label: key, + })), + ]} onValueChange={(v) => v !== null && handleFillEndpointTemplate(v) } @@ -808,12 +826,14 @@ export function ModelMutateDrawer({ - - {Object.keys(ENDPOINT_TEMPLATES).map((key) => ( - - {key} - - ))} + + + {Object.keys(ENDPOINT_TEMPLATES).map((key) => ( + + {key} + + ))} +
diff --git a/web/default/src/features/models/components/drawers/prefill-group-form-drawer.tsx b/web/default/src/features/models/components/drawers/prefill-group-form-drawer.tsx index 60f8c1a8..5f9c14b6 100644 --- a/web/default/src/features/models/components/drawers/prefill-group-form-drawer.tsx +++ b/web/default/src/features/models/components/drawers/prefill-group-form-drawer.tsx @@ -19,6 +19,7 @@ import { Input } from '@/components/ui/input' import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -252,6 +253,22 @@ export function PrefillGroupFormDrawer({ Group Type diff --git a/web/default/src/features/profile/components/language-preferences-card.tsx b/web/default/src/features/profile/components/language-preferences-card.tsx index 48e7b683..32e82afe 100644 --- a/web/default/src/features/profile/components/language-preferences-card.tsx +++ b/web/default/src/features/profile/components/language-preferences-card.tsx @@ -6,6 +6,7 @@ import { useAuthStore } from '@/stores/auth-store' import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -112,6 +113,12 @@ export function LanguagePreferencesCard(props: LanguagePreferencesCardProps) {
{saving && ( diff --git a/web/default/src/features/subscriptions/components/dialogs/subscription-purchase-dialog.tsx b/web/default/src/features/subscriptions/components/dialogs/subscription-purchase-dialog.tsx index 60332fd5..2bca3eb7 100644 --- a/web/default/src/features/subscriptions/components/dialogs/subscription-purchase-dialog.tsx +++ b/web/default/src/features/subscriptions/components/dialogs/subscription-purchase-dialog.tsx @@ -13,6 +13,7 @@ import { import { Select, SelectContent, + SelectGroup, SelectItem, SelectTrigger, SelectValue, @@ -270,6 +271,12 @@ export function SubscriptionPurchaseDialog(props: Props) { {hasEpay && (