@tangen/db 0.0.0-stage → 0.1.55

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 (127) hide show
  1. package/README.md +73 -2
  2. package/drizzle/0000_flimsy_shotgun.sql +339 -0
  3. package/drizzle/0001_app_data.sql +11 -0
  4. package/drizzle/0002_add_indexes.sql +36 -0
  5. package/drizzle/0003_extension_data_rename.sql +3 -0
  6. package/drizzle/0004_extension_data_published_globals.sql +12 -0
  7. package/drizzle/0005_auth.sql +51 -0
  8. package/drizzle/0006_auth_identities.sql +13 -0
  9. package/drizzle/0007_ai.sql +18 -0
  10. package/drizzle/0008_ai_chat_threads.sql +5 -0
  11. package/drizzle/0009_forms_source_slug.sql +11 -0
  12. package/drizzle/0010_rbac_roles_status.sql +14 -0
  13. package/drizzle/0011_jobs_v2.sql +67 -0
  14. package/drizzle/0012_search_platform.sql +36 -0
  15. package/drizzle/0013_search_synonym_label.sql +2 -0
  16. package/drizzle/0014_object_types_disabled.sql +2 -0
  17. package/drizzle/0015_playground_collections.sql +25 -0
  18. package/drizzle/0016_catchup_activity_promotion.sql +36 -0
  19. package/drizzle/0017_fields_disabled.sql +3 -0
  20. package/drizzle/0018_object_types_plural.sql +1 -0
  21. package/drizzle/0019_member_profile.sql +2 -0
  22. package/drizzle/0020_paused_jobs.sql +7 -0
  23. package/drizzle/0021_form_submission_notes.sql +2 -0
  24. package/drizzle/0022_paused_jobs_env_reason.sql +4 -0
  25. package/drizzle/0023_scale_indexes.sql +3 -0
  26. package/drizzle/0024_migration_runs.sql +24 -0
  27. package/drizzle/0025_porter_transfer.sql +30 -0
  28. package/drizzle/0026_cron_timezone.sql +1 -0
  29. package/drizzle/0027_rate_limit_counters.sql +6 -0
  30. package/drizzle/0028_realtime_events.sql +10 -0
  31. package/drizzle/0030_delivery_artifacts.sql +10 -0
  32. package/drizzle/0031_realtime_presence.sql +8 -0
  33. package/drizzle/0032_schema_pushes.sql +15 -0
  34. package/drizzle/0033_studio_design_capability.sql +37 -0
  35. package/drizzle/0034_object_types_provided_by.sql +12 -0
  36. package/drizzle/0035_custom_table_owners.sql +24 -0
  37. package/drizzle/0036_revision_version_unique.sql +42 -0
  38. package/drizzle/0037_job_queue_dedupe.sql +20 -0
  39. package/drizzle/0038_search_documents.sql +87 -0
  40. package/drizzle/0039_job_prune_indexes.sql +25 -0
  41. package/drizzle/0040_extension_data_object_idx.sql +10 -0
  42. package/drizzle/0041_knowledge.sql +79 -0
  43. package/drizzle/0042_schema_pushes_checksum.sql +7 -0
  44. package/drizzle/0043_guard_adoption.sql +12 -0
  45. package/drizzle/0044_retention_indexes.sql +7 -0
  46. package/drizzle/0045_extension_install_per_env.sql +40 -0
  47. package/drizzle/0046_extension_migrations.sql +18 -0
  48. package/drizzle/0047_environment_role.sql +25 -0
  49. package/drizzle/0048_environment_role_adoption.sql +30 -0
  50. package/drizzle/0049_release_lifecycle.sql +55 -0
  51. package/drizzle/0050_member_env_membership.sql +21 -0
  52. package/drizzle/0051_remove_environments.sql +350 -0
  53. package/drizzle/0052_release_actor_columns.sql +9 -0
  54. package/drizzle/0053_kernel_event_record.sql +26 -0
  55. package/drizzle/0054_kernel_run_identity.sql +13 -0
  56. package/drizzle/0055_kernel_identities.sql +19 -0
  57. package/drizzle/0056_forms_leave_core.sql +7 -0
  58. package/drizzle/0057_auth_leave_core.sql +8 -0
  59. package/drizzle/0058_member_grants.sql +11 -0
  60. package/drizzle/0059_extension_granted_grants.sql +7 -0
  61. package/drizzle/0060_connections.sql +21 -0
  62. package/drizzle/meta/0000_snapshot.json +1692 -0
  63. package/drizzle/meta/0002_snapshot.json +1935 -0
  64. package/drizzle/meta/0003_snapshot.json +1935 -0
  65. package/drizzle/meta/_journal.json +426 -0
  66. package/package.json +85 -4
  67. package/src/cache-keys.ts +43 -0
  68. package/src/client.ts +136 -0
  69. package/src/content-ddl.ts +70 -0
  70. package/src/content-tables.ts +110 -0
  71. package/src/custom-tables-loader.ts +65 -0
  72. package/src/ensure-system-schema.ts +195 -0
  73. package/src/extension-install-state.ts +220 -0
  74. package/src/extension-migrations.ts +270 -0
  75. package/src/generated/content-tables.ts +271 -0
  76. package/src/generated/custom-tables.ts +18 -0
  77. package/src/index.ts +24 -0
  78. package/src/instrument.ts +139 -0
  79. package/src/knowledge-schema.ts +232 -0
  80. package/src/migrate.ts +67 -0
  81. package/src/prepare-policy.ts +118 -0
  82. package/src/reconcile.ts +115 -0
  83. package/src/schema/ai-chats.ts +36 -0
  84. package/src/schema/ai-settings.ts +24 -0
  85. package/src/schema/api-keys.ts +37 -0
  86. package/src/schema/audit-log.ts +54 -0
  87. package/src/schema/connections.ts +35 -0
  88. package/src/schema/custom-table-owners.ts +32 -0
  89. package/src/schema/delivery-artifacts.ts +33 -0
  90. package/src/schema/entity-tags.ts +33 -0
  91. package/src/schema/extension-data.ts +38 -0
  92. package/src/schema/extension-migrations.ts +42 -0
  93. package/src/schema/fields.ts +37 -0
  94. package/src/schema/globals.ts +35 -0
  95. package/src/schema/identities.ts +27 -0
  96. package/src/schema/index.ts +51 -0
  97. package/src/schema/jobs.ts +104 -0
  98. package/src/schema/knowledge.ts +85 -0
  99. package/src/schema/media.ts +52 -0
  100. package/src/schema/member-grants.ts +34 -0
  101. package/src/schema/members.ts +49 -0
  102. package/src/schema/migration-runs.ts +46 -0
  103. package/src/schema/object-types.ts +41 -0
  104. package/src/schema/objects.ts +38 -0
  105. package/src/schema/paused-jobs.ts +25 -0
  106. package/src/schema/playground.ts +43 -0
  107. package/src/schema/porter-transfer.ts +47 -0
  108. package/src/schema/realtime.ts +45 -0
  109. package/src/schema/releases.ts +95 -0
  110. package/src/schema/roles.ts +27 -0
  111. package/src/schema/saved-views.ts +33 -0
  112. package/src/schema/schema-pushes.ts +43 -0
  113. package/src/schema/search-documents.ts +47 -0
  114. package/src/schema/search-query-log.ts +24 -0
  115. package/src/schema/search-recommendations.ts +27 -0
  116. package/src/schema/search-synonyms.ts +23 -0
  117. package/src/schema/webhook-deliveries.ts +37 -0
  118. package/src/schema/webhooks.ts +36 -0
  119. package/src/schema/workspace-activity.ts +35 -0
  120. package/src/schema/workspace-domains.ts +24 -0
  121. package/src/schema/workspace-installed-apps.ts +48 -0
  122. package/src/schema/workspaces.ts +24 -0
  123. package/src/schema-kit.ts +64 -0
  124. package/src/sealed.ts +84 -0
  125. package/src/seed/skeleton.ts +77 -0
  126. package/src/sql/apply-gin-indexes.ts +31 -0
  127. package/src/sql/gin-indexes.sql +11 -0
