@revealui/db 0.2.1 → 0.3.1

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 (256) hide show
  1. package/dist/audit-store.d.ts.map +1 -1
  2. package/dist/audit-store.js.map +1 -1
  3. package/dist/cleanup/cross-db-cleanup.d.ts +82 -0
  4. package/dist/cleanup/cross-db-cleanup.d.ts.map +1 -0
  5. package/dist/cleanup/cross-db-cleanup.js +189 -0
  6. package/dist/cleanup/cross-db-cleanup.js.map +1 -0
  7. package/dist/cleanup/index.d.ts +11 -0
  8. package/dist/cleanup/index.d.ts.map +1 -0
  9. package/dist/cleanup/index.js +11 -0
  10. package/dist/cleanup/index.js.map +1 -0
  11. package/dist/cleanup/rag-site-cleanup.d.ts +58 -0
  12. package/dist/cleanup/rag-site-cleanup.d.ts.map +1 -0
  13. package/dist/cleanup/rag-site-cleanup.js +68 -0
  14. package/dist/cleanup/rag-site-cleanup.js.map +1 -0
  15. package/dist/cleanup/stale-tokens.d.ts +37 -0
  16. package/dist/cleanup/stale-tokens.d.ts.map +1 -0
  17. package/dist/cleanup/stale-tokens.js +113 -0
  18. package/dist/cleanup/stale-tokens.js.map +1 -0
  19. package/dist/client/index.d.ts +14 -1
  20. package/dist/client/index.d.ts.map +1 -1
  21. package/dist/client/index.js +49 -13
  22. package/dist/client/index.js.map +1 -1
  23. package/dist/client/types.d.ts.map +1 -1
  24. package/dist/crypto.js.map +1 -1
  25. package/dist/index.d.ts +2 -1
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +4 -2
  28. package/dist/index.js.map +1 -1
  29. package/dist/log-transport.d.ts.map +1 -1
  30. package/dist/log-transport.js +3 -1
  31. package/dist/log-transport.js.map +1 -1
  32. package/dist/pool.d.ts +2 -1
  33. package/dist/pool.d.ts.map +1 -1
  34. package/dist/pool.js +56 -22
  35. package/dist/pool.js.map +1 -1
  36. package/dist/queries/boards.d.ts +13 -1
  37. package/dist/queries/boards.d.ts.map +1 -1
  38. package/dist/queries/boards.js +5 -2
  39. package/dist/queries/boards.js.map +1 -1
  40. package/dist/queries/code-provenance.d.ts.map +1 -1
  41. package/dist/queries/code-provenance.js.map +1 -1
  42. package/dist/queries/conversations.d.ts +29 -0
  43. package/dist/queries/conversations.d.ts.map +1 -0
  44. package/dist/queries/conversations.js +80 -0
  45. package/dist/queries/conversations.js.map +1 -0
  46. package/dist/queries/media.d.ts +9 -0
  47. package/dist/queries/media.d.ts.map +1 -1
  48. package/dist/queries/media.js +23 -13
  49. package/dist/queries/media.js.map +1 -1
  50. package/dist/queries/orders.d.ts +87 -0
  51. package/dist/queries/orders.d.ts.map +1 -0
  52. package/dist/queries/orders.js +36 -0
  53. package/dist/queries/orders.js.map +1 -0
  54. package/dist/queries/pages.d.ts +10 -0
  55. package/dist/queries/pages.d.ts.map +1 -1
  56. package/dist/queries/pages.js +19 -5
  57. package/dist/queries/pages.js.map +1 -1
  58. package/dist/queries/posts.d.ts +41 -0
  59. package/dist/queries/posts.d.ts.map +1 -1
  60. package/dist/queries/posts.js +38 -5
  61. package/dist/queries/posts.js.map +1 -1
  62. package/dist/queries/products.d.ts +102 -0
  63. package/dist/queries/products.d.ts.map +1 -0
  64. package/dist/queries/products.js +55 -0
  65. package/dist/queries/products.js.map +1 -0
  66. package/dist/queries/sites.d.ts +36 -1
  67. package/dist/queries/sites.d.ts.map +1 -1
  68. package/dist/queries/sites.js +45 -5
  69. package/dist/queries/sites.js.map +1 -1
  70. package/dist/queries/ticket-comments.d.ts +34 -1
  71. package/dist/queries/ticket-comments.d.ts.map +1 -1
  72. package/dist/queries/ticket-comments.js +32 -1
  73. package/dist/queries/ticket-comments.js.map +1 -1
  74. package/dist/queries/ticket-labels.d.ts +10 -0
  75. package/dist/queries/ticket-labels.d.ts.map +1 -1
  76. package/dist/queries/ticket-labels.js +4 -0
  77. package/dist/queries/ticket-labels.js.map +1 -1
  78. package/dist/queries/tickets.d.ts +42 -1
  79. package/dist/queries/tickets.d.ts.map +1 -1
  80. package/dist/queries/tickets.js +28 -7
  81. package/dist/queries/tickets.js.map +1 -1
  82. package/dist/queries/users.d.ts +221 -0
  83. package/dist/queries/users.d.ts.map +1 -0
  84. package/dist/queries/users.js +94 -0
  85. package/dist/queries/users.js.map +1 -0
  86. package/dist/schema/accounts.d.ts +962 -0
  87. package/dist/schema/accounts.d.ts.map +1 -0
  88. package/dist/schema/accounts.js +117 -0
  89. package/dist/schema/accounts.js.map +1 -0
  90. package/dist/schema/agents.d.ts +216 -1
  91. package/dist/schema/agents.d.ts.map +1 -1
  92. package/dist/schema/agents.js +61 -6
  93. package/dist/schema/agents.js.map +1 -1
  94. package/dist/schema/api-keys.d.ts +17 -0
  95. package/dist/schema/api-keys.d.ts.map +1 -1
  96. package/dist/schema/api-keys.js +3 -0
  97. package/dist/schema/api-keys.js.map +1 -1
  98. package/dist/schema/app-logs.d.ts.map +1 -1
  99. package/dist/schema/app-logs.js.map +1 -1
  100. package/dist/schema/audit-log.d.ts.map +1 -1
  101. package/dist/schema/audit-log.js.map +1 -1
  102. package/dist/schema/circuit-breaker.d.ts +139 -0
  103. package/dist/schema/circuit-breaker.d.ts.map +1 -0
  104. package/dist/schema/circuit-breaker.js +28 -0
  105. package/dist/schema/circuit-breaker.js.map +1 -0
  106. package/dist/schema/cms.d.ts +68 -0
  107. package/dist/schema/cms.d.ts.map +1 -1
  108. package/dist/schema/cms.js +18 -4
  109. package/dist/schema/cms.js.map +1 -1
  110. package/dist/schema/code-provenance.d.ts.map +1 -1
  111. package/dist/schema/code-provenance.js.map +1 -1
  112. package/dist/schema/collab-edits.d.ts.map +1 -1
  113. package/dist/schema/collab-edits.js +2 -2
  114. package/dist/schema/collab-edits.js.map +1 -1
  115. package/dist/schema/coordination.d.ts +967 -0
  116. package/dist/schema/coordination.d.ts.map +1 -0
  117. package/dist/schema/coordination.js +109 -0
  118. package/dist/schema/coordination.js.map +1 -0
  119. package/dist/schema/crdt-operations.d.ts.map +1 -1
  120. package/dist/schema/crdt-operations.js.map +1 -1
  121. package/dist/schema/error-events.d.ts.map +1 -1
  122. package/dist/schema/error-events.js.map +1 -1
  123. package/dist/schema/gdpr.d.ts +529 -0
  124. package/dist/schema/gdpr.d.ts.map +1 -0
  125. package/dist/schema/gdpr.js +93 -0
  126. package/dist/schema/gdpr.js.map +1 -0
  127. package/dist/schema/index.d.ts +44 -1
  128. package/dist/schema/index.d.ts.map +1 -1
  129. package/dist/schema/index.js +93 -0
  130. package/dist/schema/index.js.map +1 -1
  131. package/dist/schema/jobs.d.ts +242 -0
  132. package/dist/schema/jobs.d.ts.map +1 -0
  133. package/dist/schema/jobs.js +48 -0
  134. package/dist/schema/jobs.js.map +1 -0
  135. package/dist/schema/licenses.d.ts +68 -0
  136. package/dist/schema/licenses.d.ts.map +1 -1
  137. package/dist/schema/licenses.js +11 -2
  138. package/dist/schema/licenses.js.map +1 -1
  139. package/dist/schema/magic-links.d.ts +136 -0
  140. package/dist/schema/magic-links.d.ts.map +1 -0
  141. package/dist/schema/magic-links.js +32 -0
  142. package/dist/schema/magic-links.js.map +1 -0
  143. package/dist/schema/marketplace.d.ts +496 -0
  144. package/dist/schema/marketplace.d.ts.map +1 -0
  145. package/dist/schema/marketplace.js +114 -0
  146. package/dist/schema/marketplace.js.map +1 -0
  147. package/dist/schema/node-ids.d.ts.map +1 -1
  148. package/dist/schema/node-ids.js.map +1 -1
  149. package/dist/schema/oauth-accounts.d.ts +34 -0
  150. package/dist/schema/oauth-accounts.d.ts.map +1 -1
  151. package/dist/schema/oauth-accounts.js +5 -0
  152. package/dist/schema/oauth-accounts.js.map +1 -1
  153. package/dist/schema/pages.d.ts +34 -0
  154. package/dist/schema/pages.d.ts.map +1 -1
  155. package/dist/schema/pages.js +14 -4
  156. package/dist/schema/pages.js.map +1 -1
  157. package/dist/schema/passkeys.d.ts +208 -0
  158. package/dist/schema/passkeys.d.ts.map +1 -0
  159. package/dist/schema/passkeys.js +48 -0
  160. package/dist/schema/passkeys.js.map +1 -0
  161. package/dist/schema/password-reset-tokens.d.ts.map +1 -1
  162. package/dist/schema/password-reset-tokens.js +5 -2
  163. package/dist/schema/password-reset-tokens.js.map +1 -1
  164. package/dist/schema/products.d.ts +519 -0
  165. package/dist/schema/products.d.ts.map +1 -0
  166. package/dist/schema/products.js +101 -0
  167. package/dist/schema/products.js.map +1 -0
  168. package/dist/schema/rag.d.ts.map +1 -1
  169. package/dist/schema/rag.js +5 -2
  170. package/dist/schema/rag.js.map +1 -1
  171. package/dist/schema/rate-limits.d.ts.map +1 -1
  172. package/dist/schema/rate-limits.js +5 -2
  173. package/dist/schema/rate-limits.js.map +1 -1
  174. package/dist/schema/rest.d.ts +12 -2
  175. package/dist/schema/rest.d.ts.map +1 -1
  176. package/dist/schema/rest.js +12 -2
  177. package/dist/schema/rest.js.map +1 -1
  178. package/dist/schema/revealcoin.d.ts +267 -0
  179. package/dist/schema/revealcoin.d.ts.map +1 -0
  180. package/dist/schema/revealcoin.js +54 -0
  181. package/dist/schema/revealcoin.js.map +1 -0
  182. package/dist/schema/sites.d.ts +34 -0
  183. package/dist/schema/sites.d.ts.map +1 -1
  184. package/dist/schema/sites.js +15 -3
  185. package/dist/schema/sites.js.map +1 -1
  186. package/dist/schema/tenants.d.ts +188 -0
  187. package/dist/schema/tenants.d.ts.map +1 -0
  188. package/dist/schema/tenants.js +14 -0
  189. package/dist/schema/tenants.js.map +1 -0
  190. package/dist/schema/tickets.d.ts.map +1 -1
  191. package/dist/schema/tickets.js +17 -5
  192. package/dist/schema/tickets.js.map +1 -1
  193. package/dist/schema/users.d.ts +174 -0
  194. package/dist/schema/users.d.ts.map +1 -1
  195. package/dist/schema/users.js +31 -3
  196. package/dist/schema/users.js.map +1 -1
  197. package/dist/schema/vector.d.ts +10 -3
  198. package/dist/schema/vector.d.ts.map +1 -1
  199. package/dist/schema/vector.js +11 -4
  200. package/dist/schema/vector.js.map +1 -1
  201. package/dist/schema/waitlist.d.ts.map +1 -1
  202. package/dist/schema/waitlist.js.map +1 -1
  203. package/dist/schema/webhook-events.d.ts.map +1 -1
  204. package/dist/schema/webhook-events.js.map +1 -1
  205. package/dist/schema/yjs-documents.d.ts.map +1 -1
  206. package/dist/schema/yjs-documents.js.map +1 -1
  207. package/dist/scripts/cleanup-expired.d.ts +12 -0
  208. package/dist/scripts/cleanup-expired.d.ts.map +1 -0
  209. package/dist/scripts/cleanup-expired.js +50 -0
  210. package/dist/scripts/cleanup-expired.js.map +1 -0
  211. package/dist/types/database.d.ts +387 -2
  212. package/dist/types/database.d.ts.map +1 -1
  213. package/dist/types/database.js +80 -1
  214. package/dist/types/database.js.map +1 -1
  215. package/dist/types/discover.d.ts +2 -2
  216. package/dist/types/discover.d.ts.map +1 -1
  217. package/dist/types/discover.js +16 -16
  218. package/dist/types/discover.js.map +1 -1
  219. package/dist/types/extract-relationships.d.ts.map +1 -1
  220. package/dist/types/extract-relationships.js.map +1 -1
  221. package/dist/types/generate-contracts.js +1 -1
  222. package/dist/types/generate-contracts.js.map +1 -1
  223. package/dist/types/generate-zod-schemas.js.map +1 -1
  224. package/dist/types/generate.js.map +1 -1
  225. package/dist/types/index.d.ts.map +1 -1
  226. package/dist/types/introspect.d.ts.map +1 -1
  227. package/dist/types/introspect.js +0 -1
  228. package/dist/types/introspect.js.map +1 -1
  229. package/dist/types/stripe-schema.d.ts.map +1 -1
  230. package/dist/types/stripe-schema.js +7 -2
  231. package/dist/types/stripe-schema.js.map +1 -1
  232. package/dist/utils/soft-delete.d.ts +45 -0
  233. package/dist/utils/soft-delete.d.ts.map +1 -0
  234. package/dist/utils/soft-delete.js +45 -0
  235. package/dist/utils/soft-delete.js.map +1 -0
  236. package/dist/validation/cross-db.d.ts +60 -0
  237. package/dist/validation/cross-db.d.ts.map +1 -0
  238. package/dist/validation/cross-db.js +146 -0
  239. package/dist/validation/cross-db.js.map +1 -0
  240. package/package.json +60 -12
  241. package/dist/queries/optimized-queries.d.ts +0 -89
  242. package/dist/queries/optimized-queries.d.ts.map +0 -1
  243. package/dist/queries/optimized-queries.js +0 -371
  244. package/dist/queries/optimized-queries.js.map +0 -1
  245. package/dist/queries/todos.d.ts +0 -37
  246. package/dist/queries/todos.d.ts.map +0 -1
  247. package/dist/queries/todos.js +0 -37
  248. package/dist/queries/todos.js.map +0 -1
  249. package/dist/schema/query.d.ts +0 -11
  250. package/dist/schema/query.d.ts.map +0 -1
  251. package/dist/schema/query.js +0 -11
  252. package/dist/schema/query.js.map +0 -1
  253. package/dist/schema/todos.d.ts +0 -98
  254. package/dist/schema/todos.d.ts.map +0 -1
  255. package/dist/schema/todos.js +0 -12
  256. package/dist/schema/todos.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"audit-log.js","sourceRoot":"","sources":["../../src/schema/audit-log.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE5E,gFAAgF;AAChF,kBAAkB;AAClB,gFAAgF;AAEhF,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,CAC7B,WAAW,EACX;IACE,6BAA6B;IAC7B,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE;IAE3B,8BAA8B;IAC9B,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE;IAEhF,+DAA+D;IAC/D,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE;IAEvC,qCAAqC;IACrC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;IAEpD,qCAAqC;IACrC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE;IAEnC,4BAA4B;IAC5B,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;IAEvB,sCAAsC;IACtC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC;IAE7B,iCAAiC;IACjC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE;IAEjD,mDAAmD;IACnD,gBAAgB,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC,KAAK,EAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE;CACrF,EACD,CAAC,KAAK,EAAE,EAAE,CAAC;IACT,KAAK,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;IACrD,KAAK,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;IACjD,KAAK,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;IACpD,KAAK,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC;CACnD,CACF,CAAA"}
