lbry-desktop/ui/js/component/walletSend/view.jsx

91 lines
2.4 KiB
React
Raw Normal View History

2017-06-06 23:19:12 +02:00
import React from "react";
import Link from "component/link";
import Modal from "modal/modal";
2017-06-06 23:19:12 +02:00
import { FormRow } from "component/form";
import lbryuri from "lbryuri";
2017-06-06 06:21:55 +02:00
const WalletSend = props => {
const {
sendToAddress,
closeModal,
modal,
setAmount,
setAddress,
amount,
address,
error,
2017-06-06 23:19:12 +02:00
} = props;
return (
<section className="card">
<form onSubmit={sendToAddress}>
<div className="card__title-primary">
2017-05-26 22:26:06 +02:00
<h3>{__("Send Credits")}</h3>
</div>
<div className="card__content">
2017-06-06 23:19:12 +02:00
<FormRow
label={__("Amount")}
2017-06-19 14:42:24 +02:00
postfix={__("LBC")}
2017-06-06 23:19:12 +02:00
step="0.01"
min="0"
2017-06-06 23:19:12 +02:00
type="number"
placeholder="1.23"
size="10"
onChange={setAmount}
value={amount}
/>
</div>
<div className="card__content">
2017-06-06 23:19:12 +02:00
<FormRow
label={__("Recipient Address")}
placeholder="bbFxRyXXXXXXXXXXXZD8nE7XTLUxYnddTs"
type="text"
size="60"
onChange={setAddress}
value={address}
regexp={lbryuri.REGEXP_ADDRESS}
trim={true}
2017-06-06 23:19:12 +02:00
/>
2017-08-26 05:21:26 +02:00
<div className="form-row-submit">
<Link
button="primary"
label={__("Send")}
onClick={sendToAddress}
disabled={!(parseFloat(amount) > 0.0) || !address}
/>
<input type="submit" className="hidden" />
</div>
</div>
</form>
2017-06-06 23:19:12 +02:00
{modal == "insufficientBalance" &&
<Modal
isOpen={true}
contentLabel={__("Insufficient balance")}
onConfirmed={closeModal}
>
{__(
"Insufficient balance: after this transaction you would have less than 1 LBC in your wallet."
)}
</Modal>}
{modal == "transactionSuccessful" &&
<Modal
isOpen={true}
contentLabel={__("Transaction successful")}
onConfirmed={closeModal}
>
{__("Your transaction was successfully placed in the queue.")}
</Modal>}
{modal == "transactionFailed" &&
<Modal
isOpen={true}
contentLabel={__("Transaction failed")}
onConfirmed={closeModal}
>
{error}
2017-06-06 23:19:12 +02:00
</Modal>}
</section>
2017-06-06 23:19:12 +02:00
);
2017-06-06 06:21:55 +02:00
};
2017-06-06 06:21:55 +02:00
export default WalletSend;