Files
homaroma/apps/spa/src/App.tsx
T

60 lines
2.3 KiB
TypeScript

import { useEffect } from 'react'
import { BrowserRouter, Routes, Route } from 'react-router-dom'
import ScrollToTop from './components/ScrollToTop'
import { initLiff } from './lib/liff'
import HomePage from './pages/HomePage'
import ShopPage from './pages/ShopPage'
import CategoryPage from './pages/CategoryPage'
import ProductDetailPage from './pages/ProductDetailPage'
import SearchPage from './pages/SearchPage'
import FaqPage from './pages/FaqPage'
import ScentGuidePage from './pages/ScentGuidePage'
import ArticleReaderPage from './pages/ArticleReaderPage'
import ContactPage from './pages/ContactPage'
import AboutPage from './pages/AboutPage'
import NotFoundPage from './pages/NotFoundPage'
import CheckoutPage from './pages/CheckoutPage'
import CouponsPage from './pages/CouponsPage'
import OrderSuccessPage from './pages/OrderSuccessPage'
import TrackOrderPage from './pages/TrackOrderPage'
import WishlistPage from './pages/WishlistPage'
import CartDrawer from './components/CartDrawer'
function App() {
useEffect(() => {
const liffId = import.meta.env.VITE_LIFF_ID;
if (liffId) {
initLiff(liffId);
} else {
console.warn("VITE_LIFF_ID is not defined in environment variables. LINE Login won't work.");
}
}, []);
return (
<BrowserRouter>
<ScrollToTop />
<CartDrawer />
<Routes>
<Route path="/" element={<HomePage />} />
<Route path="/shop" element={<ShopPage />} />
<Route path="/category/:id" element={<CategoryPage />} />
<Route path="/products/:id" element={<ProductDetailPage />} />
<Route path="/coupons" element={<CouponsPage />} />
<Route path="/checkout" element={<CheckoutPage />} />
<Route path="/order/:id" element={<OrderSuccessPage />} />
<Route path="/track" element={<TrackOrderPage />} />
<Route path="/wishlist" element={<WishlistPage />} />
<Route path="/search" element={<SearchPage />} />
<Route path="/faq" element={<FaqPage />} />
<Route path="/scent-guide" element={<ScentGuidePage />} />
<Route path="/article/:slug" element={<ArticleReaderPage />} />
<Route path="/contact" element={<ContactPage />} />
<Route path="/about" element={<AboutPage />} />
<Route path="*" element={<NotFoundPage />} />
</Routes>
</BrowserRouter>
)
}
export default App