blob: d6fd90834331383ad904a8a6df6e2346286e5fb9 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
import { db } from "$lib/server/db";
import { SyncSessionTable } from "$lib/server/db/schema";
import { command, query } from "$app/server";
import sb1 from "$lib/server/sb1";
import actual from "$lib/server/actual";
import { ImportForm } from "$lib/shared";
const init_auth_session = command(async () => {
return await sb1.auth.init_auth_session()
})
const clear_auth_session = query(async () => {
await db.delete(SyncSessionTable)
})
const do_import = command(ImportForm, async (form) => {
for (const mapping of form.mappings) {
const transactions = await sb1.data.get_transactions(mapping.sb1Id)
if (!transactions?.length) continue
console.log(await actual.budget.import_transactions(mapping.actualId, transactions, form.dryRun))
}
})
const init_sb1 = command(async () => {
return await sb1.init()
})
const init_actual = command(async () => {
return await actual.init()
})
export {
init_auth_session,
do_import,
init_actual,
init_sb1,
clear_auth_session
}
|