@openora/core 0.4.1-canary.111 → 0.4.1-canary.113

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 (138) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/admin-console/plugin.d.ts +9 -0
  3. package/dist/admin-console/plugin.d.ts.map +1 -1
  4. package/dist/analytics/plugin.d.ts +9 -0
  5. package/dist/analytics/plugin.d.ts.map +1 -1
  6. package/dist/audit/plugin.d.ts +9 -0
  7. package/dist/audit/plugin.d.ts.map +1 -1
  8. package/dist/casino/gaming/plugin.d.ts +9 -0
  9. package/dist/casino/gaming/plugin.d.ts.map +1 -1
  10. package/dist/casino/lobby/plugin.d.ts +9 -0
  11. package/dist/casino/lobby/plugin.d.ts.map +1 -1
  12. package/dist/cms/plugin.d.ts +9 -0
  13. package/dist/cms/plugin.d.ts.map +1 -1
  14. package/dist/compliance/plugin.d.ts +9 -0
  15. package/dist/compliance/plugin.d.ts.map +1 -1
  16. package/dist/contracts/schemas/__tests__/platform-config.test.d.ts +2 -0
  17. package/dist/contracts/schemas/__tests__/platform-config.test.d.ts.map +1 -0
  18. package/dist/contracts/schemas/__tests__/platform-config.test.js +16 -0
  19. package/dist/contracts/schemas/__tests__/platform-config.test.js.map +1 -0
  20. package/dist/contracts/schemas/chat-attachment.d.ts +20 -0
  21. package/dist/contracts/schemas/chat-attachment.d.ts.map +1 -0
  22. package/dist/contracts/schemas/chat-attachment.js +14 -0
  23. package/dist/contracts/schemas/chat-attachment.js.map +1 -0
  24. package/dist/contracts/schemas/index.d.ts +1 -0
  25. package/dist/contracts/schemas/index.d.ts.map +1 -1
  26. package/dist/contracts/schemas/index.js +1 -0
  27. package/dist/contracts/schemas/index.js.map +1 -1
  28. package/dist/contracts/schemas/platform-config.d.ts +29 -0
  29. package/dist/contracts/schemas/platform-config.d.ts.map +1 -1
  30. package/dist/contracts/schemas/platform-config.js +45 -0
  31. package/dist/contracts/schemas/platform-config.js.map +1 -1
  32. package/dist/engagement/chat/__tests__/chat.service.int.test.js +255 -14
  33. package/dist/engagement/chat/__tests__/chat.service.int.test.js.map +1 -1
  34. package/dist/engagement/chat/__tests__/contract.test.d.ts +2 -0
  35. package/dist/engagement/chat/__tests__/contract.test.d.ts.map +1 -0
  36. package/dist/engagement/chat/__tests__/contract.test.js +44 -0
  37. package/dist/engagement/chat/__tests__/contract.test.js.map +1 -0
  38. package/dist/engagement/chat/__tests__/global-chat-room.int.test.js +10 -1
  39. package/dist/engagement/chat/__tests__/global-chat-room.int.test.js.map +1 -1
  40. package/dist/engagement/chat/__tests__/validate-attachment.test.d.ts +2 -0
  41. package/dist/engagement/chat/__tests__/validate-attachment.test.d.ts.map +1 -0
  42. package/dist/engagement/chat/__tests__/validate-attachment.test.js +38 -0
  43. package/dist/engagement/chat/__tests__/validate-attachment.test.js.map +1 -0
  44. package/dist/engagement/chat/contract/index.d.ts +185 -2
  45. package/dist/engagement/chat/contract/index.d.ts.map +1 -1
  46. package/dist/engagement/chat/contract/index.js +21 -3
  47. package/dist/engagement/chat/contract/index.js.map +1 -1
  48. package/dist/engagement/chat/drizzle/migrations/0008_robust_korvac.sql +1 -0
  49. package/dist/engagement/chat/drizzle/migrations/meta/0008_snapshot.json +1462 -0
  50. package/dist/engagement/chat/drizzle/migrations/meta/_journal.json +7 -0
  51. package/dist/engagement/chat/moderation/index.d.ts +1 -0
  52. package/dist/engagement/chat/moderation/index.d.ts.map +1 -1
  53. package/dist/engagement/chat/moderation/index.js +1 -0
  54. package/dist/engagement/chat/moderation/index.js.map +1 -1
  55. package/dist/engagement/chat/moderation/validate-attachment.d.ts +9 -0
  56. package/dist/engagement/chat/moderation/validate-attachment.d.ts.map +1 -0
  57. package/dist/engagement/chat/moderation/validate-attachment.js +27 -0
  58. package/dist/engagement/chat/moderation/validate-attachment.js.map +1 -0
  59. package/dist/engagement/chat/plugin.d.ts +9 -0
  60. package/dist/engagement/chat/plugin.d.ts.map +1 -1
  61. package/dist/engagement/chat/plugin.js +14 -2
  62. package/dist/engagement/chat/plugin.js.map +1 -1
  63. package/dist/engagement/chat/router/index.d.ts +118 -2
  64. package/dist/engagement/chat/router/index.d.ts.map +1 -1
  65. package/dist/engagement/chat/router/index.js +10 -4
  66. package/dist/engagement/chat/router/index.js.map +1 -1
  67. package/dist/engagement/chat/schema/index.d.ts +37 -0
  68. package/dist/engagement/chat/schema/index.d.ts.map +1 -1
  69. package/dist/engagement/chat/schema/index.js +1 -0
  70. package/dist/engagement/chat/schema/index.js.map +1 -1
  71. package/dist/engagement/chat/service/chat.service.d.ts +85 -6
  72. package/dist/engagement/chat/service/chat.service.d.ts.map +1 -1
  73. package/dist/engagement/chat/service/chat.service.js +83 -5
  74. package/dist/engagement/chat/service/chat.service.js.map +1 -1
  75. package/dist/engagement/chat-commands/plugin.d.ts +9 -0
  76. package/dist/engagement/chat-commands/plugin.d.ts.map +1 -1
  77. package/dist/engagement/notifications/__tests__/notification-event-map.test.d.ts +2 -0
  78. package/dist/engagement/notifications/__tests__/notification-event-map.test.d.ts.map +1 -0
  79. package/dist/engagement/notifications/__tests__/notification-event-map.test.js +235 -0
  80. package/dist/engagement/notifications/__tests__/notification-event-map.test.js.map +1 -0
  81. package/dist/engagement/notifications/__tests__/notifications.router.int.test.d.ts +2 -0
  82. package/dist/engagement/notifications/__tests__/notifications.router.int.test.d.ts.map +1 -0
  83. package/dist/engagement/notifications/__tests__/notifications.router.int.test.js +142 -0
  84. package/dist/engagement/notifications/__tests__/notifications.router.int.test.js.map +1 -0
  85. package/dist/engagement/notifications/__tests__/notifications.service.int.test.js +113 -7
  86. package/dist/engagement/notifications/__tests__/notifications.service.int.test.js.map +1 -1
  87. package/dist/engagement/notifications/contract/index.d.ts +98 -17
  88. package/dist/engagement/notifications/contract/index.d.ts.map +1 -1
  89. package/dist/engagement/notifications/contract/index.js +34 -4
  90. package/dist/engagement/notifications/contract/index.js.map +1 -1
  91. package/dist/engagement/notifications/drizzle/migrations/0001_classy_pixie.sql +1 -0
  92. package/dist/engagement/notifications/drizzle/migrations/0002_open_madame_web.sql +2 -0
  93. package/dist/engagement/notifications/drizzle/migrations/meta/0001_snapshot.json +98 -0
  94. package/dist/engagement/notifications/drizzle/migrations/meta/0002_snapshot.json +119 -0
  95. package/dist/engagement/notifications/drizzle/migrations/meta/_journal.json +14 -0
  96. package/dist/engagement/notifications/plugin.d.ts +23 -3
  97. package/dist/engagement/notifications/plugin.d.ts.map +1 -1
  98. package/dist/engagement/notifications/plugin.js +219 -75
  99. package/dist/engagement/notifications/plugin.js.map +1 -1
  100. package/dist/engagement/notifications/react/notifications.d.ts +20 -0
  101. package/dist/engagement/notifications/react/notifications.d.ts.map +1 -0
  102. package/dist/engagement/notifications/react/notifications.js +39 -0
  103. package/dist/engagement/notifications/react/notifications.js.map +1 -0
  104. package/dist/engagement/notifications/router/index.d.ts +70 -17
  105. package/dist/engagement/notifications/router/index.d.ts.map +1 -1
  106. package/dist/engagement/notifications/router/index.js +37 -16
  107. package/dist/engagement/notifications/router/index.js.map +1 -1
  108. package/dist/engagement/notifications/schema/index.d.ts +36 -0
  109. package/dist/engagement/notifications/schema/index.d.ts.map +1 -1
  110. package/dist/engagement/notifications/schema/index.js +7 -2
  111. package/dist/engagement/notifications/schema/index.js.map +1 -1
  112. package/dist/engagement/notifications/service/notifications.service.d.ts +27 -19
  113. package/dist/engagement/notifications/service/notifications.service.d.ts.map +1 -1
  114. package/dist/engagement/notifications/service/notifications.service.js +41 -11
  115. package/dist/engagement/notifications/service/notifications.service.js.map +1 -1
  116. package/dist/engagement/react.d.ts +2 -0
  117. package/dist/engagement/react.d.ts.map +1 -0
  118. package/dist/engagement/react.js +3 -0
  119. package/dist/engagement/react.js.map +1 -0
  120. package/dist/engagement/social/plugin.d.ts +9 -0
  121. package/dist/engagement/social/plugin.d.ts.map +1 -1
  122. package/dist/iam/plugin.d.ts +9 -0
  123. package/dist/iam/plugin.d.ts.map +1 -1
  124. package/dist/pam/identity/plugin.d.ts +9 -0
  125. package/dist/pam/identity/plugin.d.ts.map +1 -1
  126. package/dist/pam/player-management/plugin.d.ts +9 -0
  127. package/dist/pam/player-management/plugin.d.ts.map +1 -1
  128. package/dist/pam/player-note/plugin.d.ts +9 -0
  129. package/dist/pam/player-note/plugin.d.ts.map +1 -1
  130. package/dist/pam/profile/plugin.d.ts +9 -0
  131. package/dist/pam/profile/plugin.d.ts.map +1 -1
  132. package/dist/pam/tag/plugin.d.ts +9 -0
  133. package/dist/pam/tag/plugin.d.ts.map +1 -1
  134. package/dist/server/runtime/core-token-catalog.d.ts +9 -0
  135. package/dist/server/runtime/core-token-catalog.d.ts.map +1 -1
  136. package/dist/wallet/plugin.d.ts +9 -0
  137. package/dist/wallet/plugin.d.ts.map +1 -1
  138. package/package.json +6 -1
