UNPKG

@r3l/app

Version:
65 lines (48 loc) 3.29 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); var _typeof = require("@babel/runtime/helpers/typeof"); Object.defineProperty(exports, "__esModule", { value: true }); exports.useCurrentWarning = void 0; var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _react = require("react"); var _reactRedux = require("react-redux"); var warnings = _interopRequireWildcard(require("./web3Warning.constants")); var _web3Warning2 = require("./web3Warning.selectors"); var _hooks = require("../../../../web3/hooks"); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } var useCurrentWarning = function useCurrentWarning(_ref) { var user = _ref.user, canClaim = _ref.canClaim; var _useWeb3React = (0, _hooks.useWeb3React)(), account = _useWeb3React.account, active = _useWeb3React.active, chainId = _useWeb3React.chainId, library = _useWeb3React.library, metamask = _useWeb3React.metamask; var _useState = (0, _react.useState)(), _useState2 = (0, _slicedToArray2.default)(_useState, 2), warning = _useState2[0], setWarning = _useState2[1]; var ethAddress = user === null || user === void 0 ? void 0 : user.ethAddress[0]; var screenSize = (0, _reactRedux.useSelector)(function (state) { return state.navigation.screenSize; }); (0, _react.useEffect)(function () { var updateWarnings = function updateWarnings() { if (screenSize !== 0) return warnings.mobile; if (!metamask) return warnings.metamask; if (!active || !account) return warnings.connectMetamask; if (!(0, _web3Warning2.hasCorrectNetwork)(chainId)) return warnings.network; if (!(0, _web3Warning2.hasAccountConnected)(user)) return warnings.connection; if (!(0, _web3Warning2.hasCorrectAccount)(user, account)) return warnings.account(ethAddress); return null; }; user && setWarning(updateWarnings()); }, [metamask, account, library, active, ethAddress, chainId, user, canClaim, screenSize]); return warning; }; exports.useCurrentWarning = useCurrentWarning; //# sourceMappingURL=web3Warning.hooks.js.map