mirror of
https://github.com/tdurieux/anonymous_github.git
synced 2026-03-08 22:00:43 +00:00
feat: measure and display user quota (#72)
This commit is contained in:
@@ -29,14 +29,25 @@ router.get("/", async (req: express.Request, res: express.Response) => {
|
||||
router.get("/quota", async (req: express.Request, res: express.Response) => {
|
||||
try {
|
||||
const user = await getUser(req);
|
||||
const repositories = await user.getRepositories();
|
||||
const sizes = await Promise.all(
|
||||
(await user.getRepositories())
|
||||
repositories
|
||||
.filter((r) => r.status == "ready")
|
||||
.map((r) => r.computeSize())
|
||||
);
|
||||
res.json({
|
||||
used: sizes.reduce((sum, i) => sum + i, 0),
|
||||
total: config.DEFAULT_QUOTA,
|
||||
storage: {
|
||||
used: sizes.reduce((sum, i) => sum + i.storage, 0),
|
||||
total: config.DEFAULT_QUOTA,
|
||||
},
|
||||
file: {
|
||||
used: sizes.reduce((sum, i) => sum + i.file, 0),
|
||||
total: 0,
|
||||
},
|
||||
repository: {
|
||||
used: repositories.length,
|
||||
total: 20,
|
||||
},
|
||||
});
|
||||
} catch (error) {
|
||||
handleError(error, res);
|
||||
|
||||
Reference in New Issue
Block a user