import { create } from 'zustand' import axios from 'axios' import useAuthStore from './useAuthStore' type SubState = { subscriptions: { [key: number]: Subscription } fetch: () => Promise } export default create(set => ({ subscriptions: {}, fetch: async () => { const credential = useAuthStore.getState().credential if (!credential) return try { const res = await axios.get('https://api.feedbin.com/v2/subscriptions.json', { auth: credential }) let subs: { [key: number]: Subscription } = {} for (let i in res.data) { subs[res.data[i].feed_id] = res.data[i] } set({ subscriptions: subs }) // console.log(subs) } catch(e) { console.log("`fetch` (useSubscription) has encounted an error") console.log(e) } } }))