@meistrari/chat-nuxt 1.4.0 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/README.md +51 -16
  2. package/dist/module.json +1 -1
  3. package/dist/module.mjs +24 -9
  4. package/dist/runtime/components/MeistrariChatEmbed.d.vue.ts +2 -18
  5. package/dist/runtime/components/MeistrariChatEmbed.vue +22 -4
  6. package/dist/runtime/components/MeistrariChatEmbed.vue.d.ts +2 -18
  7. package/dist/runtime/components/chat/message-input.d.vue.ts +30 -4
  8. package/dist/runtime/components/chat/message-input.vue +268 -24
  9. package/dist/runtime/components/chat/message-input.vue.d.ts +30 -4
  10. package/dist/runtime/composables/useChat.d.ts +3 -5
  11. package/dist/runtime/composables/useChat.js +18 -4
  12. package/dist/runtime/composables/useChatApi.js +4 -0
  13. package/dist/runtime/composables/useConversations.js +8 -2
  14. package/dist/runtime/composables/useEmbedConfig.d.ts +7 -1
  15. package/dist/runtime/composables/useEmbedConfig.js +8 -0
  16. package/dist/runtime/composables/useFeatureFlags.d.ts +1 -2
  17. package/dist/runtime/composables/useTelaAgentMetadata.d.ts +8 -0
  18. package/dist/runtime/composables/useTelaAgentMetadata.js +65 -0
  19. package/dist/runtime/composables/useWorkspaceSettings.d.ts +1 -19
  20. package/dist/runtime/composables/useWorkspaceSettings.js +24 -5
  21. package/dist/runtime/embed/components/ChatConfigurationModal.d.vue.ts +1 -1
  22. package/dist/runtime/embed/components/ChatConfigurationModal.vue.d.ts +1 -1
  23. package/dist/runtime/embed/components/ChatEmbed.d.vue.ts +3 -23
  24. package/dist/runtime/embed/components/ChatEmbed.vue +34 -9
  25. package/dist/runtime/embed/components/ChatEmbed.vue.d.ts +3 -23
  26. package/dist/runtime/embed/components/ChatEmbedInner.vue +50 -12
  27. package/dist/runtime/plugins/markstream.d.ts +1 -1
  28. package/dist/runtime/plugins/markstream.js +1 -1
  29. package/dist/runtime/server/api/chat/workspace/settings.patch.d.ts +2 -0
  30. package/dist/runtime/server/api/chat/workspace/settings.patch.js +8 -0
  31. package/dist/runtime/server/api/conversations/[id]/cancel.post.d.ts +1 -1
  32. package/dist/runtime/server/api/conversations/[id]/cancel.post.js +37 -17
  33. package/dist/runtime/server/api/conversations/[id]/clear.post.js +28 -13
  34. package/dist/runtime/server/api/conversations/[id]/duplicate.post.js +11 -13
  35. package/dist/runtime/server/api/conversations/[id]/files.get.js +5 -7
  36. package/dist/runtime/server/api/conversations/[id]/index.delete.js +13 -12
  37. package/dist/runtime/server/api/conversations/[id]/index.get.js +6 -13
  38. package/dist/runtime/server/api/conversations/[id]/index.patch.js +11 -10
  39. package/dist/runtime/server/api/conversations/[id]/messages/[messageId]/retry.post.js +46 -80
  40. package/dist/runtime/server/api/conversations/[id]/messages/index.get.d.ts +1 -14
  41. package/dist/runtime/server/api/conversations/[id]/messages/index.get.js +81 -187
  42. package/dist/runtime/server/api/conversations/[id]/messages/index.post.js +68 -86
  43. package/dist/runtime/server/api/conversations/[id]/usage.get.js +4 -8
  44. package/dist/runtime/server/api/conversations/generate-title.post.js +4 -3
  45. package/dist/runtime/server/api/conversations/index.get.js +5 -4
  46. package/dist/runtime/server/api/conversations/index.post.js +5 -4
  47. package/dist/runtime/server/api/tela/agents/[id].get.d.ts +6 -0
  48. package/dist/runtime/server/api/tela/agents/[id].get.js +25 -0
  49. package/dist/runtime/server/api/workspace/settings.patch.js +3 -82
  50. package/dist/runtime/server/db/schema/conversations.d.ts +17 -0
  51. package/dist/runtime/server/db/schema/conversations.js +3 -1
  52. package/dist/runtime/server/db/schema/workspace-settings.d.ts +1 -1
  53. package/dist/runtime/server/utils/chat-context.d.ts +5 -0
  54. package/dist/runtime/server/utils/chat-context.js +20 -0
  55. package/dist/runtime/server/utils/conversation-agent-turn.d.ts +39 -0
  56. package/dist/runtime/server/utils/conversation-agent-turn.js +170 -0
  57. package/dist/runtime/server/utils/conversation-message-files.d.ts +10 -0
  58. package/dist/runtime/server/utils/conversation-message-files.js +77 -0
  59. package/dist/runtime/server/utils/conversation-message-sync.d.ts +31 -0
  60. package/dist/runtime/server/utils/conversation-message-sync.js +132 -0
  61. package/dist/runtime/server/utils/conversation-scope.d.ts +2 -0
  62. package/dist/runtime/server/utils/conversation-scope.js +12 -0
  63. package/dist/runtime/server/utils/tela-agent-api.d.ts +29 -0
  64. package/dist/runtime/server/utils/tela-agent-api.js +107 -0
  65. package/dist/runtime/server/utils/tela-agent-session.d.ts +48 -0
  66. package/dist/runtime/server/utils/tela-agent-session.js +350 -0
  67. package/dist/runtime/server/utils/workspace-settings-update.d.ts +16 -0
  68. package/dist/runtime/server/utils/workspace-settings-update.js +84 -0
  69. package/dist/runtime/types/embed.d.ts +29 -0
  70. package/dist/runtime/types/embed.js +0 -0
  71. package/dist/runtime/types/tela-agent.d.ts +243 -0
  72. package/dist/runtime/types/tela-agent.js +98 -0
  73. package/dist/runtime/types/workspace-settings-data.d.ts +19 -0
  74. package/dist/runtime/types/workspace-settings-data.js +0 -0
  75. package/dist/runtime/types/workspace-settings.d.ts +1 -1
  76. package/dist/runtime/utils/agent-input-readiness.d.ts +14 -0
  77. package/dist/runtime/utils/agent-input-readiness.js +15 -0
  78. package/dist/runtime/utils/features.d.ts +9 -0
  79. package/dist/runtime/utils/features.js +5 -4
  80. package/dist/runtime/utils/file.js +46 -7
  81. package/dist/runtime/utils/markdown-nodes.d.ts +1 -0
  82. package/dist/runtime/utils/markdown-nodes.js +6 -0
  83. package/dist/runtime/utils/tela-chat.d.ts +6 -0
  84. package/dist/runtime/utils/tela-chat.js +12 -1
  85. package/drizzle/0014_faulty_lake.sql +2 -0
  86. package/drizzle/meta/0014_snapshot.json +732 -0
  87. package/drizzle/meta/_journal.json +7 -0
  88. package/package.json +1 -1
  89. package/dist/runtime/types/feature-flags.d.ts +0 -7
  90. package/dist/runtime/types/feature-flags.js +0 -6
