fix eslint and types

This commit is contained in:
João Geonizeli
2021-08-15 12:51:09 -03:00
parent 890fbddd82
commit 3c3d2862d3
22 changed files with 255 additions and 71 deletions

View File

@@ -1,3 +1,4 @@
import type { FC } from "react";
import React, { useContext } from "react";
import { ethers } from "ethers";
@@ -37,7 +38,7 @@ export const useBsc = () => {
return context;
};
export const BscProvider = ({ children }: React.PropsWithChildren<any>) => {
export const BscProvider: FC = ({ children }) => {
const value: BscContext = {
provider,
pancake: {
@@ -46,4 +47,4 @@ export const BscProvider = ({ children }: React.PropsWithChildren<any>) => {
};
return <Context.Provider value={value}>{children}</Context.Provider>;
};
};

View File

@@ -1,9 +1,13 @@
import type { FC } from "react";
import React, { createContext, useContext } from "react";
import { useFragment } from "react-relay";
import { graphql } from "babel-plugin-relay/macro";
import type { UserProvider_user$key } from "./__generated__/UserProvider_user.graphql";
type CurrentUserContext = {
user: {
readonly firstName: string;
firstName: string;
} | null;
isAuthenticated: boolean;
};
@@ -20,13 +24,33 @@ export const useCurrentUser = (): CurrentUserContext => {
};
type Props = {
user: {
readonly firstName: string;
} | null;
userRef: UserProvider_user$key | null;
};
export const UserProvider: FC<Props> = ({ user, children }) => (
<Context.Provider value={{ user, isAuthenticated: !!user }}>
{children}
</Context.Provider>
);
export const UserProvider: FC<Props> = ({ userRef, children }) => {
const userData = useFragment<UserProvider_user$key>(
graphql`
fragment UserProvider_user on User {
firstName
}
`,
userRef
);
const user = userData
? {
firstName: userData.firstName,
}
: null;
return (
<Context.Provider
value={{
user,
isAuthenticated: !!user,
}}
>
{children}
</Context.Provider>
);
};

View File

@@ -0,0 +1,37 @@
/* tslint:disable */
/* eslint-disable */
// @ts-nocheck
import { ReaderFragment } from "relay-runtime";
import { FragmentRefs } from "relay-runtime";
export type UserProvider_user = {
readonly firstName: string;
readonly " $refType": "UserProvider_user";
};
export type UserProvider_user$data = UserProvider_user;
export type UserProvider_user$key = {
readonly " $data"?: UserProvider_user$data;
readonly " $fragmentRefs": FragmentRefs<"UserProvider_user">;
};
const node: ReaderFragment = {
"argumentDefinitions": [],
"kind": "Fragment",
"metadata": null,
"name": "UserProvider_user",
"selections": [
{
"alias": null,
"args": null,
"kind": "ScalarField",
"name": "firstName",
"storageKey": null
}
],
"type": "User",
"abstractKey": null
};
(node as any).hash = '352cdd208485d062f3f7c2e22e287a99';
export default node;