import { fetchMeta } from "../../../misc/fetch-meta.js"; import { DriveFiles } from "../../../models/index.js"; import define from "../define.js"; export const meta = { tags: [ "drive", "account" ], requireCredential: true, kind: "read:drive", res: { type: "object", optional: false, nullable: false, properties: { capacity: { type: "number", optional: false, nullable: false }, usage: { type: "number", optional: false, nullable: false } } } }; export const paramDef = { type: "object", properties: {}, required: [] }; export default define(meta, paramDef, async (ps, user)=>{ const instance = await fetchMeta(true); // Calculate drive usage const usage = await DriveFiles.calcDriveUsageOf(user.id); return { capacity: 1024 * 1024 * (user.driveCapacityOverrideMb || instance.localDriveCapacityMb), usage: usage }; });