@@ -0,0 +1,732 @@
1
+ {
2
+ "id": "00e3e29e-98c4-4e48-98f4-0af0913d882b",
3
+ "prevId": "e5087165-a6ed-4fa0-8524-20af44135132",
4
+ "version": "7",
5
+ "dialect": "postgresql",
6
+ "tables": {
7
+ "chat.conversation_usage": {
8
+ "name": "conversation_usage",
9
+ "schema": "chat",
10
+ "columns": {
11
+ "id": {
12
+ "name": "id",
13
+ "type": "uuid",
14
+ "primaryKey": true,
15
+ "notNull": true,
16
+ "default": "gen_random_uuid()"
17
+ },
18
+ "workspace_id": {
19
+ "name": "workspace_id",
20
+ "type": "text",
21
+ "primaryKey": false,
22
+ "notNull": true
23
+ },
24
+ "conversation_id": {
25
+ "name": "conversation_id",
26
+ "type": "uuid",
27
+ "primaryKey": false,
28
+ "notNull": true
29
+ },
30
+ "prompt_tokens": {
31
+ "name": "prompt_tokens",
32
+ "type": "integer",
33
+ "primaryKey": false,
34
+ "notNull": true
35
+ },
36
+ "completion_tokens": {
37
+ "name": "completion_tokens",
38
+ "type": "integer",
39
+ "primaryKey": false,
40
+ "notNull": true
41
+ },
42
+ "total_tokens": {
43
+ "name": "total_tokens",
44
+ "type": "integer",
45
+ "primaryKey": false,
46
+ "notNull": true
47
+ },
48
+ "prompt_cost": {
49
+ "name": "prompt_cost",
50
+ "type": "numeric(12, 8)",
51
+ "primaryKey": false,
52
+ "notNull": true
53
+ },
54
+ "completion_cost": {
55
+ "name": "completion_cost",
56
+ "type": "numeric(12, 8)",
57
+ "primaryKey": false,
58
+ "notNull": true
59
+ },
60
+ "total_cost": {
61
+ "name": "total_cost",
62
+ "type": "numeric(12, 8)",
63
+ "primaryKey": false,
64
+ "notNull": true
65
+ },
66
+ "duration_ms": {
67
+ "name": "duration_ms",
68
+ "type": "integer",
69
+ "primaryKey": false,
70
+ "notNull": false
71
+ },
72
+ "turns": {
73
+ "name": "turns",
74
+ "type": "integer",
75
+ "primaryKey": false,
76
+ "notNull": false
77
+ },
78
+ "user_id": {
79
+ "name": "user_id",
80
+ "type": "text",
81
+ "primaryKey": false,
82
+ "notNull": true
83
+ },
84
+ "user_email": {
85
+ "name": "user_email",
86
+ "type": "text",
87
+ "primaryKey": false,
88
+ "notNull": false
89
+ },
90
+ "model": {
91
+ "name": "model",
92
+ "type": "text",
93
+ "primaryKey": false,
94
+ "notNull": false
95
+ },
96
+ "session_id": {
97
+ "name": "session_id",
98
+ "type": "text",
99
+ "primaryKey": false,
100
+ "notNull": false
101
+ },
102
+ "cache_read_input_tokens": {
103
+ "name": "cache_read_input_tokens",
104
+ "type": "integer",
105
+ "primaryKey": false,
106
+ "notNull": false
107
+ },
108
+ "cache_creation_input_tokens": {
109
+ "name": "cache_creation_input_tokens",
110
+ "type": "integer",
111
+ "primaryKey": false,
112
+ "notNull": false
113
+ },
114
+ "model_usage": {
115
+ "name": "model_usage",
116
+ "type": "jsonb",
117
+ "primaryKey": false,
118
+ "notNull": false
119
+ },
120
+ "duration_api_ms": {
121
+ "name": "duration_api_ms",
122
+ "type": "integer",
123
+ "primaryKey": false,
124
+ "notNull": false
125
+ },
126
+ "web_search_requests": {
127
+ "name": "web_search_requests",
128
+ "type": "integer",
129
+ "primaryKey": false,
130
+ "notNull": false
131
+ },
132
+ "web_fetch_requests": {
133
+ "name": "web_fetch_requests",
134
+ "type": "integer",
135
+ "primaryKey": false,
136
+ "notNull": false
137
+ },
138
+ "metadata": {
139
+ "name": "metadata",
140
+ "type": "jsonb",
141
+ "primaryKey": false,
142
+ "notNull": false
143
+ },
144
+ "created_at": {
145
+ "name": "created_at",
146
+ "type": "timestamp with time zone",
147
+ "primaryKey": false,
148
+ "notNull": true,
149
+ "default": "now()"
150
+ },
151
+ "updated_at": {
152
+ "name": "updated_at",
153
+ "type": "timestamp with time zone",
154
+ "primaryKey": false,
155
+ "notNull": true,
156
+ "default": "now()"
157
+ }
158
+ },
159
+ "indexes": {
160
+ "idx_usage_workspace": {
161
+ "name": "idx_usage_workspace",
162
+ "columns": [
163
+ {
164
+ "expression": "workspace_id",
165
+ "isExpression": false,
166
+ "asc": true,
167
+ "nulls": "last"
168
+ }
169
+ ],
170
+ "isUnique": false,
171
+ "concurrently": false,
172
+ "method": "btree",
173
+ "with": {}
174
+ },
175
+ "idx_usage_workspace_created": {
176
+ "name": "idx_usage_workspace_created",
177
+ "columns": [
178
+ {
179
+ "expression": "workspace_id",
180
+ "isExpression": false,
181
+ "asc": true,
182
+ "nulls": "last"
183
+ },
184
+ {
185
+ "expression": "created_at",
186
+ "isExpression": false,
187
+ "asc": true,
188
+ "nulls": "last"
189
+ }
190
+ ],
191
+ "isUnique": false,
192
+ "concurrently": false,
193
+ "method": "btree",
194
+ "with": {}
195
+ },
196
+ "idx_usage_conversation": {
197
+ "name": "idx_usage_conversation",
198
+ "columns": [
199
+ {
200
+ "expression": "conversation_id",
201
+ "isExpression": false,
202
+ "asc": true,
203
+ "nulls": "last"
204
+ }
205
+ ],
206
+ "isUnique": false,
207
+ "concurrently": false,
208
+ "method": "btree",
209
+ "with": {}
210
+ },
211
+ "idx_usage_user": {
212
+ "name": "idx_usage_user",
213
+ "columns": [
214
+ {
215
+ "expression": "user_id",
216
+ "isExpression": false,
217
+ "asc": true,
218
+ "nulls": "last"
219
+ }
220
+ ],
221
+ "isUnique": false,
222
+ "concurrently": false,
223
+ "method": "btree",
224
+ "with": {}
225
+ }
226
+ },
227
+ "foreignKeys": {
228
+ "conversation_usage_conversation_id_conversations_id_fk": {
229
+ "name": "conversation_usage_conversation_id_conversations_id_fk",
230
+ "tableFrom": "conversation_usage",
231
+ "tableTo": "conversations",
232
+ "schemaTo": "chat",
233
+ "columnsFrom": [
234
+ "conversation_id"
235
+ ],
236
+ "columnsTo": [
237
+ "id"
238
+ ],
239
+ "onDelete": "cascade",
240
+ "onUpdate": "no action"
241
+ }
242
+ },
243
+ "compositePrimaryKeys": {},
244
+ "uniqueConstraints": {
245
+ "conversation_usage_conversation_id_unique": {
246
+ "name": "conversation_usage_conversation_id_unique",
247
+ "nullsNotDistinct": false,
248
+ "columns": [
249
+ "conversation_id"
250
+ ]
251
+ }
252
+ },
253
+ "policies": {},
254
+ "checkConstraints": {},
255
+ "isRLSEnabled": false
256
+ },
257
+ "chat.conversations": {
258
+ "name": "conversations",
259
+ "schema": "chat",
260
+ "columns": {
261
+ "id": {
262
+ "name": "id",
263
+ "type": "uuid",
264
+ "primaryKey": true,
265
+ "notNull": true,
266
+ "default": "gen_random_uuid()"
267
+ },
268
+ "workspace_id": {
269
+ "name": "workspace_id",
270
+ "type": "text",
271
+ "primaryKey": false,
272
+ "notNull": true
273
+ },
274
+ "user_id": {
275
+ "name": "user_id",
276
+ "type": "text",
277
+ "primaryKey": false,
278
+ "notNull": true
279
+ },
280
+ "title": {
281
+ "name": "title",
282
+ "type": "text",
283
+ "primaryKey": false,
284
+ "notNull": true,
285
+ "default": "'Nova conversa'"
286
+ },
287
+ "thread_session_id": {
288
+ "name": "thread_session_id",
289
+ "type": "text",
290
+ "primaryKey": false,
291
+ "notNull": false
292
+ },
293
+ "tela_agent_id": {
294
+ "name": "tela_agent_id",
295
+ "type": "text",
296
+ "primaryKey": false,
297
+ "notNull": false
298
+ },
299
+ "model": {
300
+ "name": "model",
301
+ "type": "text",
302
+ "primaryKey": false,
303
+ "notNull": false,
304
+ "default": "'claude-sonnet-4-5'"
305
+ },
306
+ "applied_settings_at": {
307
+ "name": "applied_settings_at",
308
+ "type": "timestamp with time zone",
309
+ "primaryKey": false,
310
+ "notNull": false
311
+ },
312
+ "applied_settings_snapshot": {
313
+ "name": "applied_settings_snapshot",
314
+ "type": "jsonb",
315
+ "primaryKey": false,
316
+ "notNull": false
317
+ },
318
+ "created_by": {
319
+ "name": "created_by",
320
+ "type": "text",
321
+ "primaryKey": false,
322
+ "notNull": false
323
+ },
324
+ "created_at": {
325
+ "name": "created_at",
326
+ "type": "timestamp with time zone",
327
+ "primaryKey": false,
328
+ "notNull": true,
329
+ "default": "now()"
330
+ },
331
+ "updated_at": {
332
+ "name": "updated_at",
333
+ "type": "timestamp with time zone",
334
+ "primaryKey": false,
335
+ "notNull": true,
336
+ "default": "now()"
337
+ }
338
+ },
339
+ "indexes": {
340
+ "idx_conversations_workspace": {
341
+ "name": "idx_conversations_workspace",
342
+ "columns": [
343
+ {
344
+ "expression": "workspace_id",
345
+ "isExpression": false,
346
+ "asc": true,
347
+ "nulls": "last"
348
+ }
349
+ ],
350
+ "isUnique": false,
351
+ "concurrently": false,
352
+ "method": "btree",
353
+ "with": {}
354
+ },
355
+ "idx_conversations_user": {
356
+ "name": "idx_conversations_user",
357
+ "columns": [
358
+ {
359
+ "expression": "user_id",
360
+ "isExpression": false,
361
+ "asc": true,
362
+ "nulls": "last"
363
+ }
364
+ ],
365
+ "isUnique": false,
366
+ "concurrently": false,
367
+ "method": "btree",
368
+ "with": {}
369
+ },
370
+ "idx_conversations_updated": {
371
+ "name": "idx_conversations_updated",
372
+ "columns": [
373
+ {
374
+ "expression": "updated_at",
375
+ "isExpression": false,
376
+ "asc": true,
377
+ "nulls": "last"
378
+ }
379
+ ],
380
+ "isUnique": false,
381
+ "concurrently": false,
382
+ "method": "btree",
383
+ "with": {}
384
+ },
385
+ "idx_conversations_workspace_tela_agent_updated": {
386
+ "name": "idx_conversations_workspace_tela_agent_updated",
387
+ "columns": [
388
+ {
389
+ "expression": "workspace_id",
390
+ "isExpression": false,
391
+ "asc": true,
392
+ "nulls": "last"
393
+ },
394
+ {
395
+ "expression": "tela_agent_id",
396
+ "isExpression": false,
397
+ "asc": true,
398
+ "nulls": "last"
399
+ },
400
+ {
401
+ "expression": "updated_at",
402
+ "isExpression": false,
403
+ "asc": true,
404
+ "nulls": "last"
405
+ }
406
+ ],
407
+ "isUnique": false,
408
+ "concurrently": false,
409
+ "method": "btree",
410
+ "with": {}
411
+ }
412
+ },
413
+ "foreignKeys": {},
414
+ "compositePrimaryKeys": {},
415
+ "uniqueConstraints": {},
416
+ "policies": {},
417
+ "checkConstraints": {},
418
+ "isRLSEnabled": false
419
+ },
420
+ "chat.external_skills": {
421
+ "name": "external_skills",
422
+ "schema": "chat",
423
+ "columns": {
424
+ "id": {
425
+ "name": "id",
426
+ "type": "serial",
427
+ "primaryKey": true,
428
+ "notNull": true
429
+ },
430
+ "workspace_id": {
431
+ "name": "workspace_id",
432
+ "type": "text",
433
+ "primaryKey": false,
434
+ "notNull": true
435
+ },
436
+ "ref": {
437
+ "name": "ref",
438
+ "type": "text",
439
+ "primaryKey": false,
440
+ "notNull": true
441
+ },
442
+ "name": {
443
+ "name": "name",
444
+ "type": "text",
445
+ "primaryKey": false,
446
+ "notNull": true
447
+ },
448
+ "description": {
449
+ "name": "description",
450
+ "type": "text",
451
+ "primaryKey": false,
452
+ "notNull": true,
453
+ "default": "''"
454
+ },
455
+ "runtime": {
456
+ "name": "runtime",
457
+ "type": "text",
458
+ "primaryKey": false,
459
+ "notNull": true,
460
+ "default": "'unknown'"
461
+ },
462
+ "allowed_tools": {
463
+ "name": "allowed_tools",
464
+ "type": "jsonb",
465
+ "primaryKey": false,
466
+ "notNull": true,
467
+ "default": "'[]'::jsonb"
468
+ },
469
+ "is_public": {
470
+ "name": "is_public",
471
+ "type": "boolean",
472
+ "primaryKey": false,
473
+ "notNull": true,
474
+ "default": true
475
+ },
476
+ "added_by_user_id": {
477
+ "name": "added_by_user_id",
478
+ "type": "text",
479
+ "primaryKey": false,
480
+ "notNull": true
481
+ },
482
+ "added_by_username": {
483
+ "name": "added_by_username",
484
+ "type": "text",
485
+ "primaryKey": false,
486
+ "notNull": true
487
+ },
488
+ "added_at": {
489
+ "name": "added_at",
490
+ "type": "timestamp with time zone",
491
+ "primaryKey": false,
492
+ "notNull": true,
493
+ "default": "now()"
494
+ },
495
+ "created_at": {
496
+ "name": "created_at",
497
+ "type": "timestamp with time zone",
498
+ "primaryKey": false,
499
+ "notNull": true,
500
+ "default": "now()"
501
+ },
502
+ "updated_at": {
503
+ "name": "updated_at",
504
+ "type": "timestamp with time zone",
505
+ "primaryKey": false,
506
+ "notNull": true,
507
+ "default": "now()"
508
+ }
509
+ },
510
+ "indexes": {},
511
+ "foreignKeys": {},
512
+ "compositePrimaryKeys": {},
513
+ "uniqueConstraints": {
514
+ "external_skills_workspace_ref_unique": {
515
+ "name": "external_skills_workspace_ref_unique",
516
+ "nullsNotDistinct": false,
517
+ "columns": [
518
+ "workspace_id",
519
+ "ref"
520
+ ]
521
+ }
522
+ },
523
+ "policies": {},
524
+ "checkConstraints": {},
525
+ "isRLSEnabled": false
526
+ },
527
+ "chat.messages": {
528
+ "name": "messages",
529
+ "schema": "chat",
530
+ "columns": {
531
+ "id": {
532
+ "name": "id",
533
+ "type": "uuid",
534
+ "primaryKey": true,
535
+ "notNull": true,
536
+ "default": "gen_random_uuid()"
537
+ },
538
+ "conversation_id": {
539
+ "name": "conversation_id",
540
+ "type": "uuid",
541
+ "primaryKey": false,
542
+ "notNull": true
543
+ },
544
+ "role": {
545
+ "name": "role",
546
+ "type": "text",
547
+ "primaryKey": false,
548
+ "notNull": true
549
+ },
550
+ "content": {
551
+ "name": "content",
552
+ "type": "text",
553
+ "primaryKey": false,
554
+ "notNull": true
555
+ },
556
+ "status": {
557
+ "name": "status",
558
+ "type": "text",
559
+ "primaryKey": false,
560
+ "notNull": false,
561
+ "default": "'completed'"
562
+ },
563
+ "reasoning_data": {
564
+ "name": "reasoning_data",
565
+ "type": "jsonb",
566
+ "primaryKey": false,
567
+ "notNull": false
568
+ },
569
+ "files": {
570
+ "name": "files",
571
+ "type": "jsonb",
572
+ "primaryKey": false,
573
+ "notNull": false
574
+ },
575
+ "external_uuid": {
576
+ "name": "external_uuid",
577
+ "type": "text",
578
+ "primaryKey": false,
579
+ "notNull": false
580
+ },
581
+ "ttft": {
582
+ "name": "ttft",
583
+ "type": "text",
584
+ "primaryKey": false,
585
+ "notNull": false
586
+ },
587
+ "created_by": {
588
+ "name": "created_by",
589
+ "type": "text",
590
+ "primaryKey": false,
591
+ "notNull": false
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
+ "updated_at": {
601
+ "name": "updated_at",
602
+ "type": "timestamp with time zone",
603
+ "primaryKey": false,
604
+ "notNull": false
605
+ }
606
+ },
607
+ "indexes": {
608
+ "idx_messages_conversation": {
609
+ "name": "idx_messages_conversation",
610
+ "columns": [
611
+ {
612
+ "expression": "conversation_id",
613
+ "isExpression": false,
614
+ "asc": true,
615
+ "nulls": "last"
616
+ }
617
+ ],
618
+ "isUnique": false,
619
+ "concurrently": false,
620
+ "method": "btree",
621
+ "with": {}
622
+ },
623
+ "idx_messages_created": {
624
+ "name": "idx_messages_created",
625
+ "columns": [
626
+ {
627
+ "expression": "created_at",
628
+ "isExpression": false,
629
+ "asc": true,
630
+ "nulls": "last"
631
+ }
632
+ ],
633
+ "isUnique": false,
634
+ "concurrently": false,
635
+ "method": "btree",
636
+ "with": {}
637
+ }
638
+ },
639
+ "foreignKeys": {
640
+ "messages_conversation_id_conversations_id_fk": {
641
+ "name": "messages_conversation_id_conversations_id_fk",
642
+ "tableFrom": "messages",
643
+ "tableTo": "conversations",
644
+ "schemaTo": "chat",
645
+ "columnsFrom": [
646
+ "conversation_id"
647
+ ],
648
+ "columnsTo": [
649
+ "id"
650
+ ],
651
+ "onDelete": "cascade",
652
+ "onUpdate": "no action"
653
+ }
654
+ },
655
+ "compositePrimaryKeys": {},
656
+ "uniqueConstraints": {},
657
+ "policies": {},
658
+ "checkConstraints": {},
659
+ "isRLSEnabled": false
660
+ },
661
+ "chat.workspace_settings": {
662
+ "name": "workspace_settings",
663
+ "schema": "chat",
664
+ "columns": {
665
+ "workspace_id": {
666
+ "name": "workspace_id",
667
+ "type": "text",
668
+ "primaryKey": true,
669
+ "notNull": true
670
+ },
671
+ "system_message": {
672
+ "name": "system_message",
673
+ "type": "text",
674
+ "primaryKey": false,
675
+ "notNull": false
676
+ },
677
+ "context_files": {
678
+ "name": "context_files",
679
+ "type": "jsonb",
680
+ "primaryKey": false,
681
+ "notNull": false
682
+ },
683
+ "canvas_tools": {
684
+ "name": "canvas_tools",
685
+ "type": "jsonb",
686
+ "primaryKey": false,
687
+ "notNull": false
688
+ },
689
+ "knowledge_sources": {
690
+ "name": "knowledge_sources",
691
+ "type": "jsonb",
692
+ "primaryKey": false,
693
+ "notNull": false
694
+ },
695
+ "created_at": {
696
+ "name": "created_at",
697
+ "type": "timestamp with time zone",
698
+ "primaryKey": false,
699
+ "notNull": true,
700
+ "default": "now()"
701
+ },
702
+ "updated_at": {
703
+ "name": "updated_at",
704
+ "type": "timestamp with time zone",
705
+ "primaryKey": false,
706
+ "notNull": true,
707
+ "default": "now()"
708
+ }
709
+ },
710
+ "indexes": {},
711
+ "foreignKeys": {},
712
+ "compositePrimaryKeys": {},
713
+ "uniqueConstraints": {},
714
+ "policies": {},
715
+ "checkConstraints": {},
716
+ "isRLSEnabled": false
717
+ }
718
+ },
719
+ "enums": {},
720
+ "schemas": {
721
+ "chat": "chat"
722
+ },
723
+ "sequences": {},
724
+ "roles": {},
725
+ "policies": {},
726
+ "views": {},
727
+ "_meta": {
728
+ "columns": {},
729
+ "schemas": {},
730
+ "tables": {}
731
+ }
732
+ }