4.14.1: Исправлен z-index модальных окон
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 1m24s

This commit is contained in:
poignatov
2026-02-04 15:13:11 +03:00
parent e66a3cecce
commit b9482dc86d
7 changed files with 22 additions and 12 deletions

View File

@@ -1 +1 @@
4.14.0 4.14.1

View File

@@ -1,6 +1,6 @@
{ {
"name": "play-life-web", "name": "play-life-web",
"version": "4.14.0", "version": "4.14.1",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "vite", "dev": "vite",

View File

@@ -1,6 +1,6 @@
/* Модальное окно */ /* Модальное окно */
.task-detail-modal-overlay { .task-detail-modal-overlay {
position: fixed; position: fixed !important;
top: 0; top: 0;
left: 0; left: 0;
right: 0; right: 0;
@@ -9,7 +9,7 @@
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
z-index: 1700; z-index: 9999 !important;
padding: 1rem; padding: 1rem;
} }

View File

@@ -1,4 +1,5 @@
import React, { useState, useEffect, useCallback, useMemo, useRef } from 'react' import React, { useState, useEffect, useCallback, useMemo, useRef } from 'react'
import { createPortal } from 'react-dom'
import { useAuth } from './auth/AuthContext' import { useAuth } from './auth/AuthContext'
import LoadingError from './LoadingError' import LoadingError from './LoadingError'
import Toast from './Toast' import Toast from './Toast'
@@ -727,7 +728,7 @@ function TaskDetail({ taskId, onClose, onRefresh, onTaskCompleted, onNavigate })
return ( const modalContent = (
<div className="task-detail-modal-overlay" onClick={onClose}> <div className="task-detail-modal-overlay" onClick={onClose}>
<div className="task-detail-modal" onClick={(e) => e.stopPropagation()}> <div className="task-detail-modal" onClick={(e) => e.stopPropagation()}>
<div className="task-detail-modal-header"> <div className="task-detail-modal-header">
@@ -919,7 +920,11 @@ function TaskDetail({ taskId, onClose, onRefresh, onTaskCompleted, onNavigate })
)} )}
</div> </div>
</div> </div>
) )
return typeof document !== 'undefined'
? createPortal(modalContent, document.body)
: modalContent
} }
export default TaskDetail export default TaskDetail

View File

@@ -286,7 +286,7 @@
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
z-index: 50; z-index: 1000;
} }
.task-postpone-modal { .task-postpone-modal {
@@ -451,7 +451,7 @@
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
z-index: 50; z-index: 1000;
} }
.task-modal { .task-modal {
@@ -644,7 +644,7 @@
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
z-index: 50; z-index: 1000;
} }
.task-add-modal { .task-add-modal {

View File

@@ -1,6 +1,6 @@
/* Модальное окно */ /* Модальное окно */
.wishlist-detail-modal-overlay { .wishlist-detail-modal-overlay {
position: fixed; position: fixed !important;
top: 0; top: 0;
left: 0; left: 0;
right: 0; right: 0;
@@ -9,7 +9,7 @@
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
z-index: 1700; z-index: 9999 !important;
padding: 1rem; padding: 1rem;
} }

View File

@@ -1,4 +1,5 @@
import React, { useState, useEffect, useCallback, useRef } from 'react' import React, { useState, useEffect, useCallback, useRef } from 'react'
import { createPortal } from 'react-dom'
import { useAuth } from './auth/AuthContext' import { useAuth } from './auth/AuthContext'
import TaskDetail from './TaskDetail' import TaskDetail from './TaskDetail'
import LoadingError from './LoadingError' import LoadingError from './LoadingError'
@@ -405,7 +406,7 @@ function WishlistDetail({ wishlistId, onNavigate, onRefresh, boardId, onClose, p
} }
return ( const modalContent = (
<div className="wishlist-detail-modal-overlay" onClick={handleClose}> <div className="wishlist-detail-modal-overlay" onClick={handleClose}>
<div className="wishlist-detail-modal" onClick={(e) => e.stopPropagation()}> <div className="wishlist-detail-modal" onClick={(e) => e.stopPropagation()}>
<div className="wishlist-detail-modal-header"> <div className="wishlist-detail-modal-header">
@@ -648,6 +649,10 @@ function WishlistDetail({ wishlistId, onNavigate, onRefresh, boardId, onClose, p
</div> </div>
</div> </div>
) )
return typeof document !== 'undefined'
? createPortal(modalContent, document.body)
: modalContent
} }
export default WishlistDetail export default WishlistDetail