1{
2 "version": "6",
3 "dialect": "sqlite",
4 "id": "16b13426-2b9d-4084-8e17-71f9de0f72d0",
5 "prevId": "00000000-0000-0000-0000-000000000000",
6 "tables": {
7 "chat_rooms": {
8 "name": "chat_rooms",
9 "columns": {
10 "id": {
11 "name": "id",
12 "type": "text",
13 "primaryKey": true,
14 "notNull": true,
15 "autoincrement": false
16 },
17 "name": {
18 "name": "name",
19 "type": "text",
20 "primaryKey": false,
21 "notNull": false,
22 "autoincrement": false
23 },
24 "type": {
25 "name": "type",
26 "type": "text",
27 "primaryKey": false,
28 "notNull": true,
29 "autoincrement": false,
30 "default": "'direct'"
31 },
32 "created_at": {
33 "name": "created_at",
34 "type": "integer",
35 "primaryKey": false,
36 "notNull": true,
37 "autoincrement": false
38 }
39 },
40 "indexes": {},
41 "foreignKeys": {},
42 "compositePrimaryKeys": {},
43 "uniqueConstraints": {},
44 "checkConstraints": {}
45 },
46 "messages": {
47 "name": "messages",
48 "columns": {
49 "id": {
50 "name": "id",
51 "type": "text",
52 "primaryKey": true,
53 "notNull": true,
54 "autoincrement": false
55 },
56 "chat_room_id": {
57 "name": "chat_room_id",
58 "type": "text",
59 "primaryKey": false,
60 "notNull": true,
61 "autoincrement": false
62 },
63 "sender_id": {
64 "name": "sender_id",
65 "type": "text",
66 "primaryKey": false,
67 "notNull": true,
68 "autoincrement": false
69 },
70 "content": {
71 "name": "content",
72 "type": "text",
73 "primaryKey": false,
74 "notNull": true,
75 "autoincrement": false
76 },
77 "type": {
78 "name": "type",
79 "type": "text",
80 "primaryKey": false,
81 "notNull": true,
82 "autoincrement": false,
83 "default": "'chat'"
84 },
85 "timestamp": {
86 "name": "timestamp",
87 "type": "integer",
88 "primaryKey": false,
89 "notNull": true,
90 "autoincrement": false
91 }
92 },
93 "indexes": {},
94 "foreignKeys": {
95 "messages_chat_room_id_chat_rooms_id_fk": {
96 "name": "messages_chat_room_id_chat_rooms_id_fk",
97 "tableFrom": "messages",
98 "tableTo": "chat_rooms",
99 "columnsFrom": [
100 "chat_room_id"
101 ],
102 "columnsTo": [
103 "id"
104 ],
105 "onDelete": "no action",
106 "onUpdate": "no action"
107 },
108 "messages_sender_id_users_id_fk": {
109 "name": "messages_sender_id_users_id_fk",
110 "tableFrom": "messages",
111 "tableTo": "users",
112 "columnsFrom": [
113 "sender_id"
114 ],
115 "columnsTo": [
116 "id"
117 ],
118 "onDelete": "no action",
119 "onUpdate": "no action"
120 }
121 },
122 "compositePrimaryKeys": {},
123 "uniqueConstraints": {},
124 "checkConstraints": {}
125 },
126 "users": {
127 "name": "users",
128 "columns": {
129 "id": {
130 "name": "id",
131 "type": "text",
132 "primaryKey": true,
133 "notNull": true,
134 "autoincrement": false
135 },
136 "email": {
137 "name": "email",
138 "type": "text",
139 "primaryKey": false,
140 "notNull": true,
141 "autoincrement": false
142 },
143 "password": {
144 "name": "password",
145 "type": "text",
146 "primaryKey": false,
147 "notNull": true,
148 "autoincrement": false
149 },
150 "nickname": {
151 "name": "nickname",
152 "type": "text",
153 "primaryKey": false,
154 "notNull": true,
155 "autoincrement": false
156 },
157 "status": {
158 "name": "status",
159 "type": "text",
160 "primaryKey": false,
161 "notNull": false,
162 "autoincrement": false,
163 "default": "'offline'"
164 },
165 "avatar_url": {
166 "name": "avatar_url",
167 "type": "text",
168 "primaryKey": false,
169 "notNull": false,
170 "autoincrement": false
171 },
172 "created_at": {
173 "name": "created_at",
174 "type": "integer",
175 "primaryKey": false,
176 "notNull": true,
177 "autoincrement": false
178 },
179 "last_seen": {
180 "name": "last_seen",
181 "type": "integer",
182 "primaryKey": false,
183 "notNull": false,
184 "autoincrement": false
185 }
186 },
187 "indexes": {
188 "users_email_unique": {
189 "name": "users_email_unique",
190 "columns": [
191 "email"
192 ],
193 "isUnique": true
194 }
195 },
196 "foreignKeys": {},
197 "compositePrimaryKeys": {},
198 "uniqueConstraints": {},
199 "checkConstraints": {}
200 }
201 },
202 "views": {
203 "chat_room_view": {
204 "columns": {
205 "id": {
206 "name": "id",
207 "type": "text",
208 "primaryKey": true,
209 "notNull": true,
210 "autoincrement": false
211 },
212 "name": {
213 "name": "name",
214 "type": "text",
215 "primaryKey": false,
216 "notNull": false,
217 "autoincrement": false
218 },
219 "type": {
220 "name": "type",
221 "type": "text",
222 "primaryKey": false,
223 "notNull": true,
224 "autoincrement": false,
225 "default": "'direct'"
226 },
227 "created_at": {
228 "name": "created_at",
229 "type": "integer",
230 "primaryKey": false,
231 "notNull": true,
232 "autoincrement": false
233 }
234 },
235 "name": "chat_room_view",
236 "isExisting": false,
237 "definition": "select \"id\", \"name\", \"type\", \"created_at\" from \"chat_rooms\""
238 },
239 "message_view": {
240 "columns": {
241 "id": {
242 "name": "id",
243 "type": "text",
244 "primaryKey": true,
245 "notNull": true,
246 "autoincrement": false
247 },
248 "content": {
249 "name": "content",
250 "type": "text",
251 "primaryKey": false,
252 "notNull": true,
253 "autoincrement": false
254 },
255 "type": {
256 "name": "type",
257 "type": "text",
258 "primaryKey": false,
259 "notNull": true,
260 "autoincrement": false,
261 "default": "'chat'"
262 },
263 "timestamp": {
264 "name": "timestamp",
265 "type": "integer",
266 "primaryKey": false,
267 "notNull": true,
268 "autoincrement": false
269 },
270 "nickname": {
271 "name": "nickname",
272 "type": "text",
273 "primaryKey": false,
274 "notNull": true,
275 "autoincrement": false
276 },
277 "name": {
278 "name": "name",
279 "type": "text",
280 "primaryKey": false,
281 "notNull": false,
282 "autoincrement": false
283 }
284 },
285 "name": "message_view",
286 "isExisting": false,
287 "definition": "select \"messages\".\"id\", \"messages\".\"content\", \"messages\".\"type\", \"messages\".\"timestamp\", \"users\".\"nickname\", \"chat_rooms\".\"name\" from \"messages\" left join \"users\" on \"messages\".\"sender_id\" = \"users\".\"id\" left join \"chat_rooms\" on \"messages\".\"chat_room_id\" = \"chat_rooms\".\"id\""
288 },
289 "user_view": {
290 "columns": {
291 "id": {
292 "name": "id",
293 "type": "text",
294 "primaryKey": true,
295 "notNull": true,
296 "autoincrement": false
297 },
298 "nickname": {
299 "name": "nickname",
300 "type": "text",
301 "primaryKey": false,
302 "notNull": true,
303 "autoincrement": false
304 },
305 "status": {
306 "name": "status",
307 "type": "text",
308 "primaryKey": false,
309 "notNull": false,
310 "autoincrement": false,
311 "default": "'offline'"
312 },
313 "avatar_url": {
314 "name": "avatar_url",
315 "type": "text",
316 "primaryKey": false,
317 "notNull": false,
318 "autoincrement": false
319 },
320 "last_seen": {
321 "name": "last_seen",
322 "type": "integer",
323 "primaryKey": false,
324 "notNull": false,
325 "autoincrement": false
326 }
327 },
328 "name": "user_view",
329 "isExisting": false,
330 "definition": "select \"id\", \"nickname\", \"status\", \"avatar_url\", \"last_seen\" from \"users\""
331 }
332 },
333 "enums": {},
334 "_meta": {
335 "schemas": {},
336 "tables": {},
337 "columns": {}
338 },
339 "internal": {
340 "indexes": {}
341 }
342}