import React, { useEffect } from 'react';
import { Typography } from 'antd';
import Globals from '@features/global/services/globals-tdrive-app-service';
import Languages from '@features/global/services/languages-service';
import InitService from '@features/global/services/init-service';
import LoginService from '@features/auth/login-service';
import Icon from '@components/icon/icon.jsx';
import LoginView from './login-view/login-view';
import Signin from './signin/signin.jsx';
import Error from './error';
import './login.scss';
export default () => {
LoginService.useListener();
Languages.useListener();
const [server_infos_loaded, server_infos] = InitService.useWatcher(() => [
InitService.server_infos_loaded,
InitService.server_infos,
]);
useEffect(() => {
LoginService.init();
document.body.classList.remove('fade_out');
document.body.classList.add('fade_in');
return () => {
document.body.classList.remove('fade_in');
};
}, []);
if (!server_infos_loaded) {
return
;
}
return (
{server_infos_loaded && !server_infos?.configuration?.branding?.name && (
)}
{LoginService.state === 'error' &&
}
{LoginService.state === 'logged_out' &&
}
{LoginService.state === 'signin' &&
}
Tdrive {Globals.version.version_name}
{server_infos_loaded && server_infos?.configuration?.branding?.name && (
{server_infos?.configuration?.branding?.name &&
Languages.t('scenes.login.footer.branding', [
server_infos?.configuration?.branding?.name,
server_infos?.configuration?.branding.link || 'tdrive.app',
])}
window.open('https://drive.twake.app', 'blank')}>
{Languages.t('scenes.login.footer.go_to_tdrive')}
{' - ' + Globals.version.version}
)}
{server_infos_loaded && !server_infos?.configuration?.branding?.name && (
window.open('https://drive.twake.app', 'blank')}
>
{Languages.t('scenes.login.footer.go_to_tdrive')}
)}
{server_infos_loaded && server_infos?.configuration?.help_url && (
window.open(InitService.server_infos?.configuration?.help_url || '', 'blank')
}
className="blue_link fade_in"
>
{Languages.t('general.help')}
)}
);
};