This commit is contained in:
Mikola 2023-11-19 20:01:27 +03:00
parent 44725b014b
commit 9697c375e7
11 changed files with 85 additions and 25 deletions

View File

@ -13,7 +13,11 @@ export const ModalLayout = ({
return (
<div
className={active ? `modal-layout active` : "modal-layout"}
onClick={() => setActive(false)}
onClick={(event) => {
if (event.target.className === 'modal-layout active') {
setActive(false)
}
}}
{...props}
>
<div
@ -22,7 +26,6 @@ export const ModalLayout = ({
? `modal-layout__content ${styles}`
: `modal-layout__content ${type}`
}
onClick={(e) => e.stopPropagation()}
>
{children}
</div>

View File

@ -45,6 +45,16 @@
font-weight: 300;
}
.addPersonBlock {
display: flex;
flex-direction: column;
justify-content: space-between;
button {
margin: 0 auto;
}
}
.invitePersonBlock {
display: flex;
flex-direction: column;
@ -64,7 +74,7 @@
}
&__btn {
margin: 0 auto 0 0;
margin: 0 auto;
max-width: 242px;
width: 100%;
}

View File

@ -5,7 +5,7 @@
background: #e1fccf;
border-radius: 12px;
transform: scale(0);
bottom: -90px;
bottom: -40px;
right: -120px;
@media (max-width: 1050px) {

View File

@ -379,7 +379,7 @@ export const ModalTiсket = ({
const data = await res.json();
// setUploadedFile(data);
attachFile(data[0].id)
attachFile(data[0].id);
}
// function deleteLoadedFile() {

View File

@ -29,13 +29,13 @@ import { useNotification } from "@hooks/useNotification";
import { getCorrectDate } from "@components/Calendar/calendarHelper";
import { Footer } from "@components/Common/Footer/Footer";
import { Loader } from "@components/Common/Loader/Loader";
import FileTracker from "@components/FileTracker/FileTracker";
import AcceptModal from "@components/Modal/AcceptModal/AcceptModal";
import TrackerModal from "@components/Modal/Tracker/TrackerModal/TrackerModal";
import { Navigation } from "@components/Navigation/Navigation";
import { ProfileBreadcrumbs } from "@components/ProfileBreadcrumbs/ProfileBreadcrumbs";
import { ProfileHeader } from "@components/ProfileHeader/ProfileHeader";
import TrackerTaskComment from "@components/TrackerTaskComment/TrackerTaskComment";
import FileTracker from "@components/FileTracker/FileTracker";
import arrow from "assets/icons/arrows/arrowCalendar.png";
import arrowStart from "assets/icons/arrows/arrowStart.png";
@ -502,7 +502,7 @@ export const TicketFullScreen = () => {
function deleteFile(file) {
setTaskFiles((prevValue) =>
prevValue.filter((item) => item.id !== file.id)
prevValue.filter((item) => item.id !== file.id)
);
}
@ -807,12 +807,12 @@ export const TicketFullScreen = () => {
<div className="task__files filesFullScreen">
{taskFiles.map((file) => {
return (
<FileTracker
key={file.id}
file={file}
setDeletedTask={deleteFile}
taskId={taskInfo.id}
/>
<FileTracker
key={file.id}
file={file}
setDeletedTask={deleteFile}
taskId={taskInfo.id}
/>
);
})}
</div>

View File

@ -321,6 +321,7 @@ export const TrackerModal = ({
} else {
setCorrectProjectUsers(projectUsers);
}
initListeners()
}, [active]);
useEffect(() => {
@ -335,6 +336,38 @@ export const TrackerModal = ({
}
}, [taskTags, projectMarks]);
const initListeners = () => {
document.addEventListener("click", closeByClickingOut);
};
const closeByClickingOut = (event) => {
const path = event.path || (event.composedPath && event.composedPath());
if (
event &&
!path.find(
(div) =>
div.classList &&
(div.classList.contains("tags__selected__name") ||
div.classList.contains("tags__dropDown"))
)
) {
setSelectTagsOpen(false)
}
if (
event &&
!path.find(
(div) =>
div.classList &&
(div.classList.contains("select__executor") ||
div.classList.contains("select__executor__dropDown"))
)
) {
setSelectExecutorTaskOpen(false)
}
}
return (
<ModalLayout
active={active}

View File

@ -43,7 +43,7 @@ export const ProjectTiket = ({ project, index }) => {
if (
event &&
!path.find((item) => item.classList && item.classList.contains("project"))
!path.find((div) => div.classList && div.classList.contains(`project-${project.id}`))
) {
setModalSelect(false);
}
@ -73,7 +73,7 @@ export const ProjectTiket = ({ project, index }) => {
function linkProject() {}
return (
<div className="project" key={index}>
<div className={`project project-${project.id}`} key={index}>
<Link
to={`/tracker/project/${project.id}`}
className="project__open-traker"
@ -93,7 +93,9 @@ export const ProjectTiket = ({ project, index }) => {
</div>
</Link>
<span className="menu-settings" onClick={() => setModalSelect(true)}>
<span className="menu-settings" onClick={() => {
setModalSelect(!modalSelect)
}}>
...
</span>

View File

@ -87,7 +87,7 @@
font-size: 21px;
color: #6f6f6f;
right: 26px;
top: 59px;
top: 10px;
}
&__avatar {
@ -104,10 +104,10 @@
position: absolute;
bottom: 18px;
left: 26px;
color: #678eda;
color: #0042b4;
text-decoration: underline;
font-size: 12px;
font-weight: 300;
font-size: 14px;
font-weight: 400;
line-height: 17px;
}
}

View File

@ -151,6 +151,9 @@ export const Summary = () => {
</a>
);
})}
{!Boolean(gitInfo.length) &&
<p className="noGitItems">Нет актуальных проектов</p>
}
</div>
</div>
)}

View File

@ -298,6 +298,16 @@
column-gap: 25px;
justify-content: space-between;
.noGitItems {
width: 100%;
font-size: 20px;
background: #FFFFFF;
border-radius: 12px;
padding: 35px 30px 30px 45px;
color: #000000;
font-weight: 600;
}
.gitItem {
width: 48%;
display: flex;

View File

@ -391,9 +391,9 @@
flex-direction: column;
background: linear-gradient(180deg, #ffffff 0%, #ebebeb 100%);
border-radius: 40px;
padding: 31px 128px 41px 49px;
padding: 15px 30px;
cursor: default;
width: 650px;
width: 800px;
&__close {
cursor: pointer;
@ -410,7 +410,6 @@
align-items: end;
color: #1458dd;
font-size: 22px;
margin-top: 10px;
span {
font-size: 44px;
font-weight: 700;
@ -462,7 +461,7 @@
display: flex;
justify-content: space-between;
align-items: center;
max-width: 190px;
max-width: 300px;
width: 100%;
.avatar {
@ -479,7 +478,7 @@
color: #807777;
width: auto;
height: auto;
max-width: 130px;
max-width: 215px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;