{"version":3,"sources":["jsdelivr-header.js","/npm/@chakra-ui/react-env@3.1.0/src/index.ts","/npm/@chakra-ui/react-env@3.1.0/src/env.tsx"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,8iBCNA,YAAA,GAAA,SAAA,YAAA,CAAA,oBAAA,IAAA,oBAAA,eAAA,IAAA,iBAAA,OAAA,QAAA,aAAA,aCAA,IAAA,oCAAoC,QAAA,2CACpC,aAAuE,QAAA,SAkDnE,mBAAA,QAAA,qBA3CE,oBAAA,EAAqB,aAAA,eAA2B,CACpD,YAAA,IACS,SAET,UAAA,IACS,SAMJ,SAAS,gBAAe,MAAE,GAA+B,CAAC,GAC/D,MAAO,CAAE,IAAW,EAAI,aAAA,aAAY,GAAM,EAAI,GAAG,GAOjD,OALA,EAAA,oCAAA,sBAAoB,KACb,GACL,GAAY,GACX,CAAC,KAEJ,EAAO,aAAA,YAAW,mBACpB,CAQO,SAAS,oBAAoB,GAClC,MAAM,SAAE,EAAU,YAAa,EAAA,SAAiB,GAAa,EACvD,GAAA,EAAM,aAAA,QAAwB,MAE9B,GAAA,EAAU,aAAA,UAAqB,IAC/B,GACG,CACL,YAAa,KA3CnB,IAAA,EAAA,EA2CyB,cAAA,EAAA,OAAA,EAAA,EAAI,cAAJ,EAAA,EAAa,eAAb,EAA8B,QAAA,EACjD,UAAW,KA5CjB,IAAA,EAAA,EA4CuB,cAAA,EAAA,OAAA,EAAA,EAAI,cAAJ,EAAA,EAAa,cAAc,aAA3B,EAA0C,MAAA,IAE5D,CAAC,IAEE,GAAY,IAAa,EAE/B,OACE,EAAA,mBAAA,MAAC,mBAAmB,SAAnB,CAA4B,MAAO,EACjC,SAAA,CAAA,EACA,IAAY,EAAA,mBAAA,KAAC,QAAK,GAAG,eAAe,QAAM,EAAC,UAGlD,CAvCA,mBAAmB,YAAc,qBAyCjC,oBAAoB,YAAc","file":"/npm/@chakra-ui/react-env@3.1.0/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.37.0.\n * Original file: /npm/@chakra-ui/react-env@3.1.0/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","export { EnvironmentProvider, useEnvironment } from \"./env\"\nexport type { EnvironmentProviderProps } from \"./env\"\n","import { useSafeLayoutEffect } from \"@chakra-ui/react-use-safe-layout-effect\"\nimport { createContext, useContext, useMemo, useReducer, useRef } from \"react\"\n\ninterface Environment {\n  getWindow: () => Window\n  getDocument: () => Document\n}\n\nconst EnvironmentContext = createContext<Environment>({\n  getDocument() {\n    return document\n  },\n  getWindow() {\n    return window\n  },\n})\n\nEnvironmentContext.displayName = \"EnvironmentContext\"\n\nexport function useEnvironment({ defer }: { defer?: boolean } = {}) {\n  const [, forceUpdate] = useReducer((c) => c + 1, 0)\n\n  useSafeLayoutEffect(() => {\n    if (!defer) return\n    forceUpdate()\n  }, [defer])\n\n  return useContext(EnvironmentContext)\n}\n\nexport interface EnvironmentProviderProps {\n  children: React.ReactNode\n  disabled?: boolean\n  environment?: Environment\n}\n\nexport function EnvironmentProvider(props: EnvironmentProviderProps) {\n  const { children, environment: environmentProp, disabled } = props\n  const ref = useRef<HTMLSpanElement>(null)\n\n  const context = useMemo<Environment>(() => {\n    if (environmentProp) return environmentProp\n    return {\n      getDocument: () => ref.current?.ownerDocument ?? document,\n      getWindow: () => ref.current?.ownerDocument.defaultView ?? window,\n    }\n  }, [environmentProp])\n\n  const showSpan = !disabled || !environmentProp\n\n  return (\n    <EnvironmentContext.Provider value={context}>\n      {children}\n      {showSpan && <span id=\"__chakra_env\" hidden ref={ref} />}\n    </EnvironmentContext.Provider>\n  )\n}\n\nEnvironmentProvider.displayName = \"EnvironmentProvider\"\n"]}