коммит заебал
This commit is contained in:
parent
b9c026a23c
commit
61a8740d37
@ -6,6 +6,7 @@ interface ImageWithFallbackProps {
|
|||||||
alt: string;
|
alt: string;
|
||||||
className?: string;
|
className?: string;
|
||||||
onClick?: () => void;
|
onClick?: () => void;
|
||||||
|
onContextMenu?: (e: React.MouseEvent<HTMLDivElement>) => void;
|
||||||
maxRetries?: number;
|
maxRetries?: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -14,6 +15,7 @@ const ImageWithFallback: React.FC<ImageWithFallbackProps> = ({
|
|||||||
alt,
|
alt,
|
||||||
className = '',
|
className = '',
|
||||||
onClick,
|
onClick,
|
||||||
|
onContextMenu,
|
||||||
maxRetries = 2 // По умолчанию 2 попытки автоматической перезагрузки
|
maxRetries = 2 // По умолчанию 2 попытки автоматической перезагрузки
|
||||||
}) => {
|
}) => {
|
||||||
const [loading, setLoading] = useState(true);
|
const [loading, setLoading] = useState(true);
|
||||||
@ -109,6 +111,7 @@ const ImageWithFallback: React.FC<ImageWithFallbackProps> = ({
|
|||||||
<div
|
<div
|
||||||
className={`${styles.container} ${className}`}
|
className={`${styles.container} ${className}`}
|
||||||
onClick={handleClick}
|
onClick={handleClick}
|
||||||
|
onContextMenu={onContextMenu}
|
||||||
>
|
>
|
||||||
{/* Показываем индикатор загрузки, если изображение загружается */}
|
{/* Показываем индикатор загрузки, если изображение загружается */}
|
||||||
{loading && (
|
{loading && (
|
||||||
|
|||||||
@ -50,14 +50,14 @@ const NotificationModal: React.FC<NotificationModalProps> = ({
|
|||||||
<div className={styles.buttons}>
|
<div className={styles.buttons}>
|
||||||
{showGalleryButton && (
|
{showGalleryButton && (
|
||||||
<button
|
<button
|
||||||
className={`${styles.button} ${styles.primaryButton}`}
|
className={`${styles.button} ${styles.secondaryButton}`}
|
||||||
onClick={onGalleryClick}
|
onClick={onGalleryClick}
|
||||||
>
|
>
|
||||||
В галерею
|
Отмена
|
||||||
</button>
|
</button>
|
||||||
)}
|
)}
|
||||||
<button
|
<button
|
||||||
className={`${styles.button} ${!showGalleryButton ? styles.primaryButton : styles.secondaryButton}`}
|
className={`${styles.button} ${styles.primaryButton}`}
|
||||||
onClick={onContinueClick}
|
onClick={onContinueClick}
|
||||||
>
|
>
|
||||||
{continueButtonText}
|
{continueButtonText}
|
||||||
|
|||||||
@ -166,6 +166,9 @@
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
object-fit: cover;
|
object-fit: cover;
|
||||||
|
-webkit-touch-callout: none;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
user-select: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.error {
|
.error {
|
||||||
|
|||||||
@ -310,6 +310,7 @@ const GalleryScreen: React.FC = () => {
|
|||||||
alt={`Стикер ${index + 1}`}
|
alt={`Стикер ${index + 1}`}
|
||||||
className={styles.image}
|
className={styles.image}
|
||||||
onClick={() => !isDeleteMode && image.url && setSelectedImage(image.url)}
|
onClick={() => !isDeleteMode && image.url && setSelectedImage(image.url)}
|
||||||
|
onContextMenu={(e: React.MouseEvent<HTMLDivElement>) => e.preventDefault()}
|
||||||
maxRetries={3}
|
maxRetries={3}
|
||||||
/>
|
/>
|
||||||
{isDeleteMode && (
|
{isDeleteMode && (
|
||||||
@ -341,7 +342,7 @@ const GalleryScreen: React.FC = () => {
|
|||||||
title="Удаление стикера"
|
title="Удаление стикера"
|
||||||
message="Вы уверены, что хотите удалить этот стикер?"
|
message="Вы уверены, что хотите удалить этот стикер?"
|
||||||
isLoading={isDeleting}
|
isLoading={isDeleting}
|
||||||
showGalleryButton={false}
|
showGalleryButton={true}
|
||||||
continueButtonText="Удалить"
|
continueButtonText="Удалить"
|
||||||
onContinueClick={handleConfirmDelete}
|
onContinueClick={handleConfirmDelete}
|
||||||
onGalleryClick={() => setSelectedForDelete(null)}
|
onGalleryClick={() => setSelectedForDelete(null)}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user