Update files

This commit is contained in:
glpshchn 2025-12-04 23:11:28 +03:00
parent fea68d4514
commit 5d9892d744
6 changed files with 49 additions and 7 deletions

View File

@ -50,7 +50,12 @@ export default function CommentsModal({ post, onClose, onUpdate }) {
}
return (
<div className="comments-modal-overlay" onClick={handleOverlayClick}>
<div
className="comments-modal-overlay"
onMouseDown={(e) => e.stopPropagation()}
onTouchStart={(e) => e.stopPropagation()}
onClick={handleOverlayClick}
>
<div className="comments-modal" onClick={(e) => e.stopPropagation()}>
{/* Хедер */}
<div className="modal-header">

View File

@ -57,7 +57,12 @@ export default function FollowListModal({ users, title, onClose, currentUser })
}
return (
<div className="follow-list-modal-overlay" onClick={handleOverlayClick}>
<div
className="follow-list-modal-overlay"
onMouseDown={(e) => e.stopPropagation()}
onTouchStart={(e) => e.stopPropagation()}
onClick={handleOverlayClick}
>
<div className="follow-list-modal" onClick={(e) => e.stopPropagation()}>
{/* Хедер */}
<div className="follow-list-header">

View File

@ -269,6 +269,8 @@
flex-direction: column;
animation: fadeIn 0.2s ease-out;
overflow: hidden;
pointer-events: auto;
touch-action: none;
}
.fullview-header {
@ -286,6 +288,7 @@
will-change: transform;
transform: translateZ(0);
flex-shrink: 0;
pointer-events: auto;
}
.fullview-counter {
@ -328,6 +331,7 @@
align-items: center;
justify-content: center;
overflow: hidden;
pointer-events: none;
}
.fullview-content img {
@ -338,6 +342,7 @@
object-fit: contain;
user-select: none;
display: block;
pointer-events: none;
}
.fullview-nav-btn {
@ -355,6 +360,7 @@
backdrop-filter: blur(10px);
transition: background 0.2s, opacity 0.2s;
z-index: 10;
pointer-events: auto;
}
.fullview-nav-btn.prev {
@ -383,6 +389,7 @@
backdrop-filter: blur(10px);
z-index: 10001;
flex-shrink: 0;
pointer-events: auto;
}
.fullview-dot {
@ -392,6 +399,7 @@
background: rgba(255, 255, 255, 0.4);
cursor: pointer;
transition: all 0.2s;
pointer-events: auto;
}
.fullview-dot.active {

View File

@ -263,8 +263,17 @@ export default function PostCard({ post, currentUser, onUpdate }) {
{/* Fullview модал */}
{showFullView && (
<div className="image-fullview" onClick={() => setShowFullView(false)}>
<div className="fullview-header">
<div
className="image-fullview"
onMouseDown={(e) => e.stopPropagation()}
onTouchStart={(e) => e.stopPropagation()}
onClick={(e) => {
e.stopPropagation()
e.preventDefault()
setShowFullView(false)
}}
>
<div className="fullview-header" onClick={(e) => e.stopPropagation()}>
<button className="fullview-btn" onClick={(e) => { e.stopPropagation(); setShowFullView(false); }}>
<X size={24} />
</button>
@ -285,6 +294,7 @@ export default function PostCard({ post, currentUser, onUpdate }) {
src={images[currentImageIndex]}
alt={`Full view ${currentImageIndex + 1}`}
draggable={false}
onClick={(e) => e.stopPropagation()}
/>
{images.length > 1 && (
@ -305,7 +315,7 @@ export default function PostCard({ post, currentUser, onUpdate }) {
</div>
{images.length > 1 && (
<div className="fullview-dots">
<div className="fullview-dots" onClick={(e) => e.stopPropagation()}>
{images.map((_, index) => (
<span
key={index}

View File

@ -78,7 +78,12 @@ export default function PostMenu({ post, currentUser, onClose, onDelete }) {
}
return (
<div className="post-menu-overlay" onClick={handleOverlayClick}>
<div
className="post-menu-overlay"
onMouseDown={(e) => e.stopPropagation()}
onTouchStart={(e) => e.stopPropagation()}
onClick={handleOverlayClick}
>
<div className="menu-header" onClick={(e) => e.stopPropagation()}>
<button className="menu-close-btn" onClick={onClose}>
<X size={24} />

View File

@ -251,7 +251,16 @@ export const banUser = async (userId, banned, days) => {
// Bot API
export const sendPhotoToTelegram = async (photoUrl) => {
const response = await api.post('/bot/send-photo', { photoUrl })
const telegramUser = window.Telegram?.WebApp?.initDataUnsafe?.user
if (!telegramUser || !telegramUser.id) {
throw new Error('Не удалось получить ID пользователя из Telegram')
}
const response = await api.post('/bot/send-photo', {
userId: telegramUser.id,
photoUrl,
caption: 'Из Nakama'
})
return response.data
}