"use strict";const s=require("react");function E(o,p,l){let[b,i]=s.useState(o||p),u=s.useRef(o!==void 0),e=o!==void 0;s.useEffect(()=>{let t=u.current;t!==e&&process.env.NODE_ENV!=="production"&&console.warn(`WARN: A component changed from ${t?"controlled":"uncontrolled"} to ${e?"controlled":"uncontrolled"}.`),u.current=e},[e]);let n=e?o:b,$=s.useCallback((t,...f)=>{let a=(c,...r)=>{l&&(Object.is(n,c)||l(c,...r)),e||(n=c)};typeof t=="function"?(process.env.NODE_ENV!=="production"&&console.warn("We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320"),i((r,...V)=>{let d=t(e?n:r,...V);return a(d,...f),e?r:d})):(e||i(t),a(t,...f))},[e,n,l]);return[n,$]}exports.$458b0a5536c1a7cf$export$40bfa8c7b0832715=E;
//# sourceMappingURL=useControlledState-D0L6S_5r.cjs.js.map
