From a1471308d8846360600d9f02d7d1c24bc7ff2133 Mon Sep 17 00:00:00 2001 From: Thomas Parisot Date: Wed, 8 Jan 2025 16:24:22 +0100 Subject: [PATCH 01/10] =?UTF-8?q?feat(preview):=20pr=C3=A9visualise=20dire?= =?UTF-8?q?ctement=20depuis=20la=20route=20/article=5Fpreview?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- front/src/components/ArticlePreview.jsx | 36 -- front/src/components/Preview.graphql | 26 + front/src/components/Preview.jsx | 71 +++ front/src/components/Preview.scss | 611 ++++++++++++++++++++++++ front/src/hooks/stylo-export.js | 10 +- front/src/index.jsx | 6 +- 6 files changed, 719 insertions(+), 41 deletions(-) delete mode 100644 front/src/components/ArticlePreview.jsx create mode 100644 front/src/components/Preview.graphql create mode 100644 front/src/components/Preview.jsx create mode 100644 front/src/components/Preview.scss diff --git a/front/src/components/ArticlePreview.jsx b/front/src/components/ArticlePreview.jsx deleted file mode 100644 index 0417abfec..000000000 --- a/front/src/components/ArticlePreview.jsx +++ /dev/null @@ -1,36 +0,0 @@ -import React, { useState, useRef, useEffect } from 'react' -import { useParams } from 'react-router-dom' -import { applicationConfig } from '../config.js' - -import styles from './articles.module.scss' -import Loading from './Loading' - -export default function ArticlePreview() { - const { id, version, bookId } = useParams() - const { exportEndpoint } = applicationConfig - const [isLoaded, setLoaded] = useState(false) - const previewFrame = useRef() - - const url = bookId - ? `${exportEndpoint}/api/v1/htmlBook/${bookId}?preview=true` - : version - ? `${exportEndpoint}/api/v1/htmlVersion/${version}?preview=true` - : `${exportEndpoint}/api/v1/htmlArticle/${id}?preview=true` - - useEffect(() => { - previewFrame.current.addEventListener('load', () => setLoaded(true)) - }, []) - - return ( - <> - {!isLoaded && } - -