function createSchema(tableName: string, fields: {
name: string;
type: "text" | "integer" | ...
required?: boolean;
unique?: boolean;
}[]) {
return mysqlTable(tableName, {
id: int().autoincrement().primaryKey(),
createdAt: timestamp({ mode: "date" }).defaultNow(),
updatedAt: timestamp({ mode: "date" }).defaultNow(),
...fields.reduce((acc, field) => {
return { ...acc, ...resolveField(field) };
}, {})
});
}
function createSchema(tableName: string, fields: {
name: string;
type: "text" | "integer" | ...
required?: boolean;
unique?: boolean;
}[]) {
return mysqlTable(tableName, {
id: int().autoincrement().primaryKey(),
createdAt: timestamp({ mode: "date" }).defaultNow(),
updatedAt: timestamp({ mode: "date" }).defaultNow(),
...fields.reduce((acc, field) => {
return { ...acc, ...resolveField(field) };
}, {})
});
}