/can-load-client endpoint

This commit is contained in:
2025-11-08 19:29:11 -07:00
parent 0b0fd8412c
commit 415823a980
4 changed files with 54 additions and 0 deletions

View File

@@ -1,5 +1,11 @@
import mysql from 'mysql2'
import { drizzle } from 'drizzle-orm/mysql2'
import {
allowedDatabaseVersions,
allowedVersions,
latestBetaVersion,
latestVersion
} from '../info/general'
export function jsonResponse (data: any, status = 200) {
return new Response(JSON.stringify(data, null, 2), {
@@ -20,3 +26,20 @@ export function getDatabaseConnection () {
return { connection, db }
}
export const isLatestVersion = (version: string) => version === latestVersion
export const isBetaVersion = (version: string) => version === latestBetaVersion
export const isAllowedVersion = (version: string) =>
allowedVersions.includes(version)
export const isAllowedDatabaseVersion = (version: string) =>
allowedDatabaseVersions.includes(version)
export const checkClientDatabaseVersion = (request: Request) => {
const requester = request.headers.get('http_requester') ?? ''
const clientVersion = request.headers.get('http_clientversion') ?? ''
if (requester !== 'BerryDashClient') return '-998'
if (!allowedDatabaseVersions.includes(clientVersion)) return '-998'
}