1
+ {"version":3,"file":"audit-log.js","sourceRoot":"","sources":["../../src/schema/audit-log.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE7E,gFAAgF;AAChF,kBAAkB;AAClB,gFAAgF;AAEhF,MAAM,CAAC,MAAM,QAAQ,GAAG,OAAO,CAC7B,WAAW,EACX;IACE,6BAA6B;IAC7B,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE;IAE3B,8BAA8B;IAC9B,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE;IAEhF,+DAA+D;IAC/D,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE;IAEvC,qCAAqC;IACrC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;IAEpD,qCAAqC;IACrC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE;IAEnC,4BAA4B;IAC5B,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;IAEvB,sCAAsC;IACtC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC;IAE7B,iCAAiC;IACjC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE;IAEjD,mDAAmD;IACnD,gBAAgB,EAAE,KAAK,CAAC,mBAAmB,CAAC,CAAC,KAAK,EAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE;CACrF,EACD,CAAC,KAAK,EAAE,EAAE,CAAC;IACT,KAAK,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;IACrD,KAAK,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;IACjD,KAAK,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;IACpD,KAAK,CAAC,wBAAwB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC;CACnD,CACF,CAAC"}
@@ -0,0 +1,139 @@
1
+ /**
2
+ * Circuit Breaker State Table
3
+ *
4
+ * Stores shared circuit breaker state across API instances so that a tripped
5
+ * circuit (e.g., Stripe unreachable) is visible to all nodes immediately
6
+ * rather than being isolated per-process.
7
+ *
8
+ * Write path: only on state transitions (closed→open, open→half-open, etc.)
9
+ * Read path: local 5-second cache; DB only on cache miss.
10
+ */
11
+ export declare const circuitBreakerState: import("drizzle-orm/pg-core").PgTableWithColumns<{
12
+ name: "circuit_breaker_state";
13
+ schema: undefined;
14
+ columns: {
15
+ serviceName: import("drizzle-orm/pg-core").PgColumn<{
16
+ name: "service_name";
17
+ tableName: "circuit_breaker_state";
18
+ dataType: "string";
19
+ columnType: "PgText";
20
+ data: string;
21
+ driverParam: string;
22
+ notNull: true;
23
+ hasDefault: false;
24
+ isPrimaryKey: true;
25
+ isAutoincrement: false;
26
+ hasRuntimeDefault: false;
27
+ enumValues: [string, ...string[]];
28
+ baseColumn: never;
29
+ identity: undefined;
30
+ generated: undefined;
31
+ }, {}, {}>;
32
+ state: import("drizzle-orm/pg-core").PgColumn<{
33
+ name: "state";
34
+ tableName: "circuit_breaker_state";
35
+ dataType: "string";
36
+ columnType: "PgText";
37
+ data: string;
38
+ driverParam: string;
39
+ notNull: true;
40
+ hasDefault: true;
41
+ isPrimaryKey: false;
42
+ isAutoincrement: false;
43
+ hasRuntimeDefault: false;
44
+ enumValues: [string, ...string[]];
45
+ baseColumn: never;
46
+ identity: undefined;
47
+ generated: undefined;
48
+ }, {}, {}>;
49
+ failureCount: import("drizzle-orm/pg-core").PgColumn<{
50
+ name: "failure_count";
51
+ tableName: "circuit_breaker_state";
52
+ dataType: "number";
53
+ columnType: "PgInteger";
54
+ data: number;
55
+ driverParam: string | number;
56
+ notNull: true;
57
+ hasDefault: true;
58
+ isPrimaryKey: false;
59
+ isAutoincrement: false;
60
+ hasRuntimeDefault: false;
61
+ enumValues: undefined;
62
+ baseColumn: never;
63
+ identity: undefined;
64
+ generated: undefined;
65
+ }, {}, {}>;
66
+ successCount: import("drizzle-orm/pg-core").PgColumn<{
67
+ name: "success_count";
68
+ tableName: "circuit_breaker_state";
69
+ dataType: "number";
70
+ columnType: "PgInteger";
71
+ data: number;
72
+ driverParam: string | number;
73
+ notNull: true;
74
+ hasDefault: true;
75
+ isPrimaryKey: false;
76
+ isAutoincrement: false;
77
+ hasRuntimeDefault: false;
78
+ enumValues: undefined;
79
+ baseColumn: never;
80
+ identity: undefined;
81
+ generated: undefined;
82
+ }, {}, {}>;
83
+ lastFailureAt: import("drizzle-orm/pg-core").PgColumn<{
84
+ name: "last_failure_at";
85
+ tableName: "circuit_breaker_state";
86
+ dataType: "date";
87
+ columnType: "PgTimestamp";
88
+ data: Date;
89
+ driverParam: string;
90
+ notNull: false;
91
+ hasDefault: false;
92
+ isPrimaryKey: false;
93
+ isAutoincrement: false;
94
+ hasRuntimeDefault: false;
95
+ enumValues: undefined;
96
+ baseColumn: never;
97
+ identity: undefined;
98
+ generated: undefined;
99
+ }, {}, {}>;
100
+ stateChangedAt: import("drizzle-orm/pg-core").PgColumn<{
101
+ name: "state_changed_at";
102
+ tableName: "circuit_breaker_state";
103
+ dataType: "date";
104
+ columnType: "PgTimestamp";
105
+ data: Date;
106
+ driverParam: string;
107
+ notNull: true;
108
+ hasDefault: true;
109
+ isPrimaryKey: false;
110
+ isAutoincrement: false;
111
+ hasRuntimeDefault: false;
112
+ enumValues: undefined;
113
+ baseColumn: never;
114
+ identity: undefined;
115
+ generated: undefined;
116
+ }, {}, {}>;
117
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
118
+ name: "updated_at";
119
+ tableName: "circuit_breaker_state";
120
+ dataType: "date";
121
+ columnType: "PgTimestamp";
122
+ data: Date;
123
+ driverParam: string;
124
+ notNull: true;
125
+ hasDefault: true;
126
+ isPrimaryKey: false;
127
+ isAutoincrement: false;
128
+ hasRuntimeDefault: false;
129
+ enumValues: undefined;
130
+ baseColumn: never;
131
+ identity: undefined;
132
+ generated: undefined;
133
+ }, {}, {}>;
134
+ };
135
+ dialect: "pg";
136
+ }>;
137
+ export type CircuitBreakerStateRow = typeof circuitBreakerState.$inferSelect;
138
+ export type NewCircuitBreakerState = typeof circuitBreakerState.$inferInsert;
139
+ //# sourceMappingURL=circuit-breaker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circuit-breaker.d.ts","sourceRoot":"","sources":["../../src/schema/circuit-breaker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyB/B,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,OAAO,mBAAmB,CAAC,YAAY,CAAC;AAC7E,MAAM,MAAM,sBAAsB,GAAG,OAAO,mBAAmB,CAAC,YAAY,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Circuit Breaker State Table
3
+ *
4
+ * Stores shared circuit breaker state across API instances so that a tripped
5
+ * circuit (e.g., Stripe unreachable) is visible to all nodes immediately
6
+ * rather than being isolated per-process.
7
+ *
8
+ * Write path: only on state transitions (closed→open, open→half-open, etc.)
9
+ * Read path: local 5-second cache; DB only on cache miss.
10
+ */
11
+ import { index, integer, pgTable, text, timestamp } from 'drizzle-orm/pg-core';
12
+ export const circuitBreakerState = pgTable('circuit_breaker_state', {
13
+ /** Service identifier (e.g. 'stripe', 'supabase') */
14
+ serviceName: text('service_name').primaryKey(),
15
+ /** Current circuit state */
16
+ state: text('state').notNull().default('closed'), // 'closed' | 'open' | 'half-open'
17
+ /** Consecutive failures since last reset */
18
+ failureCount: integer('failure_count').notNull().default(0),
19
+ /** Consecutive successes in half-open state */
20
+ successCount: integer('success_count').notNull().default(0),
21
+ /** When the most recent failure occurred */
22
+ lastFailureAt: timestamp('last_failure_at', { withTimezone: true }),
23
+ /** When the current state was entered */
24
+ stateChangedAt: timestamp('state_changed_at', { withTimezone: true }).defaultNow().notNull(),
25
+ /** Row last-written timestamp */
26
+ updatedAt: timestamp('updated_at', { withTimezone: true }).defaultNow().notNull(),
27
+ }, (table) => [index('circuit_breaker_state_at_idx').on(table.stateChangedAt)]);
28
+ //# sourceMappingURL=circuit-breaker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circuit-breaker.js","sourceRoot":"","sources":["../../src/schema/circuit-breaker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE/E,MAAM,CAAC,MAAM,mBAAmB,GAAG,OAAO,CACxC,uBAAuB,EACvB;IACE,qDAAqD;IACrD,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,UAAU,EAAE;IAE9C,4BAA4B;IAC5B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,kCAAkC;IAEpF,4CAA4C;IAC5C,YAAY,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAE3D,+CAA+C;IAC/C,YAAY,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAE3D,4CAA4C;IAC5C,aAAa,EAAE,SAAS,CAAC,iBAAiB,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAEnE,yCAAyC;IACzC,cAAc,EAAE,SAAS,CAAC,kBAAkB,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE;IAE5F,iCAAiC;IACjC,SAAS,EAAE,SAAS,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE;CAClF,EACD,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAC5E,CAAC"}
@@ -41,6 +41,23 @@ export declare const posts: import("drizzle-orm/pg-core").PgTableWithColumns<{
41
41
  identity: undefined;
42
42
  generated: undefined;
43
43
  }, {}, {}>;
