removing unused (future) context integration

This commit is contained in:
balzack 2023-01-11 15:29:08 -08:00
parent afca60e76c
commit 29d3555dc8
6 changed files with 26 additions and 162 deletions

View File

@ -26,36 +26,32 @@ function App() {
<UploadContextProvider> <UploadContextProvider>
<ChannelContextProvider> <ChannelContextProvider>
<CardContextProvider> <CardContextProvider>
<GroupContextProvider> <ProfileContextProvider>
<ArticleContextProvider> <StoreContextProvider>
<ProfileContextProvider> <AccountContextProvider>
<StoreContextProvider> <ViewportContextProvider>
<AccountContextProvider> <AppContextProvider>
<ViewportContextProvider> <AppWrapper>
<AppContextProvider> <Router>
<AppWrapper> <Routes>
<Router> <Route path="/" element={ <Root /> } />
<Routes> <Route path="/admin" element={ <Admin /> } />
<Route path="/" element={ <Root /> } /> <Route path="/login" element={ <Access mode="login" /> } />
<Route path="/admin" element={ <Admin /> } /> <Route path="/create" element={ <Access mode="create" /> } />
<Route path="/login" element={ <Access mode="login" /> } /> <Route path="/session" element={
<Route path="/create" element={ <Access mode="create" /> } /> <ConversationContextProvider>
<Route path="/session" element={ <Session />
<ConversationContextProvider> </ConversationContextProvider>
<Session /> }>
</ConversationContextProvider> </Route>
}> </Routes>
</Route> </Router>
</Routes> </AppWrapper>
</Router> </AppContextProvider>
</AppWrapper> </ViewportContextProvider>
</AppContextProvider> </AccountContextProvider>
</ViewportContextProvider> </StoreContextProvider>
</AccountContextProvider> </ProfileContextProvider>
</StoreContextProvider>
</ProfileContextProvider>
</ArticleContextProvider>
</GroupContextProvider>
</CardContextProvider> </CardContextProvider>
</ChannelContextProvider> </ChannelContextProvider>
</UploadContextProvider> </UploadContextProvider>

View File

@ -1,14 +0,0 @@
import { createContext } from 'react';
import { useArticleContext } from './useArticleContext.hook';
export const ArticleContext = createContext({});
export function ArticleContextProvider({ children }) {
const { state, actions } = useArticleContext();
return (
<ArticleContext.Provider value={{ state, actions }}>
{children}
</ArticleContext.Provider>
);
}

View File

@ -1,14 +0,0 @@
import { createContext } from 'react';
import { useGroupContext } from './useGroupContext.hook';
export const GroupContext = createContext({});
export function GroupContextProvider({ children }) {
const { state, actions } = useGroupContext();
return (
<GroupContext.Provider value={{ state, actions }}>
{children}
</GroupContext.Provider>
);
}

View File

@ -7,8 +7,6 @@ import { addAccount } from 'api/addAccount';
import { getUsername } from 'api/getUsername'; import { getUsername } from 'api/getUsername';
import { AccountContext } from './AccountContext'; import { AccountContext } from './AccountContext';
import { ProfileContext } from './ProfileContext'; import { ProfileContext } from './ProfileContext';
import { ArticleContext } from './ArticleContext';
import { GroupContext } from './GroupContext';
import { CardContext } from './CardContext'; import { CardContext } from './CardContext';
import { ChannelContext } from './ChannelContext'; import { ChannelContext } from './ChannelContext';
import { StoreContext } from './StoreContext'; import { StoreContext } from './StoreContext';
@ -36,15 +34,11 @@ export function useAppContext() {
const profileContext = useContext(ProfileContext); const profileContext = useContext(ProfileContext);
const channelContext = useContext(ChannelContext); const channelContext = useContext(ChannelContext);
const cardContext = useContext(CardContext); const cardContext = useContext(CardContext);
const groupContext = useContext(GroupContext);
const articleContext = useContext(ArticleContext);
const resetData = () => { const resetData = () => {
revision.current = null; revision.current = null;
accountContext.actions.clearToken(); accountContext.actions.clearToken();
profileContext.actions.clearToken(); profileContext.actions.clearToken();
articleContext.actions.clearToken();
groupContext.actions.clearToken();
cardContext.actions.clearToken(); cardContext.actions.clearToken();
channelContext.actions.clearToken(); channelContext.actions.clearToken();
setState({}); setState({});
@ -123,8 +117,6 @@ export function useAppContext() {
if (appRevision) { if (appRevision) {
accountContext.actions.setRevision(appRevision.account); accountContext.actions.setRevision(appRevision.account);
profileContext.actions.setRevision(appRevision.profile); profileContext.actions.setRevision(appRevision.profile);
articleContext.actions.setRevision(appRevision.article);
groupContext.actions.setRevision(appRevision.group);
cardContext.actions.setRevision(appRevision.card); cardContext.actions.setRevision(appRevision.card);
channelContext.actions.setRevision(appRevision.channel); channelContext.actions.setRevision(appRevision.channel);
} }
@ -135,8 +127,6 @@ export function useAppContext() {
accountContext.actions.setToken(token); accountContext.actions.setToken(token);
profileContext.actions.setToken(token); profileContext.actions.setToken(token);
articleContext.actions.setToken(token);
groupContext.actions.setToken(token);
cardContext.actions.setToken(token); cardContext.actions.setToken(token);
channelContext.actions.setToken(token); channelContext.actions.setToken(token);

View File

@ -1,31 +0,0 @@
import { useEffect, useState } from 'react';
export function useArticleContext() {
const [state, setState] = useState({
token: null,
revision: 0,
});
useEffect(() => {
}, []);
const updateState = (value) => {
setState((s) => ({ ...s, ...value }))
}
const actions = {
setToken: (token) => {
updateState({ token });
},
clearToken: () => {
setState({ init: false });
},
setRevision: async (revision) => {
updateState({ revision });
},
}
return { state, actions }
}

View File

@ -1,63 +0,0 @@
import { useState, useRef } from 'react';
import { getGroups } from 'api/getGroups';
export function useGroupContext() {
const [state, setState] = useState({
init: false,
groups: new Map(),
});
const access = useRef(null);
const revision = useRef(null);
const groups = useRef(new Map());
const next = useRef(null);
const updateState = (value) => {
setState((s) => ({ ...s, ...value }))
}
const updateGroups = async () => {
let delta = await getGroups(access.current, revision.current);
for (let group of delta) {
if (group.data) {
groups.current.set(group.id, group);
}
else {
groups.current.delete(group.id);
}
}
}
const setGroups = async (rev) => {
if (next.current == null) {
if (revision.current !== rev) {
await updateGroups();
updateState({ init: true, groups: groups.current });
revision.current = rev;
}
if (next.current != null) {
let r = next.current;
next.current = null;
setGroups(r);
}
}
else {
next.current = rev;
}
}
const actions = {
setToken: (token) => {
access.current = token;
},
clearToken: () => {
access.current = null;
setState({ init: false });
},
setRevision: async (rev) => {
setGroups(rev);
},
}
return { state, actions }
}