vlibras-player-webjs
Version:
Biblioteca JavaScript moderna para integração do VLibras Player com React, Vue, Angular e vanilla JS
41 lines • 1.35 kB
JavaScript
;
/**
* @file Hook VLibras compatível com SSR
* @description Hook que combina useVLibras com verificações SSR-safe
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.useSSRSafeVLibras = useSSRSafeVLibras;
const useVLibras_1 = require("../hooks/useVLibras");
const useIsHydrated_1 = require("./useIsHydrated");
const useIsomorphicLayoutEffect_1 = require("./useIsomorphicLayoutEffect");
/**
* Hook SSR-safe para VLibras que combina funcionalidades do useVLibras
* com verificações de hidratação e ambiente browser
*
* @param options - Opções do VLibras
* @returns Estado e métodos do VLibras com informações SSR
*
* @example
* ```tsx
* function MyComponent() {
* const { player, isLoaded, isHydrated, isReady } = useSSRSafeVLibras();
*
* if (!isReady) {
* return <div>Carregando VLibras...</div>;
* }
*
* return <VLibrasPlayer />;
* }
* ```
*/
function useSSRSafeVLibras(options) {
const vlibrasState = (0, useVLibras_1.useVLibras)(options);
const isHydrated = (0, useIsHydrated_1.useIsHydrated)();
return {
...vlibrasState,
isHydrated,
isBrowser: useIsomorphicLayoutEffect_1.isBrowser,
isReady: isHydrated && useIsomorphicLayoutEffect_1.isBrowser && vlibrasState.isLoaded
};
}
//# sourceMappingURL=useSSRSafeVLibras.js.map