@revealui/db 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (191) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +137 -0
  3. package/dist/audit-store.d.ts +56 -0
  4. package/dist/audit-store.d.ts.map +1 -0
  5. package/dist/audit-store.js +120 -0
  6. package/dist/audit-store.js.map +1 -0
  7. package/dist/client/index.d.ts +214 -0
  8. package/dist/client/index.d.ts.map +1 -0
  9. package/dist/client/index.js +396 -0
  10. package/dist/client/index.js.map +1 -0
  11. package/dist/client/types.d.ts +109 -0
  12. package/dist/client/types.d.ts.map +1 -0
  13. package/dist/client/types.js +10 -0
  14. package/dist/client/types.js.map +1 -0
  15. package/dist/crypto.d.ts +27 -0
  16. package/dist/crypto.d.ts.map +1 -0
  17. package/dist/crypto.js +68 -0
  18. package/dist/crypto.js.map +1 -0
  19. package/dist/index.d.ts +29 -0
  20. package/dist/index.d.ts.map +1 -0
  21. package/dist/index.js +31 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/log-transport.d.ts +20 -0
  24. package/dist/log-transport.d.ts.map +1 -0
  25. package/dist/log-transport.js +49 -0
  26. package/dist/log-transport.js.map +1 -0
  27. package/dist/pool.d.ts +36 -0
  28. package/dist/pool.d.ts.map +1 -0
  29. package/dist/pool.js +218 -0
  30. package/dist/pool.js.map +1 -0
  31. package/dist/queries/boards.d.ts +138 -0
  32. package/dist/queries/boards.d.ts.map +1 -0
  33. package/dist/queries/boards.js +87 -0
  34. package/dist/queries/boards.js.map +1 -0
  35. package/dist/queries/code-provenance.d.ts +250 -0
  36. package/dist/queries/code-provenance.d.ts.map +1 -0
  37. package/dist/queries/code-provenance.js +130 -0
  38. package/dist/queries/code-provenance.js.map +1 -0
  39. package/dist/queries/optimized-queries.d.ts +89 -0
  40. package/dist/queries/optimized-queries.d.ts.map +1 -0
  41. package/dist/queries/optimized-queries.js +371 -0
  42. package/dist/queries/optimized-queries.js.map +1 -0
  43. package/dist/queries/ticket-comments.d.ts +37 -0
  44. package/dist/queries/ticket-comments.d.ts.map +1 -0
  45. package/dist/queries/ticket-comments.js +52 -0
  46. package/dist/queries/ticket-comments.js.map +1 -0
  47. package/dist/queries/ticket-labels.d.ts +69 -0
  48. package/dist/queries/ticket-labels.d.ts.map +1 -0
  49. package/dist/queries/ticket-labels.js +51 -0
  50. package/dist/queries/ticket-labels.js.map +1 -0
  51. package/dist/queries/tickets.d.ts +301 -0
  52. package/dist/queries/tickets.d.ts.map +1 -0
  53. package/dist/queries/tickets.js +89 -0
  54. package/dist/queries/tickets.js.map +1 -0
  55. package/dist/queries/todos.d.ts +37 -0
  56. package/dist/queries/todos.d.ts.map +1 -0
  57. package/dist/queries/todos.js +37 -0
  58. package/dist/queries/todos.js.map +1 -0
  59. package/dist/schema/agents.d.ts +1413 -0
  60. package/dist/schema/agents.d.ts.map +1 -0
  61. package/dist/schema/agents.js +207 -0
  62. package/dist/schema/agents.js.map +1 -0
  63. package/dist/schema/api-keys.d.ts +298 -0
  64. package/dist/schema/api-keys.d.ts.map +1 -0
  65. package/dist/schema/api-keys.js +53 -0
  66. package/dist/schema/api-keys.js.map +1 -0
  67. package/dist/schema/app-logs.d.ts +168 -0
  68. package/dist/schema/app-logs.d.ts.map +1 -0
  69. package/dist/schema/app-logs.js +25 -0
  70. package/dist/schema/app-logs.js.map +1 -0
  71. package/dist/schema/audit-log.d.ts +174 -0
  72. package/dist/schema/audit-log.d.ts.map +1 -0
  73. package/dist/schema/audit-log.js +37 -0
  74. package/dist/schema/audit-log.js.map +1 -0
  75. package/dist/schema/cms.d.ts +1015 -0
  76. package/dist/schema/cms.d.ts.map +1 -0
  77. package/dist/schema/cms.js +137 -0
  78. package/dist/schema/cms.js.map +1 -0
  79. package/dist/schema/code-provenance.d.ts +488 -0
  80. package/dist/schema/code-provenance.d.ts.map +1 -0
  81. package/dist/schema/code-provenance.js +72 -0
  82. package/dist/schema/code-provenance.js.map +1 -0
  83. package/dist/schema/collab-edits.d.ts +165 -0
  84. package/dist/schema/collab-edits.d.ts.map +1 -0
  85. package/dist/schema/collab-edits.js +21 -0
  86. package/dist/schema/collab-edits.js.map +1 -0
  87. package/dist/schema/crdt-operations.d.ts +153 -0
  88. package/dist/schema/crdt-operations.d.ts.map +1 -0
  89. package/dist/schema/crdt-operations.js +30 -0
  90. package/dist/schema/crdt-operations.js.map +1 -0
  91. package/dist/schema/error-events.d.ts +223 -0
  92. package/dist/schema/error-events.d.ts.map +1 -0
  93. package/dist/schema/error-events.js +44 -0
  94. package/dist/schema/error-events.js.map +1 -0
  95. package/dist/schema/index.d.ts +130 -0
  96. package/dist/schema/index.d.ts.map +1 -0
  97. package/dist/schema/index.js +310 -0
  98. package/dist/schema/index.js.map +1 -0
  99. package/dist/schema/licenses.d.ts +189 -0
  100. package/dist/schema/licenses.d.ts.map +1 -0
  101. package/dist/schema/licenses.js +39 -0
  102. package/dist/schema/licenses.js.map +1 -0
  103. package/dist/schema/node-ids.d.ts +122 -0
  104. package/dist/schema/node-ids.d.ts.map +1 -0
  105. package/dist/schema/node-ids.js +25 -0
  106. package/dist/schema/node-ids.js.map +1 -0
  107. package/dist/schema/pages.d.ts +488 -0
  108. package/dist/schema/pages.d.ts.map +1 -0
  109. package/dist/schema/pages.js +70 -0
  110. package/dist/schema/pages.js.map +1 -0
  111. package/dist/schema/password-reset-tokens.d.ts +137 -0
  112. package/dist/schema/password-reset-tokens.d.ts.map +1 -0
  113. package/dist/schema/password-reset-tokens.js +26 -0
  114. package/dist/schema/password-reset-tokens.js.map +1 -0
  115. package/dist/schema/query.d.ts +11 -0
  116. package/dist/schema/query.d.ts.map +1 -0
  117. package/dist/schema/query.js +11 -0
  118. package/dist/schema/query.js.map +1 -0
  119. package/dist/schema/rate-limits.d.ts +212 -0
  120. package/dist/schema/rate-limits.d.ts.map +1 -0
  121. package/dist/schema/rate-limits.js +38 -0
  122. package/dist/schema/rate-limits.js.map +1 -0
  123. package/dist/schema/rest.d.ts +31 -0
  124. package/dist/schema/rest.d.ts.map +1 -0
  125. package/dist/schema/rest.js +37 -0
  126. package/dist/schema/rest.js.map +1 -0
  127. package/dist/schema/sites.d.ts +365 -0
  128. package/dist/schema/sites.d.ts.map +1 -0
  129. package/dist/schema/sites.js +62 -0
  130. package/dist/schema/sites.js.map +1 -0
  131. package/dist/schema/tickets.d.ts +1118 -0
  132. package/dist/schema/tickets.d.ts.map +1 -0
  133. package/dist/schema/tickets.js +150 -0
  134. package/dist/schema/tickets.js.map +1 -0
  135. package/dist/schema/todos.d.ts +98 -0
  136. package/dist/schema/todos.d.ts.map +1 -0
  137. package/dist/schema/todos.js +12 -0
  138. package/dist/schema/todos.js.map +1 -0
  139. package/dist/schema/users.d.ts +503 -0
  140. package/dist/schema/users.d.ts.map +1 -0
  141. package/dist/schema/users.js +75 -0
  142. package/dist/schema/users.js.map +1 -0
  143. package/dist/schema/vector.d.ts +9 -0
  144. package/dist/schema/vector.d.ts.map +1 -0
  145. package/dist/schema/vector.js +9 -0
  146. package/dist/schema/vector.js.map +1 -0
  147. package/dist/schema/waitlist.d.ts +151 -0
  148. package/dist/schema/waitlist.d.ts.map +1 -0
  149. package/dist/schema/waitlist.js +17 -0
  150. package/dist/schema/waitlist.js.map +1 -0
  151. package/dist/schema/yjs-documents.d.ts +116 -0
  152. package/dist/schema/yjs-documents.d.ts.map +1 -0
  153. package/dist/schema/yjs-documents.js +15 -0
  154. package/dist/schema/yjs-documents.js.map +1 -0
  155. package/dist/types/database.d.ts +740 -0
  156. package/dist/types/database.d.ts.map +1 -0
  157. package/dist/types/database.js +151 -0
  158. package/dist/types/database.js.map +1 -0
  159. package/dist/types/discover.d.ts +83 -0
  160. package/dist/types/discover.d.ts.map +1 -0
  161. package/dist/types/discover.js +271 -0
  162. package/dist/types/discover.js.map +1 -0
  163. package/dist/types/extract-relationships.d.ts +115 -0
  164. package/dist/types/extract-relationships.d.ts.map +1 -0
  165. package/dist/types/extract-relationships.js +455 -0
  166. package/dist/types/extract-relationships.js.map +1 -0
  167. package/dist/types/generate-contracts.d.ts +19 -0
  168. package/dist/types/generate-contracts.d.ts.map +1 -0
  169. package/dist/types/generate-contracts.js +128 -0
  170. package/dist/types/generate-contracts.js.map +1 -0
  171. package/dist/types/generate-zod-schemas.d.ts +20 -0
  172. package/dist/types/generate-zod-schemas.d.ts.map +1 -0
  173. package/dist/types/generate-zod-schemas.js +128 -0
  174. package/dist/types/generate-zod-schemas.js.map +1 -0
  175. package/dist/types/generate.d.ts +17 -0
  176. package/dist/types/generate.d.ts.map +1 -0
  177. package/dist/types/generate.js +298 -0
  178. package/dist/types/generate.js.map +1 -0
  179. package/dist/types/index.d.ts +19 -0
  180. package/dist/types/index.d.ts.map +1 -0
  181. package/dist/types/index.js +19 -0
  182. package/dist/types/index.js.map +1 -0
  183. package/dist/types/introspect.d.ts +75 -0
  184. package/dist/types/introspect.d.ts.map +1 -0
  185. package/dist/types/introspect.js +187 -0
  186. package/dist/types/introspect.js.map +1 -0
  187. package/dist/types/stripe-schema.d.ts +893 -0
  188. package/dist/types/stripe-schema.d.ts.map +1 -0
  189. package/dist/types/stripe-schema.js +112 -0
  190. package/dist/types/stripe-schema.js.map +1 -0
  191. package/package.json +154 -0
