1
0
Fork 0
mirror of synced 2024-09-14 16:27:26 +12:00
budibase/packages/builder/src/helpers/fetchData.js
2021-05-17 13:24:09 +02:00

20 lines
527 B
JavaScript

import { writable } from "svelte/store"
import api from "builderStore/api"
export default function (url) {
const store = writable({ status: "LOADING", data: {}, error: {} })
async function get() {
store.update(u => ({ ...u, status: "LOADING" }))
try {
const response = await api.get(url)
store.set({ data: await response.json(), status: "SUCCESS" })
} catch (e) {
store.set({ data: {}, error: e, status: "ERROR" })
}
}
get()
return { subscribe: store.subscribe, refresh: get }
}