2026-08-31 14:49:28 +08:00
|
|
|
export type WhiteIpItem = {
|
|
|
|
|
id: number
|
|
|
|
|
ip: string
|
2026-09-18 13:17:23 +08:00
|
|
|
description?: string
|
2026-08-31 14:49:28 +08:00
|
|
|
isLocked: string
|
2026-09-18 13:17:23 +08:00
|
|
|
createTime: number | string
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 短效无限量最新套餐详情
|
|
|
|
|
export type UnlimitedAvailable = {
|
|
|
|
|
packId: number
|
|
|
|
|
poolType: number
|
|
|
|
|
durationType: number
|
|
|
|
|
usage: number
|
|
|
|
|
expireTime: number
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 短效池类型
|
|
|
|
|
export const POOL_TYPE_LABELS: Record<number, string> = {
|
|
|
|
|
1: "经典池",
|
|
|
|
|
11: "白金池",
|
|
|
|
|
99: "全池",
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 有效期类型
|
|
|
|
|
export const DURATION_TYPE_LABELS: Record<number, string> = {
|
|
|
|
|
5: "1至5分钟",
|
|
|
|
|
25: "5至25分钟",
|
|
|
|
|
180: "25至180分钟",
|
|
|
|
|
360: "3至6小时",
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export function formatPoolType(value: number | string | undefined): string {
|
|
|
|
|
if (value === undefined || value === null || value === "") return ""
|
|
|
|
|
return POOL_TYPE_LABELS[Number(value)] ?? String(value)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export function formatDurationType(value: number | string | undefined): string {
|
|
|
|
|
if (value === undefined || value === null || value === "") return ""
|
|
|
|
|
return DURATION_TYPE_LABELS[Number(value)] ?? String(value)
|
2026-08-31 14:49:28 +08:00
|
|
|
}
|