FIX - TASKER STARTUP: автовосстановление после запуска backend
This commit is contained in:
@@ -4,7 +4,16 @@
|
||||
* See the LICENSE file for details.
|
||||
*/
|
||||
|
||||
export function MaintenanceMessage() {
|
||||
export type TMaintenanceReason = "starting" | "offline" | "unavailable";
|
||||
|
||||
type TMaintenanceMessageProps = {
|
||||
autoRetry?: boolean;
|
||||
reason?: TMaintenanceReason;
|
||||
statusCode?: number;
|
||||
};
|
||||
|
||||
export function MaintenanceMessage(props: TMaintenanceMessageProps) {
|
||||
const { autoRetry = false, reason = "unavailable", statusCode } = props;
|
||||
const linkMap = [
|
||||
{
|
||||
key: "mail_to",
|
||||
@@ -13,24 +22,33 @@ export function MaintenanceMessage() {
|
||||
},
|
||||
];
|
||||
|
||||
const title =
|
||||
reason === "starting"
|
||||
? "Сервисы NODE.DC запускаются."
|
||||
: reason === "offline"
|
||||
? "Нет связи с сервером NODE.DC."
|
||||
: "NODE.DC временно недоступен.";
|
||||
|
||||
const description =
|
||||
reason === "starting"
|
||||
? "Сервер ещё не готов после обновления или перезапуска. NODE.DC подключится автоматически сразу после завершения запуска. Перезагружать страницу не нужно."
|
||||
: reason === "offline"
|
||||
? "Не удалось связаться с сервером. NODE.DC проверяет подключение автоматически и продолжит работу после восстановления связи."
|
||||
: autoRetry
|
||||
? "Сервер временно не может обработать запрос. NODE.DC повторяет подключение автоматически и продолжит работу после восстановления."
|
||||
: "Сервер вернул ошибку, которую нельзя исправить автоматическим повтором. Попробуйте ещё раз или обратитесь в службу поддержки.";
|
||||
|
||||
return (
|
||||
<>
|
||||
<div className="flex flex-col gap-2.5">
|
||||
<h1 className="text-left text-18 font-semibold text-primary">🚧 NODE.DC запустился с ошибкой.</h1>
|
||||
<span className="text-left text-14 font-medium text-secondary">
|
||||
Часть сервисов могла не подняться. Проверьте логи контейнеров и устраните причину. Если нужна помощь,
|
||||
переходите в службу поддержки.
|
||||
</span>
|
||||
<h1 className="text-left text-18 font-semibold text-primary">🚧 {title}</h1>
|
||||
<span className="text-left text-14 font-medium text-secondary">{description}</span>
|
||||
{statusCode && <span className="text-left text-12 text-tertiary">Код ответа сервера: {statusCode}</span>}
|
||||
</div>
|
||||
<div className="mt-1 flex items-center justify-start gap-6">
|
||||
{linkMap.map((link) => (
|
||||
<div key={link.key}>
|
||||
<a
|
||||
href={link.value}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
className="nodedc-error-link text-13"
|
||||
>
|
||||
<a href={link.value} target="_blank" rel="noopener noreferrer" className="nodedc-error-link text-13">
|
||||
{link.label}
|
||||
</a>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user