const { PrismaClient } = require("@prisma/client"); const prisma = new PrismaClient(); async function main() { // Clear existing data await prisma.navSubItems.deleteMany({}); await prisma.navItems.deleteMany({}); const navItemDatas = [ { title: "Dashboard", url: "/dashboard", slug: "dashboard", order_seq: 1, icon: "LayoutDashboard", sub_items: [], }, { title: "Master", url: "/master", slug: "master", order_seq: 2, icon: "IconDashboard", sub_items: [ { title: "Users", url: "/master/users", slug: "users", icon: "IconUsers ", order_seq: 1, }, ], }, { title: "Map", url: "/map", slug: "map", order_seq: 3, icon: "Map", sub_items: [], }, ]; // Create nav items and their sub-items for (const navItemData of navItemDatas) { const { sub_items, ...navItemFields } = navItemData; await prisma.navItems.create({ data: { ...navItemFields, sub_items: { create: sub_items, }, }, }); } console.log("Seed data created successfully", navItemDatas); } main() .catch((e) => { console.error(e); process.exit(1); }) .finally(async () => { await prisma.$disconnect(); });