2023-05-07 12:00:43 +02:00
|
|
|
import { PrismaClient } from '@prisma/client'
|
|
|
|
import {
|
|
|
|
cisFemaleAdult,
|
|
|
|
cisMaleAdult,
|
|
|
|
cisFemaleDoll,
|
|
|
|
cisMaleDoll,
|
|
|
|
cisFemaleGiant,
|
|
|
|
cisMaleGiant,
|
|
|
|
} from '../../../packages/models/src/index.mjs'
|
|
|
|
const prisma = new PrismaClient()
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Note: This will import the FreeSewing (v2) sizing table into the
|
|
|
|
* FreeSewing curator account.
|
|
|
|
*
|
|
|
|
* Unless you are a very involved contributor, there is probably
|
|
|
|
* no reason for you to run this script.
|
|
|
|
*/
|
|
|
|
|
|
|
|
// Holds the sets to create
|
|
|
|
const sets = []
|
|
|
|
|
2023-05-07 18:58:11 +02:00
|
|
|
// Helper method to create the set data (does nothing for now)
|
|
|
|
const createSetData = (data) => ({
|
|
|
|
...data,
|
|
|
|
measies: JSON.stringify(data.measies),
|
|
|
|
tagsEn: JSON.stringify(data.tagsEn),
|
|
|
|
tagsDe: JSON.stringify(data.tagsDe),
|
|
|
|
tagsEs: JSON.stringify(data.tagsEs),
|
|
|
|
tagsNl: JSON.stringify(data.tagsNl),
|
|
|
|
tagsFr: JSON.stringify(data.tagsFr),
|
2023-08-05 19:18:53 +02:00
|
|
|
tagsUk: JSON.stringify(data.tagsUk),
|
2023-05-07 12:00:43 +02:00
|
|
|
})
|
|
|
|
|
|
|
|
// CIS Female Adult
|
|
|
|
sets.push(
|
|
|
|
...Object.keys(cisFemaleAdult).map((size) =>
|
|
|
|
createSetData({
|
2023-05-07 18:58:11 +02:00
|
|
|
nameEn: `Cis-Female Adult - Size ${size} (EU)`,
|
|
|
|
nameDe: `Cis-Weiblich Erwachsener - Größe ${size} (EU)`,
|
|
|
|
nameEs: `Cis-Mujer Adulta - Talla ${size} (UE)`,
|
|
|
|
nameFr: `Cis-Femme Adulte - Taille ${size} (UE)`,
|
|
|
|
nameNl: `Cis-Dame Volwassene - Maat ${size} (EU)`,
|
2023-08-05 19:18:53 +02:00
|
|
|
nameUk: `Cis-Female Adult - Size ${size} (EU)`,
|
2023-05-07 18:58:11 +02:00
|
|
|
tagsEn: ['cis-female', 'adults', 'eu'],
|
|
|
|
tagsDe: ['cis-weiblich', 'erwachsene', 'eu'],
|
|
|
|
tagsEs: ['cis-mujer', 'adulta', 'ue'],
|
|
|
|
tagsFr: ['cis-femme', 'adulte', 'ue'],
|
|
|
|
tagsNl: ['cis-dame', 'volwassenen', 'eu'],
|
2023-08-05 19:18:53 +02:00
|
|
|
tagsUk: ['cis-female', 'adults', 'eu'],
|
2023-05-07 12:00:43 +02:00
|
|
|
measies: cisFemaleAdult[size],
|
|
|
|
})
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
// CIS Male Adult
|
|
|
|
sets.push(
|
|
|
|
...Object.keys(cisMaleAdult).map((size) =>
|
|
|
|
createSetData({
|
2023-05-07 18:58:11 +02:00
|
|
|
nameEn: `Cis-Male Adult - Size ${size} (EU)`,
|
|
|
|
nameDe: `Cis-Männlich Erwachsener - Größe ${size} (EU)`,
|
|
|
|
nameEs: `Cis-Hombre Adulto - Talla ${size} (UE)`,
|
|
|
|
nameFr: `Cis-Homme Adulte - Taille ${size} (UE)`,
|
|
|
|
nameNl: `Cis-Heer Volwassene - Maat ${size} (EU)`,
|
2023-08-05 19:18:53 +02:00
|
|
|
nameUk: `Cis-Male Adult - Size ${size} (EU)`,
|
2023-05-07 18:58:11 +02:00
|
|
|
tagsEn: ['cis-male', 'adults', 'eu'],
|
|
|
|
tagsDe: ['cis-männlich', 'erwachsene', 'eu'],
|
|
|
|
tagsEs: ['cis-hombre', 'adulto', 'ue'],
|
|
|
|
tagsFr: ['cis-homme', 'adulte', 'ue'],
|
|
|
|
tagsNl: ['cis-heer', 'volwassenen', 'eu'],
|
2023-08-05 19:18:53 +02:00
|
|
|
tagsUk: ['cis-male', 'adults', 'eu'],
|
2023-05-07 12:00:43 +02:00
|
|
|
measies: cisMaleAdult[size],
|
|
|
|
})
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
// CIS Female Doll
|
|
|
|
sets.push(
|
|
|
|
...Object.keys(cisFemaleDoll).map((size) =>
|
|
|
|
createSetData({
|
2023-05-07 18:58:11 +02:00
|
|
|
nameEn: `Cis-Female Doll - ${size}%`,
|
|
|
|
nameDe: `Cis-Weiblich Puppe - ${size}%`,
|
|
|
|
nameEs: `Cis-Mujer Muñeca - ${size}%`,
|
|
|
|
nameFr: `Cis-Femme Poupée - ${size}%`,
|
|
|
|
nameNl: `Cis-Dame Pop - ${size}%`,
|
2023-08-05 19:18:53 +02:00
|
|
|
nameUk: `Cis-Female Doll - ${size}%`,
|
2023-05-07 18:58:11 +02:00
|
|
|
tagsEn: ['cis-female', 'dolls'],
|
|
|
|
tagsDe: ['cis-weiblich', 'puppen'],
|
|
|
|
tagsEs: ['cis-mujer', 'muñecas'],
|
|
|
|
tagsFr: ['cis-femme', 'poupées'],
|
|
|
|
tagsNl: ['cis-dame', 'poppen'],
|
2023-08-05 19:18:53 +02:00
|
|
|
tagsUk: ['cis-female', 'dolls'],
|
2023-05-07 12:00:43 +02:00
|
|
|
measies: cisFemaleDoll[size],
|
|
|
|
})
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
// CIS Male Doll
|
|
|
|
sets.push(
|
|
|
|
...Object.keys(cisMaleDoll).map((size) =>
|
|
|
|
createSetData({
|
2023-05-07 18:58:11 +02:00
|
|
|
nameEn: `Cis-Male Doll - ${size}%`,
|
|
|
|
nameDe: `Cis-Männlich Puppe - ${size}%`,
|
|
|
|
nameEs: `Cis-Hombre Muñeca - ${size}%`,
|
|
|
|
nameFr: `Cis-Homme Poupée - ${size}%`,
|
|
|
|
nameNl: `Cis-Heer Pop - ${size}%`,
|
2023-08-05 19:18:53 +02:00
|
|
|
nameUk: `Cis-Male Doll - ${size}%`,
|
2023-05-07 18:58:11 +02:00
|
|
|
tagsEn: ['cis-male', 'dolls'],
|
|
|
|
tagsDe: ['cis-männlich', 'puppen'],
|
|
|
|
tagsEs: ['cis-hombre', 'muñecas'],
|
|
|
|
tagsFr: ['cis-homme', 'poupées'],
|
|
|
|
tagsNl: ['cis-heer', 'poppen'],
|
2023-08-05 19:18:53 +02:00
|
|
|
tagsUk: ['cis-male', 'dolls'],
|
2023-05-07 12:00:43 +02:00
|
|
|
measies: cisMaleDoll[size],
|
|
|
|
})
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
// CIS Female Giant
|
|
|
|
sets.push(
|
|
|
|
...Object.keys(cisFemaleGiant).map((size) =>
|
|
|
|
createSetData({
|
2023-05-07 18:58:11 +02:00
|
|
|
nameEn: `Cis-Female Giant - ${size}%`,
|
|
|
|
nameDe: `Cis-Weiblich Riesin - ${size}%`,
|
|
|
|
nameEs: `Cis-Mujer Gigante - ${size}%`,
|
|
|
|
nameFr: `Cis-Femme Géante - ${size}%`,
|
|
|
|
nameNl: `Cis-Dame Reuzin - ${size}%`,
|
2023-08-05 19:18:53 +02:00
|
|
|
nameUk: `Cis-Female Giant - ${size}%`,
|
2023-05-07 18:58:11 +02:00
|
|
|
tagsEn: ['cis-female', 'giants'],
|
|
|
|
tagsDe: ['cis-weiblich', 'riesen'],
|
|
|
|
tagsEs: ['cis-mujer', 'gigantes'],
|
|
|
|
tagsFr: ['cis-femme', 'géants'],
|
|
|
|
tagsNl: ['cis-dame', 'reuzen'],
|
2023-08-05 19:18:53 +02:00
|
|
|
tagsUk: ['cis-female', 'giants'],
|
2023-05-07 12:00:43 +02:00
|
|
|
measies: cisFemaleGiant[size],
|
|
|
|
})
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
// CIS Male Giant
|
|
|
|
sets.push(
|
2023-05-07 18:58:11 +02:00
|
|
|
...Object.keys(cisFemaleGiant).map((size) =>
|
2023-05-07 12:00:43 +02:00
|
|
|
createSetData({
|
2023-05-07 18:58:11 +02:00
|
|
|
nameEn: `Cis-Male Giant - ${size}%`,
|
|
|
|
nameDe: `Cis-Männlich Riese - ${size}%`,
|
|
|
|
nameEs: `Cis-Hombre Gigante - ${size}%`,
|
|
|
|
nameFr: `Cis-Homme Géant - ${size}%`,
|
|
|
|
nameNl: `Cis-Heer Reus - ${size}%`,
|
2023-08-05 19:18:53 +02:00
|
|
|
nameUk: `Cis-Male Giant - ${size}%`,
|
2023-05-08 19:28:03 +02:00
|
|
|
tagsEn: ['cis-male', 'giants'],
|
|
|
|
tagsDe: ['cis-männlich', 'riesen'],
|
|
|
|
tagsEs: ['cis-hombre', 'gigantes'],
|
|
|
|
tagsFr: ['cis-homme', 'géants'],
|
|
|
|
tagsNl: ['cis-heer', 'reuzen'],
|
2023-08-05 19:18:53 +02:00
|
|
|
tagsUk: ['cis-male', 'giants'],
|
2023-05-07 12:00:43 +02:00
|
|
|
measies: cisMaleGiant[size],
|
|
|
|
})
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
importSets(sets)
|
|
|
|
|
2023-05-07 18:58:11 +02:00
|
|
|
async function createSet(data) {
|
2023-05-07 12:00:43 +02:00
|
|
|
try {
|
2023-05-19 11:23:55 +02:00
|
|
|
await prisma.curatedSet.create({ data })
|
2023-05-07 12:00:43 +02:00
|
|
|
} catch (err) {
|
|
|
|
console.log(err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
async function importSets(sets) {
|
|
|
|
for (const set of sets) {
|
2023-05-07 18:58:11 +02:00
|
|
|
console.log(`Importing ${set.nameEn}`)
|
2023-05-07 12:00:43 +02:00
|
|
|
await createSet(set)
|
|
|
|
}
|
|
|
|
}
|