UNPKG

@r3l/app

Version:
193 lines (160 loc) 7.38 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.VerifyEmail = VerifyEmail; exports.Progress = exports.ProgressType = exports.useUnclaimedSig = exports.useUnclaimedVest = exports.renderWarnings = exports.useVerifyEmail = exports.useClaimVest = void 0; var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray")); var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral")); var _react = _interopRequireDefault(require("react")); var _web = require("../../styled/web"); var _styled = require("../../styled"); var _hooks = require("../../../web3/hooks"); var _reactNativeWeb = require("react-native-web"); var _graphqlTag = require("graphql-tag"); var _reactHooks = require("@apollo/react-hooks"); var _templateObject, _templateObject2, _templateObject3; var SEND_VERIFY_EMAIL = (0, _graphqlTag.gql)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n mutation sendEmail {\n sendEmail(action: \"token claim\")\n }\n"]))); var GET_VEST = (0, _graphqlTag.gql)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n query {\n getVest {\n longVest\n shortVest\n nonce\n }\n }\n"]))); var SEND_CLAIM_VEST = (0, _graphqlTag.gql)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n mutation claimVest($token: String!) {\n claimVest(token: $token) {\n longVestBN\n shortVestBN\n signature\n earning\n nonce\n }\n }\n"]))); var useClaimVest = function useClaimVest() { var _useMutation = (0, _reactHooks.useMutation)(SEND_CLAIM_VEST), _useMutation2 = (0, _slicedToArray2.default)(_useMutation, 2), claimUnvestedTokens = _useMutation2[0], _useMutation2$ = _useMutation2[1], _useMutation2$$data = _useMutation2$.data; _useMutation2$$data = _useMutation2$$data === void 0 ? {} : _useMutation2$$data; var _useMutation2$$data$c = _useMutation2$$data.claimVest, claimVest = _useMutation2$$data$c === void 0 ? undefined : _useMutation2$$data$c, claimingVest = _useMutation2$.loading, claimError = _useMutation2$.error; return { claimUnvestedTokens: claimUnvestedTokens, claimVest: claimVest, claimingVest: claimingVest, claimError: claimError }; }; exports.useClaimVest = useClaimVest; var useVerifyEmail = function useVerifyEmail() { var _useMutation3 = (0, _reactHooks.useMutation)(SEND_VERIFY_EMAIL), _useMutation4 = (0, _slicedToArray2.default)(_useMutation3, 2), verifyEmail = _useMutation4[0], _useMutation4$ = _useMutation4[1], _useMutation4$$data = _useMutation4$.data; _useMutation4$$data = _useMutation4$$data === void 0 ? {} : _useMutation4$$data; var _useMutation4$$data$s = _useMutation4$$data.sendEmail, sendEmail = _useMutation4$$data$s === void 0 ? undefined : _useMutation4$$data$s, sendingEmail = _useMutation4$.loading, emailError = _useMutation4$.error; return { sendEmail: sendEmail, verifyEmail: verifyEmail, sendingEmail: sendingEmail, emailError: emailError }; }; exports.useVerifyEmail = useVerifyEmail; function VerifyEmail(_ref) { var cashOut = _ref.cashOut, setToken = _ref.setToken, token = _ref.token, email = _ref.email; return /*#__PURE__*/_react.default.createElement(_styled.View, null, /*#__PURE__*/_react.default.createElement(_styled.BodyText, { sx: { mb: 3 } }, "We emaild a verification code to ", email, ".", '\n', "Please paste the code below to complete the transaction."), /*#__PURE__*/_react.default.createElement(_styled.Row, null, /*#__PURE__*/_react.default.createElement(_web.Input, { sx: { mt: 0, flex: 1, mr: 1, height: 8, py: 1, px: 1, fontWeight: 'bold' }, onChange: function onChange(_ref2) { var value = _ref2.target.value; return setToken(value); }, value: token }), /*#__PURE__*/_react.default.createElement(_styled.Button, { disabled: !token || token === '', sx: { height: 8, mr: 'auto' }, onPress: cashOut }, "Verify Email"))); } var renderWarnings = function renderWarnings(showUnclamedWarning, emailError) { if (showUnclamedWarning) return /*#__PURE__*/_react.default.createElement(_styled.WarningBox, { sx: { mb: 2 } }, /*#__PURE__*/_react.default.createElement(_styled.BodyText, null, "Warning: You have not completed a previous transfer attempt, press the 'Transfer' button below to complete.")); if (emailError) return /*#__PURE__*/_react.default.createElement(_styled.ErrorBox, { sx: { mb: 2 } }, /*#__PURE__*/_react.default.createElement(_styled.BodyText, null, emailError.message)); return /*#__PURE__*/_react.default.createElement(_styled.WarningBox, { sx: { mb: 2 } }, /*#__PURE__*/_react.default.createElement(_styled.BodyText, null, "Warning: You will have to pay for Ethereum gas when you claim REL tokens. Depending on network congestion this can cost up to $30 or more."), /*#__PURE__*/_react.default.createElement(_styled.BodyText, { sx: { mt: 1 } }, "For this reason we don't reccomend claiming less than 20 REL.")); }; exports.renderWarnings = renderWarnings; var useUnclaimedVest = function useUnclaimedVest(account) { var _useSRelParam = (0, _hooks.useSRelParam)('nonceOf', [account]), userNonce = _useSRelParam.res; var nonce = userNonce != null ? parseInt(userNonce.toNumber()) : undefined; var _useQuery = (0, _reactHooks.useQuery)(GET_VEST), _useQuery$data = _useQuery.data; _useQuery$data = _useQuery$data === void 0 ? {} : _useQuery$data; var vest = _useQuery$data.getVest; if (nonce != null && (vest === null || vest === void 0 ? void 0 : vest.nonce) !== nonce) return null; return vest; }; exports.useUnclaimedVest = useUnclaimedVest; var useUnclaimedSig = function useUnclaimedSig(user, account) { var _useRelParam = (0, _hooks.useRelParam)('nonceOf', [account]), userNonce = _useRelParam.res; var nonce = userNonce ? parseInt(userNonce.toNumber()) : null; var unclaimedSig = user && user.cashOut && nonce != null && user.cashOut.nonce >= Number(nonce) && user.cashOut; return unclaimedSig; }; exports.useUnclaimedSig = useUnclaimedSig; var ProgressType; exports.ProgressType = ProgressType; (function (ProgressType) { ProgressType["EMAIL"] = "EMAIL"; ProgressType["TX"] = "TX"; })(ProgressType || (exports.ProgressType = ProgressType = {})); var Progress = function Progress(_ref3) { var type = _ref3.type; return /*#__PURE__*/_react.default.createElement(_styled.View, { sx: { position: 'absolute', top: 0, left: 0, right: 0, bottom: 0, backgroundColor: 'modalBackground', alignItems: 'center', justifyContent: 'center' } }, /*#__PURE__*/_react.default.createElement(_reactNativeWeb.ActivityIndicator, null), /*#__PURE__*/_react.default.createElement(_styled.BodyText, { sx: { mt: 2 } }, type == ProgressType.EMAIL ? 'Sending Email Verification Code' : 'Processing Transaction')); }; exports.Progress = Progress; //# sourceMappingURL=claimUtils.js.map