feat: allow running elk with a single server (#1606)
This commit is contained in:
parent
61428cd9cd
commit
53d0812efd
22 changed files with 232 additions and 79 deletions
|
@ -5,16 +5,18 @@ export default defineNuxtRouteMiddleware(async (to, from) => {
|
|||
if (!('server' in to.params))
|
||||
return
|
||||
|
||||
const server = to.params.server as string || currentServer.value
|
||||
const user = currentUser.value
|
||||
const masto = useMasto()
|
||||
if (!user) {
|
||||
if (from.params.server !== to.params.server)
|
||||
loginTo(masto, { server: to.params.server as string })
|
||||
const fromServer = from.params.server || currentServer.value
|
||||
if (fromServer !== server)
|
||||
loginTo(masto, { server })
|
||||
return
|
||||
}
|
||||
|
||||
// No need to additionally resolve an id if we're already logged in
|
||||
if (user.server === to.params.server)
|
||||
if (user.server === server)
|
||||
return
|
||||
|
||||
// Tags don't need to be redirected to a local id
|
||||
|
@ -22,7 +24,7 @@ export default defineNuxtRouteMiddleware(async (to, from) => {
|
|||
return
|
||||
|
||||
// Handle redirecting to new permalink structure for users with old links
|
||||
if (!to.params.server) {
|
||||
if (!useAppConfig().singleInstanceServer && !to.params.server) {
|
||||
return {
|
||||
...to,
|
||||
params: {
|
10
middleware/2.single-instance.global.ts
Normal file
10
middleware/2.single-instance.global.ts
Normal file
|
@ -0,0 +1,10 @@
|
|||
export default defineNuxtRouteMiddleware(async (to) => {
|
||||
if (process.server || !useAppConfig().singleInstanceServer)
|
||||
return
|
||||
|
||||
if (to.params.server) {
|
||||
const newTo = { ...to }
|
||||
delete newTo.params.server
|
||||
return newTo
|
||||
}
|
||||
})
|
|
@ -1,6 +1,7 @@
|
|||
export default defineNuxtRouteMiddleware((to) => {
|
||||
if (process.server)
|
||||
return
|
||||
|
||||
if (to.path === '/signin/callback')
|
||||
return
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue