frontend: replace 'constants.ts' with 'App.tsx'

This commit is contained in:
0x1eef 2024-01-14 22:08:10 -03:00
parent 116bf23da3
commit 6563e50279
6 changed files with 28 additions and 27 deletions

View file

@ -0,0 +1,14 @@
import React, { PropsWithChildren } from "react";
import { ApolloClient, ApolloProvider, InMemoryCache } from "@apollo/client";
export function App({children}: PropsWithChildren<{}>) {
const client = new ApolloClient({
uri: "/graphql",
cache: new InMemoryCache(),
});
return (
<ApolloProvider client={client}>
{children}
</ApolloProvider>
)
}

View file

@ -1,5 +0,0 @@
import { InMemoryCache } from "@apollo/client";
export const CLIENT_OPTIONS = {
uri: "/graphql",
cache: new InMemoryCache(),
}

View file

@ -1,15 +1,13 @@
import React from "react"; import React from "react";
import ReactDOM from "react-dom/client"; import ReactDOM from "react-dom/client";
import { App } from "/components/App";
import { Projects } from "/components/Projects"; import { Projects } from "/components/Projects";
import { CLIENT_OPTIONS } from "/constants";
import { ApolloProvider, ApolloClient } from "@apollo/client";
(function () { (function () {
const root = document.querySelector(".react-root")!; const root = document.querySelector(".react-root")!;
const client = new ApolloClient(CLIENT_OPTIONS);
ReactDOM.createRoot(root).render( ReactDOM.createRoot(root).render(
<ApolloProvider client={client}> <App>
<Projects /> <Projects />
</ApolloProvider>, </App>,
); );
})(); })();

View file

@ -1,8 +1,7 @@
import React from "react"; import React from "react";
import ReactDOM from "react-dom/client"; import ReactDOM from "react-dom/client";
import { ApolloProvider, ApolloClient } from "@apollo/client"; import { App } from "/components/App";
import { CLIENT_OPTIONS } from "/constants"; import { Task } from "/components/Task";
import { Task as Component } from "/components/Task";
(function () { (function () {
const params = Object.fromEntries( const params = Object.fromEntries(
@ -11,11 +10,10 @@ import { Task as Component } from "/components/Task";
.split(",") .split(",")
.map(e => e.split("=")), .map(e => e.split("=")),
); );
const client = new ApolloClient(CLIENT_OPTIONS);
const root = document.querySelector(".react-root")!; const root = document.querySelector(".react-root")!;
ReactDOM.createRoot(root).render( ReactDOM.createRoot(root).render(
<ApolloProvider client={client}> <App>
<Component taskId={Number(params.id)} /> <Task taskId={Number(params.id)} />
</ApolloProvider>, </App>,
); );
})(); })();

View file

@ -1,15 +1,13 @@
import React from "react"; import React from "react";
import ReactDOM from "react-dom/client"; import ReactDOM from "react-dom/client";
import { CLIENT_OPTIONS } from "/constants"; import { App } from "/components/App";
import { ApolloClient, ApolloProvider } from "@apollo/client";
import { Task } from "/components/Task"; import { Task } from "/components/Task";
(function () { (function () {
const root = document.querySelector(".react-root")!; const root = document.querySelector(".react-root")!;
const client = new ApolloClient(CLIENT_OPTIONS);
ReactDOM.createRoot(root).render( ReactDOM.createRoot(root).render(
<ApolloProvider client={client}> <App>
<Task /> <Task />
</ApolloProvider>, </App>,
); );
})(); })();

View file

@ -1,15 +1,13 @@
import React from "react"; import React from "react";
import ReactDOM from "react-dom/client"; import ReactDOM from "react-dom/client";
import { CLIENT_OPTIONS } from "/constants"; import { App } from "/components/App";
import { ApolloClient, ApolloProvider } from "@apollo/client";
import { Tasks } from "/components/Tasks"; import { Tasks } from "/components/Tasks";
(function () { (function () {
const root = document.querySelector(".react-root")!; const root = document.querySelector(".react-root")!;
const client = new ApolloClient(CLIENT_OPTIONS);
ReactDOM.createRoot(root).render( ReactDOM.createRoot(root).render(
<ApolloProvider client={client}> <App>
<Tasks /> <Tasks />
</ApolloProvider>, </App>,
); );
})(); })();