remotion
Version:
Make videos programmatically
28 lines (27 loc) • 942 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.useNonce = exports.SetNonceContext = exports.NonceContext = void 0;
const react_1 = require("react");
exports.NonceContext = (0, react_1.createContext)({
getNonce: () => 0,
fastRefreshes: 0,
manualRefreshes: 0,
});
exports.SetNonceContext = (0, react_1.createContext)({
increaseManualRefreshes: () => { },
});
const useNonce = () => {
const context = (0, react_1.useContext)(exports.NonceContext);
const [nonce, setNonce] = (0, react_1.useState)(() => context.getNonce());
const lastContext = (0, react_1.useRef)(context);
// Only if context changes, but not initially
(0, react_1.useEffect)(() => {
if (lastContext.current === context) {
return;
}
lastContext.current = context;
setNonce(context.getNonce);
}, [context]);
return nonce;
};
exports.useNonce = useNonce;