integration/dev: adding a gaufre.css testing page
we now can quickly test the gaufre component in a DSFR env and in a custom env
This commit is contained in:
25
packages/integration/src/dev/StylesGaufre.tsx
Normal file
25
packages/integration/src/dev/StylesGaufre.tsx
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
import { ReactNode, useEffect } from "react"
|
||||||
|
import gaufreStyles from "../styles/gaufre.css?inline"
|
||||||
|
import devStyles from "./dev.css?inline"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* wrap a component in StylesGaufre to apply the "gaufre" styles
|
||||||
|
*
|
||||||
|
* this helps testing the html when we include the gaufre css
|
||||||
|
*/
|
||||||
|
export const StylesGaufre = ({ children }: { children: ReactNode }) => {
|
||||||
|
useEffect(() => {
|
||||||
|
if (document.querySelector("#styles-gaufre")) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const style = document.createElement("style")
|
||||||
|
style.id = "styles-gaufre"
|
||||||
|
style.innerHTML = gaufreStyles + devStyles
|
||||||
|
document.head.appendChild(style)
|
||||||
|
return () => {
|
||||||
|
document.querySelector("#styles-gaufre")?.remove()
|
||||||
|
}
|
||||||
|
}, [])
|
||||||
|
|
||||||
|
return children
|
||||||
|
}
|
||||||
@@ -10,6 +10,7 @@ import { Email } from "../components/Homepage/Email"
|
|||||||
import { Proconnect } from "../components/Homepage/Proconnect"
|
import { Proconnect } from "../components/Homepage/Proconnect"
|
||||||
import { StylesFull } from "./StylesFull"
|
import { StylesFull } from "./StylesFull"
|
||||||
import { StylesStandalone } from "./StylesStandalone"
|
import { StylesStandalone } from "./StylesStandalone"
|
||||||
|
import { StylesGaufre } from "./StylesGaufre"
|
||||||
import { DsfrHeader } from "./DsfrHeader"
|
import { DsfrHeader } from "./DsfrHeader"
|
||||||
import services from "../../../../website/src/data/services.json"
|
import services from "../../../../website/src/data/services.json"
|
||||||
|
|
||||||
@@ -96,7 +97,7 @@ const routes = [
|
|||||||
}),
|
}),
|
||||||
{
|
{
|
||||||
path: "/gaufre",
|
path: "/gaufre",
|
||||||
label: "Gaufre",
|
label: "Gaufre (header DSFR)",
|
||||||
component: (
|
component: (
|
||||||
<StylesStandalone type="gaufre">
|
<StylesStandalone type="gaufre">
|
||||||
<DsfrHeader actions={[<Gaufre />]} />
|
<DsfrHeader actions={[<Gaufre />]} />
|
||||||
@@ -134,6 +135,57 @@ const routes = [
|
|||||||
</StylesStandalone>
|
</StylesStandalone>
|
||||||
),
|
),
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: "/gaufre-custom",
|
||||||
|
label: "Gaufre (header custom)",
|
||||||
|
component: (
|
||||||
|
<StylesGaufre>
|
||||||
|
<div
|
||||||
|
style={{
|
||||||
|
margin: "2rem auto",
|
||||||
|
width: 800,
|
||||||
|
border: "1px solid #999",
|
||||||
|
padding: "2rem",
|
||||||
|
borderRadius: "0.5rem",
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<div style={{ display: "flex", justifyContent: "space-between" }}>
|
||||||
|
<h1>Test de la Gaufre</h1>
|
||||||
|
<Gaufre />
|
||||||
|
</div>
|
||||||
|
<p>
|
||||||
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ac diam a libero posuere
|
||||||
|
ornare facilisis in mi. Nullam eu vulputate augue, in auctor nibh. Praesent ac tempus
|
||||||
|
dui. Integer vel enim non purus facilisis mattis et vel dolor. Aliquam lacinia elit et
|
||||||
|
massa faucibus, at dictum risus ornare. Vivamus ultricies magna et gravida consequat.
|
||||||
|
Donec ac odio finibus, lobortis purus vel, consequat purus. Maecenas convallis vel enim
|
||||||
|
eu malesuada. Vestibulum elementum maximus massa, a porta erat congue quis. Nunc neque
|
||||||
|
quam, euismod et malesuada in, bibendum ac ex. Phasellus felis elit, egestas a convallis
|
||||||
|
nec, malesuada a est. Donec ac urna venenatis lorem aliquet rhoncus in accumsan ipsum.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Interdum et malesuada fames ac ante ipsum primis in faucibus. Morbi sed augue elementum,
|
||||||
|
tempus diam in, euismod purus. Fusce interdum, leo nec blandit eleifend, sapien ligula
|
||||||
|
egestas quam, quis aliquam ex turpis ut augue. Nullam a neque consectetur, feugiat eros
|
||||||
|
a, lacinia tortor. Proin imperdiet vehicula justo, eget bibendum tortor gravida a.
|
||||||
|
Pellentesque sit amet fermentum urna. Ut rutrum eros a ligula dapibus pharetra. In
|
||||||
|
porttitor arcu in euismod dictum. Aenean vestibulum mi et dignissim rutrum. Phasellus
|
||||||
|
ultrices ex justo, eu tincidunt metus efficitur non. Curabitur ac lorem ornare, aliquet
|
||||||
|
neque et, tristique elit. Donec quis turpis sodales, interdum massa fermentum, dictum
|
||||||
|
magna.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Mauris elit risus, facilisis at magna quis, interdum tempor nulla. Ut ac erat eget
|
||||||
|
tellus ultricies semper. Ut at dictum ante. Lorem ipsum dolor sit amet, consectetur
|
||||||
|
adipiscing elit. Nam placerat lacinia eros ac convallis. Sed ultricies lectus et
|
||||||
|
pharetra aliquet. Vestibulum feugiat pulvinar fermentum. Vivamus imperdiet dapibus
|
||||||
|
ornare. Donec venenatis, lectus id faucibus tempus, sapien urna molestie augue, at
|
||||||
|
egestas enim lectus quis nisi.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</StylesGaufre>
|
||||||
|
),
|
||||||
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
ReactDOM.createRoot(document.getElementById("root")!).render(
|
ReactDOM.createRoot(document.getElementById("root")!).render(
|
||||||
|
|||||||
Reference in New Issue
Block a user