| import type { CurrentPlanInfoBackend } from '../type' | |
| import { NUM_INFINITE } from '@/app/components/billing/config' | |
| const parseLimit = (limit: number) => { | |
| if (limit === 0) | |
| return NUM_INFINITE | |
| return limit | |
| } | |
| export const parseCurrentPlan = (data: CurrentPlanInfoBackend) => { | |
| return { | |
| type: data.billing.subscription.plan, | |
| usage: { | |
| vectorSpace: data.vector_space.size, | |
| buildApps: data.apps?.size || 0, | |
| teamMembers: data.members.size, | |
| annotatedResponse: data.annotation_quota_limit.size, | |
| documentsUploadQuota: data.documents_upload_quota.size, | |
| }, | |
| total: { | |
| vectorSpace: parseLimit(data.vector_space.limit), | |
| buildApps: parseLimit(data.apps?.limit) || 0, | |
| teamMembers: parseLimit(data.members.limit), | |
| annotatedResponse: parseLimit(data.annotation_quota_limit.limit), | |
| documentsUploadQuota: parseLimit(data.documents_upload_quota.limit), | |
| }, | |
| } | |
| } | |