import { withConn } from './pool.js'; export async function migrate() { await withConn(async (conn) => { await conn.query(` CREATE TABLE IF NOT EXISTS guild_config ( guild_id VARCHAR(32) PRIMARY KEY, moderation_enabled TINYINT(1) NOT NULL DEFAULT 1, ai_enabled TINYINT(1) NOT NULL DEFAULT 0, logs_enabled TINYINT(1) NOT NULL DEFAULT 0, logs_channel_id VARCHAR(32) DEFAULT NULL, qotd_enabled TINYINT(1) NOT NULL DEFAULT 0, qotd_channel_id VARCHAR(32) DEFAULT NULL, profanity_filter_enabled TINYINT(1) NOT NULL DEFAULT 1, qotd_last_sent DATE DEFAULT NULL, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ); `); await conn.query(` CREATE TABLE IF NOT EXISTS user_xp ( guild_id VARCHAR(32) NOT NULL, user_id VARCHAR(32) NOT NULL, xp INT NOT NULL DEFAULT 0, PRIMARY KEY (guild_id, user_id), INDEX (guild_id), INDEX (xp) ); `); await conn.query(` CREATE TABLE IF NOT EXISTS user_ai_memory ( guild_id VARCHAR(32) NOT NULL, user_id VARCHAR(32) NOT NULL, messages JSON NOT NULL, updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (guild_id, user_id) ); `); }); }