feat: primereact lib
This commit is contained in:
37
src/app.tsx
37
src/app.tsx
@@ -1,9 +1,14 @@
|
||||
import { FunctionComponent } from "preact";
|
||||
import { ErrorBoundary, lazy, LocationProvider, Route, Router, useLocation } from "preact-iso";
|
||||
import "preact/debug";
|
||||
import { ru } from "primelocale/js/ru.js";
|
||||
import { addLocale, locale, PrimeReactProvider } from "primereact/api";
|
||||
import { useMountEffect } from "primereact/hooks";
|
||||
import Tailwind from "primereact/passthrough/tailwind";
|
||||
import Page404 from "./pages/404";
|
||||
import LoginPage from "./pages/login";
|
||||
import { AppProvider, useAppContext } from "./providers/AuthProvider";
|
||||
import { cn } from "./utils/class-merge";
|
||||
|
||||
const HomePage: FunctionComponent = () => {
|
||||
const { route } = useLocation();
|
||||
@@ -14,18 +19,30 @@ const HomePage: FunctionComponent = () => {
|
||||
};
|
||||
|
||||
export function App() {
|
||||
useMountEffect(() => {
|
||||
addLocale("ru", ru);
|
||||
locale("ru");
|
||||
});
|
||||
return (
|
||||
<AppProvider>
|
||||
<LocationProvider>
|
||||
<ErrorBoundary>
|
||||
<Router>
|
||||
<Route path="/" component={HomePage} />
|
||||
<Route path="/login" component={LoginPage} />
|
||||
<Route path="/profile/*" component={lazy(() => import("./pages/profile"))} />
|
||||
<Route default component={() => <Page404 />} />
|
||||
</Router>
|
||||
</ErrorBoundary>
|
||||
</LocationProvider>
|
||||
<PrimeReactProvider
|
||||
value={{
|
||||
unstyled: true,
|
||||
pt: Tailwind,
|
||||
ptOptions: { mergeProps: true, mergeSections: true, classNameMergeFunction: cn },
|
||||
}}
|
||||
>
|
||||
<LocationProvider>
|
||||
<ErrorBoundary>
|
||||
<Router>
|
||||
<Route path="/" component={HomePage} />
|
||||
<Route path="/login" component={LoginPage} />
|
||||
<Route path="/profile/*" component={lazy(() => import("./pages/profile"))} />
|
||||
<Route default component={() => <Page404 />} />
|
||||
</Router>
|
||||
</ErrorBoundary>
|
||||
</LocationProvider>
|
||||
</PrimeReactProvider>
|
||||
</AppProvider>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user