-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathWebApp.tsx
44 lines (37 loc) · 975 Bytes
/
WebApp.tsx
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
import React, { useEffect } from 'react';
import { createHashRouter, RouterProvider } from 'react-router-dom';
import { useWebApp } from '@vkruglikov/react-telegram-web-app';
import AnswersPage from './pages/AnswersPage';
import PreviewPage from './pages/PreviewPage';
import NotFoundPage from './pages/NotFoundPage';
import styles from './WebApp.module.css';
const router = createHashRouter([
{
path: '/',
element: <AnswersPage />,
},
{
path: '/preview/:id',
element: <PreviewPage />,
},
{
path: '*',
element: <NotFoundPage />,
},
]);
const WebApp = () => {
const WebApp = useWebApp();
useEffect(() => {
/**
* https://core.telegram.org/bots/webapps#themeparams
*/
WebApp.setHeaderColor('secondary_bg_color');
WebApp.setBackgroundColor('secondary_bg_color');
}, [WebApp]);
return (
<div className={styles.wrapper}>
<RouterProvider router={router} />
</div>
);
};
export default WebApp;