File size: 1,843 Bytes
d7dfeff
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
import { lazy, Suspense} from "react";
import { BrowserRouter as Router, Routes, Route } from "react-router-dom";
import { Toaster} from "react-hot-toast";
import css from "./App.module.css";
import Lottie from "lottie-react";
import LoadingAnimation from "./assets/animations/Loading1.json";
const Playground = lazy(() => import("./pages/Playground/Playground.jsx"));
const NotFound = lazy(() => import("./pages/404/NotFound.jsx"));

function App() {
  return (
    <>
      <Toaster position="top-center" />
      <Router>
        <Routes>
          <Route
            path="/"
            element={
              <>
                <Suspense
                  fallback={
                    <>
                      <div className={`${css.animation}`}>
                        <Lottie
                          animationData={LoadingAnimation}
                          loop={true}
                          className={css.lottie}
                        />
                      </div>
                    </>
                  }
                >
                  <Playground />
                </Suspense>
              </>
            }
          />
          <Route
            path="/*"
            element={
              <>
                <Suspense
                  fallback={
                    <>
                      <div className={`${css.animation}`}>
                        <Lottie
                          animationData={LoadingAnimation}
                          loop={true}
                          className={css.lottie}
                        />
                      </div>
                    </>
                  }
                >
                  <NotFound />
                </Suspense>
              </>
            }
          />
        </Routes>
      </Router>
    </>
  );
}

export default App;