mirror of
https://github.com/Crosstalk-Solutions/project-nomad.git
synced 2026-04-05 00:06:17 +02:00
fix(UI): gracefully handle legacy docs and knowledge-base paths
This commit is contained in:
parent
f1209b6ef2
commit
461f760880
|
|
@ -23,7 +23,19 @@ export default function ChatSidebar({
|
||||||
onClearHistory,
|
onClearHistory,
|
||||||
isInModal = false,
|
isInModal = false,
|
||||||
}: ChatSidebarProps) {
|
}: 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 (
|
return (
|
||||||
<div className="w-64 bg-gray-50 border-r border-gray-200 flex flex-col h-full">
|
<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>
|
</div>
|
||||||
{isKnowledgeBaseModalOpen && (
|
{isKnowledgeBaseModalOpen && (
|
||||||
<KnowledgeBaseModal onClose={() => setIsKnowledgeBaseModalOpen(false)} />
|
<KnowledgeBaseModal onClose={handleCloseKnowledgeBase} />
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -29,6 +29,7 @@ router.get('/home', [HomeController, 'home'])
|
||||||
router.on('/about').renderInertia('about')
|
router.on('/about').renderInertia('about')
|
||||||
router.get('/chat', [ChatsController, 'inertia'])
|
router.get('/chat', [ChatsController, 'inertia'])
|
||||||
router.get('/maps', [MapsController, 'index'])
|
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', [EasySetupController, 'index'])
|
||||||
router.get('/easy-setup/complete', [EasySetupController, 'complete'])
|
router.get('/easy-setup/complete', [EasySetupController, 'complete'])
|
||||||
|
|
@ -59,11 +60,9 @@ router
|
||||||
router
|
router
|
||||||
.group(() => {
|
.group(() => {
|
||||||
router.get('/:slug', [DocsController, 'show'])
|
router.get('/:slug', [DocsController, 'show'])
|
||||||
router.get('/', ({ inertia }) => {
|
router.get('/', ({ response }) => {
|
||||||
return inertia.render('Docs/Index', {
|
// redirect to /docs/home if accessing root
|
||||||
title: 'Documentation',
|
response.redirect('/docs/home')
|
||||||
content: 'Welcome to the documentation!',
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
.prefix('/docs')
|
.prefix('/docs')
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user