UNPKG

vlibras-player-webjs

Version:

Biblioteca JavaScript moderna para integração do VLibras Player com React, Vue, Angular e vanilla JS

42 lines 1.43 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.NoSSR = NoSSR; exports.useIsMounted = useIsMounted; const jsx_runtime_1 = require("react/jsx-runtime"); /** * @file Componente NoSSR para renderização apenas no cliente * @description Impede que componentes sejam renderizados no servidor */ const react_1 = require("react"); /** * Componente que renderiza children apenas no cliente (após hidratação) * Útil para componentes que dependem de APIs do navegador */ function NoSSR({ children, fallback = null, delay = 0 }) { const [isMounted, setIsMounted] = (0, react_1.useState)(false); (0, react_1.useEffect)(() => { if (delay > 0) { const timer = setTimeout(() => setIsMounted(true), delay); return () => clearTimeout(timer); } else { setIsMounted(true); return undefined; } }, [delay]); if (!isMounted) { return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: fallback }); } return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: children }); } /** * Hook para verificar se o componente está montado no cliente */ function useIsMounted() { const [isMounted, setIsMounted] = (0, react_1.useState)(false); (0, react_1.useEffect)(() => { setIsMounted(true); }, []); return isMounted; } //# sourceMappingURL=NoSSR.js.map