feat: imgur proxying for blocked countries (#7104)

This commit is contained in:
Calum H.
2026-08-11 16:40:03 +00:00
committed by GitHub
parent 26e05ee9e5
commit 2d567b93ce
12 changed files with 167 additions and 37 deletions
@@ -0,0 +1,23 @@
import { AbstractModule } from '../../core/abstract-module'
export class LabrinthGeoIpModule extends AbstractModule {
public getModuleID(): string {
return 'labrinth_geoip'
}
public async getCountry(): Promise<string | undefined> {
const trace = await this.client.request<string>('/trace', {
api: 'https://api.modrinth.com',
version: 'cdn-cgi',
method: 'GET',
skipAuth: true,
})
const country = trace
.split('\n')
.find((line) => line.startsWith('loc='))
?.slice(4)
.toUpperCase()
return country?.match(/^[A-Z]{2}$/) ? country : undefined
}
}