SPB Git forge

spb/cancerindex

Public
37commits 1branches 0releases
2.9 MBsize
maindefault branch
10 days agolast push
TypeScript 97.2% SQL 1.5% CSS 0.6% JavaScript 0.5%
880 B · 24 lines typescript
Raw Blame History
1import { timestamp, varchar, customType } from 'drizzle-orm/pg-core';23export const createdAt = () => timestamp('created_at', { withTimezone: true }).notNull().defaultNow();4export const updatedAt = () => timestamp('updated_at', { withTimezone: true }).notNull().defaultNow();56/** Public CancerIndex identifier column (CI-CAN-00000001 …). */7export const ciId = (name = 'id') => varchar(name, { length: 32 });89/** pgvector column (embedding model is stored alongside, never mix models in one column without it). */10export const vector = customType<{ data: number[]; driverData: string; config: { dimensions: number } }>({11  dataType(config) {12    return `vector(${config?.dimensions ?? 1536})`;13  },14  toDriver(value) {15    return `[${value.join(',')}]`;16  },17  fromDriver(value) {18    return value19      .slice(1, -1)20      .split(',')21      .map((v) => Number(v));22  },23});24