mirror of
https://git.mirrors.martin98.com/https://github.com/infiniflow/ragflow.git
synced 2025-04-19 20:50:00 +08:00

### What problem does this PR solve? feat: Support for conversational streaming #709 ### Type of change - [x] New Feature (non-breaking change which adds functionality)
59 lines
1.6 KiB
TypeScript
59 lines
1.6 KiB
TypeScript
import { Authorization, Token, UserInfo } from '@/constants/authorization';
|
|
import { getSearchValue } from './commonUtil';
|
|
const KeySet = [Authorization, Token, UserInfo];
|
|
|
|
const storage = {
|
|
getAuthorization: () => {
|
|
return localStorage.getItem(Authorization);
|
|
},
|
|
getToken: () => {
|
|
return localStorage.getItem(Token);
|
|
},
|
|
getUserInfo: () => {
|
|
return localStorage.getItem(UserInfo);
|
|
},
|
|
getUserInfoObject: () => {
|
|
return JSON.parse(localStorage.getItem('userInfo') || '');
|
|
},
|
|
setAuthorization: (value: string) => {
|
|
localStorage.setItem(Authorization, value);
|
|
},
|
|
setToken: (value: string) => {
|
|
localStorage.setItem(Token, value);
|
|
},
|
|
setUserInfo: (value: string | Record<string, unknown>) => {
|
|
let valueStr = typeof value !== 'string' ? JSON.stringify(value) : value;
|
|
localStorage.setItem(UserInfo, valueStr);
|
|
},
|
|
setItems: (pairs: Record<string, string>) => {
|
|
Object.entries(pairs).forEach(([key, value]) => {
|
|
localStorage.setItem(key, value);
|
|
});
|
|
},
|
|
removeAuthorization: () => {
|
|
localStorage.removeItem(Authorization);
|
|
},
|
|
removeAll: () => {
|
|
KeySet.forEach((x) => {
|
|
localStorage.removeItem(x);
|
|
});
|
|
},
|
|
setLanguage: (lng: string) => {
|
|
localStorage.setItem('lng', lng);
|
|
},
|
|
getLanguage: (): string => {
|
|
return localStorage.getItem('lng') as string;
|
|
},
|
|
};
|
|
|
|
export const getAuthorization = () => {
|
|
const sharedId = getSearchValue('shared_id');
|
|
const authorization = sharedId
|
|
? 'Bearer ' + sharedId
|
|
: storage.getAuthorization() || '';
|
|
|
|
return authorization;
|
|
};
|
|
|
|
export default storage;
|