/*
    Парус 8 - Панели мониторинга - ПУП - Информация о проектах
    Список проектов: дополнительная разметка и вёрстка клиентских элементов
*/
//---------------------
//Подключение библиотек
//---------------------
import React from "react"; //Классы React
import { Icon, Stack, Paper, Link } from "@mui/material"; //Интерфейсные элементы
import { P8P_DATA_GRID_MORE_HEIGHT } from "../../components/p8p_data_grid"; //Таблица данных
import { APP_BAR_HEIGHT } from "../../components/p8p_app_workspace"; //Заголовок страницы
import { APP_STYLES } from "../../../app.styles"; //Типовые стили
import { COMMON_STYLES, formatCostStatusValue, formatCostReadyValue } from "./layouts"; //Общие стили и разметка панели
import { Stages } from "./stages"; //Компонент "Этапы проекта"
//---------
//Константы
//---------
//Высота фильтра (пиксели)
const FILTER_HEIGHT = "60px";
//Стили
const STYLES = {
    DATA_GRID_CONTAINER: morePages => ({
        height: `calc(100vh - ${APP_BAR_HEIGHT} - ${FILTER_HEIGHT} - ${morePages ? P8P_DATA_GRID_MORE_HEIGHT : "0px"} - 8px)`,
        ...APP_STYLES.SCROLL
    })
};
//-----------
//Тело модуля
//-----------
//Формирование значения для колонки "Состояние" проекта
const formatPrjStateValue = value => {
    const [text, icon] =
        value == 0
            ? ["Зарегистрирован", "app_registration"]
            : value == 1
            ? ["Открыт", "lock_open"]
            : value == 2
            ? ["Остановлен", "do_not_disturb_on"]
            : value == 3
            ? ["Закрыт", "lock_outline"]
            : value == 4
            ? ["Согласован", "thumb_up_alt"]
            : ["Исполнение прекращено", "block"];
    return (
        
            
                {icon}
            
        
    );
};
//Форматирование ячеек таблицы "Проекты"
const projectDataCellRender = ({ row, columnDef, showProject }) => {
    //Формирование представлений
    switch (columnDef.name) {
        case "NCOST_STATUS":
            return { cellProps: { align: "center" }, data: formatCostStatusValue({ value: row[columnDef.name] }) };
        case "NCOST_READY":
            return { cellProps: { align: "center" }, data: formatCostReadyValue(row[columnDef.name]) };
        case "NSTATE":
            return { cellProps: { align: "center" }, data: formatPrjStateValue(row[columnDef.name]) };
        case "SCODE":
            return {
                data: (
                     showProject(row["NRN"])}>
                        {row[columnDef.name]}
                    
                )
            };
        default:
            return { data: row[columnDef.name] };
    }
};
//Генерация представления расширения строки таблицы "Проектов"
const projectRowExpandRender = ({ row }) => {
    return (
        
            
        
    );
};
//----------------
//Интерфейс модуля
//----------------
export { STYLES as PROJECTS_STYLES, projectDataCellRender, projectRowExpandRender };