Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
canifa_note
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Vũ Hoàng Anh
canifa_note
Commits
98859eb5
Commit
98859eb5
authored
Mar 03, 2026
by
Steven
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix(routing): redirect unauthenticated users to /explore when public visibility is allowed
parent
737acbba
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
11 additions
and
2 deletions
+11
-2
RootLayout.tsx
web/src/layouts/RootLayout.tsx
+11
-2
No files found.
web/src/layouts/RootLayout.tsx
View file @
98859eb5
...
@@ -2,26 +2,35 @@ import { useEffect, useMemo } from "react";
...
@@ -2,26 +2,35 @@ import { useEffect, useMemo } from "react";
import
{
Outlet
,
useLocation
,
useSearchParams
}
from
"react-router-dom"
;
import
{
Outlet
,
useLocation
,
useSearchParams
}
from
"react-router-dom"
;
import
usePrevious
from
"react-use/lib/usePrevious"
;
import
usePrevious
from
"react-use/lib/usePrevious"
;
import
Navigation
from
"@/components/Navigation"
;
import
Navigation
from
"@/components/Navigation"
;
import
{
useInstance
}
from
"@/contexts/InstanceContext"
;
import
{
useMemoFilterContext
}
from
"@/contexts/MemoFilterContext"
;
import
{
useMemoFilterContext
}
from
"@/contexts/MemoFilterContext"
;
import
useCurrentUser
from
"@/hooks/useCurrentUser"
;
import
useCurrentUser
from
"@/hooks/useCurrentUser"
;
import
useNavigateTo
from
"@/hooks/useNavigateTo"
;
import
useMediaQuery
from
"@/hooks/useMediaQuery"
;
import
useMediaQuery
from
"@/hooks/useMediaQuery"
;
import
{
cn
}
from
"@/lib/utils"
;
import
{
cn
}
from
"@/lib/utils"
;
import
{
redirectOnAuthFailure
}
from
"@/utils/auth-redirect"
;
import
{
redirectOnAuthFailure
}
from
"@/utils/auth-redirect"
;
import
{
ROUTES
}
from
"@/router/routes"
;
const
RootLayout
=
()
=>
{
const
RootLayout
=
()
=>
{
const
location
=
useLocation
();
const
location
=
useLocation
();
const
[
searchParams
]
=
useSearchParams
();
const
[
searchParams
]
=
useSearchParams
();
const
sm
=
useMediaQuery
(
"sm"
);
const
sm
=
useMediaQuery
(
"sm"
);
const
currentUser
=
useCurrentUser
();
const
currentUser
=
useCurrentUser
();
const
navigateTo
=
useNavigateTo
();
const
{
memoRelatedSetting
}
=
useInstance
();
const
{
removeFilter
}
=
useMemoFilterContext
();
const
{
removeFilter
}
=
useMemoFilterContext
();
const
pathname
=
useMemo
(()
=>
location
.
pathname
,
[
location
.
pathname
]);
const
pathname
=
useMemo
(()
=>
location
.
pathname
,
[
location
.
pathname
]);
const
prevPathname
=
usePrevious
(
pathname
);
const
prevPathname
=
usePrevious
(
pathname
);
useEffect
(()
=>
{
useEffect
(()
=>
{
if
(
!
currentUser
)
{
if
(
!
currentUser
)
{
redirectOnAuthFailure
();
if
(
pathname
===
ROUTES
.
ROOT
&&
!
memoRelatedSetting
.
disallowPublicVisibility
)
{
navigateTo
(
ROUTES
.
EXPLORE
);
}
else
{
redirectOnAuthFailure
();
}
}
}
},
[
currentUser
]);
},
[
currentUser
,
pathname
,
memoRelatedSetting
.
disallowPublicVisibility
,
navigateTo
]);
useEffect
(()
=>
{
useEffect
(()
=>
{
// When the route changes and there is no filter in the search params, remove all filters
// When the route changes and there is no filter in the search params, remove all filters
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment