autemaliquam
Version:
A simple, maximally extensible, dependency minimized framework for building modern Ethereum dApps
1 lines • 8.62 kB
JSON
{"ast":null,"code":"var _s = $RefreshSig$(),\n _s2 = $RefreshSig$();\n\nimport { useState, useEffect } from 'react';\nimport { useWeb3React } from '@web3-react-wan/core';\nimport { injected } from './connectors';\nexport function useEagerConnect() {\n _s();\n\n var _useWeb3React = useWeb3React(),\n activate = _useWeb3React.activate,\n active = _useWeb3React.active;\n\n var _useState = useState(false),\n tried = _useState[0],\n setTried = _useState[1];\n\n useEffect(function () {\n injected.isAuthorized().then(function (isAuthorized) {\n if (isAuthorized) {\n activate(injected, undefined, true)[\"catch\"](function () {\n setTried(true);\n });\n } else {\n setTried(true);\n }\n });\n }, []); // intentionally only running on mount (make sure it's only mounted once :))\n // if the connection worked, wait until we get confirmation of that to flip the flag\n\n useEffect(function () {\n if (!tried && active) {\n setTried(true);\n }\n }, [tried, active]);\n return tried;\n}\n\n_s(useEagerConnect, \"GLh+9ege4oFDiozdAF2n3i5tC+o=\", false, function () {\n return [useWeb3React];\n});\n\nexport function useInactiveListener() {\n _s2();\n\n var suppress = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n var _useWeb3React2 = useWeb3React(),\n active = _useWeb3React2.active,\n error = _useWeb3React2.error,\n activate = _useWeb3React2.activate;\n\n useEffect(function () {\n var _ref = window,\n ethereum = _ref.ethereum;\n\n if (ethereum && ethereum.on && !active && !error && !suppress) {\n var handleConnect = function handleConnect() {\n console.log(\"Handling 'connect' event\");\n activate(injected);\n };\n\n var handleChainChanged = function handleChainChanged(chainId) {\n console.log(\"Handling 'chainChanged' event with payload\", chainId);\n activate(injected);\n };\n\n var handleAccountsChanged = function handleAccountsChanged(accounts) {\n console.log(\"Handling 'accountsChanged' event with payload\", accounts);\n\n if (accounts.length > 0) {\n activate(injected);\n }\n };\n\n var handleNetworkChanged = function handleNetworkChanged(networkId) {\n console.log(\"Handling 'networkChanged' event with payload\", networkId);\n activate(injected);\n };\n\n ethereum.on('connect', handleConnect);\n ethereum.on('chainChanged', handleChainChanged);\n ethereum.on('accountsChanged', handleAccountsChanged);\n ethereum.on('networkChanged', handleNetworkChanged);\n return function () {\n if (ethereum.removeListener) {\n ethereum.removeListener('connect', handleConnect);\n ethereum.removeListener('chainChanged', handleChainChanged);\n ethereum.removeListener('accountsChanged', handleAccountsChanged);\n ethereum.removeListener('networkChanged', handleNetworkChanged);\n }\n };\n }\n }, [active, error, suppress, activate]);\n}\n\n_s2(useInactiveListener, \"tg+LUTCYzAVRTYzC32Q8yta1BMA=\", false, function () {\n return [useWeb3React];\n});","map":{"version":3,"sources":["/home/jsw/code/codeoneline/web3-react/example/hooks.ts"],"names":["useState","useEffect","useWeb3React","injected","useEagerConnect","activate","active","tried","setTried","isAuthorized","then","undefined","useInactiveListener","suppress","error","window","ethereum","on","handleConnect","console","log","handleChainChanged","chainId","handleAccountsChanged","accounts","length","handleNetworkChanged","networkId","removeListener"],"mappings":"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","sourcesContent":["import { useState, useEffect } from 'react'\nimport { useWeb3React } from '@web3-react-wan/core'\n\nimport { injected } from './connectors'\n\nexport function useEagerConnect() {\n const { activate, active } = useWeb3React()\n\n const [tried, setTried] = useState(false)\n\n useEffect(() => {\n injected.isAuthorized().then((isAuthorized: boolean) => {\n if (isAuthorized) {\n activate(injected, undefined, true).catch(() => {\n setTried(true)\n })\n } else {\n setTried(true)\n }\n })\n }, []) // intentionally only running on mount (make sure it's only mounted once :))\n\n // if the connection worked, wait until we get confirmation of that to flip the flag\n useEffect(() => {\n if (!tried && active) {\n setTried(true)\n }\n }, [tried, active])\n\n return tried\n}\n\nexport function useInactiveListener(suppress: boolean = false) {\n const { active, error, activate } = useWeb3React()\n\n useEffect((): any => {\n const { ethereum } = window as any\n if (ethereum && ethereum.on && !active && !error && !suppress) {\n const handleConnect = () => {\n console.log(\"Handling 'connect' event\")\n activate(injected)\n }\n const handleChainChanged = (chainId: string | number) => {\n console.log(\"Handling 'chainChanged' event with payload\", chainId)\n activate(injected)\n }\n const handleAccountsChanged = (accounts: string[]) => {\n console.log(\"Handling 'accountsChanged' event with payload\", accounts)\n if (accounts.length > 0) {\n activate(injected)\n }\n }\n const handleNetworkChanged = (networkId: string | number) => {\n console.log(\"Handling 'networkChanged' event with payload\", networkId)\n activate(injected)\n }\n\n ethereum.on('connect', handleConnect)\n ethereum.on('chainChanged', handleChainChanged)\n ethereum.on('accountsChanged', handleAccountsChanged)\n ethereum.on('networkChanged', handleNetworkChanged)\n\n return () => {\n if (ethereum.removeListener) {\n ethereum.removeListener('connect', handleConnect)\n ethereum.removeListener('chainChanged', handleChainChanged)\n ethereum.removeListener('accountsChanged', handleAccountsChanged)\n ethereum.removeListener('networkChanged', handleNetworkChanged)\n }\n }\n }\n }, [active, error, suppress, activate])\n}\n"]},"metadata":{},"sourceType":"module"}