nao-core 0.0.22__py3-none-any.whl → 0.0.26__py3-none-any.whl

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 (55) hide show
  1. nao_core/__init__.py +1 -1
  2. nao_core/bin/.nao-secret +1 -0
  3. nao_core/bin/fastapi/main.py +1 -2
  4. nao_core/bin/migrations-postgres/0001_message_feedback.sql +9 -0
  5. nao_core/bin/migrations-postgres/0002_chat_message_stop_reason_and_error_message.sql +2 -0
  6. nao_core/bin/migrations-postgres/0003_handle_slack_with_thread.sql +2 -0
  7. nao_core/bin/migrations-postgres/meta/0001_snapshot.json +766 -0
  8. nao_core/bin/migrations-postgres/meta/0002_snapshot.json +778 -0
  9. nao_core/bin/migrations-postgres/meta/0003_snapshot.json +799 -0
  10. nao_core/bin/migrations-postgres/meta/_journal.json +21 -0
  11. nao_core/bin/migrations-sqlite/0001_message_feedback.sql +8 -0
  12. nao_core/bin/migrations-sqlite/0002_chat_message_stop_reason_and_error_message.sql +2 -0
  13. nao_core/bin/migrations-sqlite/0003_handle_slack_with_thread.sql +2 -0
  14. nao_core/bin/migrations-sqlite/meta/0001_snapshot.json +735 -0
  15. nao_core/bin/migrations-sqlite/meta/0002_snapshot.json +749 -0
  16. nao_core/bin/migrations-sqlite/meta/0003_snapshot.json +763 -0
  17. nao_core/bin/migrations-sqlite/meta/_journal.json +21 -0
  18. nao_core/bin/nao-chat-server +0 -0
  19. nao_core/bin/public/assets/_chat-layout-BTlqRUE5.js +1 -0
  20. nao_core/bin/public/assets/{_chat-layout.index-CWlZ1WSD.js → _chat-layout.index-DOARokp1.js} +1 -1
  21. nao_core/bin/public/assets/agentProvider-C6dGIy-H.js +1 -0
  22. nao_core/bin/public/assets/button-By_1dzVx.js +1 -0
  23. nao_core/bin/public/assets/{code-block-F6WJLWQG-BdtbfwZl.js → code-block-F6WJLWQG-EQr6mTlQ.js} +3 -3
  24. nao_core/bin/public/assets/folder-DnRS5rg3.js +1 -0
  25. nao_core/bin/public/assets/index-CElAN2SH.css +1 -0
  26. nao_core/bin/public/assets/index-ZTHASguQ.js +59 -0
  27. nao_core/bin/public/assets/input-CUQA5tsi.js +1 -0
  28. nao_core/bin/public/assets/login-BUQDum3t.js +1 -0
  29. nao_core/bin/public/assets/{mermaid-FSSLJTFX-_2mzlJwk.js → mermaid-FSSLJTFX-Dc6ZvCPw.js} +120 -75
  30. nao_core/bin/public/assets/sidebar-bgEk7Xg8.js +1 -0
  31. nao_core/bin/public/assets/signinForm-CGAhnAkv.js +1 -0
  32. nao_core/bin/public/assets/signup-D2n11La3.js +1 -0
  33. nao_core/bin/public/assets/user-CYl8Tly2.js +1 -0
  34. nao_core/bin/public/index.html +2 -2
  35. nao_core/bin/public/nao-square-logo.png +0 -0
  36. nao_core/commands/chat.py +50 -0
  37. nao_core/commands/init.py +34 -1
  38. nao_core/config/__init__.py +2 -0
  39. nao_core/config/base.py +2 -0
  40. nao_core/config/llm/__init__.py +1 -0
  41. nao_core/config/slack/__init__.py +12 -0
  42. {nao_core-0.0.22.dist-info → nao_core-0.0.26.dist-info}/METADATA +1 -1
  43. nao_core-0.0.26.dist-info/RECORD +69 -0
  44. nao_core/bin/public/assets/_chat-layout-BSDXwLlM.js +0 -1
  45. nao_core/bin/public/assets/agentProvider-BkGOwLc-.js +0 -1
  46. nao_core/bin/public/assets/createLucideIcon-CAzRYUZ0.js +0 -1
  47. nao_core/bin/public/assets/index-DD1IB790.css +0 -1
  48. nao_core/bin/public/assets/index-gWi3S-SV.js +0 -59
  49. nao_core/bin/public/assets/login-BEFjZaUF.js +0 -1
  50. nao_core/bin/public/assets/signinForm-D97br205.js +0 -1
  51. nao_core/bin/public/assets/signup-CU4v0Hqr.js +0 -1
  52. nao_core-0.0.22.dist-info/RECORD +0 -50
  53. {nao_core-0.0.22.dist-info → nao_core-0.0.26.dist-info}/WHEEL +0 -0
  54. {nao_core-0.0.22.dist-info → nao_core-0.0.26.dist-info}/entry_points.txt +0 -0
  55. {nao_core-0.0.22.dist-info → nao_core-0.0.26.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,763 @@
1
+ {
2
+ "version": "6",
3
+ "dialect": "sqlite",
4
+ "id": "53e605f4-7944-4902-838f-76b5ad4ac0ba",
5
+ "prevId": "01055fdb-6848-4d6e-a06e-3b913c64b964",
6
+ "tables": {
7
+ "account": {
8
+ "name": "account",
9
+ "columns": {
10
+ "id": {
11
+ "name": "id",
12
+ "type": "text",
13
+ "primaryKey": true,
14
+ "notNull": true,
15
+ "autoincrement": false
16
+ },
17
+ "account_id": {
18
+ "name": "account_id",
19
+ "type": "text",
20
+ "primaryKey": false,
21
+ "notNull": true,
22
+ "autoincrement": false
23
+ },
24
+ "provider_id": {
25
+ "name": "provider_id",
26
+ "type": "text",
27
+ "primaryKey": false,
28
+ "notNull": true,
29
+ "autoincrement": false
30
+ },
31
+ "user_id": {
32
+ "name": "user_id",
33
+ "type": "text",
34
+ "primaryKey": false,
35
+ "notNull": true,
36
+ "autoincrement": false
37
+ },
38
+ "access_token": {
39
+ "name": "access_token",
40
+ "type": "text",
41
+ "primaryKey": false,
42
+ "notNull": false,
43
+ "autoincrement": false
44
+ },
45
+ "refresh_token": {
46
+ "name": "refresh_token",
47
+ "type": "text",
48
+ "primaryKey": false,
49
+ "notNull": false,
50
+ "autoincrement": false
51
+ },
52
+ "id_token": {
53
+ "name": "id_token",
54
+ "type": "text",
55
+ "primaryKey": false,
56
+ "notNull": false,
57
+ "autoincrement": false
58
+ },
59
+ "access_token_expires_at": {
60
+ "name": "access_token_expires_at",
61
+ "type": "integer",
62
+ "primaryKey": false,
63
+ "notNull": false,
64
+ "autoincrement": false
65
+ },
66
+ "refresh_token_expires_at": {
67
+ "name": "refresh_token_expires_at",
68
+ "type": "integer",
69
+ "primaryKey": false,
70
+ "notNull": false,
71
+ "autoincrement": false
72
+ },
73
+ "scope": {
74
+ "name": "scope",
75
+ "type": "text",
76
+ "primaryKey": false,
77
+ "notNull": false,
78
+ "autoincrement": false
79
+ },
80
+ "password": {
81
+ "name": "password",
82
+ "type": "text",
83
+ "primaryKey": false,
84
+ "notNull": false,
85
+ "autoincrement": false
86
+ },
87
+ "created_at": {
88
+ "name": "created_at",
89
+ "type": "integer",
90
+ "primaryKey": false,
91
+ "notNull": true,
92
+ "autoincrement": false,
93
+ "default": "(cast(unixepoch('subsecond') * 1000 as integer))"
94
+ },
95
+ "updated_at": {
96
+ "name": "updated_at",
97
+ "type": "integer",
98
+ "primaryKey": false,
99
+ "notNull": true,
100
+ "autoincrement": false
101
+ }
102
+ },
103
+ "indexes": {
104
+ "account_userId_idx": {
105
+ "name": "account_userId_idx",
106
+ "columns": [
107
+ "user_id"
108
+ ],
109
+ "isUnique": false
110
+ }
111
+ },
112
+ "foreignKeys": {
113
+ "account_user_id_user_id_fk": {
114
+ "name": "account_user_id_user_id_fk",
115
+ "tableFrom": "account",
116
+ "tableTo": "user",
117
+ "columnsFrom": [
118
+ "user_id"
119
+ ],
120
+ "columnsTo": [
121
+ "id"
122
+ ],
123
+ "onDelete": "cascade",
124
+ "onUpdate": "no action"
125
+ }
126
+ },
127
+ "compositePrimaryKeys": {},
128
+ "uniqueConstraints": {},
129
+ "checkConstraints": {}
130
+ },
131
+ "chat": {
132
+ "name": "chat",
133
+ "columns": {
134
+ "id": {
135
+ "name": "id",
136
+ "type": "text",
137
+ "primaryKey": true,
138
+ "notNull": true,
139
+ "autoincrement": false
140
+ },
141
+ "user_id": {
142
+ "name": "user_id",
143
+ "type": "text",
144
+ "primaryKey": false,
145
+ "notNull": true,
146
+ "autoincrement": false
147
+ },
148
+ "title": {
149
+ "name": "title",
150
+ "type": "text",
151
+ "primaryKey": false,
152
+ "notNull": true,
153
+ "autoincrement": false,
154
+ "default": "'New Conversation'"
155
+ },
156
+ "slack_thread_id": {
157
+ "name": "slack_thread_id",
158
+ "type": "text",
159
+ "primaryKey": false,
160
+ "notNull": false,
161
+ "autoincrement": false
162
+ },
163
+ "created_at": {
164
+ "name": "created_at",
165
+ "type": "integer",
166
+ "primaryKey": false,
167
+ "notNull": true,
168
+ "autoincrement": false,
169
+ "default": "(cast(unixepoch('subsecond') * 1000 as integer))"
170
+ },
171
+ "updated_at": {
172
+ "name": "updated_at",
173
+ "type": "integer",
174
+ "primaryKey": false,
175
+ "notNull": true,
176
+ "autoincrement": false,
177
+ "default": "(cast(unixepoch('subsecond') * 1000 as integer))"
178
+ }
179
+ },
180
+ "indexes": {
181
+ "chat_userId_idx": {
182
+ "name": "chat_userId_idx",
183
+ "columns": [
184
+ "user_id"
185
+ ],
186
+ "isUnique": false
187
+ },
188
+ "chat_slack_thread_idx": {
189
+ "name": "chat_slack_thread_idx",
190
+ "columns": [
191
+ "slack_thread_id"
192
+ ],
193
+ "isUnique": false
194
+ }
195
+ },
196
+ "foreignKeys": {
197
+ "chat_user_id_user_id_fk": {
198
+ "name": "chat_user_id_user_id_fk",
199
+ "tableFrom": "chat",
200
+ "tableTo": "user",
201
+ "columnsFrom": [
202
+ "user_id"
203
+ ],
204
+ "columnsTo": [
205
+ "id"
206
+ ],
207
+ "onDelete": "cascade",
208
+ "onUpdate": "no action"
209
+ }
210
+ },
211
+ "compositePrimaryKeys": {},
212
+ "uniqueConstraints": {},
213
+ "checkConstraints": {}
214
+ },
215
+ "chat_message": {
216
+ "name": "chat_message",
217
+ "columns": {
218
+ "id": {
219
+ "name": "id",
220
+ "type": "text",
221
+ "primaryKey": true,
222
+ "notNull": true,
223
+ "autoincrement": false
224
+ },
225
+ "chat_id": {
226
+ "name": "chat_id",
227
+ "type": "text",
228
+ "primaryKey": false,
229
+ "notNull": true,
230
+ "autoincrement": false
231
+ },
232
+ "role": {
233
+ "name": "role",
234
+ "type": "text",
235
+ "primaryKey": false,
236
+ "notNull": true,
237
+ "autoincrement": false
238
+ },
239
+ "stop_reason": {
240
+ "name": "stop_reason",
241
+ "type": "text",
242
+ "primaryKey": false,
243
+ "notNull": false,
244
+ "autoincrement": false
245
+ },
246
+ "error_message": {
247
+ "name": "error_message",
248
+ "type": "text",
249
+ "primaryKey": false,
250
+ "notNull": false,
251
+ "autoincrement": false
252
+ },
253
+ "created_at": {
254
+ "name": "created_at",
255
+ "type": "integer",
256
+ "primaryKey": false,
257
+ "notNull": true,
258
+ "autoincrement": false,
259
+ "default": "(cast(unixepoch('subsecond') * 1000 as integer))"
260
+ }
261
+ },
262
+ "indexes": {
263
+ "chat_message_chatId_idx": {
264
+ "name": "chat_message_chatId_idx",
265
+ "columns": [
266
+ "chat_id"
267
+ ],
268
+ "isUnique": false
269
+ },
270
+ "chat_message_createdAt_idx": {
271
+ "name": "chat_message_createdAt_idx",
272
+ "columns": [
273
+ "created_at"
274
+ ],
275
+ "isUnique": false
276
+ }
277
+ },
278
+ "foreignKeys": {
279
+ "chat_message_chat_id_chat_id_fk": {
280
+ "name": "chat_message_chat_id_chat_id_fk",
281
+ "tableFrom": "chat_message",
282
+ "tableTo": "chat",
283
+ "columnsFrom": [
284
+ "chat_id"
285
+ ],
286
+ "columnsTo": [
287
+ "id"
288
+ ],
289
+ "onDelete": "cascade",
290
+ "onUpdate": "no action"
291
+ }
292
+ },
293
+ "compositePrimaryKeys": {},
294
+ "uniqueConstraints": {},
295
+ "checkConstraints": {}
296
+ },
297
+ "message_feedback": {
298
+ "name": "message_feedback",
299
+ "columns": {
300
+ "message_id": {
301
+ "name": "message_id",
302
+ "type": "text",
303
+ "primaryKey": true,
304
+ "notNull": true,
305
+ "autoincrement": false
306
+ },
307
+ "vote": {
308
+ "name": "vote",
309
+ "type": "text",
310
+ "primaryKey": false,
311
+ "notNull": true,
312
+ "autoincrement": false
313
+ },
314
+ "explanation": {
315
+ "name": "explanation",
316
+ "type": "text",
317
+ "primaryKey": false,
318
+ "notNull": false,
319
+ "autoincrement": false
320
+ },
321
+ "created_at": {
322
+ "name": "created_at",
323
+ "type": "integer",
324
+ "primaryKey": false,
325
+ "notNull": true,
326
+ "autoincrement": false,
327
+ "default": "(cast(unixepoch('subsecond') * 1000 as integer))"
328
+ },
329
+ "updated_at": {
330
+ "name": "updated_at",
331
+ "type": "integer",
332
+ "primaryKey": false,
333
+ "notNull": true,
334
+ "autoincrement": false,
335
+ "default": "(cast(unixepoch('subsecond') * 1000 as integer))"
336
+ }
337
+ },
338
+ "indexes": {},
339
+ "foreignKeys": {
340
+ "message_feedback_message_id_chat_message_id_fk": {
341
+ "name": "message_feedback_message_id_chat_message_id_fk",
342
+ "tableFrom": "message_feedback",
343
+ "tableTo": "chat_message",
344
+ "columnsFrom": [
345
+ "message_id"
346
+ ],
347
+ "columnsTo": [
348
+ "id"
349
+ ],
350
+ "onDelete": "cascade",
351
+ "onUpdate": "no action"
352
+ }
353
+ },
354
+ "compositePrimaryKeys": {},
355
+ "uniqueConstraints": {},
356
+ "checkConstraints": {}
357
+ },
358
+ "message_part": {
359
+ "name": "message_part",
360
+ "columns": {
361
+ "id": {
362
+ "name": "id",
363
+ "type": "text",
364
+ "primaryKey": true,
365
+ "notNull": true,
366
+ "autoincrement": false
367
+ },
368
+ "message_id": {
369
+ "name": "message_id",
370
+ "type": "text",
371
+ "primaryKey": false,
372
+ "notNull": true,
373
+ "autoincrement": false
374
+ },
375
+ "order": {
376
+ "name": "order",
377
+ "type": "integer",
378
+ "primaryKey": false,
379
+ "notNull": true,
380
+ "autoincrement": false
381
+ },
382
+ "created_at": {
383
+ "name": "created_at",
384
+ "type": "integer",
385
+ "primaryKey": false,
386
+ "notNull": true,
387
+ "autoincrement": false,
388
+ "default": "(cast(unixepoch('subsecond') * 1000 as integer))"
389
+ },
390
+ "type": {
391
+ "name": "type",
392
+ "type": "text",
393
+ "primaryKey": false,
394
+ "notNull": true,
395
+ "autoincrement": false
396
+ },
397
+ "text": {
398
+ "name": "text",
399
+ "type": "text",
400
+ "primaryKey": false,
401
+ "notNull": false,
402
+ "autoincrement": false
403
+ },
404
+ "reasoning_text": {
405
+ "name": "reasoning_text",
406
+ "type": "text",
407
+ "primaryKey": false,
408
+ "notNull": false,
409
+ "autoincrement": false
410
+ },
411
+ "tool_call_id": {
412
+ "name": "tool_call_id",
413
+ "type": "text",
414
+ "primaryKey": false,
415
+ "notNull": false,
416
+ "autoincrement": false
417
+ },
418
+ "tool_name": {
419
+ "name": "tool_name",
420
+ "type": "text",
421
+ "primaryKey": false,
422
+ "notNull": false,
423
+ "autoincrement": false
424
+ },
425
+ "tool_state": {
426
+ "name": "tool_state",
427
+ "type": "text",
428
+ "primaryKey": false,
429
+ "notNull": false,
430
+ "autoincrement": false
431
+ },
432
+ "tool_error_text": {
433
+ "name": "tool_error_text",
434
+ "type": "text",
435
+ "primaryKey": false,
436
+ "notNull": false,
437
+ "autoincrement": false
438
+ },
439
+ "tool_input": {
440
+ "name": "tool_input",
441
+ "type": "text",
442
+ "primaryKey": false,
443
+ "notNull": false,
444
+ "autoincrement": false
445
+ },
446
+ "tool_output": {
447
+ "name": "tool_output",
448
+ "type": "text",
449
+ "primaryKey": false,
450
+ "notNull": false,
451
+ "autoincrement": false
452
+ },
453
+ "tool_approval_id": {
454
+ "name": "tool_approval_id",
455
+ "type": "text",
456
+ "primaryKey": false,
457
+ "notNull": false,
458
+ "autoincrement": false
459
+ },
460
+ "tool_approval_approved": {
461
+ "name": "tool_approval_approved",
462
+ "type": "integer",
463
+ "primaryKey": false,
464
+ "notNull": false,
465
+ "autoincrement": false
466
+ },
467
+ "tool_approval_reason": {
468
+ "name": "tool_approval_reason",
469
+ "type": "text",
470
+ "primaryKey": false,
471
+ "notNull": false,
472
+ "autoincrement": false
473
+ }
474
+ },
475
+ "indexes": {
476
+ "parts_message_id_idx": {
477
+ "name": "parts_message_id_idx",
478
+ "columns": [
479
+ "message_id"
480
+ ],
481
+ "isUnique": false
482
+ },
483
+ "parts_message_id_order_idx": {
484
+ "name": "parts_message_id_order_idx",
485
+ "columns": [
486
+ "message_id",
487
+ "order"
488
+ ],
489
+ "isUnique": false
490
+ }
491
+ },
492
+ "foreignKeys": {
493
+ "message_part_message_id_chat_message_id_fk": {
494
+ "name": "message_part_message_id_chat_message_id_fk",
495
+ "tableFrom": "message_part",
496
+ "tableTo": "chat_message",
497
+ "columnsFrom": [
498
+ "message_id"
499
+ ],
500
+ "columnsTo": [
501
+ "id"
502
+ ],
503
+ "onDelete": "cascade",
504
+ "onUpdate": "no action"
505
+ }
506
+ },
507
+ "compositePrimaryKeys": {},
508
+ "uniqueConstraints": {},
509
+ "checkConstraints": {
510
+ "text_required_if_type_is_text": {
511
+ "name": "text_required_if_type_is_text",
512
+ "value": "CASE WHEN \"message_part\".\"type\" = 'text' THEN \"message_part\".\"text\" IS NOT NULL ELSE TRUE END"
513
+ },
514
+ "reasoning_text_required_if_type_is_reasoning": {
515
+ "name": "reasoning_text_required_if_type_is_reasoning",
516
+ "value": "CASE WHEN \"message_part\".\"type\" = 'reasoning' THEN \"message_part\".\"reasoning_text\" IS NOT NULL ELSE TRUE END"
517
+ },
518
+ "tool_call_fields_required": {
519
+ "name": "tool_call_fields_required",
520
+ "value": "CASE WHEN \"message_part\".\"type\" LIKE 'tool-%' THEN \"message_part\".\"tool_call_id\" IS NOT NULL AND \"message_part\".\"tool_state\" IS NOT NULL ELSE TRUE END"
521
+ }
522
+ }
523
+ },
524
+ "session": {
525
+ "name": "session",
526
+ "columns": {
527
+ "id": {
528
+ "name": "id",
529
+ "type": "text",
530
+ "primaryKey": true,
531
+ "notNull": true,
532
+ "autoincrement": false
533
+ },
534
+ "expires_at": {
535
+ "name": "expires_at",
536
+ "type": "integer",
537
+ "primaryKey": false,
538
+ "notNull": true,
539
+ "autoincrement": false
540
+ },
541
+ "token": {
542
+ "name": "token",
543
+ "type": "text",
544
+ "primaryKey": false,
545
+ "notNull": true,
546
+ "autoincrement": false
547
+ },
548
+ "created_at": {
549
+ "name": "created_at",
550
+ "type": "integer",
551
+ "primaryKey": false,
552
+ "notNull": true,
553
+ "autoincrement": false,
554
+ "default": "(cast(unixepoch('subsecond') * 1000 as integer))"
555
+ },
556
+ "updated_at": {
557
+ "name": "updated_at",
558
+ "type": "integer",
559
+ "primaryKey": false,
560
+ "notNull": true,
561
+ "autoincrement": false
562
+ },
563
+ "ip_address": {
564
+ "name": "ip_address",
565
+ "type": "text",
566
+ "primaryKey": false,
567
+ "notNull": false,
568
+ "autoincrement": false
569
+ },
570
+ "user_agent": {
571
+ "name": "user_agent",
572
+ "type": "text",
573
+ "primaryKey": false,
574
+ "notNull": false,
575
+ "autoincrement": false
576
+ },
577
+ "user_id": {
578
+ "name": "user_id",
579
+ "type": "text",
580
+ "primaryKey": false,
581
+ "notNull": true,
582
+ "autoincrement": false
583
+ }
584
+ },
585
+ "indexes": {
586
+ "session_token_unique": {
587
+ "name": "session_token_unique",
588
+ "columns": [
589
+ "token"
590
+ ],
591
+ "isUnique": true
592
+ },
593
+ "session_userId_idx": {
594
+ "name": "session_userId_idx",
595
+ "columns": [
596
+ "user_id"
597
+ ],
598
+ "isUnique": false
599
+ }
600
+ },
601
+ "foreignKeys": {
602
+ "session_user_id_user_id_fk": {
603
+ "name": "session_user_id_user_id_fk",
604
+ "tableFrom": "session",
605
+ "tableTo": "user",
606
+ "columnsFrom": [
607
+ "user_id"
608
+ ],
609
+ "columnsTo": [
610
+ "id"
611
+ ],
612
+ "onDelete": "cascade",
613
+ "onUpdate": "no action"
614
+ }
615
+ },
616
+ "compositePrimaryKeys": {},
617
+ "uniqueConstraints": {},
618
+ "checkConstraints": {}
619
+ },
620
+ "user": {
621
+ "name": "user",
622
+ "columns": {
623
+ "id": {
624
+ "name": "id",
625
+ "type": "text",
626
+ "primaryKey": true,
627
+ "notNull": true,
628
+ "autoincrement": false
629
+ },
630
+ "name": {
631
+ "name": "name",
632
+ "type": "text",
633
+ "primaryKey": false,
634
+ "notNull": true,
635
+ "autoincrement": false
636
+ },
637
+ "email": {
638
+ "name": "email",
639
+ "type": "text",
640
+ "primaryKey": false,
641
+ "notNull": true,
642
+ "autoincrement": false
643
+ },
644
+ "email_verified": {
645
+ "name": "email_verified",
646
+ "type": "integer",
647
+ "primaryKey": false,
648
+ "notNull": true,
649
+ "autoincrement": false,
650
+ "default": false
651
+ },
652
+ "image": {
653
+ "name": "image",
654
+ "type": "text",
655
+ "primaryKey": false,
656
+ "notNull": false,
657
+ "autoincrement": false
658
+ },
659
+ "created_at": {
660
+ "name": "created_at",
661
+ "type": "integer",
662
+ "primaryKey": false,
663
+ "notNull": true,
664
+ "autoincrement": false,
665
+ "default": "(cast(unixepoch('subsecond') * 1000 as integer))"
666
+ },
667
+ "updated_at": {
668
+ "name": "updated_at",
669
+ "type": "integer",
670
+ "primaryKey": false,
671
+ "notNull": true,
672
+ "autoincrement": false,
673
+ "default": "(cast(unixepoch('subsecond') * 1000 as integer))"
674
+ }
675
+ },
676
+ "indexes": {
677
+ "user_email_unique": {
678
+ "name": "user_email_unique",
679
+ "columns": [
680
+ "email"
681
+ ],
682
+ "isUnique": true
683
+ }
684
+ },
685
+ "foreignKeys": {},
686
+ "compositePrimaryKeys": {},
687
+ "uniqueConstraints": {},
688
+ "checkConstraints": {}
689
+ },
690
+ "verification": {
691
+ "name": "verification",
692
+ "columns": {
693
+ "id": {
694
+ "name": "id",
695
+ "type": "text",
696
+ "primaryKey": true,
697
+ "notNull": true,
698
+ "autoincrement": false
699
+ },
700
+ "identifier": {
701
+ "name": "identifier",
702
+ "type": "text",
703
+ "primaryKey": false,
704
+ "notNull": true,
705
+ "autoincrement": false
706
+ },
707
+ "value": {
708
+ "name": "value",
709
+ "type": "text",
710
+ "primaryKey": false,
711
+ "notNull": true,
712
+ "autoincrement": false
713
+ },
714
+ "expires_at": {
715
+ "name": "expires_at",
716
+ "type": "integer",
717
+ "primaryKey": false,
718
+ "notNull": true,
719
+ "autoincrement": false
720
+ },
721
+ "created_at": {
722
+ "name": "created_at",
723
+ "type": "integer",
724
+ "primaryKey": false,
725
+ "notNull": true,
726
+ "autoincrement": false,
727
+ "default": "(cast(unixepoch('subsecond') * 1000 as integer))"
728
+ },
729
+ "updated_at": {
730
+ "name": "updated_at",
731
+ "type": "integer",
732
+ "primaryKey": false,
733
+ "notNull": true,
734
+ "autoincrement": false,
735
+ "default": "(cast(unixepoch('subsecond') * 1000 as integer))"
736
+ }
737
+ },
738
+ "indexes": {
739
+ "verification_identifier_idx": {
740
+ "name": "verification_identifier_idx",
741
+ "columns": [
742
+ "identifier"
743
+ ],
744
+ "isUnique": false
745
+ }
746
+ },
747
+ "foreignKeys": {},
748
+ "compositePrimaryKeys": {},
749
+ "uniqueConstraints": {},
750
+ "checkConstraints": {}
751
+ }
752
+ },
753
+ "views": {},
754
+ "enums": {},
755
+ "_meta": {
756
+ "schemas": {},
757
+ "tables": {},
758
+ "columns": {}
759
+ },
760
+ "internal": {
761
+ "indexes": {}
762
+ }
763
+ }