1
0
Fork 0
mirror of https://github.com/muerwre/vault-frontend.git synced 2025-04-25 12:56:41 +07:00

added user context

This commit is contained in:
Fedor Katurov 2021-11-19 16:34:09 +07:00
parent f631f79654
commit e881512f63
13 changed files with 116 additions and 160 deletions

View file

@ -1,16 +1,11 @@
import { IComment, IFile, INode } from '~/redux/types';
import { IUser } from '~/redux/auth/types';
import { IComment, IFile } from '~/redux/types';
import React, { createContext, FC, useContext } from 'react';
import { EMPTY_USER } from '~/redux/auth/constants';
import { EMPTY_NODE } from '~/redux/node/constants';
export interface CommentProviderProps {
node: INode;
user: IUser;
// user: IUser;
comments: IComment[];
count: number;
lastSeenCurrent?: string;
isLoadingNode: boolean;
isLoadingComments: boolean;
onShowImageModal: (images: IFile[], index: number) => void;
onLoadMoreComments: () => void;
@ -18,12 +13,10 @@ export interface CommentProviderProps {
}
const CommentContext = createContext<CommentProviderProps>({
node: EMPTY_NODE,
user: EMPTY_USER,
// user: EMPTY_USER,
comments: [],
count: 0,
lastSeenCurrent: undefined,
isLoadingNode: false,
isLoadingComments: false,
onShowImageModal: () => {},
onLoadMoreComments: () => {},

View file

@ -6,8 +6,8 @@ import React, { createContext, FC, useContext } from 'react';
export interface NodeContextProps {
node: INode;
related: INodeRelated;
isUser: boolean;
isLoading: boolean;
// isUser: boolean;
// user: IUser;
// isLoadingComments: boolean;
// lastSeenCurrent?: string;
@ -24,9 +24,10 @@ export interface NodeContextProps {
export const NodeContext = createContext<NodeContextProps>({
node: EMPTY_NODE,
related: { albums: {}, similar: [] },
isUser: false,
isLoading: false,
// UserContext
// isUser: false,
// CommentContext
// user: EMPTY_USER,
// lastSeenCurrent: undefined,

View file

@ -0,0 +1,11 @@
import React, { createContext, FC, useContext } from 'react';
import { IUser } from '~/redux/auth/types';
import { EMPTY_USER } from '~/redux/auth/constants';
const UserContext = createContext<IUser>(EMPTY_USER);
export const UserProvider: FC<{ user: IUser }> = ({ children, user }) => (
<UserContext.Provider value={user}>{children}</UserContext.Provider>
);
export const useUserContext = () => useContext(UserContext);