import { type Writable, writable } from "svelte/store"; import { GetBills } from "$wails/main/App"; import { main } from "$wails/models"; import { toast } from "svelte-sonner"; async function createStore(): Promise> & { refresh: Function }> { const bills: Map = new Map(); const res = await GetBills(); if (!res.success) { toast.error("Error getting bills " + res.error); } else { for (let i = 0; i < res.data.length; i++) { const bill = res.data[i]; bills.set(bill.id, bill); } } const { subscribe, update, set } = writable(bills); return { subscribe, update, set, refresh: async () => { const res = await GetBills(); if (!res.success) { toast.error("Error getting bills " + res.error); } else { for (let i = 0; i < res.data.length; i++) { const bill = res.data[i]; bills.set(bill.id, bill); } } }, }; } export const billsStore = await createStore();