Skip to content

Commit e1179bd

Browse files
committed
feat: add send message support
simplify message content resolution using existing MessageContent Signed-off-by: Brandon McAnsh <git@bmcreations.dev>
1 parent bb00599 commit e1179bd

30 files changed

Lines changed: 873 additions & 312 deletions
Lines changed: 395 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,395 @@
1+
{
2+
"formatVersion": 1,
3+
"database": {
4+
"version": 13,
5+
"identityHash": "546bcf41a12f9c2319a18de48d8b02a3",
6+
"entities": [
7+
{
8+
"tableName": "CurrencyRate",
9+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` TEXT NOT NULL, `rate` REAL NOT NULL, PRIMARY KEY(`id`))",
10+
"fields": [
11+
{
12+
"fieldPath": "id",
13+
"columnName": "id",
14+
"affinity": "TEXT",
15+
"notNull": true
16+
},
17+
{
18+
"fieldPath": "rate",
19+
"columnName": "rate",
20+
"affinity": "REAL",
21+
"notNull": true
22+
}
23+
],
24+
"primaryKey": {
25+
"autoGenerate": false,
26+
"columnNames": [
27+
"id"
28+
]
29+
},
30+
"indices": [],
31+
"foreignKeys": []
32+
},
33+
{
34+
"tableName": "FaqItem",
35+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`uid` INTEGER PRIMARY KEY AUTOINCREMENT, `question` TEXT NOT NULL, `answer` TEXT NOT NULL)",
36+
"fields": [
37+
{
38+
"fieldPath": "uid",
39+
"columnName": "uid",
40+
"affinity": "INTEGER",
41+
"notNull": false
42+
},
43+
{
44+
"fieldPath": "question",
45+
"columnName": "question",
46+
"affinity": "TEXT",
47+
"notNull": true
48+
},
49+
{
50+
"fieldPath": "answer",
51+
"columnName": "answer",
52+
"affinity": "TEXT",
53+
"notNull": true
54+
}
55+
],
56+
"primaryKey": {
57+
"autoGenerate": true,
58+
"columnNames": [
59+
"uid"
60+
]
61+
},
62+
"indices": [],
63+
"foreignKeys": []
64+
},
65+
{
66+
"tableName": "PrefInt",
67+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`key` TEXT NOT NULL, `value` INTEGER NOT NULL, PRIMARY KEY(`key`))",
68+
"fields": [
69+
{
70+
"fieldPath": "key",
71+
"columnName": "key",
72+
"affinity": "TEXT",
73+
"notNull": true
74+
},
75+
{
76+
"fieldPath": "value",
77+
"columnName": "value",
78+
"affinity": "INTEGER",
79+
"notNull": true
80+
}
81+
],
82+
"primaryKey": {
83+
"autoGenerate": false,
84+
"columnNames": [
85+
"key"
86+
]
87+
},
88+
"indices": [],
89+
"foreignKeys": []
90+
},
91+
{
92+
"tableName": "PrefString",
93+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`key` TEXT NOT NULL, `value` TEXT NOT NULL, PRIMARY KEY(`key`))",
94+
"fields": [
95+
{
96+
"fieldPath": "key",
97+
"columnName": "key",
98+
"affinity": "TEXT",
99+
"notNull": true
100+
},
101+
{
102+
"fieldPath": "value",
103+
"columnName": "value",
104+
"affinity": "TEXT",
105+
"notNull": true
106+
}
107+
],
108+
"primaryKey": {
109+
"autoGenerate": false,
110+
"columnNames": [
111+
"key"
112+
]
113+
},
114+
"indices": [],
115+
"foreignKeys": []
116+
},
117+
{
118+
"tableName": "PrefBool",
119+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`key` TEXT NOT NULL, `value` INTEGER NOT NULL, PRIMARY KEY(`key`))",
120+
"fields": [
121+
{
122+
"fieldPath": "key",
123+
"columnName": "key",
124+
"affinity": "TEXT",
125+
"notNull": true
126+
},
127+
{
128+
"fieldPath": "value",
129+
"columnName": "value",
130+
"affinity": "INTEGER",
131+
"notNull": true
132+
}
133+
],
134+
"primaryKey": {
135+
"autoGenerate": false,
136+
"columnNames": [
137+
"key"
138+
]
139+
},
140+
"indices": [],
141+
"foreignKeys": []
142+
},
143+
{
144+
"tableName": "PrefDouble",
145+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`key` TEXT NOT NULL, `value` REAL NOT NULL, PRIMARY KEY(`key`))",
146+
"fields": [
147+
{
148+
"fieldPath": "key",
149+
"columnName": "key",
150+
"affinity": "TEXT",
151+
"notNull": true
152+
},
153+
{
154+
"fieldPath": "value",
155+
"columnName": "value",
156+
"affinity": "REAL",
157+
"notNull": true
158+
}
159+
],
160+
"primaryKey": {
161+
"autoGenerate": false,
162+
"columnNames": [
163+
"key"
164+
]
165+
},
166+
"indices": [],
167+
"foreignKeys": []
168+
},
169+
{
170+
"tableName": "GiftCard",
171+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`key` TEXT NOT NULL, `entropy` TEXT NOT NULL, `amount` INTEGER NOT NULL, `date` INTEGER NOT NULL, PRIMARY KEY(`key`))",
172+
"fields": [
173+
{
174+
"fieldPath": "key",
175+
"columnName": "key",
176+
"affinity": "TEXT",
177+
"notNull": true
178+
},
179+
{
180+
"fieldPath": "entropy",
181+
"columnName": "entropy",
182+
"affinity": "TEXT",
183+
"notNull": true
184+
},
185+
{
186+
"fieldPath": "amount",
187+
"columnName": "amount",
188+
"affinity": "INTEGER",
189+
"notNull": true
190+
},
191+
{
192+
"fieldPath": "date",
193+
"columnName": "date",
194+
"affinity": "INTEGER",
195+
"notNull": true
196+
}
197+
],
198+
"primaryKey": {
199+
"autoGenerate": false,
200+
"columnNames": [
201+
"key"
202+
]
203+
},
204+
"indices": [],
205+
"foreignKeys": []
206+
},
207+
{
208+
"tableName": "exchangeData",
209+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`fiat` REAL NOT NULL, `currency` TEXT NOT NULL, `synced_at` INTEGER NOT NULL, PRIMARY KEY(`currency`))",
210+
"fields": [
211+
{
212+
"fieldPath": "fx",
213+
"columnName": "fiat",
214+
"affinity": "REAL",
215+
"notNull": true
216+
},
217+
{
218+
"fieldPath": "currency",
219+
"columnName": "currency",
220+
"affinity": "TEXT",
221+
"notNull": true
222+
},
223+
{
224+
"fieldPath": "synced",
225+
"columnName": "synced_at",
226+
"affinity": "INTEGER",
227+
"notNull": true
228+
}
229+
],
230+
"primaryKey": {
231+
"autoGenerate": false,
232+
"columnNames": [
233+
"currency"
234+
]
235+
},
236+
"indices": [],
237+
"foreignKeys": []
238+
},
239+
{
240+
"tableName": "conversations",
241+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`idBase58` TEXT NOT NULL, `title` TEXT NOT NULL DEFAULT 'Tip Chat', `hasRevealedIdentity` INTEGER NOT NULL, `user` TEXT, `userImage` TEXT, `lastActivity` INTEGER, PRIMARY KEY(`idBase58`))",
242+
"fields": [
243+
{
244+
"fieldPath": "idBase58",
245+
"columnName": "idBase58",
246+
"affinity": "TEXT",
247+
"notNull": true
248+
},
249+
{
250+
"fieldPath": "title",
251+
"columnName": "title",
252+
"affinity": "TEXT",
253+
"notNull": true,
254+
"defaultValue": "'Tip Chat'"
255+
},
256+
{
257+
"fieldPath": "hasRevealedIdentity",
258+
"columnName": "hasRevealedIdentity",
259+
"affinity": "INTEGER",
260+
"notNull": true
261+
},
262+
{
263+
"fieldPath": "user",
264+
"columnName": "user",
265+
"affinity": "TEXT",
266+
"notNull": false
267+
},
268+
{
269+
"fieldPath": "userImage",
270+
"columnName": "userImage",
271+
"affinity": "TEXT",
272+
"notNull": false
273+
},
274+
{
275+
"fieldPath": "lastActivity",
276+
"columnName": "lastActivity",
277+
"affinity": "INTEGER",
278+
"notNull": false
279+
}
280+
],
281+
"primaryKey": {
282+
"autoGenerate": false,
283+
"columnNames": [
284+
"idBase58"
285+
]
286+
},
287+
"indices": [],
288+
"foreignKeys": []
289+
},
290+
{
291+
"tableName": "messages",
292+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`idBase58` TEXT NOT NULL, `cursorBase58` TEXT NOT NULL, `conversationIdBase58` TEXT NOT NULL, `dateMillis` INTEGER NOT NULL, `status` TEXT NOT NULL DEFAULT 'Unknown', PRIMARY KEY(`idBase58`))",
293+
"fields": [
294+
{
295+
"fieldPath": "idBase58",
296+
"columnName": "idBase58",
297+
"affinity": "TEXT",
298+
"notNull": true
299+
},
300+
{
301+
"fieldPath": "cursorBase58",
302+
"columnName": "cursorBase58",
303+
"affinity": "TEXT",
304+
"notNull": true
305+
},
306+
{
307+
"fieldPath": "conversationIdBase58",
308+
"columnName": "conversationIdBase58",
309+
"affinity": "TEXT",
310+
"notNull": true
311+
},
312+
{
313+
"fieldPath": "dateMillis",
314+
"columnName": "dateMillis",
315+
"affinity": "INTEGER",
316+
"notNull": true
317+
},
318+
{
319+
"fieldPath": "status",
320+
"columnName": "status",
321+
"affinity": "TEXT",
322+
"notNull": true,
323+
"defaultValue": "'Unknown'"
324+
}
325+
],
326+
"primaryKey": {
327+
"autoGenerate": false,
328+
"columnNames": [
329+
"idBase58"
330+
]
331+
},
332+
"indices": [],
333+
"foreignKeys": []
334+
},
335+
{
336+
"tableName": "conversation_intent_id_mapping",
337+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`conversationIdBase58` TEXT NOT NULL, `intentIdBase58` TEXT NOT NULL, PRIMARY KEY(`conversationIdBase58`))",
338+
"fields": [
339+
{
340+
"fieldPath": "conversationIdBase58",
341+
"columnName": "conversationIdBase58",
342+
"affinity": "TEXT",
343+
"notNull": true
344+
},
345+
{
346+
"fieldPath": "intentIdBase58",
347+
"columnName": "intentIdBase58",
348+
"affinity": "TEXT",
349+
"notNull": true
350+
}
351+
],
352+
"primaryKey": {
353+
"autoGenerate": false,
354+
"columnNames": [
355+
"conversationIdBase58"
356+
]
357+
},
358+
"indices": [],
359+
"foreignKeys": []
360+
},
361+
{
362+
"tableName": "message_contents",
363+
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`messageIdBase58` TEXT NOT NULL, `content` TEXT NOT NULL, PRIMARY KEY(`messageIdBase58`, `content`))",
364+
"fields": [
365+
{
366+
"fieldPath": "messageIdBase58",
367+
"columnName": "messageIdBase58",
368+
"affinity": "TEXT",
369+
"notNull": true
370+
},
371+
{
372+
"fieldPath": "content",
373+
"columnName": "content",
374+
"affinity": "TEXT",
375+
"notNull": true
376+
}
377+
],
378+
"primaryKey": {
379+
"autoGenerate": false,
380+
"columnNames": [
381+
"messageIdBase58",
382+
"content"
383+
]
384+
},
385+
"indices": [],
386+
"foreignKeys": []
387+
}
388+
],
389+
"views": [],
390+
"setupQueries": [
391+
"CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
392+
"INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '546bcf41a12f9c2319a18de48d8b02a3')"
393+
]
394+
}
395+
}

0 commit comments

Comments
 (0)