change modal-window for file-info style

This commit is contained in:
smanylov
2026-03-04 16:15:21 +07:00
parent 617984e587
commit a11abdbb56
4 changed files with 120 additions and 120 deletions
+16 -13
View File
@@ -3486,18 +3486,6 @@
}
.modal-window-view-file {
/* position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 90%;
max-width: 1200px;
max-height: 90%;
background: white;
border-radius: 16px;
padding: 0;
overflow: hidden;
box-shadow: 0 25px 50px rgba(0, 0, 0, 0.5); */
border-radius: 20px;
overflow: hidden;
@@ -3533,7 +3521,7 @@
&.image {
display: grid;
grid-template-columns: 1fr 300px;
grid-template-columns: 1fr 1fr;
gap: 20px;
}
}
@@ -3565,12 +3553,27 @@
}
}
.file-info-wrapper {
display: flex;
gap: 15px;
margin-bottom: 15px;
@media (max-width: 875px) {
flex-direction: column;
}
}
.file-info-card {
background: #ffffff;
border: 1px solid #e2e8f0;
border-radius: 12px;
padding: 0;
overflow: hidden;
min-width: 400px;
@media (max-width: 470px) {
min-width: auto;
}
.info-header {
background: #f8fafc;
@@ -1,141 +1,126 @@
import { convertBytes } from '@/app/lib/convertBytes';
import { formatDate, formatDateTime } from '@/app/lib/formatDate';
import { useTranslations } from 'next-intl';
export function FileInfoModalWindow({ fileInfo, setWindowClose, setWindowChildren }: any) {
const t = useTranslations('Global');
const exampleTest = {
ownerName: 'string',
ownerMail: 'string',
ownerCompany: 'string',
fileName: 'string',
fileSize: 'number',
fileUploadDate: 'number',
fileFormat: 'string',
protectStatus: 'string',
checksCount: 'number'
}
function closeHandler() {
setWindowChildren(null);
setWindowClose(false);
}
console.log(fileInfo);
return (
<div className='file-info-modal-window'>
<div
className="flex justify-between"
>
<h3 className="text-2xl mb-4">
Результат проверки
</h3>
<button
className="file-info-modal-window-close-button"
onClick={closeHandler}
<div className="modal-window-view-file">
<div className="modal-window-view-file-header">
<div
className="modal-window-view-file-title"
>
×
</button>
{fileInfo.fileName ? fileInfo.fileName : '-'}
</div>
</div>
<div
className="file-info-modal-window-section"
className="modal-window-view-file-content"
>
<h4
className="mb-2"
<div
className="file-info-wrapper"
>
Информация о владельце
</h4>
<div className="file-info-modal-window-grid" >
<div className="file-info-modal-window-item">
<div className="file-info-modal-window-title" >
Имя
<div
className="file-info-card"
>
<div className="info-header">
<h4>{t('owner-information')}</h4>
</div>
<div className="file-info-modal-window-content" >
{fileInfo.ownerName ? fileInfo.ownerName : '-'}
<div className="info-item">
<div className="info-label" >
{t('name')}:
</div>
<div className="info-value" >
{fileInfo.ownerName ? fileInfo.ownerName : '-'}
</div>
</div>
<div className="info-item">
<div className="info-label" >
{t('email')}:
</div>
<div className="info-value" >
{fileInfo.ownerEmail ? fileInfo.ownerEmail : '-'}
</div>
</div>
<div className="info-item">
<div className="info-label" >
{t('company')}:
</div>
<div className="info-value" >
{fileInfo.ownerCompany ? fileInfo.ownerCompany : '-'}
</div>
</div>
</div>
<div className="file-info-modal-window-item">
<div className="file-info-modal-window-title" >
Email
<div
className="file-info-card"
>
<div className="info-header">
<h4>{t('file-information')}</h4>
</div>
<div className="file-info-modal-window-content" >
{fileInfo.ownerEmail ? fileInfo.ownerEmail : '-'}
<div className="info-item">
<div className="info-label" >
{t('file-name')}
</div>
<div className="info-value" >
{fileInfo.fileName ? fileInfo.fileName : '-'}
</div>
</div>
</div>
<div className="file-info-modal-window-item">
<div className="file-info-modal-window-title" >
Компания
<div className="info-item">
<div className="info-label" >
{t('size')}
</div>
<div className="info-value" >
{fileInfo.fileSize ? convertBytes(fileInfo.fileSize) : '-'}
</div>
</div>
<div className="file-info-modal-window-content" >
{fileInfo.ownerCompany ? fileInfo.ownerCompany : '-'}
<div className="info-item">
<div className="info-label" >
{t('loaded')}
</div>
<div className="info-value" >
{fileInfo.fileUploadDate ? `${formatDate(fileInfo.fileUploadDate)} ${formatDateTime(fileInfo.fileUploadDate)}` : '-'}
</div>
</div>
<div className="info-item">
<div className="info-label" >
{t('format')}
</div>
<div className="info-value" >
{fileInfo.fileExtension ? fileInfo.fileExtension : '-'}
</div>
</div>
</div>
</div>
<h4
className="mb-2"
<div
className="file-info-card"
>
Информация о файле
</h4>
<div className="file-info-modal-window-grid" >
<div className="file-info-modal-window-item">
<div className="file-info-modal-window-title" >
Имя файла
</div>
<div className="file-info-modal-window-content" >
{fileInfo.fileName ? fileInfo.fileName : '-'}
</div>
<div className="info-header">
<h4>{t('security-details')}</h4>
</div>
<div className="file-info-modal-window-item">
<div className="file-info-modal-window-title" >
Размер
<div className="info-item">
<div className="info-label" >
{t('protection-status')}
</div>
<div className="file-info-modal-window-content" >
{fileInfo.fileSize ? convertBytes(fileInfo.fileSize) : '-'}
</div>
</div>
<div className="file-info-modal-window-item">
<div className="file-info-modal-window-title" >
Загружен
</div>
<div className="file-info-modal-window-content" >
{fileInfo.fileUploadDate ? `${formatDate(fileInfo.fileUploadDate)} ${formatDateTime(fileInfo.fileUploadDate)}` : '-'}
</div>
</div>
<div className="file-info-modal-window-item">
<div className="file-info-modal-window-title" >
Формат
</div>
<div className="file-info-modal-window-content" >
{fileInfo.fileExtension ? fileInfo.fileExtension : '-'}
</div>
</div>
</div>
<h4
className="mb-2"
>
Детали защиты
</h4>
<div className="file-info-modal-window-grid" >
<div className="file-info-modal-window-item">
<div className="file-info-modal-window-title" >
Статус защиты
</div>
<div className="file-info-modal-window-content" >
<div className="info-value" >
{fileInfo.protectStatus ? fileInfo.protectStatus : '-'}
</div>
</div>
<div className="file-info-modal-window-item">
<div className="file-info-modal-window-title" >
Количество проверок
<div className="info-item">
<div className="info-label" >
{t('number-of-checks')}
</div>
<div className="file-info-modal-window-content" >
<div className="info-value" >
{fileInfo.checksCount ? fileInfo.checksCount : '0'}
</div>
</div>
</div>
</div>
</div>
)
+7 -1
View File
@@ -287,7 +287,13 @@
"file-information": "File information",
"id-in-the-system": "ID in the system",
"protection-status": "Protection status",
"file-for-search-unsupported": "File for search unsupported"
"file-for-search-unsupported": "File for search unsupported",
"name": "Name",
"owner-information": "Owner information",
"security-details": "Security details",
"number-of-checks": "Number of checks",
"format": "Format",
"file-name": "File name"
},
"Login-register-form": {
"and": "and",
+7 -1
View File
@@ -287,7 +287,13 @@
"file-information": "Информация о файле",
"id-in-the-system": "ID в системе",
"protection-status": "Статус защиты",
"file-for-search-unsupported": "Файл для поиска не поддерживается"
"file-for-search-unsupported": "Файл для поиска не поддерживается",
"name": "Имя",
"owner-information": "Информация о владельце",
"security-details": "Детали защиты",
"number-of-checks": "Количество проверок",
"format": "Формат",
"file-name": "Имя файла"
},
"Login-register-form": {
"and": "и",