44
+ version: import("drizzle-orm/pg-core").PgColumn<{
45
+ name: "version";
46
+ tableName: "posts";
47
+ dataType: "number";
48
+ columnType: "PgInteger";
49
+ data: number;
50
+ driverParam: string | number;
51
+ notNull: true;
52
+ hasDefault: true;
53
+ isPrimaryKey: false;
54
+ isAutoincrement: false;
55
+ hasRuntimeDefault: false;
56
+ enumValues: undefined;
57
+ baseColumn: never;
58
+ identity: undefined;
59
+ generated: undefined;
60
+ }, {}, {}>;
44
61
  title: import("drizzle-orm/pg-core").PgColumn<{
45
62
  name: "title";
46
63
  tableName: "posts";
@@ -264,6 +281,23 @@ export declare const posts: import("drizzle-orm/pg-core").PgTableWithColumns<{
264
281
  identity: undefined;
265
282
  generated: undefined;
266
283
  }, {}, {}>;
284
+ deletedAt: import("drizzle-orm/pg-core").PgColumn<{
285
+ name: "deleted_at";
286
+ tableName: "posts";
287
+ dataType: "date";
288
+ columnType: "PgTimestamp";
289
+ data: Date;
290
+ driverParam: string;
291
+ notNull: false;
292
+ hasDefault: false;
293
+ isPrimaryKey: false;
294
+ isAutoincrement: false;
295
+ hasRuntimeDefault: false;
296
+ enumValues: undefined;
297
+ baseColumn: never;
298
+ identity: undefined;
299
+ generated: undefined;
300
+ }, {}, {}>;
267
301
  };
