uberf-9451: drop old tokens from local storage (#8028)

Signed-off-by: Alexey Zinoviev <alexey.zinoviev@xored.com>
This commit is contained in:
Alexey Zinoviev 2025-02-17 18:13:38 +04:00 committed by GitHub
parent a1bf076977
commit 8022d642b4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
9 changed files with 18 additions and 18 deletions

View File

@ -58,12 +58,12 @@ window.addEventListener('DOMContentLoaded', () => {
})
ipcMain.on('logout', () => {
const tokens = fetchMetadataLocalStorage(login.metadata.LoginTokens)
const tokens = fetchMetadataLocalStorage(login.metadata.LoginTokensV2)
if (tokens !== null) {
const loc = getCurrentLocation()
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete
delete tokens[loc.path[1]]
setMetadataLocalStorage(login.metadata.LoginTokens, tokens)
setMetadataLocalStorage(login.metadata.LoginTokensV2, tokens)
}
setMetadata(presentation.metadata.Token, null)
setMetadataLocalStorage(login.metadata.LastToken, null)

View File

@ -242,12 +242,12 @@ export async function connect (title: string): Promise<Client | undefined> {
}
function clearMetadata (ws: string): void {
const tokens = fetchMetadataLocalStorage(login.metadata.LoginTokens)
const tokens = fetchMetadataLocalStorage(login.metadata.LoginTokensV2)
if (tokens !== null) {
const loc = getCurrentLocation()
// eslint-disable-next-line
delete tokens[loc.path[1]]
setMetadataLocalStorage(login.metadata.LoginTokens, tokens)
setMetadataLocalStorage(login.metadata.LoginTokensV2, tokens)
}
const currentWorkspace = getMetadata(presentation.metadata.WorkspaceUuid)
if (currentWorkspace !== undefined) {

View File

@ -11,7 +11,7 @@ import { workbenchId } from '@hcengineering/workbench'
export async function checkAccess (doc: Doc): Promise<void> {
const loc = getCurrentLocation()
const ws = loc.path[1]
const tokens: Record<string, string> = fetchMetadataLocalStorage(login.metadata.LoginTokens) ?? {}
const tokens: Record<string, string> = fetchMetadataLocalStorage(login.metadata.LoginTokensV2) ?? {}
const token = tokens[ws]
const endpoint = getMetadata(presentation.metadata.Endpoint)
if (token === undefined || endpoint === undefined) return

View File

@ -72,7 +72,7 @@
'auth'
]
if (token === undefined ? !allowedUnauthPages.includes(page) : !pages.includes(page)) {
const tokens = fetchMetadataLocalStorage(login.metadata.LoginTokens)
const tokens = fetchMetadataLocalStorage(login.metadata.LoginTokensV2)
page = tokens != null ? 'login' : 'signup'
}

View File

@ -425,12 +425,12 @@ export async function getPerson (): Promise<[Status, Person | null]> {
}
export function setLoginInfo (loginInfo: WorkspaceLoginInfo): void {
const tokens: Record<string, string> = fetchMetadataLocalStorage(login.metadata.LoginTokens) ?? {}
const tokens: Record<string, string> = fetchMetadataLocalStorage(login.metadata.LoginTokensV2) ?? {}
tokens[loginInfo.workspaceUrl] = loginInfo.token
setMetadata(presentation.metadata.Token, loginInfo.token)
setMetadataLocalStorage(login.metadata.LastToken, loginInfo.token)
setMetadataLocalStorage(login.metadata.LoginTokens, tokens)
setMetadataLocalStorage(login.metadata.LoginTokensV2, tokens)
setMetadataLocalStorage(login.metadata.LoginEndpoint, loginInfo.endpoint)
setMetadataLocalStorage(login.metadata.LoginAccount, loginInfo.account)
}
@ -473,7 +473,7 @@ export async function checkJoined (inviteId: string): Promise<[Status, Workspace
let token = getMetadata(presentation.metadata.Token)
if (token == null) {
const tokens: Record<string, string> = fetchMetadataLocalStorage(login.metadata.LoginTokens) ?? {}
const tokens: Record<string, string> = fetchMetadataLocalStorage(login.metadata.LoginTokensV2) ?? {}
token = Object.values(tokens)[0]
if (token == null) {
return [unknownStatus('Please login'), null]

View File

@ -29,7 +29,7 @@ export const loginId = 'login' as Plugin
export default plugin(loginId, {
metadata: {
AccountsUrl: '' as Asset,
LoginTokens: '' as Metadata<Record<string, string>>,
LoginTokensV2: '' as Metadata<Record<string, string>>,
LastToken: '' as Metadata<string>,
LoginEndpoint: '' as Metadata<string>,
LoginAccount: '' as Metadata<string>,

View File

@ -99,12 +99,12 @@
navigate(loc)
}
function signOut (): void {
const tokens = fetchMetadataLocalStorage(login.metadata.LoginTokens)
const tokens = fetchMetadataLocalStorage(login.metadata.LoginTokensV2)
if (tokens !== null) {
const loc = getCurrentResolvedLocation()
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete
delete tokens[loc.path[1]]
setMetadataLocalStorage(login.metadata.LoginTokens, tokens)
setMetadataLocalStorage(login.metadata.LoginTokensV2, tokens)
}
setMetadata(presentation.metadata.Token, null)
setMetadataLocalStorage(login.metadata.LastToken, null)

View File

@ -77,7 +77,7 @@ export async function connect (title: string): Promise<Client | undefined> {
return
}
}
const tokens: Record<string, string> = fetchMetadataLocalStorage(login.metadata.LoginTokens) ?? {}
const tokens: Record<string, string> = fetchMetadataLocalStorage(login.metadata.LoginTokensV2) ?? {}
let token = tokens[wsUrl]
const selectWorkspace = await getResource(login.function.SelectWorkspace)
@ -101,7 +101,7 @@ export async function connect (title: string): Promise<Client | undefined> {
tokens[wsUrl] = workspaceLoginInfo.token
token = workspaceLoginInfo.token
setMetadataLocalStorage(login.metadata.LoginTokens, tokens)
setMetadataLocalStorage(login.metadata.LoginTokensV2, tokens)
setMetadata(presentation.metadata.WorkspaceUuid, workspaceLoginInfo.workspace)
setMetadata(presentation.metadata.WorkspaceDataId, workspaceLoginInfo.workspaceDataId)
setMetadata(presentation.metadata.Endpoint, workspaceLoginInfo.endpoint)
@ -434,12 +434,12 @@ async function getGlobalPerson (): Promise<GlobalPerson | undefined> {
}
export function clearMetadata (ws: string): void {
const tokens = fetchMetadataLocalStorage(login.metadata.LoginTokens)
const tokens = fetchMetadataLocalStorage(login.metadata.LoginTokensV2)
if (tokens !== null) {
const loc = getCurrentLocation()
// eslint-disable-next-line
delete tokens[loc.path[1]]
setMetadataLocalStorage(login.metadata.LoginTokens, tokens)
setMetadataLocalStorage(login.metadata.LoginTokensV2, tokens)
}
const currentWorkspace = getMetadata(presentation.metadata.WorkspaceUuid)
if (currentWorkspace !== undefined) {

View File

@ -207,13 +207,13 @@ export async function buildNavModel (
}
export function signOut (): void {
const tokens = fetchMetadataLocalStorage(login.metadata.LoginTokens)
const tokens = fetchMetadataLocalStorage(login.metadata.LoginTokensV2)
if (tokens !== null) {
const loc = getCurrentLocation()
const l = loc.path[1]
// eslint-disable-next-line @typescript-eslint/no-dynamic-delete
delete tokens[l]
setMetadataLocalStorage(login.metadata.LoginTokens, tokens)
setMetadataLocalStorage(login.metadata.LoginTokensV2, tokens)
}
setMetadata(presentation.metadata.Token, null)
setMetadataLocalStorage(login.metadata.LastToken, null)