@@ -0,0 +1,223 @@
1
+ /**
2
+ * Error Events Table - Persistent storage for application errors.
3
+ *
4
+ * Append-only table. Captures unhandled errors from CMS (client + server)
5
+ * and API. Queryable via the CMS admin /admin/errors page.
6
+ * Supplemented by Axiom log drain for full log search.
7
+ */
8
+ export declare const errorEvents: import("drizzle-orm/pg-core").PgTableWithColumns<{
9
+ name: "error_events";
10
+ schema: undefined;
11
+ columns: {
12
+ id: import("drizzle-orm/pg-core").PgColumn<{
13
+ name: "id";
14
+ tableName: "error_events";
15
+ dataType: "string";
16
+ columnType: "PgText";
17
+ data: string;
18
+ driverParam: string;
19
+ notNull: true;
20
+ hasDefault: true;
21
+ isPrimaryKey: true;
22
+ isAutoincrement: false;
23
+ hasRuntimeDefault: true;
24
+ enumValues: [string, ...string[]];
25
+ baseColumn: never;
26
+ identity: undefined;
27
+ generated: undefined;
28
+ }, {}, {}>;
29
+ timestamp: import("drizzle-orm/pg-core").PgColumn<{
30
+ name: "timestamp";
31
+ tableName: "error_events";
32
+ dataType: "date";
33
+ columnType: "PgTimestamp";
34
+ data: Date;
35
+ driverParam: string;
36
+ notNull: true;
37
+ hasDefault: true;
38
+ isPrimaryKey: false;
39
+ isAutoincrement: false;
40
+ hasRuntimeDefault: false;
41
+ enumValues: undefined;
42
+ baseColumn: never;
43
+ identity: undefined;
44
+ generated: undefined;
45
+ }, {}, {}>;
46
+ level: import("drizzle-orm/pg-core").PgColumn<{
47
+ name: "level";
48
+ tableName: "error_events";
49
+ dataType: "string";
50
+ columnType: "PgText";
51
+ data: string;
52
+ driverParam: string;
53
+ notNull: true;
54
+ hasDefault: true;
55
+ isPrimaryKey: false;
56
+ isAutoincrement: false;
57
+ hasRuntimeDefault: false;
58
+ enumValues: [string, ...string[]];
59
+ baseColumn: never;
60
+ identity: undefined;
61
+ generated: undefined;
62
+ }, {}, {}>;
63
+ message: import("drizzle-orm/pg-core").PgColumn<{
64
+ name: "message";
65
+ tableName: "error_events";
66
+ dataType: "string";
67
+ columnType: "PgText";
68
+ data: string;
69
+ driverParam: string;
70
+ notNull: true;
71
+ hasDefault: false;
72
+ isPrimaryKey: false;
73
+ isAutoincrement: false;
74
+ hasRuntimeDefault: false;
75
+ enumValues: [string, ...string[]];
76
+ baseColumn: never;
77
+ identity: undefined;
78
+ generated: undefined;
79
+ }, {}, {}>;
80
+ stack: import("drizzle-orm/pg-core").PgColumn<{
81
+ name: "stack";
82
+ tableName: "error_events";
83
+ dataType: "string";
84
+ columnType: "PgText";
85
+ data: string;
86
+ driverParam: string;
87
+ notNull: false;
88
+ hasDefault: false;
89
+ isPrimaryKey: false;
90
+ isAutoincrement: false;
91
+ hasRuntimeDefault: false;
92
+ enumValues: [string, ...string[]];
93
+ baseColumn: never;
94
+ identity: undefined;
95
+ generated: undefined;
96
+ }, {}, {}>;
97
+ app: import("drizzle-orm/pg-core").PgColumn<{
98
+ name: "app";
99
+ tableName: "error_events";
100
+ dataType: "string";
101
+ columnType: "PgText";
102
+ data: string;
103
+ driverParam: string;
104
+ notNull: true;
105
+ hasDefault: false;
106
+ isPrimaryKey: false;
107
+ isAutoincrement: false;
108
+ hasRuntimeDefault: false;
109
+ enumValues: [string, ...string[]];
110
+ baseColumn: never;
111
+ identity: undefined;
112
+ generated: undefined;
113
+ }, {}, {}>;
114
+ context: import("drizzle-orm/pg-core").PgColumn<{
115
+ name: "context";
116
+ tableName: "error_events";
117
+ dataType: "string";
118
+ columnType: "PgText";
119
+ data: string;
120
+ driverParam: string;
121
+ notNull: false;
122
+ hasDefault: false;
123
+ isPrimaryKey: false;
124
+ isAutoincrement: false;
125
+ hasRuntimeDefault: false;
126
+ enumValues: [string, ...string[]];
127
+ baseColumn: never;
128
+ identity: undefined;
129
+ generated: undefined;
130
+ }, {}, {}>;
131
+ environment: import("drizzle-orm/pg-core").PgColumn<{
132
+ name: "environment";
133
+ tableName: "error_events";
134
+ dataType: "string";
135
+ columnType: "PgText";
136
+ data: string;
137
+ driverParam: string;
138
+ notNull: true;
139
+ hasDefault: true;
140
+ isPrimaryKey: false;
141
+ isAutoincrement: false;
142
+ hasRuntimeDefault: false;
143
+ enumValues: [string, ...string[]];
144
+ baseColumn: never;
145
+ identity: undefined;
146
+ generated: undefined;
147
+ }, {}, {}>;
148
+ url: import("drizzle-orm/pg-core").PgColumn<{
149
+ name: "url";
150
+ tableName: "error_events";
151
+ dataType: "string";
152
+ columnType: "PgText";
153
+ data: string;
154
+ driverParam: string;
155
+ notNull: false;
156
+ hasDefault: false;
157
+ isPrimaryKey: false;
158
+ isAutoincrement: false;
159
+ hasRuntimeDefault: false;
160
+ enumValues: [string, ...string[]];
161
+ baseColumn: never;
162
+ identity: undefined;
163
+ generated: undefined;
164
+ }, {}, {}>;
165
+ userId: import("drizzle-orm/pg-core").PgColumn<{
166
+ name: "user_id";
167
+ tableName: "error_events";
168
+ dataType: "string";
169
+ columnType: "PgText";
170
+ data: string;
171
+ driverParam: string;
172
+ notNull: false;
173
+ hasDefault: false;
174
+ isPrimaryKey: false;
175
+ isAutoincrement: false;
176
+ hasRuntimeDefault: false;
177
+ enumValues: [string, ...string[]];
178
+ baseColumn: never;
179
+ identity: undefined;
180
+ generated: undefined;
181
+ }, {}, {}>;
182
+ requestId: import("drizzle-orm/pg-core").PgColumn<{
183
+ name: "request_id";
184
+ tableName: "error_events";
185
+ dataType: "string";
186
+ columnType: "PgText";
187
+ data: string;
188
+ driverParam: string;
189
+ notNull: false;
190
+ hasDefault: false;
191
+ isPrimaryKey: false;
192
+ isAutoincrement: false;
193
+ hasRuntimeDefault: false;
194
+ enumValues: [string, ...string[]];
195
+ baseColumn: never;
196
+ identity: undefined;
197
+ generated: undefined;
198
+ }, {}, {}>;
199
+ metadata: import("drizzle-orm/pg-core").PgColumn<{
200
+ name: "metadata";
201
+ tableName: "error_events";
202
+ dataType: "json";
203
+ columnType: "PgJsonb";
204
+ data: unknown;
205
+ driverParam: unknown;
206
+ notNull: false;
207
+ hasDefault: false;
208
+ isPrimaryKey: false;
209
+ isAutoincrement: false;
210
+ hasRuntimeDefault: false;
211
+ enumValues: undefined;
212
+ baseColumn: never;
213
+ identity: undefined;
214
+ generated: undefined;
215
+ }, {}, {}>;
216
+ };
217
+ dialect: "pg";
218
+ }>;
219
+ /** Row type for select queries */
220
+ export type ErrorEventRow = typeof errorEvents.$inferSelect;
221
+ /** Insert type for new records */
222
+ export type ErrorEventInsert = typeof errorEvents.$inferInsert;
223
+ //# sourceMappingURL=error-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-events.d.ts","sourceRoot":"","sources":["../../src/schema/error-events.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAQH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8CvB,CAAA;AAED,kCAAkC;AAClC,MAAM,MAAM,aAAa,GAAG,OAAO,WAAW,CAAC,YAAY,CAAA;AAE3D,kCAAkC;AAClC,MAAM,MAAM,gBAAgB,GAAG,OAAO,WAAW,CAAC,YAAY,CAAA"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Error Events Table - Persistent storage for application errors.
3
+ *
4
+ * Append-only table. Captures unhandled errors from CMS (client + server)
5
+ * and API. Queryable via the CMS admin /admin/errors page.
6
+ * Supplemented by Axiom log drain for full log search.
7
+ */
8
+ import { index, jsonb, pgTable, text, timestamp } from 'drizzle-orm/pg-core';
9
+ // =============================================================================
10
+ // Error Events Table
11
+ // =============================================================================
12
+ export const errorEvents = pgTable('error_events', {
13
+ /** Unique event ID (UUID) */
14
+ id: text('id')
15
+ .primaryKey()
16
+ .$defaultFn(() => crypto.randomUUID()),
17
+ /** When the error occurred */
18
+ timestamp: timestamp('timestamp', { withTimezone: true }).defaultNow().notNull(),
19
+ /** Severity level */
20
+ level: text('level').notNull().default('error'), // 'error' | 'fatal' | 'warn'
21
+ /** Error message */
22
+ message: text('message').notNull(),
23
+ /** Stack trace (optional — not available for client-side errors without source maps) */
24
+ stack: text('stack'),
25
+ /** Which app generated the error */
26
+ app: text('app').notNull(), // 'cms' | 'api' | 'marketing'
27
+ /** Runtime context within the app */
28
+ context: text('context'), // 'server' | 'client' | 'edge'
29
+ /** Deployment environment */
30
+ environment: text('environment').notNull().default('production'),
31
+ /** URL where the error occurred */
32
+ url: text('url'),
33
+ /** User ID if authenticated (plain text — no FK, errors outlive users) */
34
+ userId: text('user_id'),
35
+ /** Request ID for cross-service correlation */
36
+ requestId: text('request_id'),
37
+ /** Additional structured metadata (status codes, headers, etc.) */
38
+ metadata: jsonb('metadata'),
39
+ }, (table) => [
40
+ index('error_events_timestamp_idx').on(table.timestamp),
41
+ index('error_events_app_env_idx').on(table.app, table.environment),
42
+ index('error_events_level_idx').on(table.level),
43
+ ]);
44
+ //# sourceMappingURL=error-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-events.js","sourceRoot":"","sources":["../../src/schema/error-events.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE5E,gFAAgF;AAChF,qBAAqB;AACrB,gFAAgF;AAEhF,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAChC,cAAc,EACd;IACE,6BAA6B;IAC7B,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC;SACX,UAAU,EAAE;SACZ,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;IAExC,8BAA8B;IAC9B,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE;IAEhF,qBAAqB;IACrB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,6BAA6B;IAE9E,oBAAoB;IACpB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE;IAElC,wFAAwF;IACxF,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;IAEpB,oCAAoC;IACpC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,8BAA8B;IAE1D,qCAAqC;IACrC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,+BAA+B;IAEzD,6BAA6B;IAC7B,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC;IAEhE,mCAAmC;IACnC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC;IAEhB,0EAA0E;IAC1E,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;IAEvB,+CAA+C;IAC/C,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC;IAE7B,mEAAmE;IACnE,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC;CAC5B,EACD,CAAC,KAAK,EAAE,EAAE,CAAC;IACT,KAAK,CAAC,4BAA4B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;IACvD,KAAK,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,CAAC;IAClE,KAAK,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;CAChD,CACF,CAAA"}
@@ -0,0 +1,130 @@
1
+ /**
2
+ * @revealui/db/schema - Database Schema (Schema/Server-side)
3
+ *
4
+ * Drizzle ORM table definitions derived from @revealui/contracts Zod schemas.
5
+ * Designed for Neon Postgres with pgvector extension for embeddings.
6
+ *
7
+ * The tables mirror the following Zod schemas:
8
+ * - UserSchema, SessionSchema → users, sessions
9
+ * - SiteSchema → sites, siteCollaborators
10
+ * - PageSchema → pages, pageRevisions
11
+ * - AgentContextSchema, AgentMemorySchema, etc. → agent tables
12
+ *
13
+ * This file re-exports both REST and Vector schemas for backward compatibility.
14
+ * For dual database architecture, use:
15
+ * - `@revealui/db/schema/rest` for REST API schemas (NeonDB)
16
+ * - `@revealui/db/schema/vector` for Vector schemas (Supabase)
17
+ */
18
+ export * from './rest.js';
19
+ export * from './vector.js';
20
+ export declare const usersRelations: import("drizzle-orm").Relations<"users", {
21
+ sessions: import("drizzle-orm").Many<"sessions">;
22
+ ownedSites: import("drizzle-orm").Many<"sites">;
23
+ collaborations: import("drizzle-orm").Many<"site_collaborators">;
24
+ pageRevisions: import("drizzle-orm").Many<"page_revisions">;
25
+ conversations: import("drizzle-orm").Many<"conversations">;
26
+ apiKeys: import("drizzle-orm").Many<"user_api_keys">;
27
+ providerConfigs: import("drizzle-orm").Many<"tenant_provider_configs">;
28
+ }>;
29
+ export declare const userApiKeysRelations: import("drizzle-orm").Relations<"user_api_keys", {
30
+ user: import("drizzle-orm").One<"users", true>;
31
+ }>;
32
+ export declare const tenantProviderConfigsRelations: import("drizzle-orm").Relations<"tenant_provider_configs", {
33
+ user: import("drizzle-orm").One<"users", true>;
34
+ }>;
35
+ export declare const sessionsRelations: import("drizzle-orm").Relations<"sessions", {
36
+ user: import("drizzle-orm").One<"users", true>;
37
+ }>;
38
+ export declare const passwordResetTokensRelations: import("drizzle-orm").Relations<"password_reset_tokens", {
39
+ user: import("drizzle-orm").One<"users", true>;
40
+ }>;
41
+ export declare const sitesRelations: import("drizzle-orm").Relations<"sites", {
42
+ owner: import("drizzle-orm").One<"users", true>;
43
+ collaborators: import("drizzle-orm").Many<"site_collaborators">;
44
+ pages: import("drizzle-orm").Many<"pages">;
45
+ }>;
46
+ export declare const siteCollaboratorsRelations: import("drizzle-orm").Relations<"site_collaborators", {
47
+ site: import("drizzle-orm").One<"sites", true>;
48
+ user: import("drizzle-orm").One<"users", true>;
49
+ addedByUser: import("drizzle-orm").One<"users", false>;
50
+ }>;
51
+ export declare const pagesRelations: import("drizzle-orm").Relations<"pages", {
52
+ site: import("drizzle-orm").One<"sites", true>;
53
+ parent: import("drizzle-orm").One<"pages", false>;
54
+ children: import("drizzle-orm").Many<"pages">;
55
+ revisions: import("drizzle-orm").Many<"page_revisions">;
56
+ }>;
57
+ export declare const pageRevisionsRelations: import("drizzle-orm").Relations<"page_revisions", {
58
+ page: import("drizzle-orm").One<"pages", true>;
59
+ createdByUser: import("drizzle-orm").One<"users", false>;
60
+ }>;
61
+ export declare const agentContextsRelations: import("drizzle-orm").Relations<"agent_contexts", {}>;
62
+ export declare const agentMemoriesRelations: import("drizzle-orm").Relations<"agent_memories", {
63
+ site: import("drizzle-orm").One<"sites", false>;
64
+ verifiedByUser: import("drizzle-orm").One<"users", false>;
65
+ }>;
66
+ export declare const conversationsRelations: import("drizzle-orm").Relations<"conversations", {
67
+ user: import("drizzle-orm").One<"users", true>;
68
+ actions: import("drizzle-orm").Many<"agent_actions">;
69
+ }>;
70
+ export declare const agentActionsRelations: import("drizzle-orm").Relations<"agent_actions", {
71
+ conversation: import("drizzle-orm").One<"conversations", false>;
72
+ }>;
73
+ export declare const postsRelations: import("drizzle-orm").Relations<"posts", {
74
+ author: import("drizzle-orm").One<"users", false>;
75
+ featuredImage: import("drizzle-orm").One<"media", false>;
76
+ }>;
77
+ export declare const mediaRelations: import("drizzle-orm").Relations<"media", {
78
+ uploadedByUser: import("drizzle-orm").One<"users", false>;
79
+ }>;
80
+ export declare const licensesRelations: import("drizzle-orm").Relations<"licenses", {
81
+ user: import("drizzle-orm").One<"users", true>;
82
+ }>;
83
+ export declare const auditLogRelations: import("drizzle-orm").Relations<"audit_log", {}>;
84
+ export declare const appLogsRelations: import("drizzle-orm").Relations<"app_logs", {}>;
85
+ export declare const errorEventsRelations: import("drizzle-orm").Relations<"error_events", {}>;
86
+ export declare const yjsDocumentsRelations: import("drizzle-orm").Relations<"yjs_documents", {
87
+ edits: import("drizzle-orm").Many<"collab_edits">;
88
+ }>;
89
+ export declare const collabEditsRelations: import("drizzle-orm").Relations<"collab_edits", {
90
+ document: import("drizzle-orm").One<"yjs_documents", true>;
91
+ }>;
92
+ export declare const boardsRelations: import("drizzle-orm").Relations<"boards", {
93
+ owner: import("drizzle-orm").One<"users", false>;
94
+ columns: import("drizzle-orm").Many<"board_columns">;
95
+ tickets: import("drizzle-orm").Many<"tickets">;
96
+ }>;
97
+ export declare const boardColumnsRelations: import("drizzle-orm").Relations<"board_columns", {
98
+ board: import("drizzle-orm").One<"boards", true>;
99
+ tickets: import("drizzle-orm").Many<"tickets">;
100
+ }>;
101
+ export declare const ticketsRelations: import("drizzle-orm").Relations<"tickets", {
102
+ board: import("drizzle-orm").One<"boards", true>;
103
+ column: import("drizzle-orm").One<"board_columns", false>;
104
+ assignee: import("drizzle-orm").One<"users", false>;
105
+ reporter: import("drizzle-orm").One<"users", false>;
106
+ parent: import("drizzle-orm").One<"tickets", false>;
107
+ children: import("drizzle-orm").Many<"tickets">;
108
+ comments: import("drizzle-orm").Many<"ticket_comments">;
109
+ labelAssignments: import("drizzle-orm").Many<"ticket_label_assignments">;
110
+ }>;
111
+ export declare const ticketCommentsRelations: import("drizzle-orm").Relations<"ticket_comments", {
112
+ ticket: import("drizzle-orm").One<"tickets", true>;
113
+ author: import("drizzle-orm").One<"users", false>;
114
+ }>;
115
+ export declare const ticketLabelsRelations: import("drizzle-orm").Relations<"ticket_labels", {
116
+ assignments: import("drizzle-orm").Many<"ticket_label_assignments">;
117
+ }>;
118
+ export declare const ticketLabelAssignmentsRelations: import("drizzle-orm").Relations<"ticket_label_assignments", {
119
+ ticket: import("drizzle-orm").One<"tickets", true>;
120
+ label: import("drizzle-orm").One<"ticket_labels", true>;
121
+ }>;
122
+ export declare const codeProvenanceRelations: import("drizzle-orm").Relations<"code_provenance", {
123
+ reviewer: import("drizzle-orm").One<"users", false>;
124
+ reviews: import("drizzle-orm").Many<"code_reviews">;
125
+ }>;
126
+ export declare const codeReviewsRelations: import("drizzle-orm").Relations<"code_reviews", {
127
+ provenance: import("drizzle-orm").One<"code_provenance", true>;
128
+ reviewer: import("drizzle-orm").One<"users", false>;
129
+ }>;
130
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA;AAoC3B,eAAO,MAAM,cAAc;;;;;;;;EAQxB,CAAA;AAGH,eAAO,MAAM,oBAAoB;;EAK9B,CAAA;AAEH,eAAO,MAAM,8BAA8B;;EAKxC,CAAA;AAGH,eAAO,MAAM,iBAAiB;;EAK3B,CAAA;AAGH,eAAO,MAAM,4BAA4B;;EAKtC,CAAA;AAKH,eAAO,MAAM,cAAc;;;;EAOxB,CAAA;AAGH,eAAO,MAAM,0BAA0B;;;;EAapC,CAAA;AAGH,eAAO,MAAM,cAAc;;;;;EAcxB,CAAA;AAGH,eAAO,MAAM,sBAAsB;;;EAShC,CAAA;AAGH,eAAO,MAAM,sBAAsB,uDAEhC,CAAA;AAGH,eAAO,MAAM,sBAAsB;;;EAShC,CAAA;AAGH,eAAO,MAAM,sBAAsB;;;EAMhC,CAAA;AAGH,eAAO,MAAM,qBAAqB;;EAK/B,CAAA;AAOH,eAAO,MAAM,cAAc;;;EASxB,CAAA;AAGH,eAAO,MAAM,cAAc;;EAKxB,CAAA;AAMH,eAAO,MAAM,iBAAiB;;EAK3B,CAAA;AASH,eAAO,MAAM,iBAAiB,kDAAkC,CAAA;AAIhE,eAAO,MAAM,gBAAgB,iDAAiC,CAAA;AAI9D,eAAO,MAAM,oBAAoB,qDAAqC,CAAA;AAMtE,eAAO,MAAM,qBAAqB;;EAE/B,CAAA;AAEH,eAAO,MAAM,oBAAoB;;EAK9B,CAAA;AAMH,eAAO,MAAM,eAAe;;;;EAOzB,CAAA;AAEH,eAAO,MAAM,qBAAqB;;;EAM/B,CAAA;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;EA6B1B,CAAA;AAEH,eAAO,MAAM,uBAAuB;;;EASjC,CAAA;AAEH,eAAO,MAAM,qBAAqB;;EAE/B,CAAA;AAEH,eAAO,MAAM,+BAA+B;;;EASzC,CAAA;AAMH,eAAO,MAAM,uBAAuB;;;EAMjC,CAAA;AAEH,eAAO,MAAM,oBAAoB;;;EAS9B,CAAA"}