From 532cfcf6e0b73431ce5e160dc14a105c4f696831 Mon Sep 17 00:00:00 2001 From: Lncvrt Date: Wed, 21 Jan 2026 22:05:52 -0700 Subject: [PATCH] Add a new util for getting the client IP address for register info --- src/lib/util.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/lib/util.ts b/src/lib/util.ts index deb9c69..066164b 100644 --- a/src/lib/util.ts +++ b/src/lib/util.ts @@ -6,6 +6,7 @@ import { latestBetaVersion, latestVersion } from '../info/general' +import { Context } from 'elysia' export function jsonResponse (data: any, status = 200) { return new Response(JSON.stringify(data, null, 2), { @@ -91,3 +92,15 @@ export const genTimestamp = (time: number, extra = 0): string => { return parts.length ? parts.join(' ') : '1 second' } + +export const getClientIp = (context: Context) => { + const headers = context.headers + if (!headers) return null + + return ( + headers['cf-connecting-ip'] ?? + headers['x-real-ip'] ?? + headers['x-forwarded-for']?.split(',')[0]?.trim() ?? + null + ) +}