5th-site-expanded/src/hooks.server.ts
2024-11-16 18:11:59 +07:00

27 lines
No EOL
973 B
TypeScript

import type { Handle } from '@sveltejs/kit';
import info, { daysUntilBirthday, getTimeIn } from '$lib';
export const handle: Handle = async ({ event, resolve }) => {
const days = daysUntilBirthday(info.birthday);
const time = getTimeIn(info.timezone);
if (!event.request.headers.get('user-agent')?.includes('curl')) return await resolve(event);
else return new Response(`\
\x1b[2J\x1b[3J\x1b[H
\x1b[1m${info.subtitle}\x1b[0m
${info.description}
\x1b[1m${days || 'Today'}\x1b[0m ${ days ? 'day' + (days === 1 ? '' : 's') + ' until my birthday.' : 'is my birthday!' } \
Its \x1b[1m${time}\x1b[0m in ${info.timezone}.
\x1b[3m${info.skills.join('\x1b[0m, \x1b[3m')}\x1b[0m
${Object.entries(info.links).map(([key, value]) => `\x1b[1m${key}\x1b[0m: \x1b[4m${value}\x1b[0m`).join('\n')}
\x1b[1mgithub\x1b[0m: ${info.github}
\x1b[1mdiscord\x1b[0m: ${info.discord}
\x1b[1mblog\x1b[0m: ${info.blog.main}
\x1b[37;3m${info.title} - curl version ;)\x1b[0m
`);
};