brawlset/app/tools/createBsets.mjs
2025-01-27 12:40:17 +01:00

80 lines
2.8 KiB
JavaScript

import { PrismaClient } from '@prisma/client'
const db = new PrismaClient()
const Bsets = [
{"name": "Wild of Eldraine", sets: ["woe"]},
{"name": "Bloomburrow", sets: ["blb"]},
{"name": "Duskmourn", sets: ["dsk"]},
{"name": "Phyrexia", sets: ["one"]},
{"name": "The Brothers' War", sets: ["bro"]},
{"name": "Murders at Karlov Manor", sets: ["mkm"]},
{"name": "The lost caverns of Ixalan", sets: ["lci"]},
{"name": "Dominaria United", sets: ["dmu"]},
{"name": "New Capenna", sets: ["snc"]},
{"name": "Kamigawa", sets: ["neo"]},
{"name": "Forgotten Realms", sets: ["afr"]},
{"name": "Strixhaven", sets: ["stx"]},
{"name": "Kaldheim", sets: ["khm"]},
{"name": "Zendikar Rising", sets: ["znr"]},
{"name": "Ikoria", sets: ["iko"]},
{"name": "Theros Beyond Death", sets: ["thb"]},
{"name": "Eldraine", sets: ["eld"]},
{"name": "War of the Spark", sets: ["war"]},
{"name": "Dominaria", sets: ["dom"]},
{"name": "March of the machine", sets: ["mom","mat"]},
{"name": "Outlaws", sets: ["otj","big"]},
{"name": "Innistrad Midnight Hunt", sets: ["vow","mid"]},
{"name": "Guilds of Ravnica", sets: ["rna","grn"]},
{"name": "Ixalan", sets: ["rix","xln"]},
{"name": "Amonkhet", sets: ["hou","akh"]},
{"name": "Kaladesh", sets: ["aer","kld"]},
{"name": "Shadows over Innistrad", sets: ["emn","soi"]},
{"name": "Battle for Zendikar", sets: ["ogw","bfz"]},
{"name": "Tarkir", sets: ["dtk","ktk","frf"]},
{"name": "Theros", sets: ["jou","bng","ths"]},
{"name": "Return to Ravnica", sets: ["dgm","gtc","rtr"]},
{"name": "Innistrad", sets: ["avr","dka","isd"]},
{"name": "New Phyrexia", sets: ["nph","mbs","som"]},
{"name": "Zendikar", sets: ["roe","wwk","zen"]},
{"name": "Alara", sets: ["arb","con","ala"]},
{"name": "Ravnica", sets: ["rav","gpt","dis"]},
{"name": "Kamigawa 3x", sets: ["chk","bok","sok"]},
{"name": "Mirrodin", sets: ["5dn","dst","mrd"]},
{"name": "Onslaught", sets: ["ons","lgn","scg"]},
{"name": "Odyssey", sets: ["ody","tor","jud"]},
{"name": "Invasion", sets: ["inv","pls","apc"]},
{"name": "Masques", sets: ["mmq","nem","pcy"]},
{"name": "Urza", sets: ["usg","ulg","uds"]},
{"name": "Tempest", sets: ["tmp","sth","exo"]},
{"name": "Mirage", sets: ["wth","mir","vis"]},
{"name": "Ice Age", sets: ["csp","ice","all"]},
{"name": "Time Spiral", sets: ["fut","tsp","plc","tsb"]},
{"name": "Lorwyn-Shadowmoor", sets: ["lrw","shm","mor","eve"]},
]
async function createBsets(bset_obj) {
const bset = await db.bset.create({
data: {
name: bset_obj.name,
sanitized_name: bset_obj.name.replace(/[^a-zA-Z0-9]/gim,"-").toLowerCase()
}
})
const or_filter = []
bset_obj.sets.forEach((set_id) => {
or_filter.push({ code: set_id })
})
await db.set.updateMany({
where: {
OR: or_filter
},
data: {
bset_id: bset.id
}
})
}
Bsets.forEach(createBsets)