fix(UI): gracefully handle legacy docs and knowledge-base paths

This commit is contained in:
Jake Turner 2026-02-18 22:46:23 +00:00 committed by Jake Turner
parent 43ebaa93c1
commit e75d54bd69
2 changed files with 18 additions and 7 deletions

View File

@ -23,7 +23,19 @@ export default function ChatSidebar({
onClearHistory,
isInModal = false,
}: ChatSidebarProps) {
const [isKnowledgeBaseModalOpen, setIsKnowledgeBaseModalOpen] = useState(false)
const [isKnowledgeBaseModalOpen, setIsKnowledgeBaseModalOpen] = useState(
() => new URLSearchParams(window.location.search).get('knowledge_base') === 'true'
)
function handleCloseKnowledgeBase() {
setIsKnowledgeBaseModalOpen(false)
const params = new URLSearchParams(window.location.search)
if (params.has('knowledge_base')) {
params.delete('knowledge_base')
const newUrl = [window.location.pathname, params.toString()].filter(Boolean).join('?')
window.history.replaceState(window.history.state, '', newUrl)
}
}
return (
<div className="w-64 bg-gray-50 border-r border-gray-200 flex flex-col h-full">
@ -127,7 +139,7 @@ export default function ChatSidebar({
)}
</div>
{isKnowledgeBaseModalOpen && (
<KnowledgeBaseModal onClose={() => setIsKnowledgeBaseModalOpen(false)} />
<KnowledgeBaseModal onClose={handleCloseKnowledgeBase} />
)}
</div>
)

View File

@ -29,6 +29,7 @@ router.get('/home', [HomeController, 'home'])
router.on('/about').renderInertia('about')
router.get('/chat', [ChatsController, 'inertia'])
router.get('/maps', [MapsController, 'index'])
router.on('/knowledge-base').redirectToPath('/chat?knowledge_base=true') // redirect for legacy knowledge-base links
router.get('/easy-setup', [EasySetupController, 'index'])
router.get('/easy-setup/complete', [EasySetupController, 'complete'])
@ -59,11 +60,9 @@ router
router
.group(() => {
router.get('/:slug', [DocsController, 'show'])
router.get('/', ({ inertia }) => {
return inertia.render('Docs/Index', {
title: 'Documentation',
content: 'Welcome to the documentation!',
})
router.get('/', ({ response }) => {
// redirect to /docs/home if accessing root
response.redirect('/docs/home')
})
})
.prefix('/docs')