nuxt-users
Version:
A comprehensive user management module for Nuxt 3 and Nuxt 4 applications with authentication, authorization, database support, and CLI tools
24 lines (23 loc) • 1.03 kB
JavaScript
import { useDb } from "./db.js";
export const addActiveToUsers = async (options) => {
const connectorName = options.connector.name;
const db = await useDb(options);
const tableName = options.tables.users;
console.log(`[Nuxt Users] DB:Add active to ${connectorName} Users Table in ${tableName}...`);
if (connectorName === "sqlite" || connectorName === "mysql" || connectorName === "postgresql") {
try {
const result = await db.sql`PRAGMA table_info({${tableName}})`;
const hasActiveColumn = result.rows.some((row) => row.name === "active");
if (!hasActiveColumn) {
await db.sql`ALTER TABLE {${tableName}} ADD COLUMN active BOOLEAN DEFAULT TRUE`;
}
} catch {
try {
await db.sql`ALTER TABLE {${tableName}} ADD COLUMN active BOOLEAN DEFAULT TRUE`;
} catch (alterError) {
console.log(`[Nuxt Users] Active column might already exist: ${alterError}`);
}
}
}
console.log(`[Nuxt Users] DB:Add active to ${connectorName} Users Table \u2705`);
};