diff --git a/apps/web/src/lib/schemas.ts b/apps/web/src/lib/schemas.ts index 989bc21..d61c576 100644 --- a/apps/web/src/lib/schemas.ts +++ b/apps/web/src/lib/schemas.ts @@ -42,6 +42,9 @@ export const vpsSchema = z.object({ dns: z.string().optional().default(''), providerId: z.string().min(1, 'Выберите хостера'), providerAccountId: z.string().min(1, 'Выберите аккаунт'), + country: z.string().optional().default(''), + city: z.string().optional().default(''), + datacenter: z.string().optional().default(''), vcpu: z.coerce.number().int().min(0).default(1), ramGb: z.coerce.number().min(0).default(1), diskGb: z.coerce.number().min(0).default(10), diff --git a/apps/web/src/routes/_auth/vps.tsx b/apps/web/src/routes/_auth/vps.tsx index d28c5e7..d792292 100644 --- a/apps/web/src/routes/_auth/vps.tsx +++ b/apps/web/src/routes/_auth/vps.tsx @@ -42,6 +42,7 @@ export const Route = createFileRoute('/_auth/vps')({ const EMPTY_FORM: VpsFormValues = { ip: '', dns: '', providerId: '', providerAccountId: '', + country: '', city: '', datacenter: '', vcpu: 1, ramGb: 1, diskGb: 10, status: 'active', tariffType: 'monthly', currency: 'RUB', monthlyRate: 0, dailyRate: 0, paidUntil: '', project: '', notes: '', } @@ -102,6 +103,7 @@ function VpsPage() { setEditingId(v.id) setDefaultValues({ id: v.id, ip: v.ip, dns: v.dns ?? '', providerId: v.providerId, providerAccountId: v.providerAccountId, + country: v.country ?? '', city: v.city ?? '', datacenter: v.datacenter ?? '', vcpu: v.vcpu, ramGb: v.ramGb, diskGb: v.diskGb, status: v.status, tariffType: v.tariffType, currency: v.currency, monthlyRate: Number(v.monthlyRate ?? 0), dailyRate: Number(v.dailyRate ?? 0), paidUntil: v.paidUntil ?? '', project: v.project ?? '', notes: v.notes ?? '', @@ -337,6 +339,17 @@ function VpsPage() { +
+ + + + + + + + + +