All checks were successful
Deploy / deploy (push) Successful in 2m51s
Add react-router so each tab is its own path (/opportunities, /travel, /market, /items, …) and a refresh or deep link lands on the same page. Page state is mirrored to the query string so a refresh restores it: - Item Browser: ?q= (search) and ?item= (open item) - Market Data: ?item= (selected item, rebuilt on load) - Opportunities: all filters (city, tiers, focus, premium, sellMode, station fee, sort) in the URL - Travel Planner: ?from=&to=&mode= The server already serves index.html for non-API paths, so deep links work. Sidebar uses NavLink for active state. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
23 lines
493 B
JSON
23 lines
493 B
JSON
{
|
|
"name": "@albion/web",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "tsc --noEmit && vite build",
|
|
"preview": "vite preview"
|
|
},
|
|
"dependencies": {
|
|
"react": "^19.1.0",
|
|
"react-dom": "^19.1.0",
|
|
"react-router-dom": "^7.18.2"
|
|
},
|
|
"devDependencies": {
|
|
"@types/react": "^19.1.0",
|
|
"@types/react-dom": "^19.1.0",
|
|
"@vitejs/plugin-react": "^4.5.0",
|
|
"typescript": "^5.8.0",
|
|
"vite": "^7.0.0"
|
|
}
|
|
}
|