Compare commits
3 Commits
9766f4b6c3
...
d944697f9c
| Author | SHA1 | Date | |
|---|---|---|---|
| d944697f9c | |||
| fb52a14dd0 | |||
| 47e4e60b86 |
@ -57,7 +57,13 @@ const NewDocumentJob = ({ onOk, defaultValues = {} }) => {
|
|||||||
disabled={downloading}
|
disabled={downloading}
|
||||||
sideBarGrow={true}
|
sideBarGrow={true}
|
||||||
sideBar={
|
sideBar={
|
||||||
<div style={{ minHeight: '760px', flexGrow: 1 }}>
|
<div
|
||||||
|
style={{
|
||||||
|
height: 'calc(100vh - 240px)',
|
||||||
|
flexGrow: 1,
|
||||||
|
minWidth: 0
|
||||||
|
}}
|
||||||
|
>
|
||||||
<TemplatePreview
|
<TemplatePreview
|
||||||
objectData={objectData?.object}
|
objectData={objectData?.object}
|
||||||
documentTemplate={objectData?.documentTemplate}
|
documentTemplate={objectData?.documentTemplate}
|
||||||
|
|||||||
@ -171,6 +171,19 @@ const TemplatePreview = ({
|
|||||||
setPreviewContentHTML(html)
|
setPreviewContentHTML(html)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const clearIframeContents = useCallback(() => {
|
||||||
|
iframeSizeObserverRef.current?.disconnect()
|
||||||
|
iframeSizeObserverRef.current = null
|
||||||
|
|
||||||
|
const iframe = iframeRef.current
|
||||||
|
if (iframe) {
|
||||||
|
iframe.srcdoc = ''
|
||||||
|
}
|
||||||
|
|
||||||
|
setPreviewContentHTML('')
|
||||||
|
setIframeSize({ width: '100%', height: 'auto' })
|
||||||
|
}, [])
|
||||||
|
|
||||||
const stopRenderProgressListener = useCallback(() => {
|
const stopRenderProgressListener = useCallback(() => {
|
||||||
if (typeof renderUnsubscribeRef.current === 'function') {
|
if (typeof renderUnsubscribeRef.current === 'function') {
|
||||||
renderUnsubscribeRef.current()
|
renderUnsubscribeRef.current()
|
||||||
@ -541,10 +554,11 @@ const TemplatePreview = ({
|
|||||||
disabled={loading || reloadLoading}
|
disabled={loading || reloadLoading}
|
||||||
value={previewType}
|
value={previewType}
|
||||||
onChange={(value) => {
|
onChange={(value) => {
|
||||||
setPreviewType(value)
|
|
||||||
if (value == 'PDF') {
|
if (value == 'PDF') {
|
||||||
|
clearIframeContents()
|
||||||
setPDFBlob(null)
|
setPDFBlob(null)
|
||||||
}
|
}
|
||||||
|
setPreviewType(value)
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
) : null}
|
) : null}
|
||||||
@ -600,29 +614,43 @@ const TemplatePreview = ({
|
|||||||
touchAction: panMode ? 'none' : undefined
|
touchAction: panMode ? 'none' : undefined
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<div
|
<Flex
|
||||||
|
justify='center'
|
||||||
|
align='center'
|
||||||
style={{
|
style={{
|
||||||
|
minWidth: '100%',
|
||||||
width: iframeSize.width,
|
width: iframeSize.width,
|
||||||
height: iframeSize.height,
|
height: iframeSize.height
|
||||||
cursor: panMode ? (isPanning ? 'grabbing' : 'grab') : undefined
|
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<iframe
|
<div
|
||||||
ref={iframeRef}
|
|
||||||
srcDoc={previewContentHTML}
|
|
||||||
onLoad={handleIframeLoad}
|
|
||||||
scrolling='no'
|
|
||||||
frameBorder='0'
|
|
||||||
style={{
|
style={{
|
||||||
width: '100%',
|
width: iframeSize.width,
|
||||||
height: iframeSize.height === 'auto' ? 150 : '100%',
|
height: iframeSize.height,
|
||||||
display: 'block',
|
cursor: panMode
|
||||||
border: 0,
|
? isPanning
|
||||||
overflow: 'hidden',
|
? 'grabbing'
|
||||||
pointerEvents: panMode ? 'none' : undefined
|
: 'grab'
|
||||||
|
: undefined
|
||||||
}}
|
}}
|
||||||
/>
|
>
|
||||||
</div>
|
<iframe
|
||||||
|
ref={iframeRef}
|
||||||
|
srcDoc={previewContentHTML}
|
||||||
|
onLoad={handleIframeLoad}
|
||||||
|
scrolling='no'
|
||||||
|
frameBorder='0'
|
||||||
|
style={{
|
||||||
|
width: '100%',
|
||||||
|
height: iframeSize.height === 'auto' ? 150 : '100%',
|
||||||
|
display: 'block',
|
||||||
|
border: 0,
|
||||||
|
overflow: 'hidden',
|
||||||
|
pointerEvents: panMode ? 'none' : undefined
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</Flex>
|
||||||
</ScrollBox>
|
</ScrollBox>
|
||||||
) : (
|
) : (
|
||||||
<PDFViewer
|
<PDFViewer
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user