import { join, resolve } from 'path';

/**
 * Resuelve la ruta absoluta al archivo de la base de datos SQLite compartida.
 * Prioridad:
 * 1) DB_PATH (ruta completa al archivo)
 * 2) DATA_DIR + filename
 *    - En producción (NODE_ENV=production) por defecto '/app/data'
 *    - En no-producción por defecto './tmp'
 */
export function resolveDbAbsolutePath(filename: string = 'tasks.db'): string {
  const dbPathEnv = String(process.env.DB_PATH || '').trim();
  if (dbPathEnv) return resolve(dbPathEnv);

  const isProdEnv = String(process.env.NODE_ENV || 'development').trim().toLowerCase() === 'production';
  const dataDir = process.env.DATA_DIR ? String(process.env.DATA_DIR) : (isProdEnv ? '/app/data' : 'tmp');
  return resolve(join(dataDir, filename));
}