268
302
  dialect: "pg";
269
303
  }>;
@@ -305,6 +339,23 @@ export declare const media: import("drizzle-orm/pg-core").PgTableWithColumns<{
305
339
  identity: undefined;
306
340
  generated: undefined;
307
341
  }, {}, {}>;
342
+ version: import("drizzle-orm/pg-core").PgColumn<{
343
+ name: "version";
344
+ tableName: "media";
345
+ dataType: "number";
346
+ columnType: "PgInteger";
347
+ data: number;
348
+ driverParam: string | number;
349
+ notNull: true;
350
+ hasDefault: true;
351
+ isPrimaryKey: false;
352
+ isAutoincrement: false;
353
+ hasRuntimeDefault: false;
354
+ enumValues: undefined;
355
+ baseColumn: never;
356
+ identity: undefined;
357
+ generated: undefined;
358
+ }, {}, {}>;
308
359
  filename: import("drizzle-orm/pg-core").PgColumn<{
309
360
  name: "filename";
310
361
  tableName: "media";
@@ -509,6 +560,23 @@ export declare const media: import("drizzle-orm/pg-core").PgTableWithColumns<{
509
560
  identity: undefined;
510
561
  generated: undefined;
511
562
  }, {}, {}>;
563
+ deletedAt: import("drizzle-orm/pg-core").PgColumn<{
564
+ name: "deleted_at";
565
+ tableName: "media";
566
+ dataType: "date";
567
+ columnType: "PgTimestamp";
568
+ data: Date;
569
+ driverParam: string;
570
+ notNull: false;
571
+ hasDefault: false;
572
+ isPrimaryKey: false;
573
+ isAutoincrement: false;
574
+ hasRuntimeDefault: false;
575
+ enumValues: undefined;
576
+ baseColumn: never;
577
+ identity: undefined;
578
+ generated: undefined;
579
+ }, {}, {}>;
512
580
  };
