74 lines
1.5 KiB
TypeScript
74 lines
1.5 KiB
TypeScript
export interface UserInfo {
|
|
username: string;
|
|
password: string;
|
|
realm: string;
|
|
webpucUrl: string;
|
|
}
|
|
|
|
export default function useLoginModule() {
|
|
/**
|
|
* login
|
|
* @returns
|
|
*/
|
|
const login = (userInfo: UserInfo) => {
|
|
return window.lemon.login.login(userInfo);
|
|
};
|
|
|
|
/**
|
|
* logout
|
|
* @returns
|
|
*/
|
|
const logout = () => {
|
|
return window.lemon.login.logout();
|
|
};
|
|
|
|
/**
|
|
* get login account infomation
|
|
* @returns
|
|
*/
|
|
const getLoginAccountInfo = () => {
|
|
return window.lemon.login.getLoginAccountInfo();
|
|
};
|
|
|
|
/**
|
|
* Connect Websocket
|
|
* @returns
|
|
*/
|
|
const reConnectWebsocket = (reConnectInfo) => {
|
|
return window.lemon.login.reConnectWebsocket(reConnectInfo);
|
|
};
|
|
|
|
/**
|
|
* get the account login status
|
|
* @returns ture is login in, false is not logged in
|
|
*/
|
|
const isLogin = () => {
|
|
return window.lemon.login.isLogin();
|
|
};
|
|
|
|
/**
|
|
* add login status change listener
|
|
* @returns callbackid
|
|
*/
|
|
const addLoginStatusChangeListener = (onLoginStatusChange) => {
|
|
return window.lemon.login.addLoginStatusChangeListener(onLoginStatusChange);
|
|
};
|
|
|
|
/**
|
|
* remove login status change listener
|
|
*/
|
|
const removeLoginStatusChangeListener = (loginStatusGuid: string) => {
|
|
window.lemon.login.removeLoginStatusChangeListener(loginStatusGuid);
|
|
};
|
|
|
|
return {
|
|
login,
|
|
logout,
|
|
reConnectWebsocket,
|
|
getLoginAccountInfo,
|
|
isLogin,
|
|
addLoginStatusChangeListener,
|
|
removeLoginStatusChangeListener,
|
|
};
|
|
}
|