feat: eslint 적용 및 관련 코드 일괄 수정
This commit is contained in:
@@ -26,13 +26,9 @@ export interface PrismaClientFactoryOptions {
|
||||
log?: PostgresLogOption[];
|
||||
}
|
||||
|
||||
export type PrismaClientFactory<TClient> = (
|
||||
options: PrismaClientFactoryOptions
|
||||
) => TClient;
|
||||
export type PrismaClientFactory<TClient> = (options: PrismaClientFactoryOptions) => TClient;
|
||||
|
||||
const resolveSchemaName = (
|
||||
value: string | undefined
|
||||
): string => {
|
||||
const resolveSchemaName = (value: string | undefined): string => {
|
||||
if (!value) {
|
||||
return 'public';
|
||||
}
|
||||
@@ -40,10 +36,7 @@ const resolveSchemaName = (
|
||||
return trimmed ? trimmed : 'public';
|
||||
};
|
||||
|
||||
const applySchemaToDatabaseUrl = (
|
||||
url: string,
|
||||
schema: string | undefined
|
||||
): string => {
|
||||
const applySchemaToDatabaseUrl = (url: string, schema: string | undefined): string => {
|
||||
if (!schema) {
|
||||
return url;
|
||||
}
|
||||
@@ -56,9 +49,7 @@ const applySchemaToDatabaseUrl = (
|
||||
}
|
||||
};
|
||||
|
||||
const extractSchemaFromDatabaseUrl = (
|
||||
url: string
|
||||
): string | undefined => {
|
||||
const extractSchemaFromDatabaseUrl = (url: string): string | undefined => {
|
||||
try {
|
||||
const parsed = new URL(url);
|
||||
const schema = parsed.searchParams.get('schema');
|
||||
@@ -68,18 +59,13 @@ const extractSchemaFromDatabaseUrl = (
|
||||
}
|
||||
};
|
||||
|
||||
const buildDatabaseUrlFromEnv = (
|
||||
env: NodeJS.ProcessEnv,
|
||||
schemaOverride?: string
|
||||
): string => {
|
||||
const buildDatabaseUrlFromEnv = (env: NodeJS.ProcessEnv, schemaOverride?: string): string => {
|
||||
const host = env.POSTGRES_HOST ?? '127.0.0.1';
|
||||
const port = env.POSTGRES_PORT ?? '15432';
|
||||
const user = env.POSTGRES_USER ?? 'sammo';
|
||||
const password = env.POSTGRES_PASSWORD ?? '';
|
||||
const dbName = env.POSTGRES_DB ?? 'sammo';
|
||||
const schema = resolveSchemaName(
|
||||
schemaOverride ?? env.POSTGRES_SCHEMA ?? env.DATABASE_SCHEMA
|
||||
);
|
||||
const schema = resolveSchemaName(schemaOverride ?? env.POSTGRES_SCHEMA ?? env.DATABASE_SCHEMA);
|
||||
return `postgresql://${user}:${password}@${host}:${port}/${dbName}?schema=${schema}`;
|
||||
};
|
||||
|
||||
@@ -102,17 +88,12 @@ export const createPostgresConnector = <TClient>(
|
||||
createClient: PrismaClientFactory<TClient>
|
||||
): PostgresConnector<TClient> => {
|
||||
const schema =
|
||||
extractSchemaFromDatabaseUrl(config.url) ??
|
||||
process.env.POSTGRES_SCHEMA ??
|
||||
process.env.DATABASE_SCHEMA;
|
||||
extractSchemaFromDatabaseUrl(config.url) ?? process.env.POSTGRES_SCHEMA ?? process.env.DATABASE_SCHEMA;
|
||||
const pool = new Pool({
|
||||
connectionString: config.url,
|
||||
...(schema ? { options: `-c search_path=${schema}` } : {}),
|
||||
});
|
||||
const adapter = new PrismaPg(
|
||||
pool,
|
||||
schema ? { schema } : undefined
|
||||
);
|
||||
const adapter = new PrismaPg(pool, schema ? { schema } : undefined);
|
||||
const prisma = createClient({
|
||||
adapter,
|
||||
log: config.log,
|
||||
|
||||
Reference in New Issue
Block a user