513
581
  dialect: "pg";
514
582
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"cms.d.ts","sourceRoot":"","sources":["../../src/schema/cms.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cms.d.ts","sourceRoot":"","sources":["../../src/schema/cms.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqDjB,CAAC;AAMF,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0ChB,CAAC;AAMH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAWV,MAAM;qBACR,MAAM;yBACF,OAAO;2BACL,KAAK,CAAC;oBAAE,KAAK,EAAE,MAAM,CAAC;oBAAC,GAAG,EAAE,MAAM,CAAC;oBAAC,MAAM,CAAC,EAAE,OAAO,CAAA;iBAAE,CAAC;;;;;;;;;;;;;;uBAH3D,MAAM;qBACR,MAAM;yBACF,OAAO;2BACL,KAAK,CAAC;oBAAE,KAAK,EAAE,MAAM,CAAC;oBAAC,GAAG,EAAE,MAAM,CAAC;oBAAC,MAAM,CAAC,EAAE,OAAO,CAAA;iBAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWxE,CAAC;AAMH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAWV,MAAM;uBACN,KAAK,CAAC;oBAAE,KAAK,EAAE,MAAM,CAAC;oBAAC,GAAG,EAAE,MAAM,CAAC;oBAAC,MAAM,CAAC,EAAE,OAAO,CAAA;iBAAE,CAAC;;;;;;;;;;;;;;uBADvD,MAAM;uBACN,KAAK,CAAC;oBAAE,KAAK,EAAE,MAAM,CAAC;oBAAC,GAAG,EAAE,MAAM,CAAC;oBAAC,MAAM,CAAC,EAAE,OAAO,CAAA;iBAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;0BAYpD,MAAM;qBACX,MAAM;;;;;;;;;;;;;;0BADD,MAAM;qBACX,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQjB,CAAC;AAMH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BzB,CAAC;AAMH,MAAM,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,YAAY,CAAC;AAC7C,MAAM,MAAM,OAAO,GAAG,OAAO,KAAK,CAAC,YAAY,CAAC;AAChD,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,YAAY,CAAC;AAC9C,MAAM,MAAM,QAAQ,GAAG,OAAO,KAAK,CAAC,YAAY,CAAC;AACjD,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,YAAY,CAAC;AAC5D,MAAM,MAAM,eAAe,GAAG,OAAO,YAAY,CAAC,YAAY,CAAC;AAC/D,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,YAAY,CAAC;AAC5D,MAAM,MAAM,eAAe,GAAG,OAAO,YAAY,CAAC,YAAY,CAAC;AAC/D,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC,YAAY,CAAC;AAChE,MAAM,MAAM,iBAAiB,GAAG,OAAO,cAAc,CAAC,YAAY,CAAC"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * These tables provide content management functionality for the CMS app.
5
5
  */
6
- import { boolean, integer, jsonb, pgTable, text, timestamp } from 'drizzle-orm/pg-core';
6
+ import { boolean, index, integer, jsonb, pgTable, text, timestamp } from 'drizzle-orm/pg-core';
7
7
  import { users } from './users.js';
8
8
  // =============================================================================
9
9
  // Posts Table
@@ -13,14 +13,18 @@ export const posts = pgTable('posts', {
13
13
  id: text('id').primaryKey(),
14
14
  // Schema versioning for migrations
15
15
  schemaVersion: text('schema_version').notNull().default('1'),
16
+ // Optimistic locking — incremented on each update, checked to detect concurrent edits
17
+ version: integer('version').notNull().default(1),
16
18
  // Basic info
17
19
  title: text('title').notNull(),
18
20
  slug: text('slug').notNull().unique(),
19
21
  excerpt: text('excerpt'),
20
22
  // Content (Lexical editor state as JSON)
21
23
  content: jsonb('content'),
22
- // Featured image reference
23
- featuredImageId: text('featured_image_id'),
24
+ // Featured image reference (FK to media — set null on delete)
25
+ featuredImageId: text('featured_image_id').references(() => media.id, {
26
+ onDelete: 'set null',
27
+ }),
24
28
  // Author relationship
25
29
  authorId: text('author_id').references(() => users.id, {
26
30
  onDelete: 'set null',
@@ -36,7 +40,13 @@ export const posts = pgTable('posts', {
36
40
  createdAt: timestamp('created_at', { withTimezone: true }).defaultNow().notNull(),
37
41
  updatedAt: timestamp('updated_at', { withTimezone: true }).defaultNow().notNull(),
38
42
  publishedAt: timestamp('published_at', { withTimezone: true }),
39
- });
43
+ // Soft-delete: null = active, timestamp = when deleted
44
+ deletedAt: timestamp('deleted_at', { withTimezone: true }),
45
+ }, (table) => [
46
+ index('posts_author_id_idx').on(table.authorId),
47
+ index('posts_featured_image_id_idx').on(table.featuredImageId),
48
+ index('posts_deleted_at_idx').on(table.deletedAt),
49
+ ]);
40
50
  // =============================================================================
41
51
  // Media Table
42
52
  // =============================================================================
@@ -45,6 +55,8 @@ export const media = pgTable('media', {
45
55
  id: text('id').primaryKey(),
46
56
  // Schema versioning
47
57
  schemaVersion: text('schema_version').notNull().default('1'),
58
+ // Optimistic locking — incremented on each update, checked to detect concurrent edits
59
+ version: integer('version').notNull().default(1),
48
60
  // File info
49
61
  filename: text('filename').notNull(),
50
62
  mimeType: text('mime_type').notNull(),
@@ -67,6 +79,8 @@ export const media = pgTable('media', {
67
79
  // Timestamps
68
80
  createdAt: timestamp('created_at', { withTimezone: true }).defaultNow().notNull(),
69
81
  updatedAt: timestamp('updated_at', { withTimezone: true }).defaultNow().notNull(),
82
+ // Soft-delete: null = active, timestamp = when deleted
83
+ deletedAt: timestamp('deleted_at', { withTimezone: true }),
70
84
  });
71
85
  // =============================================================================
72
86
  // Global: Header
@@ -1 +1 @@
1
- {"version":3,"file":"cms.js","sourceRoot":"","sources":["../../src/schema/cms.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cms.js","sourceRoot":"","sources":["../../src/schema/cms.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"code-provenance.d.ts","sourceRoot":"","sources":["../../src/schema/code-provenance.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiDzB,CAAA;AAEF,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC,YAAY,CAAA;AAC/D,MAAM,MAAM,iBAAiB,GAAG,OAAO,cAAc,CAAC,YAAY,CAAA;AAMlE,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwBtB,CAAA;AAEF,MAAM,MAAM,UAAU,GAAG,OAAO,WAAW,CAAC,YAAY,CAAA;AACxD,MAAM,MAAM,aAAa,GAAG,OAAO,WAAW,CAAC,YAAY,CAAA"}
1
+ {"version":3,"file":"code-provenance.d.ts","sourceRoot":"","sources":["../../src/schema/code-provenance.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiDzB,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,OAAO,cAAc,CAAC,YAAY,CAAC;AAChE,MAAM,MAAM,iBAAiB,GAAG,OAAO,cAAc,CAAC,YAAY,CAAC;AAMnE,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwBtB,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,OAAO,WAAW,CAAC,YAAY,CAAC;AACzD,MAAM,MAAM,aAAa,GAAG,OAAO,WAAW,CAAC,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"code-provenance.js","sourceRoot":"","sources":["../../src/schema/code-provenance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code-provenance.js","sourceRoot":"","sources":["../../src/schema/code-provenance.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"collab-edits.d.ts","sourceRoot":"","sources":["../../src/schema/collab-edits.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYtB,CAAA;AAEF,MAAM,MAAM,UAAU,GAAG,OAAO,WAAW,CAAC,YAAY,CAAA;AACxD,MAAM,MAAM,aAAa,GAAG,OAAO,WAAW,CAAC,YAAY,CAAA"}
1
+ {"version":3,"file":"collab-edits.d.ts","sourceRoot":"","sources":["../../src/schema/collab-edits.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgBvB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,OAAO,WAAW,CAAC,YAAY,CAAC;AACzD,MAAM,MAAM,aAAa,GAAG,OAAO,WAAW,CAAC,YAAY,CAAC"}
@@ -1,4 +1,4 @@
1
- import { customType, integer, pgTable, text, timestamp, uuid } from 'drizzle-orm/pg-core';
1
+ import { customType, index, integer, pgTable, text, timestamp, uuid } from 'drizzle-orm/pg-core';
2
2
  import { yjsDocuments } from './yjs-documents.js';
3
3
  const bytea = customType({
4
4
  dataType() {
@@ -17,5 +17,5 @@ export const collabEdits = pgTable('collab_edits', {
17
17
  updateData: bytea('update_data').notNull(),
18
18
  updateSize: integer('update_size').notNull(),
19
19
  timestamp: timestamp('timestamp', { withTimezone: true }).defaultNow().notNull(),
20
- });
20
+ }, (table) => [index('collab_edits_document_id_idx').on(table.documentId)]);
21
21
  //# sourceMappingURL=collab-edits.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"collab-edits.js","sourceRoot":"","sources":["../../src/schema/collab-edits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AACzF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEjD,MAAM,KAAK,GAAG,UAAU,CAAuC;IAC7D,QAAQ;QACN,OAAO,OAAO,CAAA;IAChB,CAAC;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,EAAE;IACjD,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE;IAC3C,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC;SAC5B,OAAO,EAAE;SACT,UAAU,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC7D,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE;IACzC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE;IACrC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE;IACzC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC;IAC/B,UAAU,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE;IAC1C,UAAU,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE;IAC5C,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE;CACjF,CAAC,CAAA"}
1
+ {"version":3,"file":"collab-edits.js","sourceRoot":"","sources":["../../src/schema/collab-edits.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AACjG,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,KAAK,GAAG,UAAU,CAAuC;IAC7D,QAAQ;QACN,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAChC,cAAc,EACd;IACE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa,EAAE;IAC3C,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC;SAC5B,OAAO,EAAE;SACT,UAAU,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC7D,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE;IACzC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE;IACrC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE;IACzC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC;IAC/B,UAAU,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE;IAC1C,UAAU,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE;IAC5C,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,OAAO,EAAE;CACjF,EACD,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CACxE,CAAC"}