@@ -0,0 +1,1692 @@
1
+ {
2
+ "id": "d89d00ed-b658-4659-b5b0-4fd5f24cd4e9",
3
+ "prevId": "00000000-0000-0000-0000-000000000000",
4
+ "version": "6",
5
+ "dialect": "postgresql",
6
+ "tables": {
7
+ "public.workspaces": {
8
+ "name": "workspaces",
9
+ "schema": "",
10
+ "columns": {
11
+ "id": {
12
+ "name": "id",
13
+ "type": "text",
14
+ "primaryKey": true,
15
+ "notNull": true
16
+ },
17
+ "name": {
18
+ "name": "name",
19
+ "type": "text",
20
+ "primaryKey": false,
21
+ "notNull": true
22
+ },
23
+ "slug": {
24
+ "name": "slug",
25
+ "type": "text",
26
+ "primaryKey": false,
27
+ "notNull": true
28
+ },
29
+ "created_at": {
30
+ "name": "created_at",
31
+ "type": "timestamp with time zone",
32
+ "primaryKey": false,
33
+ "notNull": true,
34
+ "default": "now()"
35
+ },
36
+ "deleted_at": {
37
+ "name": "deleted_at",
38
+ "type": "timestamp with time zone",
39
+ "primaryKey": false,
40
+ "notNull": false
41
+ }
42
+ },
43
+ "indexes": {},
44
+ "foreignKeys": {},
45
+ "compositePrimaryKeys": {},
46
+ "uniqueConstraints": {
47
+ "workspaces_slug_unique": {
48
+ "name": "workspaces_slug_unique",
49
+ "nullsNotDistinct": false,
50
+ "columns": [
51
+ "slug"
52
+ ]
53
+ }
54
+ }
55
+ },
56
+ "public.environments": {
57
+ "name": "environments",
58
+ "schema": "",
59
+ "columns": {
60
+ "id": {
61
+ "name": "id",
62
+ "type": "text",
63
+ "primaryKey": true,
64
+ "notNull": true
65
+ },
66
+ "workspace_id": {
67
+ "name": "workspace_id",
68
+ "type": "text",
69
+ "primaryKey": false,
70
+ "notNull": true
71
+ },
72
+ "slug": {
73
+ "name": "slug",
74
+ "type": "text",
75
+ "primaryKey": false,
76
+ "notNull": true
77
+ },
78
+ "label": {
79
+ "name": "label",
80
+ "type": "text",
81
+ "primaryKey": false,
82
+ "notNull": true
83
+ },
84
+ "created_at": {
85
+ "name": "created_at",
86
+ "type": "timestamp with time zone",
87
+ "primaryKey": false,
88
+ "notNull": true,
89
+ "default": "now()"
90
+ }
91
+ },
92
+ "indexes": {},
93
+ "foreignKeys": {
94
+ "environments_workspace_id_workspaces_id_fk": {
95
+ "name": "environments_workspace_id_workspaces_id_fk",
96
+ "tableFrom": "environments",
97
+ "tableTo": "workspaces",
98
+ "columnsFrom": [
99
+ "workspace_id"
100
+ ],
101
+ "columnsTo": [
102
+ "id"
103
+ ],
104
+ "onDelete": "no action",
105
+ "onUpdate": "no action"
106
+ }
107
+ },
108
+ "compositePrimaryKeys": {},
109
+ "uniqueConstraints": {
110
+ "environments_workspace_id_slug_unique": {
111
+ "name": "environments_workspace_id_slug_unique",
112
+ "nullsNotDistinct": false,
113
+ "columns": [
114
+ "workspace_id",
115
+ "slug"
116
+ ]
117
+ }
118
+ }
119
+ },
120
+ "public.object_types": {
121
+ "name": "object_types",
122
+ "schema": "",
123
+ "columns": {
124
+ "id": {
125
+ "name": "id",
126
+ "type": "text",
127
+ "primaryKey": true,
128
+ "notNull": true
129
+ },
130
+ "env_id": {
131
+ "name": "env_id",
132
+ "type": "text",
133
+ "primaryKey": false,
134
+ "notNull": true
135
+ },
136
+ "name": {
137
+ "name": "name",
138
+ "type": "text",
139
+ "primaryKey": false,
140
+ "notNull": true
141
+ },
142
+ "label": {
143
+ "name": "label",
144
+ "type": "text",
145
+ "primaryKey": false,
146
+ "notNull": true
147
+ },
148
+ "singleton": {
149
+ "name": "singleton",
150
+ "type": "boolean",
151
+ "primaryKey": false,
152
+ "notNull": true,
153
+ "default": false
154
+ },
155
+ "previous_names": {
156
+ "name": "previous_names",
157
+ "type": "text[]",
158
+ "primaryKey": false,
159
+ "notNull": true,
160
+ "default": "'{}'"
161
+ },
162
+ "admin_config": {
163
+ "name": "admin_config",
164
+ "type": "jsonb",
165
+ "primaryKey": false,
166
+ "notNull": true,
167
+ "default": "'{}'"
168
+ },
169
+ "schema_version": {
170
+ "name": "schema_version",
171
+ "type": "integer",
172
+ "primaryKey": false,
173
+ "notNull": true,
174
+ "default": 1
175
+ },
176
+ "created_at": {
177
+ "name": "created_at",
178
+ "type": "timestamp with time zone",
179
+ "primaryKey": false,
180
+ "notNull": true,
181
+ "default": "now()"
182
+ },
183
+ "updated_at": {
184
+ "name": "updated_at",
185
+ "type": "timestamp with time zone",
186
+ "primaryKey": false,
187
+ "notNull": true,
188
+ "default": "now()"
189
+ }
190
+ },
191
+ "indexes": {},
192
+ "foreignKeys": {},
193
+ "compositePrimaryKeys": {},
194
+ "uniqueConstraints": {
195
+ "object_types_env_id_name_unique": {
196
+ "name": "object_types_env_id_name_unique",
197
+ "nullsNotDistinct": false,
198
+ "columns": [
199
+ "env_id",
200
+ "name"
201
+ ]
202
+ }
203
+ }
204
+ },
205
+ "public.fields": {
206
+ "name": "fields",
207
+ "schema": "",
208
+ "columns": {
209
+ "id": {
210
+ "name": "id",
211
+ "type": "text",
212
+ "primaryKey": true,
213
+ "notNull": true
214
+ },
215
+ "env_id": {
216
+ "name": "env_id",
217
+ "type": "text",
218
+ "primaryKey": false,
219
+ "notNull": true
220
+ },
221
+ "type_id": {
222
+ "name": "type_id",
223
+ "type": "text",
224
+ "primaryKey": false,
225
+ "notNull": true
226
+ },
227
+ "name": {
228
+ "name": "name",
229
+ "type": "text",
230
+ "primaryKey": false,
231
+ "notNull": true
232
+ },
233
+ "label": {
234
+ "name": "label",
235
+ "type": "text",
236
+ "primaryKey": false,
237
+ "notNull": true
238
+ },
239
+ "field_type": {
240
+ "name": "field_type",
241
+ "type": "text",
242
+ "primaryKey": false,
243
+ "notNull": true
244
+ },
245
+ "config": {
246
+ "name": "config",
247
+ "type": "jsonb",
248
+ "primaryKey": false,
249
+ "notNull": true,
250
+ "default": "'{}'"
251
+ },
252
+ "previous_names": {
253
+ "name": "previous_names",
254
+ "type": "text[]",
255
+ "primaryKey": false,
256
+ "notNull": true,
257
+ "default": "'{}'"
258
+ },
259
+ "position": {
260
+ "name": "position",
261
+ "type": "integer",
262
+ "primaryKey": false,
263
+ "notNull": true,
264
+ "default": 0
265
+ },
266
+ "required": {
267
+ "name": "required",
268
+ "type": "boolean",
269
+ "primaryKey": false,
270
+ "notNull": true,
271
+ "default": false
272
+ },
273
+ "created_at": {
274
+ "name": "created_at",
275
+ "type": "timestamp with time zone",
276
+ "primaryKey": false,
277
+ "notNull": true,
278
+ "default": "now()"
279
+ },
280
+ "updated_at": {
281
+ "name": "updated_at",
282
+ "type": "timestamp with time zone",
283
+ "primaryKey": false,
284
+ "notNull": true,
285
+ "default": "now()"
286
+ }
287
+ },
288
+ "indexes": {},
289
+ "foreignKeys": {
290
+ "fields_type_id_object_types_id_fk": {
291
+ "name": "fields_type_id_object_types_id_fk",
292
+ "tableFrom": "fields",
293
+ "tableTo": "object_types",
294
+ "columnsFrom": [
295
+ "type_id"
296
+ ],
297
+ "columnsTo": [
298
+ "id"
299
+ ],
300
+ "onDelete": "no action",
301
+ "onUpdate": "no action"
302
+ }
303
+ },
304
+ "compositePrimaryKeys": {},
305
+ "uniqueConstraints": {
306
+ "fields_type_id_name_unique": {
307
+ "name": "fields_type_id_name_unique",
308
+ "nullsNotDistinct": false,
309
+ "columns": [
310
+ "type_id",
311
+ "name"
312
+ ]
313
+ }
314
+ }
315
+ },
316
+ "public._revisions": {
317
+ "name": "_revisions",
318
+ "schema": "",
319
+ "columns": {
320
+ "id": {
321
+ "name": "id",
322
+ "type": "text",
323
+ "primaryKey": true,
324
+ "notNull": true
325
+ },
326
+ "workspace_id": {
327
+ "name": "workspace_id",
328
+ "type": "text",
329
+ "primaryKey": false,
330
+ "notNull": true
331
+ },
332
+ "env_id": {
333
+ "name": "env_id",
334
+ "type": "text",
335
+ "primaryKey": false,
336
+ "notNull": true
337
+ },
338
+ "type_id": {
339
+ "name": "type_id",
340
+ "type": "text",
341
+ "primaryKey": false,
342
+ "notNull": true
343
+ },
344
+ "type_name": {
345
+ "name": "type_name",
346
+ "type": "text",
347
+ "primaryKey": false,
348
+ "notNull": true
349
+ },
350
+ "object_id": {
351
+ "name": "object_id",
352
+ "type": "text",
353
+ "primaryKey": false,
354
+ "notNull": true
355
+ },
356
+ "version": {
357
+ "name": "version",
358
+ "type": "integer",
359
+ "primaryKey": false,
360
+ "notNull": true,
361
+ "default": 1
362
+ },
363
+ "version_type": {
364
+ "name": "version_type",
365
+ "type": "text",
366
+ "primaryKey": false,
367
+ "notNull": false
368
+ },
369
+ "snapshot": {
370
+ "name": "snapshot",
371
+ "type": "jsonb",
372
+ "primaryKey": false,
373
+ "notNull": true
374
+ },
375
+ "created_at": {
376
+ "name": "created_at",
377
+ "type": "timestamp with time zone",
378
+ "primaryKey": false,
379
+ "notNull": true,
380
+ "default": "now()"
381
+ },
382
+ "created_by": {
383
+ "name": "created_by",
384
+ "type": "text",
385
+ "primaryKey": false,
386
+ "notNull": false
387
+ }
388
+ },
389
+ "indexes": {
390
+ "revisions_object": {
391
+ "name": "revisions_object",
392
+ "columns": [
393
+ "workspace_id",
394
+ "env_id",
395
+ "object_id",
396
+ "created_at"
397
+ ],
398
+ "isUnique": false
399
+ }
400
+ },
401
+ "foreignKeys": {},
402
+ "compositePrimaryKeys": {},
403
+ "uniqueConstraints": {}
404
+ },
405
+ "public.members": {
406
+ "name": "members",
407
+ "schema": "",
408
+ "columns": {
409
+ "id": {
410
+ "name": "id",
411
+ "type": "text",
412
+ "primaryKey": true,
413
+ "notNull": true
414
+ },
415
+ "workspace_id": {
416
+ "name": "workspace_id",
417
+ "type": "text",
418
+ "primaryKey": false,
419
+ "notNull": true
420
+ },
421
+ "email": {
422
+ "name": "email",
423
+ "type": "text",
424
+ "primaryKey": false,
425
+ "notNull": true
426
+ },
427
+ "name": {
428
+ "name": "name",
429
+ "type": "text",
430
+ "primaryKey": false,
431
+ "notNull": false
432
+ },
433
+ "password_hash": {
434
+ "name": "password_hash",
435
+ "type": "text",
436
+ "primaryKey": false,
437
+ "notNull": true
438
+ },
439
+ "role": {
440
+ "name": "role",
441
+ "type": "text",
442
+ "primaryKey": false,
443
+ "notNull": true,
444
+ "default": "'editor'"
445
+ },
446
+ "created_at": {
447
+ "name": "created_at",
448
+ "type": "timestamp with time zone",
449
+ "primaryKey": false,
450
+ "notNull": true,
451
+ "default": "now()"
452
+ },
453
+ "last_login_at": {
454
+ "name": "last_login_at",
455
+ "type": "timestamp with time zone",
456
+ "primaryKey": false,
457
+ "notNull": false
458
+ }
459
+ },
460
+ "indexes": {},
461
+ "foreignKeys": {},
462
+ "compositePrimaryKeys": {},
463
+ "uniqueConstraints": {
464
+ "members_workspace_id_email_unique": {
465
+ "name": "members_workspace_id_email_unique",
466
+ "nullsNotDistinct": false,
467
+ "columns": [
468
+ "workspace_id",
469
+ "email"
470
+ ]
471
+ }
472
+ }
473
+ },
474
+ "public.refresh_tokens": {
475
+ "name": "refresh_tokens",
476
+ "schema": "",
477
+ "columns": {
478
+ "id": {
479
+ "name": "id",
480
+ "type": "text",
481
+ "primaryKey": true,
482
+ "notNull": true
483
+ },
484
+ "member_id": {
485
+ "name": "member_id",
486
+ "type": "text",
487
+ "primaryKey": false,
488
+ "notNull": true
489
+ },
490
+ "token_hash": {
491
+ "name": "token_hash",
492
+ "type": "text",
493
+ "primaryKey": false,
494
+ "notNull": true
495
+ },
496
+ "expires_at": {
497
+ "name": "expires_at",
498
+ "type": "timestamp with time zone",
499
+ "primaryKey": false,
500
+ "notNull": true
501
+ },
502
+ "created_at": {
503
+ "name": "created_at",
504
+ "type": "timestamp with time zone",
505
+ "primaryKey": false,
506
+ "notNull": true,
507
+ "default": "now()"
508
+ },
509
+ "revoked_at": {
510
+ "name": "revoked_at",
511
+ "type": "timestamp with time zone",
512
+ "primaryKey": false,
513
+ "notNull": false
514
+ }
515
+ },
516
+ "indexes": {},
517
+ "foreignKeys": {
518
+ "refresh_tokens_member_id_members_id_fk": {
519
+ "name": "refresh_tokens_member_id_members_id_fk",
520
+ "tableFrom": "refresh_tokens",
521
+ "tableTo": "members",
522
+ "columnsFrom": [
523
+ "member_id"
524
+ ],
525
+ "columnsTo": [
526
+ "id"
527
+ ],
528
+ "onDelete": "no action",
529
+ "onUpdate": "no action"
530
+ }
531
+ },
532
+ "compositePrimaryKeys": {},
533
+ "uniqueConstraints": {}
534
+ },
535
+ "public.api_keys": {
536
+ "name": "api_keys",
537
+ "schema": "",
538
+ "columns": {
539
+ "id": {
540
+ "name": "id",
541
+ "type": "text",
542
+ "primaryKey": true,
543
+ "notNull": true
544
+ },
545
+ "workspace_id": {
546
+ "name": "workspace_id",
547
+ "type": "text",
548
+ "primaryKey": false,
549
+ "notNull": true
550
+ },
551
+ "env_id": {
552
+ "name": "env_id",
553
+ "type": "text",
554
+ "primaryKey": false,
555
+ "notNull": true
556
+ },
557
+ "label": {
558
+ "name": "label",
559
+ "type": "text",
560
+ "primaryKey": false,
561
+ "notNull": true
562
+ },
563
+ "key_prefix": {
564
+ "name": "key_prefix",
565
+ "type": "text",
566
+ "primaryKey": false,
567
+ "notNull": true
568
+ },
569
+ "key_hash": {
570
+ "name": "key_hash",
571
+ "type": "text",
572
+ "primaryKey": false,
573
+ "notNull": true
574
+ },
575
+ "permissions": {
576
+ "name": "permissions",
577
+ "type": "jsonb",
578
+ "primaryKey": false,
579
+ "notNull": true,
580
+ "default": "'{}'"
581
+ },
582
+ "expires_at": {
583
+ "name": "expires_at",
584
+ "type": "timestamp with time zone",
585
+ "primaryKey": false,
586
+ "notNull": false
587
+ },
588
+ "created_at": {
589
+ "name": "created_at",
590
+ "type": "timestamp with time zone",
591
+ "primaryKey": false,
592
+ "notNull": true,
593
+ "default": "now()"
594
+ },
595
+ "created_by": {
596
+ "name": "created_by",
597
+ "type": "text",
598
+ "primaryKey": false,
599
+ "notNull": false
600
+ },
601
+ "last_used_at": {
602
+ "name": "last_used_at",
603
+ "type": "timestamp with time zone",
604
+ "primaryKey": false,
605
+ "notNull": false
606
+ },
607
+ "revoked_at": {
608
+ "name": "revoked_at",
609
+ "type": "timestamp with time zone",
610
+ "primaryKey": false,
611
+ "notNull": false
612
+ }
613
+ },
614
+ "indexes": {},
615
+ "foreignKeys": {},
616
+ "compositePrimaryKeys": {},
617
+ "uniqueConstraints": {}
618
+ },
619
+ "public.media_assets": {
620
+ "name": "media_assets",
621
+ "schema": "",
622
+ "columns": {
623
+ "id": {
624
+ "name": "id",
625
+ "type": "text",
626
+ "primaryKey": true,
627
+ "notNull": true
628
+ },
629
+ "workspace_id": {
630
+ "name": "workspace_id",
631
+ "type": "text",
632
+ "primaryKey": false,
633
+ "notNull": true
634
+ },
635
+ "env_id": {
636
+ "name": "env_id",
637
+ "type": "text",
638
+ "primaryKey": false,
639
+ "notNull": true
640
+ },
641
+ "folder_id": {
642
+ "name": "folder_id",
643
+ "type": "text",
644
+ "primaryKey": false,
645
+ "notNull": false
646
+ },
647
+ "filename": {
648
+ "name": "filename",
649
+ "type": "text",
650
+ "primaryKey": false,
651
+ "notNull": true
652
+ },
653
+ "original_name": {
654
+ "name": "original_name",
655
+ "type": "text",
656
+ "primaryKey": false,
657
+ "notNull": true
658
+ },
659
+ "mime_type": {
660
+ "name": "mime_type",
661
+ "type": "text",
662
+ "primaryKey": false,
663
+ "notNull": true
664
+ },
665
+ "size_bytes": {
666
+ "name": "size_bytes",
667
+ "type": "bigint",
668
+ "primaryKey": false,
669
+ "notNull": true
670
+ },
671
+ "width": {
672
+ "name": "width",
673
+ "type": "integer",
674
+ "primaryKey": false,
675
+ "notNull": false
676
+ },
677
+ "height": {
678
+ "name": "height",
679
+ "type": "integer",
680
+ "primaryKey": false,
681
+ "notNull": false
682
+ },
683
+ "alt_text": {
684
+ "name": "alt_text",
685
+ "type": "text",
686
+ "primaryKey": false,
687
+ "notNull": false
688
+ },
689
+ "tags": {
690
+ "name": "tags",
691
+ "type": "text[]",
692
+ "primaryKey": false,
693
+ "notNull": true,
694
+ "default": "'{}'"
695
+ },
696
+ "metadata": {
697
+ "name": "metadata",
698
+ "type": "jsonb",
699
+ "primaryKey": false,
700
+ "notNull": true,
701
+ "default": "'{}'"
702
+ },
703
+ "storage_path": {
704
+ "name": "storage_path",
705
+ "type": "text",
706
+ "primaryKey": false,
707
+ "notNull": true
708
+ },
709
+ "thumbnail_path": {
710
+ "name": "thumbnail_path",
711
+ "type": "text",
712
+ "primaryKey": false,
713
+ "notNull": false
714
+ },
715
+ "created_at": {
716
+ "name": "created_at",
717
+ "type": "timestamp with time zone",
718
+ "primaryKey": false,
719
+ "notNull": true,
720
+ "default": "now()"
721
+ },
722
+ "created_by": {
723
+ "name": "created_by",
724
+ "type": "text",
725
+ "primaryKey": false,
726
+ "notNull": false
727
+ }
728
+ },
729
+ "indexes": {},
730
+ "foreignKeys": {
731
+ "media_assets_folder_id_media_folders_id_fk": {
732
+ "name": "media_assets_folder_id_media_folders_id_fk",
733
+ "tableFrom": "media_assets",
734
+ "tableTo": "media_folders",
735
+ "columnsFrom": [
736
+ "folder_id"
737
+ ],
738
+ "columnsTo": [
739
+ "id"
740
+ ],
741
+ "onDelete": "no action",
742
+ "onUpdate": "no action"
743
+ }
744
+ },
745
+ "compositePrimaryKeys": {},
746
+ "uniqueConstraints": {}
747
+ },
748
+ "public.media_folders": {
749
+ "name": "media_folders",
750
+ "schema": "",
751
+ "columns": {
752
+ "id": {
753
+ "name": "id",
754
+ "type": "text",
755
+ "primaryKey": true,
756
+ "notNull": true
757
+ },
758
+ "workspace_id": {
759
+ "name": "workspace_id",
760
+ "type": "text",
761
+ "primaryKey": false,
762
+ "notNull": true
763
+ },
764
+ "env_id": {
765
+ "name": "env_id",
766
+ "type": "text",
767
+ "primaryKey": false,
768
+ "notNull": true
769
+ },
770
+ "name": {
771
+ "name": "name",
772
+ "type": "text",
773
+ "primaryKey": false,
774
+ "notNull": true
775
+ },
776
+ "parent_id": {
777
+ "name": "parent_id",
778
+ "type": "text",
779
+ "primaryKey": false,
780
+ "notNull": false
781
+ },
782
+ "created_at": {
783
+ "name": "created_at",
784
+ "type": "timestamp with time zone",
785
+ "primaryKey": false,
786
+ "notNull": true,
787
+ "default": "now()"
788
+ }
789
+ },
790
+ "indexes": {},
791
+ "foreignKeys": {},
792
+ "compositePrimaryKeys": {},
793
+ "uniqueConstraints": {}
794
+ },
795
+ "public.webhooks": {
796
+ "name": "webhooks",
797
+ "schema": "",
798
+ "columns": {
799
+ "id": {
800
+ "name": "id",
801
+ "type": "text",
802
+ "primaryKey": true,
803
+ "notNull": true
804
+ },
805
+ "workspace_id": {
806
+ "name": "workspace_id",
807
+ "type": "text",
808
+ "primaryKey": false,
809
+ "notNull": true
810
+ },
811
+ "env_id": {
812
+ "name": "env_id",
813
+ "type": "text",
814
+ "primaryKey": false,
815
+ "notNull": true
816
+ },
817
+ "label": {
818
+ "name": "label",
819
+ "type": "text",
820
+ "primaryKey": false,
821
+ "notNull": true
822
+ },
823
+ "url": {
824
+ "name": "url",
825
+ "type": "text",
826
+ "primaryKey": false,
827
+ "notNull": true
828
+ },
829
+ "secret": {
830
+ "name": "secret",
831
+ "type": "text",
832
+ "primaryKey": false,
833
+ "notNull": false
834
+ },
835
+ "events": {
836
+ "name": "events",
837
+ "type": "text[]",
838
+ "primaryKey": false,
839
+ "notNull": true,
840
+ "default": "'{}'"
841
+ },
842
+ "type_names": {
843
+ "name": "type_names",
844
+ "type": "text[]",
845
+ "primaryKey": false,
846
+ "notNull": true,
847
+ "default": "'{}'"
848
+ },
849
+ "enabled": {
850
+ "name": "enabled",
851
+ "type": "boolean",
852
+ "primaryKey": false,
853
+ "notNull": true,
854
+ "default": true
855
+ },
856
+ "headers": {
857
+ "name": "headers",
858
+ "type": "jsonb",
859
+ "primaryKey": false,
860
+ "notNull": true,
861
+ "default": "'{}'"
862
+ },
863
+ "consecutive_failures": {
864
+ "name": "consecutive_failures",
865
+ "type": "integer",
866
+ "primaryKey": false,
867
+ "notNull": true,
868
+ "default": 0
869
+ },
870
+ "paused_reason": {
871
+ "name": "paused_reason",
872
+ "type": "text",
873
+ "primaryKey": false,
874
+ "notNull": false
875
+ },
876
+ "created_at": {
877
+ "name": "created_at",
878
+ "type": "timestamp with time zone",
879
+ "primaryKey": false,
880
+ "notNull": true,
881
+ "default": "now()"
882
+ },
883
+ "updated_at": {
884
+ "name": "updated_at",
885
+ "type": "timestamp with time zone",
886
+ "primaryKey": false,
887
+ "notNull": true,
888
+ "default": "now()"
889
+ }
890
+ },
891
+ "indexes": {},
892
+ "foreignKeys": {},
893
+ "compositePrimaryKeys": {},
894
+ "uniqueConstraints": {}
895
+ },
896
+ "public.webhook_deliveries": {
897
+ "name": "webhook_deliveries",
898
+ "schema": "",
899
+ "columns": {
900
+ "id": {
901
+ "name": "id",
902
+ "type": "text",
903
+ "primaryKey": true,
904
+ "notNull": true
905
+ },
906
+ "webhook_id": {
907
+ "name": "webhook_id",
908
+ "type": "text",
909
+ "primaryKey": false,
910
+ "notNull": true
911
+ },
912
+ "workspace_id": {
913
+ "name": "workspace_id",
914
+ "type": "text",
915
+ "primaryKey": false,
916
+ "notNull": true
917
+ },
918
+ "env_id": {
919
+ "name": "env_id",
920
+ "type": "text",
921
+ "primaryKey": false,
922
+ "notNull": true
923
+ },
924
+ "event": {
925
+ "name": "event",
926
+ "type": "text",
927
+ "primaryKey": false,
928
+ "notNull": true
929
+ },
930
+ "type_name": {
931
+ "name": "type_name",
932
+ "type": "text",
933
+ "primaryKey": false,
934
+ "notNull": true
935
+ },
936
+ "object_id": {
937
+ "name": "object_id",
938
+ "type": "text",
939
+ "primaryKey": false,
940
+ "notNull": true
941
+ },
942
+ "payload": {
943
+ "name": "payload",
944
+ "type": "jsonb",
945
+ "primaryKey": false,
946
+ "notNull": true
947
+ },
948
+ "status_code": {
949
+ "name": "status_code",
950
+ "type": "integer",
951
+ "primaryKey": false,
952
+ "notNull": false
953
+ },
954
+ "response_body": {
955
+ "name": "response_body",
956
+ "type": "text",
957
+ "primaryKey": false,
958
+ "notNull": false
959
+ },
960
+ "duration_ms": {
961
+ "name": "duration_ms",
962
+ "type": "integer",
963
+ "primaryKey": false,
964
+ "notNull": false
965
+ },
966
+ "success": {
967
+ "name": "success",
968
+ "type": "boolean",
969
+ "primaryKey": false,
970
+ "notNull": true
971
+ },
972
+ "error": {
973
+ "name": "error",
974
+ "type": "text",
975
+ "primaryKey": false,
976
+ "notNull": false
977
+ },
978
+ "created_at": {
979
+ "name": "created_at",
980
+ "type": "timestamp with time zone",
981
+ "primaryKey": false,
982
+ "notNull": true,
983
+ "default": "now()"
984
+ }
985
+ },
986
+ "indexes": {},
987
+ "foreignKeys": {},
988
+ "compositePrimaryKeys": {},
989
+ "uniqueConstraints": {}
990
+ },
991
+ "public.audit_log": {
992
+ "name": "audit_log",
993
+ "schema": "",
994
+ "columns": {
995
+ "id": {
996
+ "name": "id",
997
+ "type": "text",
998
+ "primaryKey": true,
999
+ "notNull": true
1000
+ },
1001
+ "workspace_id": {
1002
+ "name": "workspace_id",
1003
+ "type": "text",
1004
+ "primaryKey": false,
1005
+ "notNull": true
1006
+ },
1007
+ "env_id": {
1008
+ "name": "env_id",
1009
+ "type": "text",
1010
+ "primaryKey": false,
1011
+ "notNull": false
1012
+ },
1013
+ "event_type": {
1014
+ "name": "event_type",
1015
+ "type": "text",
1016
+ "primaryKey": false,
1017
+ "notNull": true
1018
+ },
1019
+ "event_id": {
1020
+ "name": "event_id",
1021
+ "type": "text",
1022
+ "primaryKey": false,
1023
+ "notNull": true
1024
+ },
1025
+ "actor_id": {
1026
+ "name": "actor_id",
1027
+ "type": "text",
1028
+ "primaryKey": false,
1029
+ "notNull": false
1030
+ },
1031
+ "actor_type": {
1032
+ "name": "actor_type",
1033
+ "type": "text",
1034
+ "primaryKey": false,
1035
+ "notNull": false
1036
+ },
1037
+ "payload": {
1038
+ "name": "payload",
1039
+ "type": "jsonb",
1040
+ "primaryKey": false,
1041
+ "notNull": true
1042
+ },
1043
+ "created_at": {
1044
+ "name": "created_at",
1045
+ "type": "timestamp with time zone",
1046
+ "primaryKey": false,
1047
+ "notNull": true,
1048
+ "default": "now()"
1049
+ }
1050
+ },
1051
+ "indexes": {
1052
+ "audit_log_workspace": {
1053
+ "name": "audit_log_workspace",
1054
+ "columns": [
1055
+ "workspace_id",
1056
+ "created_at"
1057
+ ],
1058
+ "isUnique": false
1059
+ }
1060
+ },
1061
+ "foreignKeys": {},
1062
+ "compositePrimaryKeys": {},
1063
+ "uniqueConstraints": {}
1064
+ },
1065
+ "public.saved_views": {
1066
+ "name": "saved_views",
1067
+ "schema": "",
1068
+ "columns": {
1069
+ "id": {
1070
+ "name": "id",
1071
+ "type": "text",
1072
+ "primaryKey": true,
1073
+ "notNull": true
1074
+ },
1075
+ "workspace_id": {
1076
+ "name": "workspace_id",
1077
+ "type": "text",
1078
+ "primaryKey": false,
1079
+ "notNull": true
1080
+ },
1081
+ "env_id": {
1082
+ "name": "env_id",
1083
+ "type": "text",
1084
+ "primaryKey": false,
1085
+ "notNull": true
1086
+ },
1087
+ "type_name": {
1088
+ "name": "type_name",
1089
+ "type": "text",
1090
+ "primaryKey": false,
1091
+ "notNull": true
1092
+ },
1093
+ "name": {
1094
+ "name": "name",
1095
+ "type": "text",
1096
+ "primaryKey": false,
1097
+ "notNull": true
1098
+ },
1099
+ "filters": {
1100
+ "name": "filters",
1101
+ "type": "jsonb",
1102
+ "primaryKey": false,
1103
+ "notNull": true,
1104
+ "default": "'{}'"
1105
+ },
1106
+ "visibility": {
1107
+ "name": "visibility",
1108
+ "type": "text",
1109
+ "primaryKey": false,
1110
+ "notNull": true,
1111
+ "default": "'private'"
1112
+ },
1113
+ "created_by": {
1114
+ "name": "created_by",
1115
+ "type": "text",
1116
+ "primaryKey": false,
1117
+ "notNull": true
1118
+ },
1119
+ "created_at": {
1120
+ "name": "created_at",
1121
+ "type": "timestamp with time zone",
1122
+ "primaryKey": false,
1123
+ "notNull": true,
1124
+ "default": "now()"
1125
+ },
1126
+ "updated_at": {
1127
+ "name": "updated_at",
1128
+ "type": "timestamp with time zone",
1129
+ "primaryKey": false,
1130
+ "notNull": true,
1131
+ "default": "now()"
1132
+ }
1133
+ },
1134
+ "indexes": {},
1135
+ "foreignKeys": {},
1136
+ "compositePrimaryKeys": {},
1137
+ "uniqueConstraints": {}
1138
+ },
1139
+ "public.member_env_roles": {
1140
+ "name": "member_env_roles",
1141
+ "schema": "",
1142
+ "columns": {
1143
+ "id": {
1144
+ "name": "id",
1145
+ "type": "text",
1146
+ "primaryKey": true,
1147
+ "notNull": true
1148
+ },
1149
+ "member_id": {
1150
+ "name": "member_id",
1151
+ "type": "text",
1152
+ "primaryKey": false,
1153
+ "notNull": true
1154
+ },
1155
+ "env_id": {
1156
+ "name": "env_id",
1157
+ "type": "text",
1158
+ "primaryKey": false,
1159
+ "notNull": true
1160
+ },
1161
+ "workspace_id": {
1162
+ "name": "workspace_id",
1163
+ "type": "text",
1164
+ "primaryKey": false,
1165
+ "notNull": true
1166
+ },
1167
+ "role": {
1168
+ "name": "role",
1169
+ "type": "text",
1170
+ "primaryKey": false,
1171
+ "notNull": true
1172
+ },
1173
+ "created_at": {
1174
+ "name": "created_at",
1175
+ "type": "timestamp with time zone",
1176
+ "primaryKey": false,
1177
+ "notNull": true,
1178
+ "default": "now()"
1179
+ }
1180
+ },
1181
+ "indexes": {},
1182
+ "foreignKeys": {
1183
+ "member_env_roles_member_id_members_id_fk": {
1184
+ "name": "member_env_roles_member_id_members_id_fk",
1185
+ "tableFrom": "member_env_roles",
1186
+ "tableTo": "members",
1187
+ "columnsFrom": [
1188
+ "member_id"
1189
+ ],
1190
+ "columnsTo": [
1191
+ "id"
1192
+ ],
1193
+ "onDelete": "cascade",
1194
+ "onUpdate": "no action"
1195
+ },
1196
+ "member_env_roles_env_id_environments_id_fk": {
1197
+ "name": "member_env_roles_env_id_environments_id_fk",
1198
+ "tableFrom": "member_env_roles",
1199
+ "tableTo": "environments",
1200
+ "columnsFrom": [
1201
+ "env_id"
1202
+ ],
1203
+ "columnsTo": [
1204
+ "id"
1205
+ ],
1206
+ "onDelete": "cascade",
1207
+ "onUpdate": "no action"
1208
+ }
1209
+ },
1210
+ "compositePrimaryKeys": {},
1211
+ "uniqueConstraints": {
1212
+ "member_env_roles_member_id_env_id_unique": {
1213
+ "name": "member_env_roles_member_id_env_id_unique",
1214
+ "nullsNotDistinct": false,
1215
+ "columns": [
1216
+ "member_id",
1217
+ "env_id"
1218
+ ]
1219
+ }
1220
+ }
1221
+ },
1222
+ "public.workspace_domains": {
1223
+ "name": "workspace_domains",
1224
+ "schema": "",
1225
+ "columns": {
1226
+ "id": {
1227
+ "name": "id",
1228
+ "type": "text",
1229
+ "primaryKey": true,
1230
+ "notNull": true
1231
+ },
1232
+ "workspace_id": {
1233
+ "name": "workspace_id",
1234
+ "type": "text",
1235
+ "primaryKey": false,
1236
+ "notNull": true
1237
+ },
1238
+ "domain": {
1239
+ "name": "domain",
1240
+ "type": "text",
1241
+ "primaryKey": false,
1242
+ "notNull": true
1243
+ },
1244
+ "created_at": {
1245
+ "name": "created_at",
1246
+ "type": "timestamp with time zone",
1247
+ "primaryKey": false,
1248
+ "notNull": true,
1249
+ "default": "now()"
1250
+ }
1251
+ },
1252
+ "indexes": {},
1253
+ "foreignKeys": {
1254
+ "workspace_domains_workspace_id_workspaces_id_fk": {
1255
+ "name": "workspace_domains_workspace_id_workspaces_id_fk",
1256
+ "tableFrom": "workspace_domains",
1257
+ "tableTo": "workspaces",
1258
+ "columnsFrom": [
1259
+ "workspace_id"
1260
+ ],
1261
+ "columnsTo": [
1262
+ "id"
1263
+ ],
1264
+ "onDelete": "cascade",
1265
+ "onUpdate": "no action"
1266
+ }
1267
+ },
1268
+ "compositePrimaryKeys": {},
1269
+ "uniqueConstraints": {
1270
+ "workspace_domains_domain_unique": {
1271
+ "name": "workspace_domains_domain_unique",
1272
+ "nullsNotDistinct": false,
1273
+ "columns": [
1274
+ "domain"
1275
+ ]
1276
+ }
1277
+ }
1278
+ },
1279
+ "public.release_items": {
1280
+ "name": "release_items",
1281
+ "schema": "",
1282
+ "columns": {
1283
+ "id": {
1284
+ "name": "id",
1285
+ "type": "text",
1286
+ "primaryKey": true,
1287
+ "notNull": true
1288
+ },
1289
+ "release_id": {
1290
+ "name": "release_id",
1291
+ "type": "text",
1292
+ "primaryKey": false,
1293
+ "notNull": true
1294
+ },
1295
+ "object_id": {
1296
+ "name": "object_id",
1297
+ "type": "text",
1298
+ "primaryKey": false,
1299
+ "notNull": true
1300
+ },
1301
+ "type_name": {
1302
+ "name": "type_name",
1303
+ "type": "text",
1304
+ "primaryKey": false,
1305
+ "notNull": true
1306
+ },
1307
+ "field_snapshot": {
1308
+ "name": "field_snapshot",
1309
+ "type": "jsonb",
1310
+ "primaryKey": false,
1311
+ "notNull": true
1312
+ }
1313
+ },
1314
+ "indexes": {},
1315
+ "foreignKeys": {
1316
+ "release_items_release_id_releases_id_fk": {
1317
+ "name": "release_items_release_id_releases_id_fk",
1318
+ "tableFrom": "release_items",
1319
+ "tableTo": "releases",
1320
+ "columnsFrom": [
1321
+ "release_id"
1322
+ ],
1323
+ "columnsTo": [
1324
+ "id"
1325
+ ],
1326
+ "onDelete": "cascade",
1327
+ "onUpdate": "no action"
1328
+ }
1329
+ },
1330
+ "compositePrimaryKeys": {},
1331
+ "uniqueConstraints": {}
1332
+ },
1333
+ "public.releases": {
1334
+ "name": "releases",
1335
+ "schema": "",
1336
+ "columns": {
1337
+ "id": {
1338
+ "name": "id",
1339
+ "type": "text",
1340
+ "primaryKey": true,
1341
+ "notNull": true
1342
+ },
1343
+ "name": {
1344
+ "name": "name",
1345
+ "type": "text",
1346
+ "primaryKey": false,
1347
+ "notNull": true
1348
+ },
1349
+ "workspace_id": {
1350
+ "name": "workspace_id",
1351
+ "type": "text",
1352
+ "primaryKey": false,
1353
+ "notNull": true
1354
+ },
1355
+ "source_env_id": {
1356
+ "name": "source_env_id",
1357
+ "type": "text",
1358
+ "primaryKey": false,
1359
+ "notNull": true
1360
+ },
1361
+ "target_env_id": {
1362
+ "name": "target_env_id",
1363
+ "type": "text",
1364
+ "primaryKey": false,
1365
+ "notNull": true
1366
+ },
1367
+ "status": {
1368
+ "name": "status",
1369
+ "type": "text",
1370
+ "primaryKey": false,
1371
+ "notNull": true,
1372
+ "default": "'pending'"
1373
+ },
1374
+ "created_at": {
1375
+ "name": "created_at",
1376
+ "type": "timestamp with time zone",
1377
+ "primaryKey": false,
1378
+ "notNull": true,
1379
+ "default": "now()"
1380
+ },
1381
+ "applied_at": {
1382
+ "name": "applied_at",
1383
+ "type": "timestamp with time zone",
1384
+ "primaryKey": false,
1385
+ "notNull": false
1386
+ }
1387
+ },
1388
+ "indexes": {},
1389
+ "foreignKeys": {
1390
+ "releases_workspace_id_workspaces_id_fk": {
1391
+ "name": "releases_workspace_id_workspaces_id_fk",
1392
+ "tableFrom": "releases",
1393
+ "tableTo": "workspaces",
1394
+ "columnsFrom": [
1395
+ "workspace_id"
1396
+ ],
1397
+ "columnsTo": [
1398
+ "id"
1399
+ ],
1400
+ "onDelete": "cascade",
1401
+ "onUpdate": "no action"
1402
+ }
1403
+ },
1404
+ "compositePrimaryKeys": {},
1405
+ "uniqueConstraints": {}
1406
+ },
1407
+ "public.form_submissions": {
1408
+ "name": "form_submissions",
1409
+ "schema": "",
1410
+ "columns": {
1411
+ "id": {
1412
+ "name": "id",
1413
+ "type": "text",
1414
+ "primaryKey": true,
1415
+ "notNull": true
1416
+ },
1417
+ "form_id": {
1418
+ "name": "form_id",
1419
+ "type": "text",
1420
+ "primaryKey": false,
1421
+ "notNull": true
1422
+ },
1423
+ "workspace_id": {
1424
+ "name": "workspace_id",
1425
+ "type": "text",
1426
+ "primaryKey": false,
1427
+ "notNull": true
1428
+ },
1429
+ "env_id": {
1430
+ "name": "env_id",
1431
+ "type": "text",
1432
+ "primaryKey": false,
1433
+ "notNull": true
1434
+ },
1435
+ "data": {
1436
+ "name": "data",
1437
+ "type": "jsonb",
1438
+ "primaryKey": false,
1439
+ "notNull": true
1440
+ },
1441
+ "ip_address": {
1442
+ "name": "ip_address",
1443
+ "type": "text",
1444
+ "primaryKey": false,
1445
+ "notNull": false
1446
+ },
1447
+ "metadata": {
1448
+ "name": "metadata",
1449
+ "type": "jsonb",
1450
+ "primaryKey": false,
1451
+ "notNull": false
1452
+ },
1453
+ "created_at": {
1454
+ "name": "created_at",
1455
+ "type": "timestamp with time zone",
1456
+ "primaryKey": false,
1457
+ "notNull": true,
1458
+ "default": "now()"
1459
+ }
1460
+ },
1461
+ "indexes": {},
1462
+ "foreignKeys": {
1463
+ "form_submissions_workspace_id_workspaces_id_fk": {
1464
+ "name": "form_submissions_workspace_id_workspaces_id_fk",
1465
+ "tableFrom": "form_submissions",
1466
+ "tableTo": "workspaces",
1467
+ "columnsFrom": [
1468
+ "workspace_id"
1469
+ ],
1470
+ "columnsTo": [
1471
+ "id"
1472
+ ],
1473
+ "onDelete": "cascade",
1474
+ "onUpdate": "no action"
1475
+ }
1476
+ },
1477
+ "compositePrimaryKeys": {},
1478
+ "uniqueConstraints": {}
1479
+ },
1480
+ "public.form_app_settings": {
1481
+ "name": "form_app_settings",
1482
+ "schema": "",
1483
+ "columns": {
1484
+ "workspace_id": {
1485
+ "name": "workspace_id",
1486
+ "type": "text",
1487
+ "primaryKey": false,
1488
+ "notNull": true
1489
+ },
1490
+ "env_id": {
1491
+ "name": "env_id",
1492
+ "type": "text",
1493
+ "primaryKey": false,
1494
+ "notNull": true
1495
+ },
1496
+ "settings": {
1497
+ "name": "settings",
1498
+ "type": "jsonb",
1499
+ "primaryKey": false,
1500
+ "notNull": true,
1501
+ "default": "'{}'::jsonb"
1502
+ },
1503
+ "updated_at": {
1504
+ "name": "updated_at",
1505
+ "type": "timestamp with time zone",
1506
+ "primaryKey": false,
1507
+ "notNull": true,
1508
+ "default": "now()"
1509
+ }
1510
+ },
1511
+ "indexes": {},
1512
+ "foreignKeys": {
1513
+ "form_app_settings_workspace_id_workspaces_id_fk": {
1514
+ "name": "form_app_settings_workspace_id_workspaces_id_fk",
1515
+ "tableFrom": "form_app_settings",
1516
+ "tableTo": "workspaces",
1517
+ "columnsFrom": [
1518
+ "workspace_id"
1519
+ ],
1520
+ "columnsTo": [
1521
+ "id"
1522
+ ],
1523
+ "onDelete": "cascade",
1524
+ "onUpdate": "no action"
1525
+ }
1526
+ },
1527
+ "compositePrimaryKeys": {
1528
+ "form_app_settings_workspace_id_env_id_pk": {
1529
+ "name": "form_app_settings_workspace_id_env_id_pk",
1530
+ "columns": [
1531
+ "workspace_id",
1532
+ "env_id"
1533
+ ]
1534
+ }
1535
+ },
1536
+ "uniqueConstraints": {}
1537
+ },
1538
+ "public.forms": {
1539
+ "name": "forms",
1540
+ "schema": "",
1541
+ "columns": {
1542
+ "id": {
1543
+ "name": "id",
1544
+ "type": "text",
1545
+ "primaryKey": true,
1546
+ "notNull": true
1547
+ },
1548
+ "workspace_id": {
1549
+ "name": "workspace_id",
1550
+ "type": "text",
1551
+ "primaryKey": false,
1552
+ "notNull": true
1553
+ },
1554
+ "env_id": {
1555
+ "name": "env_id",
1556
+ "type": "text",
1557
+ "primaryKey": false,
1558
+ "notNull": true
1559
+ },
1560
+ "name": {
1561
+ "name": "name",
1562
+ "type": "text",
1563
+ "primaryKey": false,
1564
+ "notNull": true
1565
+ },
1566
+ "slug": {
1567
+ "name": "slug",
1568
+ "type": "text",
1569
+ "primaryKey": false,
1570
+ "notNull": true
1571
+ },
1572
+ "is_live": {
1573
+ "name": "is_live",
1574
+ "type": "boolean",
1575
+ "primaryKey": false,
1576
+ "notNull": true,
1577
+ "default": false
1578
+ },
1579
+ "fields": {
1580
+ "name": "fields",
1581
+ "type": "jsonb",
1582
+ "primaryKey": false,
1583
+ "notNull": true,
1584
+ "default": "'[]'::jsonb"
1585
+ },
1586
+ "settings": {
1587
+ "name": "settings",
1588
+ "type": "jsonb",
1589
+ "primaryKey": false,
1590
+ "notNull": true,
1591
+ "default": "'{}'::jsonb"
1592
+ },
1593
+ "created_at": {
1594
+ "name": "created_at",
1595
+ "type": "timestamp with time zone",
1596
+ "primaryKey": false,
1597
+ "notNull": true,
1598
+ "default": "now()"
1599
+ },
1600
+ "updated_at": {
1601
+ "name": "updated_at",
1602
+ "type": "timestamp with time zone",
1603
+ "primaryKey": false,
1604
+ "notNull": true,
1605
+ "default": "now()"
1606
+ }
1607
+ },
1608
+ "indexes": {},
1609
+ "foreignKeys": {
1610
+ "forms_workspace_id_workspaces_id_fk": {
1611
+ "name": "forms_workspace_id_workspaces_id_fk",
1612
+ "tableFrom": "forms",
1613
+ "tableTo": "workspaces",
1614
+ "columnsFrom": [
1615
+ "workspace_id"
1616
+ ],
1617
+ "columnsTo": [
1618
+ "id"
1619
+ ],
1620
+ "onDelete": "cascade",
1621
+ "onUpdate": "no action"
1622
+ }
1623
+ },
1624
+ "compositePrimaryKeys": {},
1625
+ "uniqueConstraints": {}
1626
+ },
1627
+ "public.workspace_installed_apps": {
1628
+ "name": "workspace_installed_apps",
1629
+ "schema": "",
1630
+ "columns": {
1631
+ "id": {
1632
+ "name": "id",
1633
+ "type": "text",
1634
+ "primaryKey": true,
1635
+ "notNull": true
1636
+ },
1637
+ "workspace_id": {
1638
+ "name": "workspace_id",
1639
+ "type": "text",
1640
+ "primaryKey": false,
1641
+ "notNull": true
1642
+ },
1643
+ "app_id": {
1644
+ "name": "app_id",
1645
+ "type": "text",
1646
+ "primaryKey": false,
1647
+ "notNull": true
1648
+ },
1649
+ "options": {
1650
+ "name": "options",
1651
+ "type": "jsonb",
1652
+ "primaryKey": false,
1653
+ "notNull": true,
1654
+ "default": "'{}'"
1655
+ },
1656
+ "installed_at": {
1657
+ "name": "installed_at",
1658
+ "type": "timestamp with time zone",
1659
+ "primaryKey": false,
1660
+ "notNull": true,
1661
+ "default": "now()"
1662
+ },
1663
+ "installed_by": {
1664
+ "name": "installed_by",
1665
+ "type": "text",
1666
+ "primaryKey": false,
1667
+ "notNull": false
1668
+ }
1669
+ },
1670
+ "indexes": {
1671
+ "workspace_installed_apps_ws_app_unique": {
1672
+ "name": "workspace_installed_apps_ws_app_unique",
1673
+ "columns": [
1674
+ "workspace_id",
1675
+ "app_id"
1676
+ ],
1677
+ "isUnique": true
1678
+ }
1679
+ },
1680
+ "foreignKeys": {},
1681
+ "compositePrimaryKeys": {},
1682
+ "uniqueConstraints": {}
1683
+ }
1684
+ },
1685
+ "enums": {},
1686
+ "schemas": {},
1687
+ "_meta": {
1688
+ "columns": {},
1689
+ "schemas": {},
1690
+ "tables": {}
1691
+ }
1692
+ }