30 lines
789 B
TypeScript
30 lines
789 B
TypeScript
import "server-only";
|
|
|
|
import { getSystemSetting } from "@/lib/db/queries";
|
|
import {
|
|
defaultWorldLabsKeyPoolConfig,
|
|
normalizeWorldLabsKeyPoolConfig,
|
|
WORLDLABS_KEY_POOL_CONFIG_KEY,
|
|
type WorldLabsKeyPoolConfig,
|
|
} from "@/lib/worldlabs/key-pool-config-shared";
|
|
|
|
export {
|
|
defaultWorldLabsKeyPoolConfig,
|
|
normalizeWorldLabsKeyPoolConfig,
|
|
WORLDLABS_KEY_POOL_CONFIG_KEY,
|
|
type WorldLabsKeyPoolConfig,
|
|
};
|
|
|
|
export async function getWorldLabsKeyPoolConfig(): Promise<WorldLabsKeyPoolConfig> {
|
|
try {
|
|
const setting = await getSystemSetting({
|
|
key: WORLDLABS_KEY_POOL_CONFIG_KEY,
|
|
});
|
|
return setting?.value
|
|
? normalizeWorldLabsKeyPoolConfig(setting.value)
|
|
: defaultWorldLabsKeyPoolConfig;
|
|
} catch (_error) {
|
|
return defaultWorldLabsKeyPoolConfig;
|
|
}
|
|
}
|