mirror of
https://github.com/tiennm99/ccs.git
synced 2026-10-12 20:15:40 +00:00
fix(ui): add trim validation for composite tier model fields
- Use z.string().trim().min(1) to reject whitespace-only models - Apply to all 3 tiers (opus, sonnet, haiku) in both dialogs
This commit is contained in:
1 parent
ef77607c41
commit
b6e1d0c481
2 files changed
+6
-6
No files matched your search
@@ -37,17 +37,17 @@ const compositeSchema = z.object({
|
|||||||
tiers: z.object({
|
tiers: z.object({
|
||||||
opus: z.object({
|
opus: z.object({
|
||||||
provider: z.enum(CLIPROXY_PROVIDERS, { message: 'Provider is required' }),
|
provider: z.enum(CLIPROXY_PROVIDERS, { message: 'Provider is required' }),
|
||||||
model: z.string().min(1, 'Model is required'),
|
model: z.string().trim().min(1, 'Model is required'),
|
||||||
account: z.string().optional(),
|
account: z.string().optional(),
|
||||||
}),
|
}),
|
||||||
sonnet: z.object({
|
sonnet: z.object({
|
||||||
provider: z.enum(CLIPROXY_PROVIDERS, { message: 'Provider is required' }),
|
provider: z.enum(CLIPROXY_PROVIDERS, { message: 'Provider is required' }),
|
||||||
model: z.string().min(1, 'Model is required'),
|
model: z.string().trim().min(1, 'Model is required'),
|
||||||
account: z.string().optional(),
|
account: z.string().optional(),
|
||||||
}),
|
}),
|
||||||
haiku: z.object({
|
haiku: z.object({
|
||||||
provider: z.enum(CLIPROXY_PROVIDERS, { message: 'Provider is required' }),
|
provider: z.enum(CLIPROXY_PROVIDERS, { message: 'Provider is required' }),
|
||||||
model: z.string().min(1, 'Model is required'),
|
model: z.string().trim().min(1, 'Model is required'),
|
||||||
account: z.string().optional(),
|
account: z.string().optional(),
|
||||||
}),
|
}),
|
||||||
}),
|
}),
|
||||||
|
|||||||
@@ -27,17 +27,17 @@ const compositeSchema = z.object({
|
|||||||
tiers: z.object({
|
tiers: z.object({
|
||||||
opus: z.object({
|
opus: z.object({
|
||||||
provider: z.enum(CLIPROXY_PROVIDERS, { message: 'Provider is required' }),
|
provider: z.enum(CLIPROXY_PROVIDERS, { message: 'Provider is required' }),
|
||||||
model: z.string().min(1, 'Model is required'),
|
model: z.string().trim().min(1, 'Model is required'),
|
||||||
account: z.string().optional(),
|
account: z.string().optional(),
|
||||||
}),
|
}),
|
||||||
sonnet: z.object({
|
sonnet: z.object({
|
||||||
provider: z.enum(CLIPROXY_PROVIDERS, { message: 'Provider is required' }),
|
provider: z.enum(CLIPROXY_PROVIDERS, { message: 'Provider is required' }),
|
||||||
model: z.string().min(1, 'Model is required'),
|
model: z.string().trim().min(1, 'Model is required'),
|
||||||
account: z.string().optional(),
|
account: z.string().optional(),
|
||||||
}),
|
}),
|
||||||
haiku: z.object({
|
haiku: z.object({
|
||||||
provider: z.enum(CLIPROXY_PROVIDERS, { message: 'Provider is required' }),
|
provider: z.enum(CLIPROXY_PROVIDERS, { message: 'Provider is required' }),
|
||||||
model: z.string().min(1, 'Model is required'),
|
model: z.string().trim().min(1, 'Model is required'),
|
||||||
account: z.string().optional(),
|
account: z.string().optional(),
|
||||||
}),
|
}),
|
||||||
}),
|
}),
|
||||||
|
|||||||
Reference in new issue
Block a user