From fe0fe074ec8e8959bbdeff0ccc7f68d20b30e963 Mon Sep 17 00:00:00 2001 From: ivar Date: Fri, 26 Dec 2025 13:18:15 +0100 Subject: WIP form --- app/src/routes/+page.server.ts | 5 +- app/src/routes/+page.svelte | 88 +++++++++++++++++++++------------ app/src/routes/actual.remote.ts | 22 --------- app/src/routes/sb1-authorize/+server.ts | 7 ++- app/src/routes/sb1.remote.ts | 5 -- 5 files changed, 63 insertions(+), 64 deletions(-) delete mode 100644 app/src/routes/actual.remote.ts (limited to 'app/src/routes') diff --git a/app/src/routes/+page.server.ts b/app/src/routes/+page.server.ts index 0d6016b..5d3e857 100644 --- a/app/src/routes/+page.server.ts +++ b/app/src/routes/+page.server.ts @@ -1,11 +1,12 @@ import type { PageServerLoad } from './$types'; -import { get_budgets } from '$lib/server/actual'; +import { get_accounts, get_budgets } from '$lib/server/actual'; import sb1 from "$lib/server/sb1" export const load = (async () => { return { actual: { - meta: await get_budgets() + budgets: await get_budgets(), + accounts: await get_accounts(), }, sb1: { accounts: (await sb1.data.get_accounts())?.accounts diff --git a/app/src/routes/+page.svelte b/app/src/routes/+page.svelte index 26db3e4..7b0a495 100644 --- a/app/src/routes/+page.svelte +++ b/app/src/routes/+page.svelte @@ -1,54 +1,80 @@
{#if data.sb1.accounts?.length} - - +
+

Importer

+
+

Budsjett

+ {#each data.actual.budgets as budget} + {@const id = `budget-${budget.id}`} + +
+ {/each} +

Kontoer

+ {#each data.sb1.accounts as account} + {@const actualId = `mapping-${account.key}-actual`} +
+ {account.name} + + + +
+ {/each} +

Ellers

+ +
+

+ +
+
+

Annet

+ {:else} {/if} - - {#if data.actual.meta} -
{JSON.stringify(data.actual.meta, null, 2)}
- {/if}
- - diff --git a/app/src/routes/actual.remote.ts b/app/src/routes/actual.remote.ts deleted file mode 100644 index 9560d4d..0000000 --- a/app/src/routes/actual.remote.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { command, query } from "$app/server"; -import { ACTUAL_HOST, ACTUAL_PASS } from "$env/static/private"; -import * as actual from "@actual-app/api" -import { existsSync, mkdirSync } from "node:fs"; -import path from "node:path"; - -async function init_actual() { - const dataDir = path.resolve(import.meta.dirname, "actualDataDir"); - - if (!existsSync(dataDir)) mkdirSync(dataDir); - - return actual.init({ - password: ACTUAL_PASS, - serverURL: ACTUAL_HOST, - dataDir: dataDir - }) -} - -export const get_actual_meta = query(async () => { - await init_actual() - return await actual.getBudgets() -}) diff --git a/app/src/routes/sb1-authorize/+server.ts b/app/src/routes/sb1-authorize/+server.ts index e08db3e..b3a0cf7 100644 --- a/app/src/routes/sb1-authorize/+server.ts +++ b/app/src/routes/sb1-authorize/+server.ts @@ -31,15 +31,14 @@ export const GET: RequestHandler = async ({ url }) => { body: fd }) - const text = await response.text() + const json = await response.json() if (response.ok) { const epoch = Temporal.Now.instant().epochMilliseconds - await db.update(syncSession).set({ tokens: text, accessTokenCreated: epoch, refreshTokenCreated: epoch }).where(eq(syncSession.id, id)) + await db.update(syncSession).set({ tokens: json, accessTokenCreated: epoch.toString(), refreshTokenCreated: epoch.toString() }).where(eq(syncSession.id, id)) redirect(302, "/") } else { - console.error(text) - return new Response(text) + return new Response(json) } return new Response() diff --git a/app/src/routes/sb1.remote.ts b/app/src/routes/sb1.remote.ts index 9a2167e..1ee0155 100644 --- a/app/src/routes/sb1.remote.ts +++ b/app/src/routes/sb1.remote.ts @@ -8,10 +8,6 @@ const init_auth_session = command(async () => { return await sb1.auth.init_auth_session() }) -const is_ready = query(() => { - return sb1.auth.is_ready() -}) - const get_accounts = query(() => { return sb1.data.get_accounts() }) @@ -35,7 +31,6 @@ const refresh_tokem = command(async () => { export { refresh_tokem, init_auth_session, - is_ready, get_accounts, get_transactions, clear_auth_session, -- cgit v1.3