mirror of
https://github.com/dreamhunter2333/cloudflare_temp_email.git
synced 2026-05-13 09:01:05 +08:00
32 lines
1.2 KiB
TypeScript
32 lines
1.2 KiB
TypeScript
import { Context } from 'hono';
|
|
|
|
import { cleanup } from '../common';
|
|
import { CONSTANTS } from '../constants';
|
|
import { getJsonSetting, saveSetting } from '../utils';
|
|
import { CleanupSettings } from '../models';
|
|
import { HonoCustomType } from '../types';
|
|
|
|
export default {
|
|
cleanup: async (c: Context<HonoCustomType>) => {
|
|
const { cleanType, cleanDays } = await c.req.json();
|
|
try {
|
|
await cleanup(c, cleanType, cleanDays);
|
|
} catch (error) {
|
|
console.error(error);
|
|
return c.text(`Failed to cleanup ${(error as Error).message}`, 500)
|
|
}
|
|
return c.json({ success: true })
|
|
},
|
|
getCleanup: async (c: Context<HonoCustomType>) => {
|
|
const value = await getJsonSetting(c, CONSTANTS.AUTO_CLEANUP_KEY);
|
|
const cleanupSetting = new CleanupSettings(value);
|
|
return c.json(cleanupSetting)
|
|
},
|
|
saveCleanup: async (c: Context<HonoCustomType>) => {
|
|
const value = await c.req.json();
|
|
const cleanupSetting = new CleanupSettings(value);
|
|
await saveSetting(c, CONSTANTS.AUTO_CLEANUP_KEY, JSON.stringify(cleanupSetting));
|
|
return c.json({ success: true })
|
|
}
|
|
}
|