aboutsummaryrefslogtreecommitdiffstats
path: root/src/routes/(app)/apps/new/+page.server.ts
blob: 7c335f8c3bdcc3429b9b54d45bf29e0d244970ba (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
import getRates from "$lib/rates";
import { auth, fd, post } from "$lib/utils";
import { fail, redirect } from "@sveltejs/kit";

export const load = async ({ parent, url }) => {
	const app = {
		name: url.searchParams.get("name"),
		pubkey: url.searchParams.get("pubkey"),
		max_amount: url.searchParams.get("max_amount"),
		budget_renewal: url.searchParams.get("budget_renewal"),
	};

	const { user } = await parent();
	const rates = await getRates();
	const rate = rates[user.currency];
	return { app, rate };
};

export const actions = {
	default: async ({ cookies, request }) => {
		try {
			const body = await fd(request);
			await post("/app", body, auth(cookies));
		} catch (e) {
			const { message: error } = e as Error;
			return fail(400, { error });
		}

		redirect(307, "/settings/nostr");
	},
};