Files
gameno-api/utils/superAdmin.js
T
kavehhn 35704409ec feat: bootstrap SuperAdmin from env and lock one-time seeding
Production creates the SuperAdmin from env credentials, and dashboard seeding is authenticated, SuperAdmin-only, and locked after the first run.
2026-08-14 23:23:06 +03:30

24 lines
682 B
JavaScript

// /utils/superAdmin.js
const config = require('../config/config');
const usernamesMatch = (left, right) => {
if (!left || !right) return false;
return String(left).trim().toLowerCase() === String(right).trim().toLowerCase();
};
const isBootstrapSuperAdmin = (userOrUsername) => {
const username = typeof userOrUsername === 'string'
? userOrUsername
: userOrUsername?.username;
return usernamesMatch(username, config.SUPERADMIN_USERNAME);
};
const isBootstrapSuperAdminDisabled = (userOrUsername) => {
return !config.SUPERADMIN_ENABLED && isBootstrapSuperAdmin(userOrUsername);
};
module.exports = {
isBootstrapSuperAdmin,
isBootstrapSuperAdminDisabled
};