import { pgTable, text, integer, boolean, jsonb, timestamp, uuid } from 'drizzle-orm/pg-core'; import { tenants } from './tenants'; import { authProfiles } from './auth_profiles'; export const publicLinks = pgTable('public_links', { id: uuid("id").primaryKey().defaultRandom(), // Der öffentliche Token (z.B. "werkstatt-tablet-01") token: text('token').notNull().unique(), // Zuordnung zum Tenant (WICHTIG für die Datentrennung) tenant: integer('tenant').references(() => tenants.id).notNull(), defaultProfile: uuid('default_profile').references(() => authProfiles.id), // Sicherheit isProtected: boolean('is_protected').default(false).notNull(), pinHash: text('pin_hash'), // Konfiguration (JSON) config: jsonb('config').default({}), // Metadaten name: text('name').notNull(), description: text('description'), active: boolean('active').default(true).notNull(), createdAt: timestamp('created_at').defaultNow(), updatedAt: timestamp('updated_at').defaultNow(), });