'use strict'; const { v4: uuidv4 } = require('uuid'); /** @type {import('sequelize-cli').Migration} */ module.exports = { async up(queryInterface, Sequelize) { const categories = [ { id: uuidv4(), name: 'JavaScript', slug: 'javascript', description: 'Core JavaScript concepts, ES6+, async programming, and modern features', icon: '🟨', color: '#F7DF1E', is_active: true, guest_accessible: true, question_count: 0, quiz_count: 0, display_order: 1, created_at: new Date(), updated_at: new Date() }, { id: uuidv4(), name: 'Angular', slug: 'angular', description: 'Angular framework, components, services, RxJS, and state management', icon: '🅰️', color: '#DD0031', is_active: true, guest_accessible: true, question_count: 0, quiz_count: 0, display_order: 2, created_at: new Date(), updated_at: new Date() }, { id: uuidv4(), name: 'React', slug: 'react', description: 'React library, hooks, component lifecycle, state management, and best practices', icon: '⚛️', color: '#61DAFB', is_active: true, guest_accessible: true, question_count: 0, quiz_count: 0, display_order: 3, created_at: new Date(), updated_at: new Date() }, { id: uuidv4(), name: 'Node.js', slug: 'nodejs', description: 'Node.js runtime, Express, APIs, middleware, and server-side JavaScript', icon: '🟢', color: '#339933', is_active: true, guest_accessible: false, question_count: 0, quiz_count: 0, display_order: 4, created_at: new Date(), updated_at: new Date() }, { id: uuidv4(), name: 'TypeScript', slug: 'typescript', description: 'TypeScript types, interfaces, generics, decorators, and type safety', icon: '📘', color: '#3178C6', is_active: true, guest_accessible: false, question_count: 0, quiz_count: 0, display_order: 5, created_at: new Date(), updated_at: new Date() }, { id: uuidv4(), name: 'SQL & Databases', slug: 'sql-databases', description: 'SQL queries, database design, indexing, transactions, and optimization', icon: '🗄️', color: '#4479A1', is_active: true, guest_accessible: false, question_count: 0, quiz_count: 0, display_order: 6, created_at: new Date(), updated_at: new Date() }, { id: uuidv4(), name: 'System Design', slug: 'system-design', description: 'Scalability, architecture patterns, microservices, and design principles', icon: '🏗️', color: '#FF6B6B', is_active: true, guest_accessible: false, question_count: 0, quiz_count: 0, display_order: 7, created_at: new Date(), updated_at: new Date() } ]; await queryInterface.bulkInsert('categories', categories, {}); console.log('✅ Seeded 7 demo categories'); }, async down(queryInterface, Sequelize) { await queryInterface.bulkDelete('categories', null, {}); console.log('✅ Removed demo categories'); } };