|
@@ -29,9 +29,10 @@ export const AllSettingSchema = z.object({
|
|
|
ldapUserFilter: z.string(),
|
|
ldapUserFilter: z.string(),
|
|
|
ldapVlessField: z.string(),
|
|
ldapVlessField: z.string(),
|
|
|
pageSize: z.number().int().min(1).max(1000),
|
|
pageSize: z.number().int().min(1).max(1000),
|
|
|
|
|
+ panelProxy: z.string(),
|
|
|
remarkModel: z.string(),
|
|
remarkModel: z.string(),
|
|
|
restartXrayOnClientDisable: z.boolean(),
|
|
restartXrayOnClientDisable: z.boolean(),
|
|
|
- sessionMaxAge: z.number().int().min(0).max(525600),
|
|
|
|
|
|
|
+ sessionMaxAge: z.number().int().min(1).max(525600),
|
|
|
subAnnounce: z.string(),
|
|
subAnnounce: z.string(),
|
|
|
subCertFile: z.string(),
|
|
subCertFile: z.string(),
|
|
|
subClashEnable: z.boolean(),
|
|
subClashEnable: z.boolean(),
|
|
@@ -116,9 +117,10 @@ export const AllSettingViewSchema = z.object({
|
|
|
ldapUserFilter: z.string(),
|
|
ldapUserFilter: z.string(),
|
|
|
ldapVlessField: z.string(),
|
|
ldapVlessField: z.string(),
|
|
|
pageSize: z.number().int().min(1).max(1000),
|
|
pageSize: z.number().int().min(1).max(1000),
|
|
|
|
|
+ panelProxy: z.string(),
|
|
|
remarkModel: z.string(),
|
|
remarkModel: z.string(),
|
|
|
restartXrayOnClientDisable: z.boolean(),
|
|
restartXrayOnClientDisable: z.boolean(),
|
|
|
- sessionMaxAge: z.number().int().min(0).max(525600),
|
|
|
|
|
|
|
+ sessionMaxAge: z.number().int().min(1).max(525600),
|
|
|
subAnnounce: z.string(),
|
|
subAnnounce: z.string(),
|
|
|
subCertFile: z.string(),
|
|
subCertFile: z.string(),
|
|
|
subClashEnable: z.boolean(),
|
|
subClashEnable: z.boolean(),
|
|
@@ -188,6 +190,7 @@ export const ClientSchema = z.object({
|
|
|
enable: z.boolean(),
|
|
enable: z.boolean(),
|
|
|
expiryTime: z.number().int(),
|
|
expiryTime: z.number().int(),
|
|
|
flow: z.string().optional(),
|
|
flow: z.string().optional(),
|
|
|
|
|
+ group: z.string().optional(),
|
|
|
id: z.string().optional(),
|
|
id: z.string().optional(),
|
|
|
limitIp: z.number().int(),
|
|
limitIp: z.number().int(),
|
|
|
password: z.string().optional(),
|
|
password: z.string().optional(),
|
|
@@ -217,6 +220,7 @@ export const ClientRecordSchema = z.object({
|
|
|
enable: z.boolean(),
|
|
enable: z.boolean(),
|
|
|
expiryTime: z.number().int(),
|
|
expiryTime: z.number().int(),
|
|
|
flow: z.string(),
|
|
flow: z.string(),
|
|
|
|
|
+ group: z.string(),
|
|
|
id: z.number().int(),
|
|
id: z.number().int(),
|
|
|
limitIp: z.number().int(),
|
|
limitIp: z.number().int(),
|
|
|
password: z.string(),
|
|
password: z.string(),
|
|
@@ -288,7 +292,7 @@ export const InboundSchema = z.object({
|
|
|
listen: z.string(),
|
|
listen: z.string(),
|
|
|
nodeId: z.number().int().nullable().optional(),
|
|
nodeId: z.number().int().nullable().optional(),
|
|
|
port: z.number().int().min(1).max(65535),
|
|
port: z.number().int().min(1).max(65535),
|
|
|
- protocol: z.enum(['vmess', 'vless', 'trojan', 'shadowsocks', 'wireguard', 'hysteria', 'hysteria2', 'http', 'mixed', 'tunnel']),
|
|
|
|
|
|
|
+ protocol: z.enum(['vmess', 'vless', 'trojan', 'shadowsocks', 'wireguard', 'hysteria', 'http', 'mixed', 'tunnel']),
|
|
|
remark: z.string(),
|
|
remark: z.string(),
|
|
|
settings: z.unknown(),
|
|
settings: z.unknown(),
|
|
|
sniffing: z.unknown(),
|
|
sniffing: z.unknown(),
|
|
@@ -310,6 +314,7 @@ export type InboundClientIps = z.infer<typeof InboundClientIpsSchema>;
|
|
|
export const InboundFallbackSchema = z.object({
|
|
export const InboundFallbackSchema = z.object({
|
|
|
alpn: z.string(),
|
|
alpn: z.string(),
|
|
|
childId: z.number().int(),
|
|
childId: z.number().int(),
|
|
|
|
|
+ dest: z.string(),
|
|
|
id: z.number().int(),
|
|
id: z.number().int(),
|
|
|
masterId: z.number().int(),
|
|
masterId: z.number().int(),
|
|
|
name: z.string(),
|
|
name: z.string(),
|