Download packages/core/src/project/sql.ts from SaylorTwift/opencode: direct link, hf CLI and curl.
- Browser
- Download file 1.18 kB
-
https://huggingface.co/SaylorTwift/opencode/resolve/main/packages/core/src/project/sql.ts
- Command line
-
hf download hf://SaylorTwift/opencode/packages/core/src/project/sql.ts
-
curl -L -o sql.ts https://huggingface.co/SaylorTwift/opencode/resolve/main/packages/core/src/project/sql.ts
1.18 kB
| import { sqliteTable, text, integer, primaryKey } from "drizzle-orm/sqlite-core" | |
| import * as DatabasePath from "../database/path" | |
| import { Timestamps } from "../database/schema.sql" | |
| import { ProjectSchema } from "./schema" | |
| export const ProjectTable = sqliteTable("project", { | |
| id: text().$type<ProjectSchema.ID>().primaryKey(), | |
| worktree: DatabasePath.absoluteColumn().notNull(), | |
| vcs: text(), | |
| name: text(), | |
| icon_url: text(), | |
| icon_url_override: text(), | |
| icon_color: text(), | |
| ...Timestamps, | |
| time_initialized: integer(), | |
| sandboxes: DatabasePath.absoluteArrayColumn().notNull(), | |
| commands: text({ mode: "json" }).$type<{ start?: string }>(), | |
| }) | |
| export const ProjectDirectoryTable = sqliteTable( | |
| "project_directory", | |
| { | |
| project_id: text() | |
| .$type<ProjectSchema.ID>() | |
| .notNull() | |
| .references(() => ProjectTable.id, { onDelete: "cascade" }), | |
| directory: DatabasePath.absoluteColumn().notNull(), | |
| type: text().$type<"main" | "root" | "git_worktree">(), | |
| strategy: text(), | |
| time_created: integer() | |
| .notNull() | |
| .$default(() => Date.now()), | |
| }, | |
| (table) => [primaryKey({ columns: [table.project_id, table.directory] })], | |
| ) | |