SurfSense/surfsense_web/zero/schema/documents.ts
Anish Sarkar a8c1fb660d feat(rename): complete searchSpace to workspace transition across frontend and backend
- Introduced a comprehensive specification for renaming `searchSpace` to `workspace` in `surfsense_web` and `surfsense_desktop`, ensuring all TypeScript identifiers, React props, and local data structures are updated.
- Implemented migration shims for persisted local state to prevent data loss during the transition.
- Updated observability metrics and IPC channels to reflect the new naming convention.
- Removed legacy `active-search-space` module and replaced it with `active-workspace` to maintain consistency.
- Ensured no behavioral changes or data loss for users during the renaming process.
2026-07-06 15:12:40 +05:30

31 lines
1.1 KiB
TypeScript

import { boolean, json, number, string, table } from "@rocicorp/zero";
export const documentTable = table("documents")
.columns({
id: number(),
title: string(),
documentType: string().from("document_type"),
workspaceId: number().from("workspace_id"),
folderId: number().optional().from("folder_id"),
createdById: string().optional().from("created_by_id"),
status: json(),
createdAt: number().from("created_at"),
})
.primaryKey("id");
export const searchSourceConnectorTable = table("search_source_connectors")
.columns({
id: number(),
name: string(),
connectorType: string().from("connector_type"),
isIndexable: boolean().from("is_indexable"),
lastIndexedAt: number().optional().from("last_indexed_at"),
config: json(),
periodicIndexingEnabled: boolean().from("periodic_indexing_enabled"),
indexingFrequencyMinutes: number().optional().from("indexing_frequency_minutes"),
nextScheduledAt: number().optional().from("next_scheduled_at"),
workspaceId: number().from("workspace_id"),
userId: string().from("user_id"),
createdAt: number().from("created_at"),
})
.primaryKey("id");