@@ -0,0 +1,1462 @@
1
+ {
2
+ "id": "e350a845-95e3-410e-b415-f232b320780a",
3
+ "prevId": "6af09461-5ea9-4381-b5d9-a4e6caf872f5",
4
+ "version": "7",
5
+ "dialect": "postgresql",
6
+ "tables": {
7
+ "public.chat_message": {
8
+ "name": "chat_message",
9
+ "schema": "",
10
+ "columns": {
11
+ "id": {
12
+ "name": "id",
13
+ "type": "uuid",
14
+ "primaryKey": true,
15
+ "notNull": true,
16
+ "default": "gen_random_uuid()"
17
+ },
18
+ "room_id": {
19
+ "name": "room_id",
20
+ "type": "uuid",
21
+ "primaryKey": false,
22
+ "notNull": false
23
+ },
24
+ "user_id": {
25
+ "name": "user_id",
26
+ "type": "uuid",
27
+ "primaryKey": false,
28
+ "notNull": true
29
+ },
30
+ "username": {
31
+ "name": "username",
32
+ "type": "text",
33
+ "primaryKey": false,
34
+ "notNull": true
35
+ },
36
+ "content": {
37
+ "name": "content",
38
+ "type": "text",
39
+ "primaryKey": false,
40
+ "notNull": true
41
+ },
42
+ "type": {
43
+ "name": "type",
44
+ "type": "chat_message_type",
45
+ "typeSchema": "public",
46
+ "primaryKey": false,
47
+ "notNull": true,
48
+ "default": "'user'"
49
+ },
50
+ "metadata": {
51
+ "name": "metadata",
52
+ "type": "jsonb",
53
+ "primaryKey": false,
54
+ "notNull": false
55
+ },
56
+ "attachment": {
57
+ "name": "attachment",
58
+ "type": "jsonb",
59
+ "primaryKey": false,
60
+ "notNull": false
61
+ },
62
+ "is_deleted": {
63
+ "name": "is_deleted",
64
+ "type": "boolean",
65
+ "primaryKey": false,
66
+ "notNull": true,
67
+ "default": false
68
+ },
69
+ "deleted_at": {
70
+ "name": "deleted_at",
71
+ "type": "timestamp with time zone",
72
+ "primaryKey": false,
73
+ "notNull": false
74
+ },
75
+ "created_at": {
76
+ "name": "created_at",
77
+ "type": "timestamp with time zone",
78
+ "primaryKey": false,
79
+ "notNull": true,
80
+ "default": "now()"
81
+ }
82
+ },
83
+ "indexes": {
84
+ "chat_msg_room_id_created_at_idx": {
85
+ "name": "chat_msg_room_id_created_at_idx",
86
+ "columns": [
87
+ {
88
+ "expression": "room_id",
89
+ "isExpression": false,
90
+ "asc": true,
91
+ "nulls": "last"
92
+ },
93
+ {
94
+ "expression": "created_at",
95
+ "isExpression": false,
96
+ "asc": true,
97
+ "nulls": "last"
98
+ }
99
+ ],
100
+ "isUnique": false,
101
+ "concurrently": false,
102
+ "method": "btree",
103
+ "with": {}
104
+ },
105
+ "chat_msg_created_at_idx": {
106
+ "name": "chat_msg_created_at_idx",
107
+ "columns": [
108
+ {
109
+ "expression": "created_at",
110
+ "isExpression": false,
111
+ "asc": true,
112
+ "nulls": "last"
113
+ }
114
+ ],
115
+ "isUnique": false,
116
+ "concurrently": false,
117
+ "method": "btree",
118
+ "with": {}
119
+ },
120
+ "chat_msg_deleted_at_idx": {
121
+ "name": "chat_msg_deleted_at_idx",
122
+ "columns": [
123
+ {
124
+ "expression": "deleted_at",
125
+ "isExpression": false,
126
+ "asc": true,
127
+ "nulls": "last"
128
+ }
129
+ ],
130
+ "isUnique": false,
131
+ "concurrently": false,
132
+ "method": "btree",
133
+ "with": {}
134
+ }
135
+ },
136
+ "foreignKeys": {
137
+ "chat_message_room_id_chat_room_id_fk": {
138
+ "name": "chat_message_room_id_chat_room_id_fk",
139
+ "tableFrom": "chat_message",
140
+ "tableTo": "chat_room",
141
+ "columnsFrom": ["room_id"],
142
+ "columnsTo": ["id"],
143
+ "onDelete": "no action",
144
+ "onUpdate": "no action"
145
+ }
146
+ },
147
+ "compositePrimaryKeys": {},
148
+ "uniqueConstraints": {},
149
+ "policies": {},
150
+ "checkConstraints": {},
151
+ "isRLSEnabled": false
152
+ },
153
+ "public.chat_mute": {
154
+ "name": "chat_mute",
155
+ "schema": "",
156
+ "columns": {
157
+ "id": {
158
+ "name": "id",
159
+ "type": "uuid",
160
+ "primaryKey": true,
161
+ "notNull": true,
162
+ "default": "gen_random_uuid()"
163
+ },
164
+ "user_id": {
165
+ "name": "user_id",
166
+ "type": "uuid",
167
+ "primaryKey": false,
168
+ "notNull": true
169
+ },
170
+ "room_id": {
171
+ "name": "room_id",
172
+ "type": "uuid",
173
+ "primaryKey": false,
174
+ "notNull": false
175
+ },
176
+ "scope": {
177
+ "name": "scope",
178
+ "type": "chat_moderation_scope",
179
+ "typeSchema": "public",
180
+ "primaryKey": false,
181
+ "notNull": true,
182
+ "default": "'__global'"
183
+ },
184
+ "muted_by": {
185
+ "name": "muted_by",
186
+ "type": "uuid",
187
+ "primaryKey": false,
188
+ "notNull": true
189
+ },
190
+ "reason": {
191
+ "name": "reason",
192
+ "type": "text",
193
+ "primaryKey": false,
194
+ "notNull": true
195
+ },
196
+ "created_at": {
197
+ "name": "created_at",
198
+ "type": "timestamp with time zone",
199
+ "primaryKey": false,
200
+ "notNull": true,
201
+ "default": "now()"
202
+ },
203
+ "expires_at": {
204
+ "name": "expires_at",
205
+ "type": "timestamp with time zone",
206
+ "primaryKey": false,
207
+ "notNull": false
208
+ },
209
+ "lifted_at": {
210
+ "name": "lifted_at",
211
+ "type": "timestamp with time zone",
212
+ "primaryKey": false,
213
+ "notNull": false
214
+ },
215
+ "lifted_by": {
216
+ "name": "lifted_by",
217
+ "type": "uuid",
218
+ "primaryKey": false,
219
+ "notNull": false
220
+ }
221
+ },
222
+ "indexes": {
223
+ "chat_mute_user_room_idx": {
224
+ "name": "chat_mute_user_room_idx",
225
+ "columns": [
226
+ {
227
+ "expression": "user_id",
228
+ "isExpression": false,
229
+ "asc": true,
230
+ "nulls": "last"
231
+ },
232
+ {
233
+ "expression": "room_id",
234
+ "isExpression": false,
235
+ "asc": true,
236
+ "nulls": "last"
237
+ }
238
+ ],
239
+ "isUnique": false,
240
+ "concurrently": false,
241
+ "method": "btree",
242
+ "with": {}
243
+ },
244
+ "chat_mute_expires_at_idx": {
245
+ "name": "chat_mute_expires_at_idx",
246
+ "columns": [
247
+ {
248
+ "expression": "expires_at",
249
+ "isExpression": false,
250
+ "asc": true,
251
+ "nulls": "last"
252
+ }
253
+ ],
254
+ "isUnique": false,
255
+ "concurrently": false,
256
+ "method": "btree",
257
+ "with": {}
258
+ }
259
+ },
260
+ "foreignKeys": {},
261
+ "compositePrimaryKeys": {},
262
+ "uniqueConstraints": {},
263
+ "policies": {},
264
+ "checkConstraints": {},
265
+ "isRLSEnabled": false
266
+ },
267
+ "public.chat_platform_ban": {
268
+ "name": "chat_platform_ban",
269
+ "schema": "",
270
+ "columns": {
271
+ "id": {
272
+ "name": "id",
273
+ "type": "uuid",
274
+ "primaryKey": true,
275
+ "notNull": true,
276
+ "default": "gen_random_uuid()"
277
+ },
278
+ "user_id": {
279
+ "name": "user_id",
280
+ "type": "uuid",
281
+ "primaryKey": false,
282
+ "notNull": true
283
+ },
284
+ "banned_by": {
285
+ "name": "banned_by",
286
+ "type": "uuid",
287
+ "primaryKey": false,
288
+ "notNull": true
289
+ },
290
+ "scope": {
291
+ "name": "scope",
292
+ "type": "chat_moderation_scope",
293
+ "typeSchema": "public",
294
+ "primaryKey": false,
295
+ "notNull": true,
296
+ "default": "'__all_public'"
297
+ },
298
+ "room_id": {
299
+ "name": "room_id",
300
+ "type": "uuid",
301
+ "primaryKey": false,
302
+ "notNull": false
303
+ },
304
+ "reason": {
305
+ "name": "reason",
306
+ "type": "text",
307
+ "primaryKey": false,
308
+ "notNull": true
309
+ },
310
+ "created_at": {
311
+ "name": "created_at",
312
+ "type": "timestamp with time zone",
313
+ "primaryKey": false,
314
+ "notNull": true,
315
+ "default": "now()"
316
+ },
317
+ "expires_at": {
318
+ "name": "expires_at",
319
+ "type": "timestamp with time zone",
320
+ "primaryKey": false,
321
+ "notNull": false
322
+ },
323
+ "lifted_at": {
324
+ "name": "lifted_at",
325
+ "type": "timestamp with time zone",
326
+ "primaryKey": false,
327
+ "notNull": false
328
+ },
329
+ "lifted_by": {
330
+ "name": "lifted_by",
331
+ "type": "uuid",
332
+ "primaryKey": false,
333
+ "notNull": false
334
+ }
335
+ },
336
+ "indexes": {
337
+ "chat_platform_ban_active_scope_key": {
338
+ "name": "chat_platform_ban_active_scope_key",
339
+ "columns": [
340
+ {
341
+ "expression": "user_id",
342
+ "isExpression": false,
343
+ "asc": true,
344
+ "nulls": "last"
345
+ },
346
+ {
347
+ "expression": "scope",
348
+ "isExpression": false,
349
+ "asc": true,
350
+ "nulls": "last"
351
+ }
352
+ ],
353
+ "isUnique": true,
354
+ "where": "\"chat_platform_ban\".\"lifted_at\" IS NULL AND \"chat_platform_ban\".\"room_id\" IS NULL",
355
+ "concurrently": false,
356
+ "method": "btree",
357
+ "with": {}
358
+ },
359
+ "chat_platform_ban_active_room_key": {
360
+ "name": "chat_platform_ban_active_room_key",
361
+ "columns": [
362
+ {
363
+ "expression": "user_id",
364
+ "isExpression": false,
365
+ "asc": true,
366
+ "nulls": "last"
367
+ },
368
+ {
369
+ "expression": "scope",
370
+ "isExpression": false,
371
+ "asc": true,
372
+ "nulls": "last"
373
+ },
374
+ {
375
+ "expression": "room_id",
376
+ "isExpression": false,
377
+ "asc": true,
378
+ "nulls": "last"
379
+ }
380
+ ],
381
+ "isUnique": true,
382
+ "where": "\"chat_platform_ban\".\"lifted_at\" IS NULL AND \"chat_platform_ban\".\"room_id\" IS NOT NULL",
383
+ "concurrently": false,
384
+ "method": "btree",
385
+ "with": {}
386
+ },
387
+ "chat_platform_ban_user_idx": {
388
+ "name": "chat_platform_ban_user_idx",
389
+ "columns": [
390
+ {
391
+ "expression": "user_id",
392
+ "isExpression": false,
393
+ "asc": true,
394
+ "nulls": "last"
395
+ }
396
+ ],
397
+ "isUnique": false,
398
+ "concurrently": false,
399
+ "method": "btree",
400
+ "with": {}
401
+ }
402
+ },
403
+ "foreignKeys": {
404
+ "chat_platform_ban_room_id_chat_room_id_fk": {
405
+ "name": "chat_platform_ban_room_id_chat_room_id_fk",
406
+ "tableFrom": "chat_platform_ban",
407
+ "tableTo": "chat_room",
408
+ "columnsFrom": ["room_id"],
409
+ "columnsTo": ["id"],
410
+ "onDelete": "no action",
411
+ "onUpdate": "no action"
412
+ }
413
+ },
414
+ "compositePrimaryKeys": {},
415
+ "uniqueConstraints": {},
416
+ "policies": {},
417
+ "checkConstraints": {},
418
+ "isRLSEnabled": false
419
+ },
420
+ "public.chat_room": {
421
+ "name": "chat_room",
422
+ "schema": "",
423
+ "columns": {
424
+ "id": {
425
+ "name": "id",
426
+ "type": "uuid",
427
+ "primaryKey": true,
428
+ "notNull": true,
429
+ "default": "gen_random_uuid()"
430
+ },
431
+ "name": {
432
+ "name": "name",
433
+ "type": "text",
434
+ "primaryKey": false,
435
+ "notNull": true
436
+ },
437
+ "slug": {
438
+ "name": "slug",
439
+ "type": "text",
440
+ "primaryKey": false,
441
+ "notNull": true
442
+ },
443
+ "category": {
444
+ "name": "category",
445
+ "type": "chat_room_category",
446
+ "typeSchema": "public",
447
+ "primaryKey": false,
448
+ "notNull": false
449
+ },
450
+ "is_public": {
451
+ "name": "is_public",
452
+ "type": "boolean",
453
+ "primaryKey": false,
454
+ "notNull": true,
455
+ "default": true
456
+ },
457
+ "join_code": {
458
+ "name": "join_code",
459
+ "type": "text",
460
+ "primaryKey": false,
461
+ "notNull": false
462
+ },
463
+ "creator_id": {
464
+ "name": "creator_id",
465
+ "type": "uuid",
466
+ "primaryKey": false,
467
+ "notNull": false
468
+ },
469
+ "created_at": {
470
+ "name": "created_at",
471
+ "type": "timestamp with time zone",
472
+ "primaryKey": false,
473
+ "notNull": true,
474
+ "default": "now()"
475
+ },
476
+ "deleted_at": {
477
+ "name": "deleted_at",
478
+ "type": "timestamp with time zone",
479
+ "primaryKey": false,
480
+ "notNull": false
481
+ }
482
+ },
483
+ "indexes": {
484
+ "chat_room_slug_key": {
485
+ "name": "chat_room_slug_key",
486
+ "columns": [
487
+ {
488
+ "expression": "slug",
489
+ "isExpression": false,
490
+ "asc": true,
491
+ "nulls": "last"
492
+ }
493
+ ],
494
+ "isUnique": true,
495
+ "concurrently": false,
496
+ "method": "btree",
497
+ "with": {}
498
+ },
499
+ "chat_room_join_code_key": {
500
+ "name": "chat_room_join_code_key",
501
+ "columns": [
502
+ {
503
+ "expression": "join_code",
504
+ "isExpression": false,
505
+ "asc": true,
506
+ "nulls": "last"
507
+ }
508
+ ],
509
+ "isUnique": true,
510
+ "concurrently": false,
511
+ "method": "btree",
512
+ "with": {}
513
+ },
514
+ "chat_room_deleted_at_idx": {
515
+ "name": "chat_room_deleted_at_idx",
516
+ "columns": [
517
+ {
518
+ "expression": "deleted_at",
519
+ "isExpression": false,
520
+ "asc": true,
521
+ "nulls": "last"
522
+ }
523
+ ],
524
+ "isUnique": false,
525
+ "concurrently": false,
526
+ "method": "btree",
527
+ "with": {}
528
+ },
529
+ "chat_room_creator_public_deleted_at_idx": {
530
+ "name": "chat_room_creator_public_deleted_at_idx",
531
+ "columns": [
532
+ {
533
+ "expression": "creator_id",
534
+ "isExpression": false,
535
+ "asc": true,
536
+ "nulls": "last"
537
+ },
538
+ {
539
+ "expression": "is_public",
540
+ "isExpression": false,
541
+ "asc": true,
542
+ "nulls": "last"
543
+ },
544
+ {
545
+ "expression": "deleted_at",
546
+ "isExpression": false,
547
+ "asc": true,
548
+ "nulls": "last"
549
+ }
550
+ ],
551
+ "isUnique": false,
552
+ "concurrently": false,
553
+ "method": "btree",
554
+ "with": {}
555
+ }
556
+ },
557
+ "foreignKeys": {},
558
+ "compositePrimaryKeys": {},
559
+ "uniqueConstraints": {},
560
+ "policies": {},
561
+ "checkConstraints": {},
562
+ "isRLSEnabled": false
563
+ },
564
+ "public.chat_room_ban": {
565
+ "name": "chat_room_ban",
566
+ "schema": "",
567
+ "columns": {
568
+ "id": {
569
+ "name": "id",
570
+ "type": "uuid",
571
+ "primaryKey": true,
572
+ "notNull": true,
573
+ "default": "gen_random_uuid()"
574
+ },
575
+ "room_id": {
576
+ "name": "room_id",
577
+ "type": "uuid",
578
+ "primaryKey": false,
579
+ "notNull": true
580
+ },
581
+ "user_id": {
582
+ "name": "user_id",
583
+ "type": "uuid",
584
+ "primaryKey": false,
585
+ "notNull": true
586
+ },
587
+ "banned_by": {
588
+ "name": "banned_by",
589
+ "type": "uuid",
590
+ "primaryKey": false,
591
+ "notNull": true
592
+ },
593
+ "created_at": {
594
+ "name": "created_at",
595
+ "type": "timestamp with time zone",
596
+ "primaryKey": false,
597
+ "notNull": true,
598
+ "default": "now()"
599
+ },
600
+ "expires_at": {
601
+ "name": "expires_at",
602
+ "type": "timestamp with time zone",
603
+ "primaryKey": false,
604
+ "notNull": false
605
+ },
606
+ "lifted_at": {
607
+ "name": "lifted_at",
608
+ "type": "timestamp with time zone",
609
+ "primaryKey": false,
610
+ "notNull": false
611
+ },
612
+ "lifted_by": {
613
+ "name": "lifted_by",
614
+ "type": "uuid",
615
+ "primaryKey": false,
616
+ "notNull": false
617
+ }
618
+ },
619
+ "indexes": {
620
+ "chat_room_ban_active_room_user_key": {
621
+ "name": "chat_room_ban_active_room_user_key",
622
+ "columns": [
623
+ {
624
+ "expression": "room_id",
625
+ "isExpression": false,
626
+ "asc": true,
627
+ "nulls": "last"
628
+ },
629
+ {
630
+ "expression": "user_id",
631
+ "isExpression": false,
632
+ "asc": true,
633
+ "nulls": "last"
634
+ }
635
+ ],
636
+ "isUnique": true,
637
+ "where": "\"chat_room_ban\".\"lifted_at\" IS NULL",
638
+ "concurrently": false,
639
+ "method": "btree",
640
+ "with": {}
641
+ },
642
+ "chat_room_ban_room_idx": {
643
+ "name": "chat_room_ban_room_idx",
644
+ "columns": [
645
+ {
646
+ "expression": "room_id",
647
+ "isExpression": false,
648
+ "asc": true,
649
+ "nulls": "last"
650
+ }
651
+ ],
652
+ "isUnique": false,
653
+ "concurrently": false,
654
+ "method": "btree",
655
+ "with": {}
656
+ },
657
+ "chat_room_ban_user_idx": {
658
+ "name": "chat_room_ban_user_idx",
659
+ "columns": [
660
+ {
661
+ "expression": "user_id",
662
+ "isExpression": false,
663
+ "asc": true,
664
+ "nulls": "last"
665
+ }
666
+ ],
667
+ "isUnique": false,
668
+ "concurrently": false,
669
+ "method": "btree",
670
+ "with": {}
671
+ },
672
+ "chat_room_ban_expires_at_idx": {
673
+ "name": "chat_room_ban_expires_at_idx",
674
+ "columns": [
675
+ {
676
+ "expression": "expires_at",
677
+ "isExpression": false,
678
+ "asc": true,
679
+ "nulls": "last"
680
+ }
681
+ ],
682
+ "isUnique": false,
683
+ "concurrently": false,
684
+ "method": "btree",
685
+ "with": {}
686
+ }
687
+ },
688
+ "foreignKeys": {
689
+ "chat_room_ban_room_id_chat_room_id_fk": {
690
+ "name": "chat_room_ban_room_id_chat_room_id_fk",
691
+ "tableFrom": "chat_room_ban",
692
+ "tableTo": "chat_room",
693
+ "columnsFrom": ["room_id"],
694
+ "columnsTo": ["id"],
695
+ "onDelete": "cascade",
696
+ "onUpdate": "no action"
697
+ }
698
+ },
699
+ "compositePrimaryKeys": {},
700
+ "uniqueConstraints": {},
701
+ "policies": {},
702
+ "checkConstraints": {},
703
+ "isRLSEnabled": false
704
+ },
705
+ "public.chat_room_configuration": {
706
+ "name": "chat_room_configuration",
707
+ "schema": "",
708
+ "columns": {
709
+ "id": {
710
+ "name": "id",
711
+ "type": "uuid",
712
+ "primaryKey": true,
713
+ "notNull": true,
714
+ "default": "gen_random_uuid()"
715
+ },
716
+ "room_id": {
717
+ "name": "room_id",
718
+ "type": "uuid",
719
+ "primaryKey": false,
720
+ "notNull": true
721
+ },
722
+ "slow_mode": {
723
+ "name": "slow_mode",
724
+ "type": "boolean",
725
+ "primaryKey": false,
726
+ "notNull": true,
727
+ "default": false
728
+ },
729
+ "slow_mode_seconds": {
730
+ "name": "slow_mode_seconds",
731
+ "type": "integer",
732
+ "primaryKey": false,
733
+ "notNull": true,
734
+ "default": 0
735
+ },
736
+ "read_only_mode": {
737
+ "name": "read_only_mode",
738
+ "type": "boolean",
739
+ "primaryKey": false,
740
+ "notNull": true,
741
+ "default": false
742
+ },
743
+ "only_invited_can_join": {
744
+ "name": "only_invited_can_join",
745
+ "type": "boolean",
746
+ "primaryKey": false,
747
+ "notNull": true,
748
+ "default": false
749
+ },
750
+ "lock_room": {
751
+ "name": "lock_room",
752
+ "type": "boolean",
753
+ "primaryKey": false,
754
+ "notNull": true,
755
+ "default": false
756
+ },
757
+ "moderator_invite": {
758
+ "name": "moderator_invite",
759
+ "type": "boolean",
760
+ "primaryKey": false,
761
+ "notNull": true,
762
+ "default": false
763
+ },
764
+ "created_at": {
765
+ "name": "created_at",
766
+ "type": "timestamp with time zone",
767
+ "primaryKey": false,
768
+ "notNull": true,
769
+ "default": "now()"
770
+ },
771
+ "updated_at": {
772
+ "name": "updated_at",
773
+ "type": "timestamp with time zone",
774
+ "primaryKey": false,
775
+ "notNull": true,
776
+ "default": "now()"
777
+ }
778
+ },
779
+ "indexes": {
780
+ "chat_room_configuration_room_key": {
781
+ "name": "chat_room_configuration_room_key",
782
+ "columns": [
783
+ {
784
+ "expression": "room_id",
785
+ "isExpression": false,
786
+ "asc": true,
787
+ "nulls": "last"
788
+ }
789
+ ],
790
+ "isUnique": true,
791
+ "concurrently": false,
792
+ "method": "btree",
793
+ "with": {}
794
+ }
795
+ },
796
+ "foreignKeys": {
797
+ "chat_room_configuration_room_id_chat_room_id_fk": {
798
+ "name": "chat_room_configuration_room_id_chat_room_id_fk",
799
+ "tableFrom": "chat_room_configuration",
800
+ "tableTo": "chat_room",
801
+ "columnsFrom": ["room_id"],
802
+ "columnsTo": ["id"],
803
+ "onDelete": "cascade",
804
+ "onUpdate": "no action"
805
+ }
806
+ },
807
+ "compositePrimaryKeys": {},
808
+ "uniqueConstraints": {},
809
+ "policies": {},
810
+ "checkConstraints": {},
811
+ "isRLSEnabled": false
812
+ },
813
+ "public.chat_room_member": {
814
+ "name": "chat_room_member",
815
+ "schema": "",
816
+ "columns": {
817
+ "id": {
818
+ "name": "id",
819
+ "type": "uuid",
820
+ "primaryKey": true,
821
+ "notNull": true,
822
+ "default": "gen_random_uuid()"
823
+ },
824
+ "room_id": {
825
+ "name": "room_id",
826
+ "type": "uuid",
827
+ "primaryKey": false,
828
+ "notNull": true
829
+ },
830
+ "user_id": {
831
+ "name": "user_id",
832
+ "type": "uuid",
833
+ "primaryKey": false,
834
+ "notNull": true
835
+ },
836
+ "role": {
837
+ "name": "role",
838
+ "type": "chat_room_role",
839
+ "typeSchema": "public",
840
+ "primaryKey": false,
841
+ "notNull": true,
842
+ "default": "'member'"
843
+ },
844
+ "joined_at": {
845
+ "name": "joined_at",
846
+ "type": "timestamp with time zone",
847
+ "primaryKey": false,
848
+ "notNull": true,
849
+ "default": "now()"
850
+ }
851
+ },
852
+ "indexes": {
853
+ "chat_room_member_room_user_key": {
854
+ "name": "chat_room_member_room_user_key",
855
+ "columns": [
856
+ {
857
+ "expression": "room_id",
858
+ "isExpression": false,
859
+ "asc": true,
860
+ "nulls": "last"
861
+ },
862
+ {
863
+ "expression": "user_id",
864
+ "isExpression": false,
865
+ "asc": true,
866
+ "nulls": "last"
867
+ }
868
+ ],
869
+ "isUnique": true,
870
+ "concurrently": false,
871
+ "method": "btree",
872
+ "with": {}
873
+ },
874
+ "chat_room_member_room_idx": {
875
+ "name": "chat_room_member_room_idx",
876
+ "columns": [
877
+ {
878
+ "expression": "room_id",
879
+ "isExpression": false,
880
+ "asc": true,
881
+ "nulls": "last"
882
+ }
883
+ ],
884
+ "isUnique": false,
885
+ "concurrently": false,
886
+ "method": "btree",
887
+ "with": {}
888
+ },
889
+ "chat_room_member_user_idx": {
890
+ "name": "chat_room_member_user_idx",
891
+ "columns": [
892
+ {
893
+ "expression": "user_id",
894
+ "isExpression": false,
895
+ "asc": true,
896
+ "nulls": "last"
897
+ }
898
+ ],
899
+ "isUnique": false,
900
+ "concurrently": false,
901
+ "method": "btree",
902
+ "with": {}
903
+ }
904
+ },
905
+ "foreignKeys": {
906
+ "chat_room_member_room_id_chat_room_id_fk": {
907
+ "name": "chat_room_member_room_id_chat_room_id_fk",
908
+ "tableFrom": "chat_room_member",
909
+ "tableTo": "chat_room",
910
+ "columnsFrom": ["room_id"],
911
+ "columnsTo": ["id"],
912
+ "onDelete": "cascade",
913
+ "onUpdate": "no action"
914
+ }
915
+ },
916
+ "compositePrimaryKeys": {},
917
+ "uniqueConstraints": {},
918
+ "policies": {},
919
+ "checkConstraints": {},
920
+ "isRLSEnabled": false
921
+ },
922
+ "public.chat_room_mute": {
923
+ "name": "chat_room_mute",
924
+ "schema": "",
925
+ "columns": {
926
+ "id": {
927
+ "name": "id",
928
+ "type": "uuid",
929
+ "primaryKey": true,
930
+ "notNull": true,
931
+ "default": "gen_random_uuid()"
932
+ },
933
+ "room_id": {
934
+ "name": "room_id",
935
+ "type": "uuid",
936
+ "primaryKey": false,
937
+ "notNull": true
938
+ },
939
+ "user_id": {
940
+ "name": "user_id",
941
+ "type": "uuid",
942
+ "primaryKey": false,
943
+ "notNull": true
944
+ },
945
+ "muted_by": {
946
+ "name": "muted_by",
947
+ "type": "uuid",
948
+ "primaryKey": false,
949
+ "notNull": true
950
+ },
951
+ "reason": {
952
+ "name": "reason",
953
+ "type": "text",
954
+ "primaryKey": false,
955
+ "notNull": true
956
+ },
957
+ "created_at": {
958
+ "name": "created_at",
959
+ "type": "timestamp with time zone",
960
+ "primaryKey": false,
961
+ "notNull": true,
962
+ "default": "now()"
963
+ },
964
+ "expires_at": {
965
+ "name": "expires_at",
966
+ "type": "timestamp with time zone",
967
+ "primaryKey": false,
968
+ "notNull": false
969
+ },
970
+ "lifted_at": {
971
+ "name": "lifted_at",
972
+ "type": "timestamp with time zone",
973
+ "primaryKey": false,
974
+ "notNull": false
975
+ },
976
+ "lifted_by": {
977
+ "name": "lifted_by",
978
+ "type": "uuid",
979
+ "primaryKey": false,
980
+ "notNull": false
981
+ }
982
+ },
983
+ "indexes": {
984
+ "chat_room_mute_active_room_user_key": {
985
+ "name": "chat_room_mute_active_room_user_key",
986
+ "columns": [
987
+ {
988
+ "expression": "room_id",
989
+ "isExpression": false,
990
+ "asc": true,
991
+ "nulls": "last"
992
+ },
993
+ {
994
+ "expression": "user_id",
995
+ "isExpression": false,
996
+ "asc": true,
997
+ "nulls": "last"
998
+ }
999
+ ],
1000
+ "isUnique": true,
1001
+ "where": "\"chat_room_mute\".\"lifted_at\" IS NULL",
1002
+ "concurrently": false,
1003
+ "method": "btree",
1004
+ "with": {}
1005
+ },
1006
+ "chat_room_mute_room_user_idx": {
1007
+ "name": "chat_room_mute_room_user_idx",
1008
+ "columns": [
1009
+ {
1010
+ "expression": "room_id",
1011
+ "isExpression": false,
1012
+ "asc": true,
1013
+ "nulls": "last"
1014
+ },
1015
+ {
1016
+ "expression": "user_id",
1017
+ "isExpression": false,
1018
+ "asc": true,
1019
+ "nulls": "last"
1020
+ }
1021
+ ],
1022
+ "isUnique": false,
1023
+ "concurrently": false,
1024
+ "method": "btree",
1025
+ "with": {}
1026
+ },
1027
+ "chat_room_mute_expires_at_idx": {
1028
+ "name": "chat_room_mute_expires_at_idx",
1029
+ "columns": [
1030
+ {
1031
+ "expression": "expires_at",
1032
+ "isExpression": false,
1033
+ "asc": true,
1034
+ "nulls": "last"
1035
+ }
1036
+ ],
1037
+ "isUnique": false,
1038
+ "concurrently": false,
1039
+ "method": "btree",
1040
+ "with": {}
1041
+ }
1042
+ },
1043
+ "foreignKeys": {
1044
+ "chat_room_mute_room_id_chat_room_id_fk": {
1045
+ "name": "chat_room_mute_room_id_chat_room_id_fk",
1046
+ "tableFrom": "chat_room_mute",
1047
+ "tableTo": "chat_room",
1048
+ "columnsFrom": ["room_id"],
1049
+ "columnsTo": ["id"],
1050
+ "onDelete": "cascade",
1051
+ "onUpdate": "no action"
1052
+ }
1053
+ },
1054
+ "compositePrimaryKeys": {},
1055
+ "uniqueConstraints": {},
1056
+ "policies": {},
1057
+ "checkConstraints": {},
1058
+ "isRLSEnabled": false
1059
+ },
1060
+ "public.chat_room_remove": {
1061
+ "name": "chat_room_remove",
1062
+ "schema": "",
1063
+ "columns": {
1064
+ "id": {
1065
+ "name": "id",
1066
+ "type": "uuid",
1067
+ "primaryKey": true,
1068
+ "notNull": true,
1069
+ "default": "gen_random_uuid()"
1070
+ },
1071
+ "room_id": {
1072
+ "name": "room_id",
1073
+ "type": "uuid",
1074
+ "primaryKey": false,
1075
+ "notNull": true
1076
+ },
1077
+ "user_id": {
1078
+ "name": "user_id",
1079
+ "type": "uuid",
1080
+ "primaryKey": false,
1081
+ "notNull": true
1082
+ },
1083
+ "removed_by": {
1084
+ "name": "removed_by",
1085
+ "type": "uuid",
1086
+ "primaryKey": false,
1087
+ "notNull": true
1088
+ },
1089
+ "reason": {
1090
+ "name": "reason",
1091
+ "type": "text",
1092
+ "primaryKey": false,
1093
+ "notNull": true
1094
+ },
1095
+ "created_at": {
1096
+ "name": "created_at",
1097
+ "type": "timestamp with time zone",
1098
+ "primaryKey": false,
1099
+ "notNull": true,
1100
+ "default": "now()"
1101
+ }
1102
+ },
1103
+ "indexes": {
1104
+ "chat_room_remove_room_created_at_idx": {
1105
+ "name": "chat_room_remove_room_created_at_idx",
1106
+ "columns": [
1107
+ {
1108
+ "expression": "room_id",
1109
+ "isExpression": false,
1110
+ "asc": true,
1111
+ "nulls": "last"
1112
+ },
1113
+ {
1114
+ "expression": "created_at",
1115
+ "isExpression": false,
1116
+ "asc": true,
1117
+ "nulls": "last"
1118
+ }
1119
+ ],
1120
+ "isUnique": false,
1121
+ "concurrently": false,
1122
+ "method": "btree",
1123
+ "with": {}
1124
+ },
1125
+ "chat_room_remove_user_idx": {
1126
+ "name": "chat_room_remove_user_idx",
1127
+ "columns": [
1128
+ {
1129
+ "expression": "user_id",
1130
+ "isExpression": false,
1131
+ "asc": true,
1132
+ "nulls": "last"
1133
+ }
1134
+ ],
1135
+ "isUnique": false,
1136
+ "concurrently": false,
1137
+ "method": "btree",
1138
+ "with": {}
1139
+ }
1140
+ },
1141
+ "foreignKeys": {
1142
+ "chat_room_remove_room_id_chat_room_id_fk": {
1143
+ "name": "chat_room_remove_room_id_chat_room_id_fk",
1144
+ "tableFrom": "chat_room_remove",
1145
+ "tableTo": "chat_room",
1146
+ "columnsFrom": ["room_id"],
1147
+ "columnsTo": ["id"],
1148
+ "onDelete": "cascade",
1149
+ "onUpdate": "no action"
1150
+ }
1151
+ },
1152
+ "compositePrimaryKeys": {},
1153
+ "uniqueConstraints": {},
1154
+ "policies": {},
1155
+ "checkConstraints": {},
1156
+ "isRLSEnabled": false
1157
+ },
1158
+ "public.chat_room_rule": {
1159
+ "name": "chat_room_rule",
1160
+ "schema": "",
1161
+ "columns": {
1162
+ "id": {
1163
+ "name": "id",
1164
+ "type": "uuid",
1165
+ "primaryKey": true,
1166
+ "notNull": true,
1167
+ "default": "gen_random_uuid()"
1168
+ },
1169
+ "room_id": {
1170
+ "name": "room_id",
1171
+ "type": "uuid",
1172
+ "primaryKey": false,
1173
+ "notNull": true
1174
+ },
1175
+ "created_by": {
1176
+ "name": "created_by",
1177
+ "type": "uuid",
1178
+ "primaryKey": false,
1179
+ "notNull": true
1180
+ },
1181
+ "order_num": {
1182
+ "name": "order_num",
1183
+ "type": "integer",
1184
+ "primaryKey": false,
1185
+ "notNull": true
1186
+ },
1187
+ "content": {
1188
+ "name": "content",
1189
+ "type": "text",
1190
+ "primaryKey": false,
1191
+ "notNull": true
1192
+ },
1193
+ "created_at": {
1194
+ "name": "created_at",
1195
+ "type": "timestamp with time zone",
1196
+ "primaryKey": false,
1197
+ "notNull": true,
1198
+ "default": "now()"
1199
+ },
1200
+ "updated_at": {
1201
+ "name": "updated_at",
1202
+ "type": "timestamp with time zone",
1203
+ "primaryKey": false,
1204
+ "notNull": true,
1205
+ "default": "now()"
1206
+ }
1207
+ },
1208
+ "indexes": {
1209
+ "chat_room_rule_room_order_idx": {
1210
+ "name": "chat_room_rule_room_order_idx",
1211
+ "columns": [
1212
+ {
1213
+ "expression": "room_id",
1214
+ "isExpression": false,
1215
+ "asc": true,
1216
+ "nulls": "last"
1217
+ },
1218
+ {
1219
+ "expression": "order_num",
1220
+ "isExpression": false,
1221
+ "asc": true,
1222
+ "nulls": "last"
1223
+ }
1224
+ ],
1225
+ "isUnique": false,
1226
+ "concurrently": false,
1227
+ "method": "btree",
1228
+ "with": {}
1229
+ },
1230
+ "chat_room_rule_room_idx": {
1231
+ "name": "chat_room_rule_room_idx",
1232
+ "columns": [
1233
+ {
1234
+ "expression": "room_id",
1235
+ "isExpression": false,
1236
+ "asc": true,
1237
+ "nulls": "last"
1238
+ }
1239
+ ],
1240
+ "isUnique": false,
1241
+ "concurrently": false,
1242
+ "method": "btree",
1243
+ "with": {}
1244
+ }
1245
+ },
1246
+ "foreignKeys": {
1247
+ "chat_room_rule_room_id_chat_room_id_fk": {
1248
+ "name": "chat_room_rule_room_id_chat_room_id_fk",
1249
+ "tableFrom": "chat_room_rule",
1250
+ "tableTo": "chat_room",
1251
+ "columnsFrom": ["room_id"],
1252
+ "columnsTo": ["id"],
1253
+ "onDelete": "cascade",
1254
+ "onUpdate": "no action"
1255
+ }
1256
+ },
1257
+ "compositePrimaryKeys": {},
1258
+ "uniqueConstraints": {},
1259
+ "policies": {},
1260
+ "checkConstraints": {},
1261
+ "isRLSEnabled": false
1262
+ },
1263
+ "public.chat_user_block": {
1264
+ "name": "chat_user_block",
1265
+ "schema": "",
1266
+ "columns": {
1267
+ "id": {
1268
+ "name": "id",
1269
+ "type": "uuid",
1270
+ "primaryKey": true,
1271
+ "notNull": true,
1272
+ "default": "gen_random_uuid()"
1273
+ },
1274
+ "blocker_id": {
1275
+ "name": "blocker_id",
1276
+ "type": "uuid",
1277
+ "primaryKey": false,
1278
+ "notNull": true
1279
+ },
1280
+ "blocked_id": {
1281
+ "name": "blocked_id",
1282
+ "type": "uuid",
1283
+ "primaryKey": false,
1284
+ "notNull": true
1285
+ },
1286
+ "created_at": {
1287
+ "name": "created_at",
1288
+ "type": "timestamp with time zone",
1289
+ "primaryKey": false,
1290
+ "notNull": true,
1291
+ "default": "now()"
1292
+ },
1293
+ "removed_at": {
1294
+ "name": "removed_at",
1295
+ "type": "timestamp with time zone",
1296
+ "primaryKey": false,
1297
+ "notNull": false
1298
+ }
1299
+ },
1300
+ "indexes": {
1301
+ "chat_user_block_pair_key": {
1302
+ "name": "chat_user_block_pair_key",
1303
+ "columns": [
1304
+ {
1305
+ "expression": "blocker_id",
1306
+ "isExpression": false,
1307
+ "asc": true,
1308
+ "nulls": "last"
1309
+ },
1310
+ {
1311
+ "expression": "blocked_id",
1312
+ "isExpression": false,
1313
+ "asc": true,
1314
+ "nulls": "last"
1315
+ }
1316
+ ],
1317
+ "isUnique": true,
1318
+ "where": "\"chat_user_block\".\"removed_at\" IS NULL",
1319
+ "concurrently": false,
1320
+ "method": "btree",
1321
+ "with": {}
1322
+ },
1323
+ "chat_user_block_blocker_idx": {
1324
+ "name": "chat_user_block_blocker_idx",
1325
+ "columns": [
1326
+ {
1327
+ "expression": "blocker_id",
1328
+ "isExpression": false,
1329
+ "asc": true,
1330
+ "nulls": "last"
1331
+ }
1332
+ ],
1333
+ "isUnique": false,
1334
+ "concurrently": false,
1335
+ "method": "btree",
1336
+ "with": {}
1337
+ }
1338
+ },
1339
+ "foreignKeys": {},
1340
+ "compositePrimaryKeys": {},
1341
+ "uniqueConstraints": {},
1342
+ "policies": {},
1343
+ "checkConstraints": {},
1344
+ "isRLSEnabled": false
1345
+ },
1346
+ "public.chat_user_ignore": {
1347
+ "name": "chat_user_ignore",
1348
+ "schema": "",
1349
+ "columns": {
1350
+ "id": {
1351
+ "name": "id",
1352
+ "type": "uuid",
1353
+ "primaryKey": true,
1354
+ "notNull": true,
1355
+ "default": "gen_random_uuid()"
1356
+ },
1357
+ "ignorer_id": {
1358
+ "name": "ignorer_id",
1359
+ "type": "uuid",
1360
+ "primaryKey": false,
1361
+ "notNull": true
1362
+ },
1363
+ "ignored_id": {
1364
+ "name": "ignored_id",
1365
+ "type": "uuid",
1366
+ "primaryKey": false,
1367
+ "notNull": true
1368
+ },
1369
+ "created_at": {
1370
+ "name": "created_at",
1371
+ "type": "timestamp with time zone",
1372
+ "primaryKey": false,
1373
+ "notNull": true,
1374
+ "default": "now()"
1375
+ },
1376
+ "removed_at": {
1377
+ "name": "removed_at",
1378
+ "type": "timestamp with time zone",
1379
+ "primaryKey": false,
1380
+ "notNull": false
1381
+ }
1382
+ },
1383
+ "indexes": {
1384
+ "chat_user_ignore_pair_key": {
1385
+ "name": "chat_user_ignore_pair_key",
1386
+ "columns": [
1387
+ {
1388
+ "expression": "ignorer_id",
1389
+ "isExpression": false,
1390
+ "asc": true,
1391
+ "nulls": "last"
1392
+ },
1393
+ {
1394
+ "expression": "ignored_id",
1395
+ "isExpression": false,
1396
+ "asc": true,
1397
+ "nulls": "last"
1398
+ }
1399
+ ],
1400
+ "isUnique": true,
1401
+ "where": "\"chat_user_ignore\".\"removed_at\" IS NULL",
1402
+ "concurrently": false,
1403
+ "method": "btree",
1404
+ "with": {}
1405
+ },
1406
+ "chat_user_ignore_ignorer_idx": {
1407
+ "name": "chat_user_ignore_ignorer_idx",
1408
+ "columns": [
1409
+ {
1410
+ "expression": "ignorer_id",
1411
+ "isExpression": false,
1412
+ "asc": true,
1413
+ "nulls": "last"
1414
+ }
1415
+ ],
1416
+ "isUnique": false,
1417
+ "concurrently": false,
1418
+ "method": "btree",
1419
+ "with": {}
1420
+ }
1421
+ },
1422
+ "foreignKeys": {},
1423
+ "compositePrimaryKeys": {},
1424
+ "uniqueConstraints": {},
1425
+ "policies": {},
1426
+ "checkConstraints": {},
1427
+ "isRLSEnabled": false
1428
+ }
1429
+ },
1430
+ "enums": {
1431
+ "public.chat_message_type": {
1432
+ "name": "chat_message_type",
1433
+ "schema": "public",
1434
+ "values": ["user", "system"]
1435
+ },
1436
+ "public.chat_moderation_scope": {
1437
+ "name": "chat_moderation_scope",
1438
+ "schema": "public",
1439
+ "values": ["__global", "__all_public", "__all", "room"]
1440
+ },
1441
+ "public.chat_room_category": {
1442
+ "name": "chat_room_category",
1443
+ "schema": "public",
1444
+ "values": ["games-sports", "regions", "languages", "private-channels"]
1445
+ },
1446
+ "public.chat_room_role": {
1447
+ "name": "chat_room_role",
1448
+ "schema": "public",
1449
+ "values": ["member", "moderator", "owner"]
1450
+ }
1451
+ },
1452
+ "schemas": {},
1453
+ "sequences": {},
1454
+ "roles": {},
1455
+ "policies": {},
1456
+ "views": {},
1457
+ "_meta": {
1458
+ "columns": {},
1459
+ "schemas": {},
1460
+ "tables": {}
1461
+ }
1462
+ }