var __assign = (this && this.__assign) || function () {
    __assign = Object.assign || function(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
                t[p] = s[p];
        }
        return t;
    };
    return __assign.apply(this, arguments);
};
import React from 'react';
import { ExplorerLink } from './ExplorerLink';
import { WaitingFor } from './WaitingFor';
import { getStyleForTopLevelComponent } from '../../core/utils/getStyleForTopLevelComponent';
import { useClassFor, classForComponent } from '../utils/classFor';
import { CompanyLogo } from './CompanyLogo';
import '../styles/base/waitingForTransaction.sass';
import '../styles/themes/Legacy/waitingForTransactionThemeLegacy.sass';
import '../styles/themes/Jarvis/waitingForTransactionThemeJarvis.sass';
import '../styles/themes/UniLogin/waitingForTransactionThemeUniLogin.sass';
var Body = function (_a) {
    var action = _a.action, description = _a.description, relayerConfig = _a.relayerConfig, transactionHash = _a.transactionHash, className = _a.className, info = _a.info;
    return (React.createElement("div", null,
        React.createElement(WaitingFor, { action: action, className: className, description: description }),
        React.createElement("div", { className: classForComponent('waitingfortransaction-modal-pending-section') },
            React.createElement("h3", { className: classForComponent('waitingfortransaction-transaction-hash-title') }, "Transaction hash"),
            React.createElement(ExplorerLink, { chainName: relayerConfig.chainSpec.name, transactionHash: transactionHash }),
            React.createElement("div", { className: classForComponent('waitingfortransaction-pending-img') })),
        info && React.createElement("p", { className: classForComponent('info-text') }, info)));
};
export var WaitingForTransaction = function (props) { return (React.createElement("div", { className: useClassFor('waitingfortransaction') },
    React.createElement(CompanyLogo, null),
    React.createElement("div", { className: getStyleForTopLevelComponent(props.className) },
        React.createElement(Body, __assign({ description: DEPLOYMENT_DESCRIPTION }, props))))); };
export var WaitingForDeployment = function (props) { return (React.createElement(WaitingForTransaction, __assign({}, props, { action: props.action || 'Wallet creation', description: props.description || DEPLOYMENT_DESCRIPTION, info: props.info }))); };
export var DEPLOYMENT_DESCRIPTION = 'It takes time to register your username and deploy your wallet. In order to do so, we need to create a transaction and wait until the Ethereum blockchain validates it.';
//# sourceMappingURL=WaitingForTransaction.js.map