This commit is contained in:
2025-05-29 01:00:01 +09:00
parent 03c2434236
commit ef38202815
14 changed files with 1417 additions and 36 deletions
+22 -16
View File
@@ -8,6 +8,8 @@ import PostPage from './pages/PostPage'
import PostDetailPage from './pages/PostDetailPage'
import { API_BASE_URL } from './config'
import axios from 'axios'
import { Toaster } from '@/components/ui/toaster'
import { camelizeKeys } from 'humps'
type Tag = { id: number
name: string
@@ -33,10 +35,11 @@ const App = () => {
const createUser = () => (
axios.post (`${ API_BASE_URL }/users`)
.then (res => {
if (res.data.code)
{
localStorage.setItem ('user_code', res.data.code)
setUser (res.data)
setUser (camelizeKeys (res.data.user))
}
}))
@@ -46,7 +49,7 @@ const App = () => {
void (axios.post (`${ API_BASE_URL }/users/verify`, { code })
.then (res => {
if (res.data.valid)
setUser (res.data.user)
setUser (camelizeKeys (res.data.user))
else
createUser ()
}))
@@ -58,21 +61,24 @@ const App = () => {
}, [])
return (
<Router>
<div className="flex flex-col h-screen w-screen">
<TopNav user={user} />
<div className="flex flex-1">
<TagSidebar posts={posts} setPosts={setPosts} />
<main className="flex-1 overflow-y-auto p-4">
<Routes>
<Route path="/posts/:id" element={<PostDetailPage posts={posts} setPosts={setPosts} />} />
<Route path="/tags/:tag" element={<TagPage />} />
<Route path="*" element={<PostPage posts={posts} setPosts={setPosts} />} />
</Routes>
</main>
<>
<Router>
<div className="flex flex-col h-screen w-screen">
<TopNav user={user} setUser={setUser} />
<div className="flex flex-1">
<TagSidebar posts={posts} setPosts={setPosts} />
<main className="flex-1 overflow-y-auto p-4">
<Routes>
<Route path="/posts/:id" element={<PostDetailPage posts={posts} setPosts={setPosts} />} />
<Route path="/tags/:tag" element={<TagPage />} />
<Route path="*" element={<PostPage posts={posts} setPosts={setPosts} />} />
</Routes>
</main>
</div>
</div>
</div>
</Router>)
</Router>
<Toaster />
</>)
}