@depay/widgets 6.11.0 → 6.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -0
- package/dist/esm/index.bundle.js +437 -144
- package/dist/esm/index.js +394 -102
- package/dist/umd/index.bundle.js +437 -144
- package/dist/umd/index.js +397 -105
- package/package.json +5 -5
package/dist/esm/index.bundle.js
CHANGED
|
@@ -1599,6 +1599,8 @@ class Dialog$1 extends react.Component {
|
|
|
1599
1599
|
constructor(props) {
|
|
1600
1600
|
super(props);
|
|
1601
1601
|
|
|
1602
|
+
this.handler = this.onKeyDown.bind(this);
|
|
1603
|
+
|
|
1602
1604
|
this.state = {
|
|
1603
1605
|
open: true,
|
|
1604
1606
|
};
|
|
@@ -1632,22 +1634,22 @@ class Dialog$1 extends react.Component {
|
|
|
1632
1634
|
this.setState({ open: true });
|
|
1633
1635
|
}, 10);
|
|
1634
1636
|
});
|
|
1635
|
-
this.props.document.addEventListener('keydown', this.
|
|
1637
|
+
this.props.document.addEventListener('keydown', this.handler, true);
|
|
1636
1638
|
}
|
|
1637
1639
|
|
|
1638
1640
|
componentWillUnmount() {
|
|
1639
|
-
this.props.document.
|
|
1641
|
+
this.props.document.removeEventListener('keydown', this.handler, true);
|
|
1640
1642
|
}
|
|
1641
1643
|
|
|
1642
1644
|
render() {
|
|
1643
1645
|
const classNames = ['ReactDialog', this.state.open ? 'ReactDialogOpen' : ''];
|
|
1644
1646
|
const style = ReactDialogStyle({ background: this.props.background });
|
|
1645
1647
|
return (
|
|
1646
|
-
react.createElement('div', { className: classNames.join(' '), __self: this, __source: {fileName: _jsxFileName$2, lineNumber:
|
|
1647
|
-
, react.createElement('style', {__self: this, __source: {fileName: _jsxFileName$2, lineNumber:
|
|
1648
|
-
, react.createElement('div', { className: "ReactDialogRow", __self: this, __source: {fileName: _jsxFileName$2, lineNumber:
|
|
1649
|
-
, react.createElement('div', { className: "ReactDialogCell", __self: this, __source: {fileName: _jsxFileName$2, lineNumber:
|
|
1650
|
-
, react.createElement('div', { className: "ReactDialogBackground", onClick: this.onClickBackground.bind(this), __self: this, __source: {fileName: _jsxFileName$2, lineNumber:
|
|
1648
|
+
react.createElement('div', { className: classNames.join(' '), __self: this, __source: {fileName: _jsxFileName$2, lineNumber: 56}}
|
|
1649
|
+
, react.createElement('style', {__self: this, __source: {fileName: _jsxFileName$2, lineNumber: 57}}, style)
|
|
1650
|
+
, react.createElement('div', { className: "ReactDialogRow", __self: this, __source: {fileName: _jsxFileName$2, lineNumber: 58}}
|
|
1651
|
+
, react.createElement('div', { className: "ReactDialogCell", __self: this, __source: {fileName: _jsxFileName$2, lineNumber: 59}}
|
|
1652
|
+
, react.createElement('div', { className: "ReactDialogBackground", onClick: this.onClickBackground.bind(this), __self: this, __source: {fileName: _jsxFileName$2, lineNumber: 60}} )
|
|
1651
1653
|
, this.props.children
|
|
1652
1654
|
)
|
|
1653
1655
|
)
|
|
@@ -1767,6 +1769,10 @@ class ReactDialogStack extends react.Component {
|
|
|
1767
1769
|
constructor(props) {
|
|
1768
1770
|
super(props);
|
|
1769
1771
|
|
|
1772
|
+
if (props.setNavigate) {
|
|
1773
|
+
props.setNavigate(this.navigate.bind(this));
|
|
1774
|
+
}
|
|
1775
|
+
|
|
1770
1776
|
this.state = {
|
|
1771
1777
|
stack: [props.start],
|
|
1772
1778
|
animating: false,
|
|
@@ -1881,15 +1887,15 @@ class ReactDialogStack extends react.Component {
|
|
|
1881
1887
|
this.classForDirection(),
|
|
1882
1888
|
];
|
|
1883
1889
|
return (
|
|
1884
|
-
react.createElement('div', { key: index, className: ['ReactDialogStack'].concat(stackState).join(' '), __self: this, __source: {fileName: _jsxFileName$1, lineNumber:
|
|
1885
|
-
, react.createElement('div', { className: "ReactDialogStackRow", __self: this, __source: {fileName: _jsxFileName$1, lineNumber:
|
|
1886
|
-
, react.createElement('div', { className: "ReactDialogStackCell", onClick: this.onClick.bind(this), __self: this, __source: {fileName: _jsxFileName$1, lineNumber:
|
|
1890
|
+
react.createElement('div', { key: index, className: ['ReactDialogStack'].concat(stackState).join(' '), __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 131}}
|
|
1891
|
+
, react.createElement('div', { className: "ReactDialogStackRow", __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 132}}
|
|
1892
|
+
, react.createElement('div', { className: "ReactDialogStackCell", onClick: this.onClick.bind(this), __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 133}}
|
|
1887
1893
|
, react.createElement(NavigateStackContext.Provider, {
|
|
1888
|
-
value: { navigate: this.navigate.bind(this), set: this.set.bind(this) }, __self: this, __source: {fileName: _jsxFileName$1, lineNumber:
|
|
1894
|
+
value: { navigate: this.navigate.bind(this), set: this.set.bind(this) }, __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 134}}
|
|
1889
1895
|
|
|
1890
|
-
, react.createElement(CloseStackContext.Provider, { value: this.close.bind(this), __self: this, __source: {fileName: _jsxFileName$1, lineNumber:
|
|
1891
|
-
, react.createElement(StackContext.Provider, { value: this.state.stack, __self: this, __source: {fileName: _jsxFileName$1, lineNumber:
|
|
1892
|
-
, react.createElement('div', { className: "ReactDialogAnimation", __self: this, __source: {fileName: _jsxFileName$1, lineNumber:
|
|
1896
|
+
, react.createElement(CloseStackContext.Provider, { value: this.close.bind(this), __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 137}}
|
|
1897
|
+
, react.createElement(StackContext.Provider, { value: this.state.stack, __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 138}}
|
|
1898
|
+
, react.createElement('div', { className: "ReactDialogAnimation", __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 139}}, this.props.dialogs[route])
|
|
1893
1899
|
)
|
|
1894
1900
|
)
|
|
1895
1901
|
)
|
|
@@ -1932,9 +1938,9 @@ class ReactDialogStack extends react.Component {
|
|
|
1932
1938
|
open: this.props.open,
|
|
1933
1939
|
document: this.props.document,
|
|
1934
1940
|
container: this.props.container,
|
|
1935
|
-
background: this.props.background, __self: this, __source: {fileName: _jsxFileName$1, lineNumber:
|
|
1941
|
+
background: this.props.background, __self: this, __source: {fileName: _jsxFileName$1, lineNumber: 177}}
|
|
1936
1942
|
|
|
1937
|
-
, react.createElement('style', {__self: this, __source: {fileName: _jsxFileName$1, lineNumber:
|
|
1943
|
+
, react.createElement('style', {__self: this, __source: {fileName: _jsxFileName$1, lineNumber: 184}}, ReactDialogStackStyle())
|
|
1938
1944
|
, this.renderStack()
|
|
1939
1945
|
)
|
|
1940
1946
|
)
|
|
@@ -48407,7 +48413,7 @@ function parseUnits$2(value, unitName) {
|
|
|
48407
48413
|
function _optionalChain$5(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
48408
48414
|
class Transaction {
|
|
48409
48415
|
|
|
48410
|
-
constructor({ blockchain, from, nonce, to, api, method, params, value, sent, confirmed,
|
|
48416
|
+
constructor({ blockchain, from, nonce, to, api, method, params, value, sent, confirmed, failed }) {
|
|
48411
48417
|
|
|
48412
48418
|
this.blockchain = blockchain;
|
|
48413
48419
|
this.from = from;
|
|
@@ -48419,10 +48425,8 @@ class Transaction {
|
|
|
48419
48425
|
this.value = _optionalChain$5([Transaction, 'access', _ => _.bigNumberify, 'call', _2 => _2(value, blockchain), 'optionalAccess', _3 => _3.toString, 'call', _4 => _4()]);
|
|
48420
48426
|
this.sent = sent;
|
|
48421
48427
|
this.confirmed = confirmed;
|
|
48422
|
-
this.ensured = ensured;
|
|
48423
48428
|
this.failed = failed;
|
|
48424
48429
|
this._confirmed = false;
|
|
48425
|
-
this._ensured = false;
|
|
48426
48430
|
this._failed = false;
|
|
48427
48431
|
}
|
|
48428
48432
|
|
|
@@ -48469,19 +48473,6 @@ class Transaction {
|
|
|
48469
48473
|
})
|
|
48470
48474
|
}
|
|
48471
48475
|
|
|
48472
|
-
ensurance() {
|
|
48473
|
-
if (this._ensured) {
|
|
48474
|
-
return Promise.resolve(this)
|
|
48475
|
-
}
|
|
48476
|
-
return new Promise((resolve, reject) => {
|
|
48477
|
-
let originalEnsured = this.ensured;
|
|
48478
|
-
this.ensured = () => {
|
|
48479
|
-
if (originalEnsured) originalEnsured(this);
|
|
48480
|
-
resolve(this);
|
|
48481
|
-
};
|
|
48482
|
-
})
|
|
48483
|
-
}
|
|
48484
|
-
|
|
48485
48476
|
failure() {
|
|
48486
48477
|
if (this._failed) {
|
|
48487
48478
|
return Promise.resolve(this)
|
|
@@ -48526,15 +48517,22 @@ const sendTransaction$1 = async ({ transaction, wallet })=> {
|
|
|
48526
48517
|
transaction._confirmed = true;
|
|
48527
48518
|
if (transaction.confirmed) transaction.confirmed(transaction);
|
|
48528
48519
|
}).catch((error)=>{
|
|
48529
|
-
|
|
48530
|
-
|
|
48531
|
-
|
|
48532
|
-
|
|
48533
|
-
|
|
48534
|
-
|
|
48535
|
-
|
|
48536
|
-
|
|
48537
|
-
|
|
48520
|
+
if(error && error.code && error.code == 'TRANSACTION_REPLACED') {
|
|
48521
|
+
if(error.replacement && error.replacement.hash) {
|
|
48522
|
+
transaction.id = error.replacement.hash;
|
|
48523
|
+
transaction.url = Blockchain.findByName(transaction.blockchain).explorerUrlFor({ transaction });
|
|
48524
|
+
}
|
|
48525
|
+
if(error.replacement && error.replacement.hash && error.receipt && error.receipt.status == 1) {
|
|
48526
|
+
transaction._confirmed = true;
|
|
48527
|
+
if (transaction.confirmed) transaction.confirmed(transaction);
|
|
48528
|
+
} else if(error.replacement && error.replacement.hash && error.receipt && error.receipt.status == 0) {
|
|
48529
|
+
transaction._failed = true;
|
|
48530
|
+
if(transaction.failed) transaction.failed(transaction, error);
|
|
48531
|
+
}
|
|
48532
|
+
} else {
|
|
48533
|
+
transaction._failed = true;
|
|
48534
|
+
if(transaction.failed) transaction.failed(transaction, error);
|
|
48535
|
+
}
|
|
48538
48536
|
});
|
|
48539
48537
|
} else {
|
|
48540
48538
|
throw('Submitting transaction failed!')
|
|
@@ -48775,15 +48773,20 @@ const sendTransaction = async ({ transaction, wallet })=> {
|
|
|
48775
48773
|
transaction._confirmed = true;
|
|
48776
48774
|
if (transaction.confirmed) transaction.confirmed(transaction);
|
|
48777
48775
|
}).catch((error)=>{
|
|
48778
|
-
|
|
48779
|
-
|
|
48780
|
-
|
|
48781
|
-
|
|
48782
|
-
|
|
48783
|
-
|
|
48784
|
-
|
|
48785
|
-
|
|
48786
|
-
|
|
48776
|
+
if(error && error.code && error.code == 'TRANSACTION_REPLACED') {
|
|
48777
|
+
if(error.replacement && error.replacement.hash && error.receipt && error.receipt.status == 1) {
|
|
48778
|
+
transaction.id = error.replacement.hash;
|
|
48779
|
+
transaction._confirmed = true;
|
|
48780
|
+
if (transaction.confirmed) transaction.confirmed(transaction);
|
|
48781
|
+
} else if(error.replacement && error.replacement.hash && error.receipt && error.receipt.status == 0) {
|
|
48782
|
+
transaction.id = error.replacement.hash;
|
|
48783
|
+
transaction._failed = true;
|
|
48784
|
+
if(transaction.failed) transaction.failed(transaction, error);
|
|
48785
|
+
}
|
|
48786
|
+
} else {
|
|
48787
|
+
transaction._failed = true;
|
|
48788
|
+
if(transaction.failed) transaction.failed(transaction, error);
|
|
48789
|
+
}
|
|
48787
48790
|
});
|
|
48788
48791
|
}
|
|
48789
48792
|
} else {
|
|
@@ -49481,7 +49484,7 @@ var CardStyle = (function (style) {
|
|
|
49481
49484
|
});
|
|
49482
49485
|
|
|
49483
49486
|
var DialogStyle = (function (style) {
|
|
49484
|
-
return "\n\n .ReactDialogBackground {\n backdrop-filter: blur(5px);\n background: rgba(0,0,0,0.7);\n }\n\n .Dialog {\n margin: 0 auto;\n position: relative;\n width: 420px;\n box-shadow: 0 0 20px rgba(0,0,0,0.1);\n border-radius: 0.8rem;\n background: rgb(248,248,248);\n }\n\n @media screen and (max-width: 450px) {\n \n .Dialog, .ReactDialogAnimation {\n width: 100%;\n }\n\n }\n\n @media (orientation: portrait) and (max-width: 900px) {\n\n .Dialog {\n align-content: stretch;\n display: flex;\n flex-direction: column;\n
|
|
49487
|
+
return "\n\n .ReactDialogBackground {\n backdrop-filter: blur(5px);\n background: rgba(0,0,0,0.7);\n }\n\n .Dialog {\n margin: 0 auto;\n position: relative;\n width: 420px;\n box-shadow: 0 0 20px rgba(0,0,0,0.1);\n border-radius: 0.8rem;\n background: rgb(248,248,248);\n }\n\n @media screen and (max-width: 450px) {\n \n .Dialog, .ReactDialogAnimation {\n width: 100%;\n }\n\n }\n\n @media (orientation: portrait) and (max-width: 900px) {\n\n .Dialog {\n align-content: stretch;\n display: flex;\n flex-direction: column;\n }\n\n .ReactDialogCell {\n vertical-align: bottom;\n }\n\n .DialogBody {\n flex: 1;\n align-items: flex-end;\n }\n\n .DialogFooter {\n padding-bottom: 20px;\n }\n\n .ReactDialogStackCell {\n vertical-align: bottom;\n }\n\n .ReactDialogAnimation {\n bottom: -100px !important;\n top: inherit !important;\n transition: opacity 0.4s ease, bottom 0.4s ease;\n }\n\n .ReactDialog.ReactDialogOpen .ReactDialogAnimation {\n bottom: 0px !important;\n }\n\n .DialogFooter {\n border-bottom-left-radius: 0 !important;\n border-bottom-right-radius: 0 !important;\n }\n }\n\n .DialogBody {\n background: rgb(248,248,248);\n overflow-x: hidden;\n overflow-y: auto;\n }\n\n .DialogBody.ScrollHeight {\n height: 30vh !important;\n max-height: 30vh !important;\n }\n\n .DialogHeader {\n background: rgb(248,248,248);\n border-top-left-radius: 0.8rem;\n border-top-right-radius: 0.8rem;\n min-height: 3.4rem;\n position: relative;\n width: 100%;\n }\n\n .DialogHeaderActionRight {\n position: absolute;\n top: 0;\n right: 0;\n height: 3rem;\n }\n\n .DialogHeaderActionLeft {\n position: absolute;\n top: 0;\n left: 0;\n height: 3rem;\n }\n\n .DialogFooter {\n background: rgb(248,248,248);\n border-bottom-left-radius: 0.8rem;\n border-bottom-right-radius: 0.8rem;\n line-height: 1.5rem;\n min-height: 2rem;\n position: relative;\n text-align: center;\n }\n\n .ReactShadowDOMInsideContainer > .ReactDialog {\n display: table;\n }\n\n ";
|
|
49485
49488
|
});
|
|
49486
49489
|
|
|
49487
49490
|
var FontStyle = (function (style) {
|
|
@@ -49881,7 +49884,7 @@ var round$1 = (function (input) {
|
|
|
49881
49884
|
focusToFixed = parseFloat(_float).toFixed(1).replace('.', '');
|
|
49882
49885
|
}
|
|
49883
49886
|
|
|
49884
|
-
if (focusToFixed.toString()[0] != 0 && focusToFixed.toString().length > 2) {
|
|
49887
|
+
if (focusToFixed.toString()[0] != "0" && focusToFixed.toString().length > 2) {
|
|
49885
49888
|
return parseInt(inputAsFloat.toFixed(0));
|
|
49886
49889
|
} else {
|
|
49887
49890
|
return parseFloat(digitsAfterDecimal.replace(/\d{3}$/, focusToFixed));
|
|
@@ -61719,16 +61722,17 @@ var ChangableAmountProvider = (function (props) {
|
|
|
61719
61722
|
});
|
|
61720
61723
|
};
|
|
61721
61724
|
|
|
61722
|
-
var
|
|
61725
|
+
var _useContext = react.useContext(ConfigurationContext),
|
|
61726
|
+
amountConfiguration = _useContext.amount,
|
|
61727
|
+
recover = _useContext.recover;
|
|
61728
|
+
|
|
61729
|
+
var _useState = react.useState(recover == undefined ? configurationsMissAmounts(props.accept) : false),
|
|
61723
61730
|
_useState2 = _slicedToArray(_useState, 2),
|
|
61724
61731
|
amountsMissing = _useState2[0],
|
|
61725
61732
|
setAmountsMissing = _useState2[1];
|
|
61726
61733
|
|
|
61727
|
-
var
|
|
61728
|
-
account =
|
|
61729
|
-
|
|
61730
|
-
var _useContext2 = react.useContext(ConfigurationContext),
|
|
61731
|
-
amountConfiguration = _useContext2.amount;
|
|
61734
|
+
var _useContext2 = react.useContext(WalletContext),
|
|
61735
|
+
account = _useContext2.account;
|
|
61732
61736
|
|
|
61733
61737
|
var _useContext3 = react.useContext(ConversionRateContext),
|
|
61734
61738
|
conversionRate = _useContext3.conversionRate;
|
|
@@ -61757,8 +61761,12 @@ var ChangableAmountProvider = (function (props) {
|
|
|
61757
61761
|
setMaxAmount = _useState10[1];
|
|
61758
61762
|
|
|
61759
61763
|
react.useEffect(function () {
|
|
61764
|
+
if (recover) {
|
|
61765
|
+
return;
|
|
61766
|
+
}
|
|
61767
|
+
|
|
61760
61768
|
setAmountsMissing(configurationsMissAmounts(props.accept));
|
|
61761
|
-
}, [props.accept]);
|
|
61769
|
+
}, [props.accept, recover]);
|
|
61762
61770
|
|
|
61763
61771
|
var getAmounts = function getAmounts() {
|
|
61764
61772
|
return new Promise(function (resolve, reject) {
|
|
@@ -61794,6 +61802,10 @@ var ChangableAmountProvider = (function (props) {
|
|
|
61794
61802
|
};
|
|
61795
61803
|
|
|
61796
61804
|
react.useEffect(function () {
|
|
61805
|
+
if (recover) {
|
|
61806
|
+
return;
|
|
61807
|
+
}
|
|
61808
|
+
|
|
61797
61809
|
if (amountsMissing && account && conversionRate) {
|
|
61798
61810
|
getAmounts().then(function (amounts) {
|
|
61799
61811
|
setAcceptWithAmount(props.accept.map(function (configuration, index) {
|
|
@@ -61812,7 +61824,7 @@ var ChangableAmountProvider = (function (props) {
|
|
|
61812
61824
|
}));
|
|
61813
61825
|
})["catch"](setError);
|
|
61814
61826
|
}
|
|
61815
|
-
}, [amountsMissing, account, conversionRate, amount]);
|
|
61827
|
+
}, [amountsMissing, account, conversionRate, amount, recover]);
|
|
61816
61828
|
react.useEffect(function () {
|
|
61817
61829
|
if (amountsMissing && maxRoute) {
|
|
61818
61830
|
maxRoute.fromToken.readable(maxRoute.fromBalance).then(function (readableMaxAmount) {
|
|
@@ -62383,6 +62395,8 @@ var ConversionRateProvider = (function (props) {
|
|
|
62383
62395
|
|
|
62384
62396
|
var DonationRoutingContext = /*#__PURE__*/react.createContext();
|
|
62385
62397
|
|
|
62398
|
+
var NavigateContext = /*#__PURE__*/react.createContext();
|
|
62399
|
+
|
|
62386
62400
|
var QuestionsGraphic = "data:image/png;base64,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";
|
|
62387
62401
|
|
|
62388
62402
|
var NoPaymentMethodFoundDialog = (function () {
|
|
@@ -62418,7 +62432,9 @@ var PaymentContext = /*#__PURE__*/react.createContext();
|
|
|
62418
62432
|
|
|
62419
62433
|
var PaymentRoutingContext = /*#__PURE__*/react.createContext();
|
|
62420
62434
|
|
|
62421
|
-
var
|
|
62435
|
+
var PaymentTrackingContext = /*#__PURE__*/react.createContext();
|
|
62436
|
+
|
|
62437
|
+
var TransactionTrackingContext = /*#__PURE__*/react.createContext();
|
|
62422
62438
|
|
|
62423
62439
|
var PaymentProvider = (function (props) {
|
|
62424
62440
|
var _useContext = react.useContext(ErrorContext),
|
|
@@ -62426,11 +62442,13 @@ var PaymentProvider = (function (props) {
|
|
|
62426
62442
|
|
|
62427
62443
|
var _useContext2 = react.useContext(ConfigurationContext),
|
|
62428
62444
|
_sent = _useContext2.sent,
|
|
62429
|
-
|
|
62430
|
-
|
|
62445
|
+
confirmed = _useContext2.confirmed,
|
|
62446
|
+
failed = _useContext2.failed,
|
|
62447
|
+
recover = _useContext2.recover;
|
|
62431
62448
|
|
|
62432
62449
|
var _useContext3 = react.useContext(PaymentRoutingContext),
|
|
62433
|
-
selectedRoute = _useContext3.selectedRoute
|
|
62450
|
+
selectedRoute = _useContext3.selectedRoute,
|
|
62451
|
+
getPaymentRoutes = _useContext3.getPaymentRoutes;
|
|
62434
62452
|
|
|
62435
62453
|
var _useContext4 = react.useContext(ClosableContext),
|
|
62436
62454
|
open = _useContext4.open,
|
|
@@ -62443,13 +62461,20 @@ var PaymentProvider = (function (props) {
|
|
|
62443
62461
|
var _useContext6 = react.useContext(UpdatableContext),
|
|
62444
62462
|
setUpdatable = _useContext6.setUpdatable;
|
|
62445
62463
|
|
|
62446
|
-
var _useContext7 = react.useContext(
|
|
62447
|
-
|
|
62464
|
+
var _useContext7 = react.useContext(NavigateContext),
|
|
62465
|
+
navigate = _useContext7.navigate;
|
|
62448
62466
|
|
|
62449
|
-
var _useContext8 = react.useContext(
|
|
62450
|
-
|
|
62451
|
-
|
|
62452
|
-
|
|
62467
|
+
var _useContext8 = react.useContext(WalletContext),
|
|
62468
|
+
wallet = _useContext8.wallet;
|
|
62469
|
+
|
|
62470
|
+
var _useContext9 = react.useContext(PaymentTrackingContext),
|
|
62471
|
+
release = _useContext9.release,
|
|
62472
|
+
tracking = _useContext9.tracking,
|
|
62473
|
+
initializeTracking = _useContext9.initializeTracking;
|
|
62474
|
+
|
|
62475
|
+
var _useContext10 = react.useContext(TransactionTrackingContext),
|
|
62476
|
+
foundTransaction = _useContext10.foundTransaction,
|
|
62477
|
+
initializeTransactionTracking = _useContext10.initializeTracking;
|
|
62453
62478
|
|
|
62454
62479
|
var _useState = react.useState(),
|
|
62455
62480
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -62471,52 +62496,59 @@ var PaymentProvider = (function (props) {
|
|
|
62471
62496
|
paymentState = _useState8[0],
|
|
62472
62497
|
setPaymentState = _useState8[1];
|
|
62473
62498
|
|
|
62499
|
+
var paymentConfirmed = function paymentConfirmed(transaction) {
|
|
62500
|
+
if (tracking != true) {
|
|
62501
|
+
setClosable(true);
|
|
62502
|
+
}
|
|
62503
|
+
|
|
62504
|
+
setPaymentState('confirmed');
|
|
62505
|
+
|
|
62506
|
+
if (confirmed) {
|
|
62507
|
+
confirmed(transaction);
|
|
62508
|
+
}
|
|
62509
|
+
};
|
|
62510
|
+
|
|
62511
|
+
var paymentFailed = function paymentFailed(transaction, error) {
|
|
62512
|
+
if (failed) {
|
|
62513
|
+
failed(transaction, error);
|
|
62514
|
+
}
|
|
62515
|
+
|
|
62516
|
+
setPaymentState('initialized');
|
|
62517
|
+
setPayment(null);
|
|
62518
|
+
setClosable(true);
|
|
62519
|
+
setUpdatable(true);
|
|
62520
|
+
getPaymentRoutes({});
|
|
62521
|
+
navigate('PaymentError');
|
|
62522
|
+
};
|
|
62523
|
+
|
|
62474
62524
|
var pay = /*#__PURE__*/function () {
|
|
62475
|
-
var
|
|
62476
|
-
var
|
|
62525
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee() {
|
|
62526
|
+
var currentBlock;
|
|
62477
62527
|
return regenerator.wrap(function _callee$(_context) {
|
|
62478
62528
|
while (1) {
|
|
62479
62529
|
switch (_context.prev = _context.next) {
|
|
62480
62530
|
case 0:
|
|
62481
|
-
navigate = _ref.navigate;
|
|
62482
62531
|
setClosable(false);
|
|
62483
62532
|
setPaymentState('paying');
|
|
62484
62533
|
setUpdatable(false);
|
|
62485
|
-
_context.next =
|
|
62534
|
+
_context.next = 5;
|
|
62486
62535
|
return request({
|
|
62487
62536
|
blockchain: payment.route.transaction.blockchain,
|
|
62488
62537
|
method: 'latestBlockNumber'
|
|
62489
62538
|
});
|
|
62490
62539
|
|
|
62491
|
-
case
|
|
62540
|
+
case 5:
|
|
62492
62541
|
currentBlock = _context.sent;
|
|
62493
62542
|
wallet.sendTransaction(Object.assign({}, payment.route.transaction, {
|
|
62494
62543
|
sent: function sent(transaction) {
|
|
62544
|
+
initializeTransactionTracking(transaction, currentBlock);
|
|
62545
|
+
|
|
62495
62546
|
if (_sent) {
|
|
62496
62547
|
_sent(transaction);
|
|
62497
62548
|
}
|
|
62498
62549
|
},
|
|
62499
|
-
confirmed:
|
|
62500
|
-
|
|
62501
|
-
setClosable(true);
|
|
62502
|
-
}
|
|
62503
|
-
|
|
62504
|
-
setPaymentState('confirmed');
|
|
62505
|
-
|
|
62506
|
-
if (_confirmed) {
|
|
62507
|
-
_confirmed(transaction);
|
|
62508
|
-
}
|
|
62509
|
-
},
|
|
62510
|
-
failed: function failed(transaction, error) {
|
|
62511
|
-
if (_failed) {
|
|
62512
|
-
_failed(transaction, error);
|
|
62513
|
-
}
|
|
62514
|
-
|
|
62515
|
-
setPaymentState('initialized');
|
|
62516
|
-
setClosable(true);
|
|
62517
|
-
setUpdatable(true);
|
|
62518
|
-
navigate('PaymentError');
|
|
62519
|
-
}
|
|
62550
|
+
confirmed: paymentConfirmed,
|
|
62551
|
+
failed: paymentFailed
|
|
62520
62552
|
})).then(function (sentTransaction) {
|
|
62521
62553
|
if (tracking) {
|
|
62522
62554
|
initializeTracking(sentTransaction, currentBlock, payment.route);
|
|
@@ -62534,7 +62566,7 @@ var PaymentProvider = (function (props) {
|
|
|
62534
62566
|
}
|
|
62535
62567
|
});
|
|
62536
62568
|
|
|
62537
|
-
case
|
|
62569
|
+
case 7:
|
|
62538
62570
|
case "end":
|
|
62539
62571
|
return _context.stop();
|
|
62540
62572
|
}
|
|
@@ -62542,8 +62574,8 @@ var PaymentProvider = (function (props) {
|
|
|
62542
62574
|
}, _callee);
|
|
62543
62575
|
}));
|
|
62544
62576
|
|
|
62545
|
-
return function pay(
|
|
62546
|
-
return
|
|
62577
|
+
return function pay() {
|
|
62578
|
+
return _ref.apply(this, arguments);
|
|
62547
62579
|
};
|
|
62548
62580
|
}();
|
|
62549
62581
|
|
|
@@ -62571,19 +62603,73 @@ var PaymentProvider = (function (props) {
|
|
|
62571
62603
|
setPaymentState('confirmed');
|
|
62572
62604
|
}
|
|
62573
62605
|
}, [release]);
|
|
62606
|
+
react.useEffect(function () {
|
|
62607
|
+
if (recover) {
|
|
62608
|
+
setClosable(false);
|
|
62609
|
+
setUpdatable(false);
|
|
62610
|
+
setPaymentState('paying');
|
|
62611
|
+
setTransaction({
|
|
62612
|
+
blockchain: recover.blockchain,
|
|
62613
|
+
id: recover.transaction,
|
|
62614
|
+
url: Blockchain.findByName(recover.blockchain).explorerUrlFor({
|
|
62615
|
+
transaction: {
|
|
62616
|
+
id: recover.transaction
|
|
62617
|
+
}
|
|
62618
|
+
})
|
|
62619
|
+
});
|
|
62620
|
+
var paymentToken = new Token({
|
|
62621
|
+
blockchain: recover.blockchain,
|
|
62622
|
+
address: recover.token
|
|
62623
|
+
});
|
|
62624
|
+
Promise.all([paymentToken.name(), paymentToken.symbol()]).then(function (_ref2) {
|
|
62625
|
+
var _ref3 = _slicedToArray(_ref2, 2),
|
|
62626
|
+
name = _ref3[0],
|
|
62627
|
+
symbol = _ref3[1];
|
|
62628
|
+
|
|
62629
|
+
setPayment({
|
|
62630
|
+
blockchain: recover.blockchain,
|
|
62631
|
+
token: recover.token,
|
|
62632
|
+
name: name,
|
|
62633
|
+
symbol: symbol.toUpperCase(),
|
|
62634
|
+
amount: recover.amount
|
|
62635
|
+
});
|
|
62636
|
+
})["catch"](setError);
|
|
62637
|
+
}
|
|
62638
|
+
}, [recover]);
|
|
62639
|
+
react.useEffect(function () {
|
|
62640
|
+
if (foundTransaction && foundTransaction.id && foundTransaction.status) {
|
|
62641
|
+
var newTransaction;
|
|
62642
|
+
|
|
62643
|
+
if (foundTransaction.id.toLowerCase() != transaction.id.toLowerCase()) {
|
|
62644
|
+
newTransaction = Object.assign({}, transaction, {
|
|
62645
|
+
id: foundTransaction.id,
|
|
62646
|
+
url: Blockchain.findByName(transaction.blockchain).explorerUrlFor({
|
|
62647
|
+
transaction: foundTransaction
|
|
62648
|
+
})
|
|
62649
|
+
});
|
|
62650
|
+
setTransaction(newTransaction);
|
|
62651
|
+
}
|
|
62652
|
+
|
|
62653
|
+
if (foundTransaction.status == 'success') {
|
|
62654
|
+
paymentConfirmed(newTransaction || transaction);
|
|
62655
|
+
} else if (foundTransaction.status == 'failed') {
|
|
62656
|
+
paymentFailed(newTransaction || transaction);
|
|
62657
|
+
}
|
|
62658
|
+
}
|
|
62659
|
+
}, [foundTransaction, transaction]);
|
|
62574
62660
|
react.useEffect(function () {
|
|
62575
62661
|
if (selectedRoute) {
|
|
62576
62662
|
var fromToken = selectedRoute.fromToken;
|
|
62577
|
-
selectedRoute.
|
|
62578
|
-
|
|
62579
|
-
|
|
62580
|
-
|
|
62581
|
-
|
|
62582
|
-
amount = _ref4[2];
|
|
62663
|
+
Promise.all([fromToken.name(), fromToken.symbol(), fromToken.readable(selectedRoute.fromAmount)]).then(function (_ref4) {
|
|
62664
|
+
var _ref5 = _slicedToArray(_ref4, 3),
|
|
62665
|
+
name = _ref5[0],
|
|
62666
|
+
symbol = _ref5[1],
|
|
62667
|
+
amount = _ref5[2];
|
|
62583
62668
|
|
|
62584
62669
|
setPayment({
|
|
62670
|
+
blockchain: selectedRoute.blockchain,
|
|
62585
62671
|
route: selectedRoute,
|
|
62586
|
-
token:
|
|
62672
|
+
token: fromToken.address,
|
|
62587
62673
|
name: name,
|
|
62588
62674
|
symbol: symbol.toUpperCase(),
|
|
62589
62675
|
amount: amount
|
|
@@ -67924,6 +68010,9 @@ var PaymentRoutingProvider = (function (props) {
|
|
|
67924
68010
|
var _useContext2 = react.useContext(UpdatableContext),
|
|
67925
68011
|
updatable = _useContext2.updatable;
|
|
67926
68012
|
|
|
68013
|
+
var _useContext3 = react.useContext(ConfigurationContext),
|
|
68014
|
+
recover = _useContext3.recover;
|
|
68015
|
+
|
|
67927
68016
|
var prepareAcceptedPayments = function prepareAcceptedPayments(accept) {
|
|
67928
68017
|
var toAddress = _typeof(accept.receiver) == 'object' ? accept.receiver.address : accept.receiver;
|
|
67929
68018
|
var toContract = _typeof(accept.receiver) == 'object' ? accept.receiver : undefined;
|
|
@@ -68051,7 +68140,7 @@ var PaymentRoutingProvider = (function (props) {
|
|
|
68051
68140
|
};
|
|
68052
68141
|
}, [reloadCount, allRoutes, selectedRoute, updatable]);
|
|
68053
68142
|
react.useEffect(function () {
|
|
68054
|
-
if (account && props.accept) {
|
|
68143
|
+
if (account && props.accept && recover == undefined) {
|
|
68055
68144
|
setAllRoutes(undefined);
|
|
68056
68145
|
setSelectedRoute(undefined);
|
|
68057
68146
|
getPaymentRoutes({});
|
|
@@ -68064,6 +68153,7 @@ var PaymentRoutingProvider = (function (props) {
|
|
|
68064
68153
|
value: {
|
|
68065
68154
|
selectedRoute: selectedRoute,
|
|
68066
68155
|
setSelectedRoute: setSelectedRoute,
|
|
68156
|
+
getPaymentRoutes: getPaymentRoutes,
|
|
68067
68157
|
allRoutes: allRoutes,
|
|
68068
68158
|
setAllRoutes: setAllRoutes
|
|
68069
68159
|
}
|
|
@@ -68189,7 +68279,7 @@ var DonationRoutingProvider = (function (props) {
|
|
|
68189
68279
|
});
|
|
68190
68280
|
|
|
68191
68281
|
var format = (function (input) {
|
|
68192
|
-
var _float =
|
|
68282
|
+
var _float = round$1(input);
|
|
68193
68283
|
|
|
68194
68284
|
var floatToString = _float.toString();
|
|
68195
68285
|
|
|
@@ -70296,7 +70386,7 @@ var Footer = (function () {
|
|
|
70296
70386
|
amount = _useContext2.amount;
|
|
70297
70387
|
_useContext2.amountsMissing;
|
|
70298
70388
|
|
|
70299
|
-
var _useContext3 = react.useContext(
|
|
70389
|
+
var _useContext3 = react.useContext(PaymentTrackingContext),
|
|
70300
70390
|
tracking = _useContext3.tracking,
|
|
70301
70391
|
release = _useContext3.release,
|
|
70302
70392
|
forwardTo = _useContext3.forwardTo,
|
|
@@ -70313,8 +70403,8 @@ var Footer = (function () {
|
|
|
70313
70403
|
var _useContext5 = react.useContext(PaymentValueContext),
|
|
70314
70404
|
paymentValue = _useContext5.paymentValue;
|
|
70315
70405
|
|
|
70316
|
-
var _useContext6 = react.useContext(NavigateStackContext)
|
|
70317
|
-
|
|
70406
|
+
var _useContext6 = react.useContext(NavigateStackContext);
|
|
70407
|
+
_useContext6.navigate;
|
|
70318
70408
|
|
|
70319
70409
|
var _useContext7 = react.useContext(ClosableContext),
|
|
70320
70410
|
close = _useContext7.close;
|
|
@@ -70420,7 +70510,7 @@ var Footer = (function () {
|
|
|
70420
70510
|
};
|
|
70421
70511
|
|
|
70422
70512
|
var approvalButton = function approvalButton() {
|
|
70423
|
-
if (!payment.route.approvalRequired || payment.route.directTransfer) {
|
|
70513
|
+
if (payment.route == undefined || !payment.route.approvalRequired || payment.route.directTransfer) {
|
|
70424
70514
|
return null;
|
|
70425
70515
|
} else if (paymentState == 'initialized') {
|
|
70426
70516
|
return /*#__PURE__*/react.createElement("div", {
|
|
@@ -70457,7 +70547,7 @@ var Footer = (function () {
|
|
|
70457
70547
|
displayedAmount = "".concat(payment.symbol, " ").concat(payment.amount);
|
|
70458
70548
|
}
|
|
70459
70549
|
|
|
70460
|
-
if (paymentState == 'initialized' || paymentState == 'approving') {
|
|
70550
|
+
if ((paymentState == 'initialized' || paymentState == 'approving') && payment.route) {
|
|
70461
70551
|
return /*#__PURE__*/react.createElement("button", {
|
|
70462
70552
|
className: ["ButtonPrimary", payment.route.approvalRequired && !payment.route.directTransfer ? 'disabled' : ''].join(' '),
|
|
70463
70553
|
onClick: function onClick() {
|
|
@@ -70465,9 +70555,7 @@ var Footer = (function () {
|
|
|
70465
70555
|
return;
|
|
70466
70556
|
}
|
|
70467
70557
|
|
|
70468
|
-
pay(
|
|
70469
|
-
navigate: navigate
|
|
70470
|
-
});
|
|
70558
|
+
pay();
|
|
70471
70559
|
}
|
|
70472
70560
|
}, "Pay ", displayedAmount);
|
|
70473
70561
|
} else if (paymentState == 'paying') {
|
|
@@ -70608,8 +70696,11 @@ var PaymentErrorDialog = (function () {
|
|
|
70608
70696
|
var _useContext2 = react.useContext(PaymentContext),
|
|
70609
70697
|
transaction = _useContext2.transaction;
|
|
70610
70698
|
|
|
70699
|
+
var _useContext3 = react.useContext(ConfigurationContext),
|
|
70700
|
+
recover = _useContext3.recover;
|
|
70701
|
+
|
|
70611
70702
|
return /*#__PURE__*/react.createElement(Dialog, {
|
|
70612
|
-
stacked: true,
|
|
70703
|
+
stacked: recover ? false : true,
|
|
70613
70704
|
header: /*#__PURE__*/react.createElement("div", {
|
|
70614
70705
|
className: "PaddingTopS PaddingLeftM PaddingRightM"
|
|
70615
70706
|
}),
|
|
@@ -70622,7 +70713,7 @@ var PaymentErrorDialog = (function () {
|
|
|
70622
70713
|
className: "LineHeightL Text FontSizeL PaddingTopS FontWeightBold"
|
|
70623
70714
|
}, "Payment Failed"), /*#__PURE__*/react.createElement("div", {
|
|
70624
70715
|
className: "Text PaddingTopS PaddingBottomS PaddingLeftS PaddingRightS"
|
|
70625
|
-
}, /*#__PURE__*/react.createElement("strong", {
|
|
70716
|
+
}, recover == undefined && /*#__PURE__*/react.createElement("strong", {
|
|
70626
70717
|
className: "FontSizeM"
|
|
70627
70718
|
}, "Unfortunately executing your payment failed. You can go back and try again."), transaction && /*#__PURE__*/react.createElement("div", {
|
|
70628
70719
|
className: "PaddingTopS"
|
|
@@ -70635,7 +70726,7 @@ var PaymentErrorDialog = (function () {
|
|
|
70635
70726
|
}, "View on explorer")))),
|
|
70636
70727
|
footer: /*#__PURE__*/react.createElement("div", {
|
|
70637
70728
|
className: "PaddingTopXS PaddingRightM PaddingLeftM PaddingBottomM"
|
|
70638
|
-
}, /*#__PURE__*/react.createElement("button", {
|
|
70729
|
+
}, recover == undefined && /*#__PURE__*/react.createElement("button", {
|
|
70639
70730
|
className: "ButtonPrimary",
|
|
70640
70731
|
onClick: function onClick() {
|
|
70641
70732
|
return navigate('back');
|
|
@@ -70691,7 +70782,11 @@ var DonationStack = (function (props) {
|
|
|
70691
70782
|
open = _useContext.open,
|
|
70692
70783
|
close = _useContext.close;
|
|
70693
70784
|
|
|
70785
|
+
var _useContext2 = react.useContext(NavigateContext),
|
|
70786
|
+
setNavigate = _useContext2.setNavigate;
|
|
70787
|
+
|
|
70694
70788
|
return /*#__PURE__*/react.createElement(ReactDialogStack, {
|
|
70789
|
+
setNavigate: setNavigate,
|
|
70695
70790
|
open: open,
|
|
70696
70791
|
close: close,
|
|
70697
70792
|
start: "DonationOverview",
|
|
@@ -70707,7 +70802,28 @@ var DonationStack = (function (props) {
|
|
|
70707
70802
|
});
|
|
70708
70803
|
});
|
|
70709
70804
|
|
|
70710
|
-
var
|
|
70805
|
+
var NavigateProvider = (function (props) {
|
|
70806
|
+
var navigator;
|
|
70807
|
+
|
|
70808
|
+
var setNavigate = function setNavigate(_navigator) {
|
|
70809
|
+
navigator = _navigator;
|
|
70810
|
+
};
|
|
70811
|
+
|
|
70812
|
+
var navigate = function navigate(dialog) {
|
|
70813
|
+
if (navigator) {
|
|
70814
|
+
navigator(dialog);
|
|
70815
|
+
}
|
|
70816
|
+
};
|
|
70817
|
+
|
|
70818
|
+
return /*#__PURE__*/react.createElement(NavigateContext.Provider, {
|
|
70819
|
+
value: {
|
|
70820
|
+
navigate: navigate,
|
|
70821
|
+
setNavigate: setNavigate
|
|
70822
|
+
}
|
|
70823
|
+
}, props.children);
|
|
70824
|
+
});
|
|
70825
|
+
|
|
70826
|
+
var PaymentTrackingProvider = (function (props) {
|
|
70711
70827
|
var _useContext = react.useContext(ErrorContext),
|
|
70712
70828
|
errorCallback = _useContext.errorCallback;
|
|
70713
70829
|
|
|
@@ -70801,14 +70917,14 @@ var TrackingProvider = (function (props) {
|
|
|
70801
70917
|
|
|
70802
70918
|
var retryStartTracking = function retryStartTracking(transaction, afterBlock, paymentRoute, attempt) {
|
|
70803
70919
|
attempt = parseInt(attempt || 1, 10);
|
|
70804
|
-
console.log('
|
|
70920
|
+
console.log('RETRYING PAYMENT TRACKING ATTEMPT ', attempt);
|
|
70805
70921
|
|
|
70806
70922
|
if (attempt < 3) {
|
|
70807
70923
|
setTimeout(function () {
|
|
70808
70924
|
startTracking(transaction, afterBlock, paymentRoute, attempt + 1);
|
|
70809
70925
|
}, 3000);
|
|
70810
70926
|
} else {
|
|
70811
|
-
console.log('TRACKING FAILED AFTER 3 ATTEMPTS!');
|
|
70927
|
+
console.log('PAYMENT TRACKING FAILED AFTER 3 ATTEMPTS!');
|
|
70812
70928
|
setTrackingFailed(true);
|
|
70813
70929
|
|
|
70814
70930
|
if (typeof errorCallback == 'function') {
|
|
@@ -70823,6 +70939,9 @@ var TrackingProvider = (function (props) {
|
|
|
70823
70939
|
if (track.endpoint) {
|
|
70824
70940
|
return fetch(track.endpoint, {
|
|
70825
70941
|
method: 'POST',
|
|
70942
|
+
headers: {
|
|
70943
|
+
'Content-Type': 'application/json'
|
|
70944
|
+
},
|
|
70826
70945
|
body: JSON.stringify(payment)
|
|
70827
70946
|
});
|
|
70828
70947
|
} else if (track.method) {
|
|
@@ -70842,12 +70961,12 @@ var TrackingProvider = (function (props) {
|
|
|
70842
70961
|
to_token: paymentRoute.toToken.address
|
|
70843
70962
|
}).then(function (response) {
|
|
70844
70963
|
if (response.status == 200) {
|
|
70845
|
-
console.log('TRACKING INITIALIZED');
|
|
70964
|
+
console.log('PAYMENT TRACKING INITIALIZED');
|
|
70846
70965
|
} else {
|
|
70847
70966
|
retryStartTracking(transaction, afterBlock, paymentRoute, attempt);
|
|
70848
70967
|
}
|
|
70849
70968
|
})["catch"](function (error) {
|
|
70850
|
-
console.log('TRACKING FAILED', error);
|
|
70969
|
+
console.log('PAYMENT TRACKING FAILED', error);
|
|
70851
70970
|
retryStartTracking(transaction, afterBlock, paymentRoute, attempt);
|
|
70852
70971
|
});
|
|
70853
70972
|
};
|
|
@@ -70884,6 +71003,9 @@ var TrackingProvider = (function (props) {
|
|
|
70884
71003
|
if (track.poll.endpoint) {
|
|
70885
71004
|
fetch(track.poll.endpoint, {
|
|
70886
71005
|
method: 'POST',
|
|
71006
|
+
headers: {
|
|
71007
|
+
'Content-Type': 'application/json'
|
|
71008
|
+
},
|
|
70887
71009
|
body: JSON.stringify(payment)
|
|
70888
71010
|
}).then(handleResponse);
|
|
70889
71011
|
} else if (track.poll.method) {
|
|
@@ -70912,7 +71034,7 @@ var TrackingProvider = (function (props) {
|
|
|
70912
71034
|
startTracking(transaction, afterBlock, paymentRoute);
|
|
70913
71035
|
};
|
|
70914
71036
|
|
|
70915
|
-
return /*#__PURE__*/react.createElement(
|
|
71037
|
+
return /*#__PURE__*/react.createElement(PaymentTrackingContext.Provider, {
|
|
70916
71038
|
value: {
|
|
70917
71039
|
tracking: tracking,
|
|
70918
71040
|
initializeTracking: initializeTracking,
|
|
@@ -70923,6 +71045,154 @@ var TrackingProvider = (function (props) {
|
|
|
70923
71045
|
}, props.children);
|
|
70924
71046
|
});
|
|
70925
71047
|
|
|
71048
|
+
var TransactionTrackingProvider = (function (props) {
|
|
71049
|
+
var _useState = react.useState(),
|
|
71050
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
71051
|
+
givenTransaction = _useState2[0],
|
|
71052
|
+
setGivenTransaction = _useState2[1];
|
|
71053
|
+
|
|
71054
|
+
var _useState3 = react.useState(),
|
|
71055
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
71056
|
+
foundTransaction = _useState4[0],
|
|
71057
|
+
setFoundTransaction = _useState4[1];
|
|
71058
|
+
|
|
71059
|
+
var _useState5 = react.useState(false),
|
|
71060
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
71061
|
+
polling = _useState6[0],
|
|
71062
|
+
setPolling = _useState6[1];
|
|
71063
|
+
|
|
71064
|
+
var _useContext = react.useContext(ErrorContext);
|
|
71065
|
+
_useContext.errorCallback;
|
|
71066
|
+
|
|
71067
|
+
var _useContext2 = react.useContext(ConfigurationContext),
|
|
71068
|
+
recover = _useContext2.recover;
|
|
71069
|
+
|
|
71070
|
+
react.useEffect(function () {
|
|
71071
|
+
if (polling) {
|
|
71072
|
+
var poll = function poll() {
|
|
71073
|
+
fetch("https://api.depay.fi/v2/transactions/".concat(givenTransaction.blockchain, "/").concat(givenTransaction.from.toLowerCase(), "/").concat(givenTransaction.nonce)).then(function (response) {
|
|
71074
|
+
if (response.status == 200) {
|
|
71075
|
+
response.json().then(function (data) {
|
|
71076
|
+
if (data.status != 'pending') {
|
|
71077
|
+
setFoundTransaction({
|
|
71078
|
+
id: data.external_id,
|
|
71079
|
+
status: data.status
|
|
71080
|
+
});
|
|
71081
|
+
setPolling(false);
|
|
71082
|
+
}
|
|
71083
|
+
});
|
|
71084
|
+
}
|
|
71085
|
+
});
|
|
71086
|
+
};
|
|
71087
|
+
|
|
71088
|
+
var pollingInterval = setInterval(poll, 5000);
|
|
71089
|
+
poll();
|
|
71090
|
+
return function () {
|
|
71091
|
+
clearInterval(pollingInterval);
|
|
71092
|
+
};
|
|
71093
|
+
}
|
|
71094
|
+
}, [polling]);
|
|
71095
|
+
|
|
71096
|
+
var createTracking = function createTracking(transaction, afterBlock, attempt) {
|
|
71097
|
+
if (attempt > 3) {
|
|
71098
|
+
console.log('TRANSACTION TRACKING FAILED AFTER 3 ATTEMPTS!');
|
|
71099
|
+
return;
|
|
71100
|
+
}
|
|
71101
|
+
|
|
71102
|
+
fetch('https://api.depay.fi/v2/transactions', {
|
|
71103
|
+
method: 'POST',
|
|
71104
|
+
headers: {
|
|
71105
|
+
'X-Api-Key': apiKey,
|
|
71106
|
+
'Content-Type': 'application/json'
|
|
71107
|
+
},
|
|
71108
|
+
body: JSON.stringify({
|
|
71109
|
+
id: transaction.id,
|
|
71110
|
+
after_block: afterBlock,
|
|
71111
|
+
blockchain: transaction.blockchain,
|
|
71112
|
+
sender: transaction.from.toLowerCase(),
|
|
71113
|
+
nonce: transaction.nonce
|
|
71114
|
+
})
|
|
71115
|
+
}).then(function (response) {
|
|
71116
|
+
if (response.status == 200 || response.status == 201) {
|
|
71117
|
+
console.log('TRANSACTION TRACKING INITIALIZED');
|
|
71118
|
+
} else {
|
|
71119
|
+
console.log('TRANSACTION TRACKING FAILED', response);
|
|
71120
|
+
setTimeout(function () {
|
|
71121
|
+
createTracking(transaction, afterBlock, attempt + 1);
|
|
71122
|
+
}, 3000);
|
|
71123
|
+
}
|
|
71124
|
+
})["catch"](function (error) {
|
|
71125
|
+
console.log('TRANSACTION TRACKING FAILED', error);
|
|
71126
|
+
setTimeout(function () {
|
|
71127
|
+
createTracking(transaction, afterBlock, attempt + 1);
|
|
71128
|
+
}, 3000);
|
|
71129
|
+
});
|
|
71130
|
+
};
|
|
71131
|
+
|
|
71132
|
+
var openSocket = function openSocket(transaction) {
|
|
71133
|
+
var socket = new WebSocket('wss://integrate.depay.fi/cable');
|
|
71134
|
+
|
|
71135
|
+
socket.onopen = function (event) {
|
|
71136
|
+
var msg = {
|
|
71137
|
+
command: 'subscribe',
|
|
71138
|
+
identifier: JSON.stringify({
|
|
71139
|
+
blockchain: transaction.blockchain,
|
|
71140
|
+
sender: transaction.from.toLowerCase(),
|
|
71141
|
+
nonce: transaction.nonce,
|
|
71142
|
+
channel: 'TransactionChannel'
|
|
71143
|
+
})
|
|
71144
|
+
};
|
|
71145
|
+
socket.send(JSON.stringify(msg));
|
|
71146
|
+
};
|
|
71147
|
+
|
|
71148
|
+
socket.onclose = function (event) {};
|
|
71149
|
+
|
|
71150
|
+
socket.onmessage = function (event) {
|
|
71151
|
+
var item = JSON.parse(event.data);
|
|
71152
|
+
|
|
71153
|
+
if (item.type === "ping") {
|
|
71154
|
+
return;
|
|
71155
|
+
}
|
|
71156
|
+
|
|
71157
|
+
if (item.message && item.message.status && item.message.status != 'pending') {
|
|
71158
|
+
setFoundTransaction(item.message);
|
|
71159
|
+
}
|
|
71160
|
+
};
|
|
71161
|
+
|
|
71162
|
+
socket.onerror = function (error) {
|
|
71163
|
+
console.log('WebSocket Error: ' + error);
|
|
71164
|
+
};
|
|
71165
|
+
};
|
|
71166
|
+
|
|
71167
|
+
var initializeTracking = function initializeTracking(transaction, afterBlock) {
|
|
71168
|
+
setGivenTransaction(transaction);
|
|
71169
|
+
|
|
71170
|
+
if (recover == undefined) {
|
|
71171
|
+
createTracking(transaction, afterBlock, 1);
|
|
71172
|
+
}
|
|
71173
|
+
|
|
71174
|
+
openSocket(transaction);
|
|
71175
|
+
setPolling(true);
|
|
71176
|
+
};
|
|
71177
|
+
|
|
71178
|
+
react.useEffect(function () {
|
|
71179
|
+
if (recover) {
|
|
71180
|
+
initializeTracking({
|
|
71181
|
+
blockchain: recover.blockchain,
|
|
71182
|
+
id: recover.transaction,
|
|
71183
|
+
from: recover.sender,
|
|
71184
|
+
nonce: recover.nonce
|
|
71185
|
+
}, recover.afterBlock);
|
|
71186
|
+
}
|
|
71187
|
+
}, [recover]);
|
|
71188
|
+
return /*#__PURE__*/react.createElement(TransactionTrackingContext.Provider, {
|
|
71189
|
+
value: {
|
|
71190
|
+
initializeTracking: initializeTracking,
|
|
71191
|
+
foundTransaction: foundTransaction
|
|
71192
|
+
}
|
|
71193
|
+
}, props.children);
|
|
71194
|
+
});
|
|
71195
|
+
|
|
70926
71196
|
var WalletProvider = (function (props) {
|
|
70927
71197
|
var _useContext = react.useContext(ErrorContext);
|
|
70928
71198
|
_useContext.setError;
|
|
@@ -71062,9 +71332,9 @@ var Donation = /*#__PURE__*/function () {
|
|
|
71062
71332
|
container: container,
|
|
71063
71333
|
connected: connected,
|
|
71064
71334
|
unmount: unmount
|
|
71065
|
-
}, /*#__PURE__*/react.createElement(ConversionRateProvider, null, /*#__PURE__*/react.createElement(ChangableAmountProvider, {
|
|
71335
|
+
}, /*#__PURE__*/react.createElement(NavigateProvider, null, /*#__PURE__*/react.createElement(ConversionRateProvider, null, /*#__PURE__*/react.createElement(ChangableAmountProvider, {
|
|
71066
71336
|
accept: accept
|
|
71067
|
-
}, /*#__PURE__*/react.createElement(
|
|
71337
|
+
}, /*#__PURE__*/react.createElement(TransactionTrackingProvider, null, /*#__PURE__*/react.createElement(PaymentTrackingProvider, {
|
|
71068
71338
|
document: ensureDocument(document)
|
|
71069
71339
|
}, /*#__PURE__*/react.createElement(DonationRoutingProvider, {
|
|
71070
71340
|
container: container,
|
|
@@ -71072,7 +71342,7 @@ var Donation = /*#__PURE__*/function () {
|
|
|
71072
71342
|
}, /*#__PURE__*/react.createElement(DonationStack, {
|
|
71073
71343
|
document: document,
|
|
71074
71344
|
container: container
|
|
71075
|
-
}), /*#__PURE__*/react.createElement(PoweredBy, null))))))))));
|
|
71345
|
+
}), /*#__PURE__*/react.createElement(PoweredBy, null))))))))))));
|
|
71076
71346
|
};
|
|
71077
71347
|
});
|
|
71078
71348
|
return _context2.abrupt("return", {
|
|
@@ -71123,6 +71393,9 @@ var SignLoginDialog = (function (props) {
|
|
|
71123
71393
|
return new Promise(function (resolve, reject) {
|
|
71124
71394
|
fetch(endpoint, {
|
|
71125
71395
|
method: 'POST',
|
|
71396
|
+
headers: {
|
|
71397
|
+
'Content-Type': 'application/json'
|
|
71398
|
+
},
|
|
71126
71399
|
body: JSON.stringify({
|
|
71127
71400
|
message: message,
|
|
71128
71401
|
signature: signature
|
|
@@ -71339,7 +71612,8 @@ var PaymentOverviewSkeleton = (function (props) {
|
|
|
71339
71612
|
|
|
71340
71613
|
var PaymentOverviewDialog = (function (props) {
|
|
71341
71614
|
var _useContext = react.useContext(ConfigurationContext),
|
|
71342
|
-
currencyCode = _useContext.currencyCode
|
|
71615
|
+
currencyCode = _useContext.currencyCode,
|
|
71616
|
+
recover = _useContext.recover;
|
|
71343
71617
|
|
|
71344
71618
|
var _useContext2 = react.useContext(PaymentContext),
|
|
71345
71619
|
payment = _useContext2.payment,
|
|
@@ -71355,7 +71629,7 @@ var PaymentOverviewDialog = (function (props) {
|
|
|
71355
71629
|
var _useContext5 = react.useContext(NavigateStackContext),
|
|
71356
71630
|
navigate = _useContext5.navigate;
|
|
71357
71631
|
|
|
71358
|
-
if (payment == undefined || paymentValue == undefined) {
|
|
71632
|
+
if (payment == undefined || recover == undefined && paymentValue == undefined) {
|
|
71359
71633
|
return /*#__PURE__*/react.createElement(PaymentOverviewSkeleton, null);
|
|
71360
71634
|
}
|
|
71361
71635
|
|
|
@@ -71406,7 +71680,7 @@ var PaymentOverviewDialog = (function (props) {
|
|
|
71406
71680
|
className: "CardImage",
|
|
71407
71681
|
title: payment.name
|
|
71408
71682
|
}, /*#__PURE__*/react.createElement(TokenImage, {
|
|
71409
|
-
blockchain: payment.
|
|
71683
|
+
blockchain: payment.blockchain,
|
|
71410
71684
|
address: payment.token
|
|
71411
71685
|
})), /*#__PURE__*/react.createElement("div", {
|
|
71412
71686
|
className: "CardBody"
|
|
@@ -71436,7 +71710,11 @@ var PaymentStack = (function (props) {
|
|
|
71436
71710
|
open = _useContext.open,
|
|
71437
71711
|
close = _useContext.close;
|
|
71438
71712
|
|
|
71713
|
+
var _useContext2 = react.useContext(NavigateContext),
|
|
71714
|
+
setNavigate = _useContext2.setNavigate;
|
|
71715
|
+
|
|
71439
71716
|
return /*#__PURE__*/react.createElement(ReactDialogStack, {
|
|
71717
|
+
setNavigate: setNavigate,
|
|
71440
71718
|
open: open,
|
|
71441
71719
|
close: close,
|
|
71442
71720
|
start: "PaymentOverview",
|
|
@@ -71454,12 +71732,21 @@ var PaymentStack = (function (props) {
|
|
|
71454
71732
|
|
|
71455
71733
|
var preflight$1 = /*#__PURE__*/function () {
|
|
71456
71734
|
var _ref2 = _asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee(_ref) {
|
|
71457
|
-
var accept;
|
|
71735
|
+
var accept, recover;
|
|
71458
71736
|
return regenerator.wrap(function _callee$(_context) {
|
|
71459
71737
|
while (1) {
|
|
71460
71738
|
switch (_context.prev = _context.next) {
|
|
71461
71739
|
case 0:
|
|
71462
|
-
accept = _ref.accept;
|
|
71740
|
+
accept = _ref.accept, recover = _ref.recover;
|
|
71741
|
+
|
|
71742
|
+
if (!recover) {
|
|
71743
|
+
_context.next = 3;
|
|
71744
|
+
break;
|
|
71745
|
+
}
|
|
71746
|
+
|
|
71747
|
+
return _context.abrupt("return");
|
|
71748
|
+
|
|
71749
|
+
case 3:
|
|
71463
71750
|
accept.forEach(function (configuration) {
|
|
71464
71751
|
if (typeof configuration.blockchain === 'undefined') {
|
|
71465
71752
|
throw 'You need to set the blockchain your want to receive the payment on!';
|
|
@@ -71478,7 +71765,7 @@ var preflight$1 = /*#__PURE__*/function () {
|
|
|
71478
71765
|
}
|
|
71479
71766
|
});
|
|
71480
71767
|
|
|
71481
|
-
case
|
|
71768
|
+
case 4:
|
|
71482
71769
|
case "end":
|
|
71483
71770
|
return _context.stop();
|
|
71484
71771
|
}
|
|
@@ -71493,16 +71780,17 @@ var preflight$1 = /*#__PURE__*/function () {
|
|
|
71493
71780
|
|
|
71494
71781
|
var Payment = /*#__PURE__*/function () {
|
|
71495
71782
|
var _ref4 = _asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee2(_ref3) {
|
|
71496
|
-
var accept, amount, event, sent, confirmed, failed, error, critical, style, whitelist, blacklist, providers, currency, connected, closed, track, fee, document, unmount;
|
|
71783
|
+
var accept, amount, event, sent, confirmed, failed, error, critical, style, whitelist, blacklist, providers, currency, connected, closed, track, fee, recover, document, unmount;
|
|
71497
71784
|
return regenerator.wrap(function _callee2$(_context2) {
|
|
71498
71785
|
while (1) {
|
|
71499
71786
|
switch (_context2.prev = _context2.next) {
|
|
71500
71787
|
case 0:
|
|
71501
|
-
accept = _ref3.accept, amount = _ref3.amount, event = _ref3.event, sent = _ref3.sent, confirmed = _ref3.confirmed, failed = _ref3.failed, error = _ref3.error, critical = _ref3.critical, style = _ref3.style, whitelist = _ref3.whitelist, blacklist = _ref3.blacklist, providers = _ref3.providers, currency = _ref3.currency, connected = _ref3.connected, closed = _ref3.closed, track = _ref3.track, fee = _ref3.fee, document = _ref3.document;
|
|
71788
|
+
accept = _ref3.accept, amount = _ref3.amount, event = _ref3.event, sent = _ref3.sent, confirmed = _ref3.confirmed, failed = _ref3.failed, error = _ref3.error, critical = _ref3.critical, style = _ref3.style, whitelist = _ref3.whitelist, blacklist = _ref3.blacklist, providers = _ref3.providers, currency = _ref3.currency, connected = _ref3.connected, closed = _ref3.closed, track = _ref3.track, fee = _ref3.fee, recover = _ref3.recover, document = _ref3.document;
|
|
71502
71789
|
_context2.prev = 1;
|
|
71503
71790
|
_context2.next = 4;
|
|
71504
71791
|
return preflight$1({
|
|
71505
|
-
accept: accept
|
|
71792
|
+
accept: accept,
|
|
71793
|
+
recover: recover
|
|
71506
71794
|
});
|
|
71507
71795
|
|
|
71508
71796
|
case 4:
|
|
@@ -71529,7 +71817,8 @@ var Payment = /*#__PURE__*/function () {
|
|
|
71529
71817
|
blacklist: blacklist,
|
|
71530
71818
|
providers: providers,
|
|
71531
71819
|
track: track,
|
|
71532
|
-
fee: fee
|
|
71820
|
+
fee: fee,
|
|
71821
|
+
recover: recover
|
|
71533
71822
|
}
|
|
71534
71823
|
}, /*#__PURE__*/react.createElement(UpdatableProvider, null, /*#__PURE__*/react.createElement(ClosableProvider, {
|
|
71535
71824
|
unmount: unmount
|
|
@@ -71538,7 +71827,7 @@ var Payment = /*#__PURE__*/function () {
|
|
|
71538
71827
|
container: container,
|
|
71539
71828
|
connected: connected,
|
|
71540
71829
|
unmount: unmount
|
|
71541
|
-
}, /*#__PURE__*/react.createElement(ConversionRateProvider, null, /*#__PURE__*/react.createElement(ChangableAmountProvider, {
|
|
71830
|
+
}, /*#__PURE__*/react.createElement(NavigateProvider, null, /*#__PURE__*/react.createElement(ConversionRateProvider, null, /*#__PURE__*/react.createElement(ChangableAmountProvider, {
|
|
71542
71831
|
accept: accept
|
|
71543
71832
|
}, /*#__PURE__*/react.createElement(PaymentAmountRoutingProvider, {
|
|
71544
71833
|
accept: accept,
|
|
@@ -71546,7 +71835,7 @@ var Payment = /*#__PURE__*/function () {
|
|
|
71546
71835
|
blacklist: blacklist,
|
|
71547
71836
|
event: event,
|
|
71548
71837
|
fee: fee
|
|
71549
|
-
}, /*#__PURE__*/react.createElement(
|
|
71838
|
+
}, /*#__PURE__*/react.createElement(TransactionTrackingProvider, null, /*#__PURE__*/react.createElement(PaymentTrackingProvider, {
|
|
71550
71839
|
document: ensureDocument(document)
|
|
71551
71840
|
}, /*#__PURE__*/react.createElement(PaymentProvider, {
|
|
71552
71841
|
container: container,
|
|
@@ -71554,7 +71843,7 @@ var Payment = /*#__PURE__*/function () {
|
|
|
71554
71843
|
}, /*#__PURE__*/react.createElement(PaymentValueProvider, null, /*#__PURE__*/react.createElement(PaymentStack, {
|
|
71555
71844
|
document: document,
|
|
71556
71845
|
container: container
|
|
71557
|
-
}), /*#__PURE__*/react.createElement(PoweredBy, null))))))))))));
|
|
71846
|
+
}), /*#__PURE__*/react.createElement(PoweredBy, null))))))))))))));
|
|
71558
71847
|
};
|
|
71559
71848
|
});
|
|
71560
71849
|
return _context2.abrupt("return", {
|
|
@@ -71830,7 +72119,11 @@ var SaleStack = (function (props) {
|
|
|
71830
72119
|
open = _useContext.open,
|
|
71831
72120
|
close = _useContext.close;
|
|
71832
72121
|
|
|
72122
|
+
var _useContext2 = react.useContext(NavigateContext),
|
|
72123
|
+
setNavigate = _useContext2.setNavigate;
|
|
72124
|
+
|
|
71833
72125
|
return /*#__PURE__*/react.createElement(ReactDialogStack, {
|
|
72126
|
+
setNavigate: setNavigate,
|
|
71834
72127
|
open: open,
|
|
71835
72128
|
close: close,
|
|
71836
72129
|
start: "SaleOverview",
|
|
@@ -71941,9 +72234,9 @@ var Sale = /*#__PURE__*/function () {
|
|
|
71941
72234
|
container: container,
|
|
71942
72235
|
connected: connected,
|
|
71943
72236
|
unmount: unmount
|
|
71944
|
-
}, /*#__PURE__*/react.createElement(ConversionRateProvider, null, /*#__PURE__*/react.createElement(ChangableAmountProvider, {
|
|
72237
|
+
}, /*#__PURE__*/react.createElement(NavigateProvider, null, /*#__PURE__*/react.createElement(ConversionRateProvider, null, /*#__PURE__*/react.createElement(ChangableAmountProvider, {
|
|
71945
72238
|
accept: accept
|
|
71946
|
-
}, /*#__PURE__*/react.createElement(
|
|
72239
|
+
}, /*#__PURE__*/react.createElement(TransactionTrackingProvider, null, /*#__PURE__*/react.createElement(PaymentTrackingProvider, {
|
|
71947
72240
|
document: ensureDocument(document)
|
|
71948
72241
|
}, /*#__PURE__*/react.createElement(SaleRoutingProvider, {
|
|
71949
72242
|
container: container,
|
|
@@ -71951,7 +72244,7 @@ var Sale = /*#__PURE__*/function () {
|
|
|
71951
72244
|
}, /*#__PURE__*/react.createElement(SaleStack, {
|
|
71952
72245
|
document: document,
|
|
71953
72246
|
container: container
|
|
71954
|
-
}), /*#__PURE__*/react.createElement(PoweredBy, null))))))))));
|
|
72247
|
+
}), /*#__PURE__*/react.createElement(PoweredBy, null))))))))))));
|
|
71955
72248
|
};
|
|
71956
72249
|
});
|
|
71957
72250
|
return _context2.abrupt("return", {
|