/** * Copyright (c) 2023-present Plane Software, Inc. and contributors * SPDX-License-Identifier: AGPL-3.0-only * See the LICENSE file for details. */ 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", label: "Служба поддержки", value: "https://nodedc.dctouch.ru/", }, ]; 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 ( <>