fix: Move content into to frontend directory

Doing this BEFORE the merge prevents a lot of merge conflicts.

Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
This commit is contained in:
Tilman Vatteroth 2022-11-11 11:16:18 +01:00
parent 4e18ce38f3
commit 762a0a850e
No known key found for this signature in database
GPG key ID: B97799103358209B
1051 changed files with 0 additions and 35 deletions

View file

@ -0,0 +1,40 @@
/*
* SPDX-FileCopyrightText: 2022 The HedgeDoc developers (see AUTHORS file)
*
* SPDX-License-Identifier: AGPL-3.0-only
*/
import type { ImageDetails } from '../../../render-page/window-post-message-communicator/rendering-message'
import React, { useCallback, useState } from 'react'
import { useBooleanState } from '../../../../hooks/common/use-boolean-state'
import { ImageLightboxModal } from './image-lightbox-modal'
import { useExtensionEventEmitterHandler } from '../../hooks/use-extension-event-emitter'
import { SHOW_IMAGE_LIGHTBOX_EVENT_NAME } from './event-emitting-proxy-image-frame'
/**
* Handles messages from the render in the iframe to open a {@link ImageLightboxModal}.
*/
export const CommunicatorImageLightbox: React.FC = () => {
const [lightboxDetails, setLightboxDetails] = useState<ImageDetails | undefined>(undefined)
const [modalVisibility, showModal, closeModal] = useBooleanState()
const handler = useCallback(
(values: ImageDetails) => {
setLightboxDetails?.(values)
showModal()
},
[showModal]
)
useExtensionEventEmitterHandler(SHOW_IMAGE_LIGHTBOX_EVENT_NAME, handler)
return (
<ImageLightboxModal
show={modalVisibility}
onHide={closeModal}
src={lightboxDetails?.src}
alt={lightboxDetails?.alt}
title={lightboxDetails?.title}
/>
)
}