import { create } from 'zustand'; const useAppStore = create((set) => ({ captchaResponse: '', setCaptchaResponse: (response) => set({ captchaResponse: response }), bodyStyle: JSON.parse(localStorage.getItem('bodyStyle')) || { background: '#ffe url(/assets/fade.png) top repeat-x', color: 'maroon', fontFamily: 'Helvetica, Arial, sans-serif', }, setBodyStyle: (bodyStyle) => { localStorage.setItem('bodyStyle', JSON.stringify(bodyStyle)); set(() => ({ bodyStyle })); }, defaultSubplebbits: [], setDefaultSubplebbits: (subplebbits) => set({ defaultSubplebbits: subplebbits }), isSettingsOpen: false, setIsSettingsOpen: (isOpen) => set({ isSettingsOpen: isOpen }), selectedAddress: '', setSelectedAddress: (address) => set({ selectedAddress: address }), selectedStyle: localStorage.getItem('selectedStyle') || 'Yotsuba', setSelectedStyle: (style) => { localStorage.setItem('selectedStyle', style); set({ selectedStyle: style }); }, selectedThread: '', setSelectedThread: (thread) => set({ selectedThread: thread }), selectedTitle: '', setSelectedTitle: (title) => set({ selectedTitle: title }), showPostForm: false, setShowPostForm: (show) => set({ showPostForm: show }), showPostFormLink: true, setShowPostFormLink: (show) => set({ showPostFormLink: show }), })); export default useAppStore;