koval-ui
Version:
React components collection with minimalistic design. Supports theming, layout, and input validation.
24 lines (23 loc) • 586 B
JavaScript
"use client";
import { useState as r, useCallback as n, useEffect as c } from "react";
const N = ({ embedRef: t, mutedProp: u }) => {
const [a, s] = r(0), m = n(
(o) => {
s(o.target.valueAsNumber), t.current.volume = o.target.valueAsNumber;
},
[t]
), [e, l] = r(u);
c(() => {
l(u);
}, [u]);
const g = n(() => {
l(!e);
}, [e]);
return c(() => {
s(Number(t.current?.volume || 0));
}, [e, t]), { volume: a, handleSetVolume: m, muted: e, handleToggleMuted: g, setVolume: s };
};
export {
N as useSound
};
//# sourceMappingURL=useSound.js.map