29 lines
864 B
TypeScript
29 lines
864 B
TypeScript
import { integer, pgTable, text, uuid, varchar } from "drizzle-orm/pg-core";
|
|
import { companiesTable } from "./companies";
|
|
import { projectsTable } from "./projects";
|
|
import { relations } from "drizzle-orm";
|
|
|
|
export const mapTable = pgTable("map", {
|
|
id: uuid("id").defaultRandom().primaryKey(),
|
|
city: varchar("city", { length: 50 }).notNull(),
|
|
src: text("src"),
|
|
companyId: uuid("company_id")
|
|
.notNull()
|
|
.references(() => companiesTable.id),
|
|
projectId: uuid("project_id")
|
|
.notNull()
|
|
.references(() => projectsTable.id),
|
|
order: integer("order"),
|
|
});
|
|
|
|
export const mapRelations = relations(mapTable, ({ one }) => ({
|
|
company: one(companiesTable, {
|
|
fields: [mapTable.companyId],
|
|
references: [companiesTable.id],
|
|
}),
|
|
project: one(projectsTable, {
|
|
fields: [mapTable.projectId],
|
|
references: [projectsTable.id],
|
|
}),
|
|
}));
|