"use client";
import { useState, useSyncExternalStore } from "react";
// Numéro inversé : jamais présent tel quel dans le HTML rendu côté serveur,
// et pas de correspondance grep directe. Il n'est reconstruit et injecté dans
// le DOM qu'après hydratation (client), pour l'impression du CV et le clic
// « Afficher ». Les harvesters qui n'exécutent pas de JS ne récupèrent rien.
const REV = "78 45 06 396 262+";
const subscribe = () => () => {};
export default function RevealPhone() {
const isClient = useSyncExternalStore(
subscribe,
() => true,
() => false,
);
const [shown, setShown] = useState(false);
if (!isClient) {
return Afficher le numéro;
}
const display = REV.split("").reverse().join("");
const tel = display.replace(/\s/g, "");
const link = (
{display}
);
return (
<>
{/* Visible uniquement à l'impression / export PDF */}
{link}
{shown ? (
link
) : (
)}
>
);
}