Something went wrong. Try again.
[READ-ONLY] Mirror of https://github.com/openstatusHQ/openstatus. ๐ซ Status page with uptime monitoring & API monitoring as code ๐ซ openstatus.dev
bun drizzle-orm monitoring monitoring-as-code nextjs observability on-call open-source shadcn-ui status-page statuspage synthetic-monitoring tinybird turso uptime uptime-checker uptime-monitor
Something went wrong. Try again.
TypeScript
1234567891011121314151617181920212223242526272829303132333435363738394041424344import { relations, sql } from "drizzle-orm";import { index, integer, sqliteTable, text } from "drizzle-orm/sqlite-core";
import { user } from "../users";import { workspace } from "../workspaces";import { feedbackSource, feedbackType } from "./constants";
export const feedback = sqliteTable( "feedback", { id: integer("id").primaryKey(),
workspaceId: integer("workspace_id") .references(() => workspace.id, { onDelete: "cascade" }) .notNull(), userId: integer("user_id") .references(() => user.id, { onDelete: "cascade" }) .notNull(),
source: text("source", { enum: feedbackSource }).notNull(), message: text("message").notNull(), type: text("type", { enum: feedbackType }), blocker: integer("blocker", { mode: "boolean" }), path: text("path").notNull(), metadata: text("metadata"),
createdAt: integer("created_at", { mode: "timestamp" }) .default(sql`(strftime('%s', 'now'))`) .notNull(), }, (t) => [index("feedback_workspace_id_idx").on(t.workspaceId)],);
export const feedbackRelations = relations(feedback, ({ one }) => ({ workspace: one(workspace, { fields: [feedback.workspaceId], references: [workspace.id], }), user: one(user, { fields: [feedback.userId], references: [user.id], }),}));