@ref-finance/ref-sdk 1.3.9 → 1.3.11
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/dist/ref-sdk.cjs.development.css +24 -0
- package/dist/ref-sdk.cjs.development.js +41 -8
- package/dist/ref-sdk.cjs.development.js.map +1 -1
- package/dist/ref-sdk.cjs.production.min.js +1 -1
- package/dist/ref-sdk.cjs.production.min.js.map +1 -1
- package/dist/ref-sdk.esm.js +42 -9
- package/dist/ref-sdk.esm.js.map +1 -1
- package/dist/ref-sdk.umd.development.js +42 -9
- package/dist/ref-sdk.umd.development.js.map +1 -1
- package/dist/ref-sdk.umd.production.min.js +1 -1
- package/dist/ref-sdk.umd.production.min.js.map +1 -1
- package/package.json +1 -1
package/dist/ref-sdk.esm.js
CHANGED
|
@@ -5212,9 +5212,10 @@ function styleInject(css, ref) {
|
|
|
5212
5212
|
}
|
|
5213
5213
|
}
|
|
5214
5214
|
|
|
5215
|
-
var css_248z = ".__ref-swap-widget-container {\n border-radius: 16px;\n padding: 28px;\n padding-bottom: 16px;\n position: relative;\n max-width: 90%;\n}\n\n.__ref-swap-widget-row-flex-center {\n display: flex;\n align-items: center;\n}\n\n.__ref-swap-widget-col-flex-start {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n}\n\n.__ref-swap-widget-header {\n justify-content: space-between;\n margin-bottom: 25px;\n}\n\n.__ref-swap-widget-header-title {\n font-weight: 700;\n font-size: 20px;\n}\n.__ref-swap-widget-header-button-account {\n font-size: 14px;\n margin-right: 8px;\n padding: 4px 13px;\n border-radius: 25px;\n min-width: 120px;\n justify-content: center;\n}\n\n.__ref-swap-widget-header-button-account:hover {\n background: rgba(255, 104, 158, 0.2) !important;\n}\n\n.__ref-swap-widget_slippage_selector {\n box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.25);\n border-radius: 12px;\n position: absolute;\n top: 30px;\n right: 0px;\n padding: 16px;\n padding-right: 20px;\n padding-left: 20px;\n z-index: 100;\n width: 230px;\n font-size: 14px;\n}\n\n.__ref-swap-widget_slippage_selector_input_container {\n width: 100%;\n height: 26px;\n margin-right: 4px;\n padding: 2px 10px;\n}\n.__ref-swap-widget_slippage_selector_button {\n font-size: 14px;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 6px 16px;\n}\n\n.__ref-swap-widget-opacity-hover:hover {\n opacity: 0.5;\n}\n\n.__ref-swap-widget-opacity-active:active {\n opacity: 0.5;\n}\n\n.__ref-swap-widger-token-amount {\n padding: 14px;\n padding-bottom: 8px;\n border-radius: 8px;\n display: flex;\n align-items: flex-start;\n}\n\n.__ref-swap-widger-token-amount_input {\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: flex-end;\n}\n\n.__ref-swap-widget-token-amount_quick_selector {\n}\n\n.__ref-swap-widger-token-amount_balance {\n margin-top: 7px;\n justify-content: space-between;\n}\n\n.__ref-swap-widget-token-amount_quick_selector_item {\n font-size: 12px;\n padding: 6px;\n padding-top: 3px;\n padding-bottom: 3px;\n cursor: pointer;\n}\n.__ref-swap-widget-select-token_input {\n padding: 14px;\n border-radius: 8px;\n}\n\n.__ref-swap-widget_star_token {\n padding: 8px 10px 8px 8px;\n margin: 0px 6px 10px 0px;\n position: relative;\n cursor: pointer;\n border-radius: 8px;\n}\n\n.__ref-swap-widget_token_icon {\n border-radius: 100%;\n flex-shrink: 0;\n}\n\n.__ref-swap-widget_token_list_table {\n table-layout: auto;\n width: 100%;\n font-size: 14px;\n}\n\n.__ref-swap-widget_token_list_table_header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 6px 12px;\n margin: 0px 6px;\n}\n\n.__ref-swap-widget_token-selector-star-tokens {\n margin-top: 20px;\n flex-wrap: wrap;\n}\n.__ref-swap-widget_token_list_table_content {\n display: flex;\n flex-direction: column;\n max-height: 50vh;\n min-height: 30vh;\n overflow-y: auto;\n}\n\n.__ref-swap-widget_token-selector-token-list-item {\n justify-content: space-between;\n padding: 9px 20px;\n}\n.__ref-swap-widget-token-amount_token-select-button {\n font-size: 16px;\n border-radius: 18px;\n padding: 6px 8px;\n cursor: pointer;\n}\n\n.__ref-swap-widget-exchange-button {\n width: 100%;\n justify-content: center;\n padding: 20px 0;\n}\n\n.__ref-swap-widget-submit-button {\n width: 100%;\n justify-content: center;\n font-size: 18px;\n font-weight: 700;\n border-radius: 8px;\n padding: 14px 0 14px 0;\n margin-top: 14px;\n cursor: pointer;\n}\n.__ref-widget-swap-detail-view {\n justify-content: space-between;\n width: 100%;\n font-size: 14px;\n margin-top: 16px;\n}\n\n.__ref-swap-widget-swap-detail-view-item {\n justify-content: space-between;\n margin-bottom: 12px;\n width: 100%;\n}\n\n.__ref-swap-widget-loading {\n animation: spin 2s linear infinite;\n}\n\n.__ref-swap-widget-notification {\n position: absolute;\n top: 50%;\n left: 50%;\n width: 50%;\n transform: translate(-50%, -50%);\n background: rgba(0, 0, 0, 0.5);\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n z-index: 100;\n box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.25);\n border-radius: 12px;\n padding: 32px 20px;\n}\n\n.__ref-swap-widget-notification__button {\n border-radius: 8px;\n padding: 8px 20px;\n margin-top: 14px;\n}\n@keyframes spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n\ninput.__ref-swap-widget-input-class {\n margin: 0;\n background-color: transparent;\n display: block;\n width: 100%;\n padding: 0;\n border-width: 0;\n}\n\ninput.__ref-swap-widget-input-class:focus {\n outline: none;\n border-width: 0;\n}\n\ninput.__ref-swap-widget-input-class::-webkit-outer-spin-button,\ninput.__ref-swap-widget-input-class::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\ninput.__ref-swap-widget-input-class[type='number'] {\n -moz-appearance: textfield; /* Firefox */\n}\n\nbutton.__ref-swap-widget-button {\n border: none;\n}\n\n.__ref-swap-widget-submit-button:hover {\n opacity: 0.5;\n}\n\n.__ref-swap-widget-active:active {\n color: #00c6a2;\n}\n\n.__ref-swap-widget-hover:hover {\n color: #00c6a2;\n}\n\n.__ref-swap-widget_token_list_table_content::-webkit-scrollbar {\n width: 4px;\n height: 4px;\n border-radius: 3px;\n}\n\n.__ref-swap-widget_token_list_table_content::-webkit-scrollbar-track {\n box-shadow: inset 0 0 6px rgba(0, 0, 0, 0);\n}\n.__ref-swap-widget_token_list_table_content::-webkit-scrollbar-thumb {\n background: #00c6a2;\n border-radius: 8px;\n}\n\n.__ref-swap-widget-swap_routes {\n border-radius: 12px;\n padding: 8px 12px 8px 12px;\n width: 100%;\n}\n\n.__ref-swap-widget-valueStyle {\n background-image: -webkit-linear-gradient(left, #00ffd1, #00ffd1, #8c78ff);\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n}\n\n.__ref-swap-widget-swap_route_row {\n justify-content: space-between;\n margin-bottom: 4px;\n}\n";
|
|
5215
|
+
var css_248z = ".__ref-swap-widget-container {\n border-radius: 16px;\n padding: 28px;\n padding-bottom: 16px;\n position: relative;\n max-width: 90%;\n}\n\n.__ref-swap-widget-row-flex-center {\n display: flex;\n align-items: center;\n}\n\n.__ref-swap-widget-col-flex-start {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n}\n\n.__ref-swap-widget-header {\n justify-content: space-between;\n margin-bottom: 25px;\n}\n\n.__ref-swap-widget-header-title {\n font-weight: 700;\n font-size: 20px;\n}\n.__ref-swap-widget-header-button-account {\n font-size: 14px;\n margin-right: 8px;\n padding: 4px 13px;\n border-radius: 25px;\n min-width: 120px;\n justify-content: center;\n}\n\n.__ref-swap-widget-header-button-account:hover {\n background: rgba(255, 104, 158, 0.2) !important;\n}\n\n.__ref-swap-widget_slippage_selector {\n box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.25);\n border-radius: 12px;\n position: absolute;\n top: 30px;\n right: 0px;\n padding: 16px;\n padding-right: 20px;\n padding-left: 20px;\n z-index: 100;\n width: 230px;\n font-size: 14px;\n}\n\n.__ref-swap-widget_slippage_selector_input_container {\n width: 100%;\n height: 26px;\n margin-right: 4px;\n padding: 2px 10px;\n}\n.__ref-swap-widget_slippage_selector_button {\n font-size: 14px;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 6px 16px;\n}\n\n.__ref-swap-widget-opacity-hover:hover {\n opacity: 0.5;\n}\n\n.__ref-swap-widget-opacity-active:active {\n opacity: 0.5;\n}\n\n.__ref-swap-widger-token-amount {\n padding: 14px;\n padding-bottom: 8px;\n border-radius: 8px;\n display: flex;\n align-items: flex-start;\n}\n\n.__ref-swap-widger-token-amount_input {\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: flex-end;\n}\n\n.__ref-swap-widget-token-amount_quick_selector {\n}\n\n.__ref-swap-widger-token-amount_balance {\n margin-top: 7px;\n justify-content: space-between;\n}\n\n.__ref-swap-widget-token-amount_quick_selector_item {\n font-size: 12px;\n padding: 6px;\n padding-top: 3px;\n padding-bottom: 3px;\n cursor: pointer;\n}\n.__ref-swap-widget-select-token_input {\n padding: 14px;\n border-radius: 8px;\n}\n\n.__ref-swap-widget_star_token {\n padding: 8px 10px 8px 8px;\n margin: 0px 6px 10px 0px;\n position: relative;\n cursor: pointer;\n border-radius: 8px;\n}\n\n.__ref-swap-widget_token_icon {\n border-radius: 100%;\n flex-shrink: 0;\n}\n\n.__ref-swap-widget_token_list_table {\n table-layout: auto;\n width: 100%;\n font-size: 14px;\n}\n\n.__ref-swap-widget_token_list_table_header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 6px 12px;\n margin: 0px 6px;\n}\n\n.__ref-swap-widget_token-selector-star-tokens {\n margin-top: 20px;\n flex-wrap: wrap;\n}\n.__ref-swap-widget_token_list_table_content {\n display: flex;\n flex-direction: column;\n max-height: 50vh;\n min-height: 30vh;\n overflow-y: auto;\n}\n\n.__ref-swap-widget_token-selector-token-list-item {\n justify-content: space-between;\n padding: 9px 20px;\n}\n.__ref-swap-widget-token-amount_token-select-button {\n font-size: 16px;\n border-radius: 18px;\n padding: 6px 8px;\n cursor: pointer;\n}\n\n.__ref-swap-widget-exchange-button {\n width: 100%;\n justify-content: center;\n padding: 20px 0;\n}\n\n.__ref-swap-widget-submit-button {\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 18px;\n font-weight: 700;\n border-radius: 8px;\n padding: 14px 0 14px 0;\n margin-top: 14px;\n cursor: pointer;\n}\n\n.__ref-swap-widget-submit-button-loader {\n width: 20px;\n height: 20px;\n border: 2px solid #fff;\n border-bottom-color: rgb(255, 255, 255);\n border-bottom-color: transparent;\n border-radius: 50%;\n display: inline-block;\n box-sizing: border-box;\n animation: rotation 1s linear infinite;\n}\n\n@keyframes rotation {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n\n.__ref-widget-swap-detail-view {\n justify-content: space-between;\n width: 100%;\n font-size: 14px;\n margin-top: 16px;\n}\n\n.__ref-swap-widget-swap-detail-view-item {\n justify-content: space-between;\n margin-bottom: 12px;\n width: 100%;\n}\n\n.__ref-swap-widget-loading {\n animation: spin 2s linear infinite;\n}\n\n.__ref-swap-widget-notification {\n position: absolute;\n top: 50%;\n left: 50%;\n width: 50%;\n transform: translate(-50%, -50%);\n background: rgba(0, 0, 0, 0.5);\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n z-index: 100;\n box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.25);\n border-radius: 12px;\n padding: 32px 20px;\n}\n\n.__ref-swap-widget-notification__button {\n border-radius: 8px;\n padding: 8px 20px;\n margin-top: 14px;\n}\n@keyframes spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n\ninput.__ref-swap-widget-input-class {\n margin: 0;\n background-color: transparent;\n display: block;\n width: 100%;\n padding: 0;\n border-width: 0;\n}\n\ninput.__ref-swap-widget-input-class:focus {\n outline: none;\n border-width: 0;\n}\n\ninput.__ref-swap-widget-input-class::-webkit-outer-spin-button,\ninput.__ref-swap-widget-input-class::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n\ninput.__ref-swap-widget-input-class[type='number'] {\n -moz-appearance: textfield; /* Firefox */\n}\n\nbutton.__ref-swap-widget-button {\n border: none;\n}\n\n.__ref-swap-widget-submit-button:hover {\n opacity: 0.5;\n}\n\n.__ref-swap-widget-active:active {\n color: #00c6a2;\n}\n\n.__ref-swap-widget-hover:hover {\n color: #00c6a2;\n}\n\n.__ref-swap-widget_token_list_table_content::-webkit-scrollbar {\n width: 4px;\n height: 4px;\n border-radius: 3px;\n}\n\n.__ref-swap-widget_token_list_table_content::-webkit-scrollbar-track {\n box-shadow: inset 0 0 6px rgba(0, 0, 0, 0);\n}\n.__ref-swap-widget_token_list_table_content::-webkit-scrollbar-thumb {\n background: #00c6a2;\n border-radius: 8px;\n}\n\n.__ref-swap-widget-swap_routes {\n border-radius: 12px;\n padding: 8px 12px 8px 12px;\n width: 100%;\n}\n\n.__ref-swap-widget-valueStyle {\n background-image: -webkit-linear-gradient(left, #00ffd1, #00ffd1, #8c78ff);\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n}\n\n.__ref-swap-widget-swap_route_row {\n justify-content: space-between;\n margin-bottom: 4px;\n}\n";
|
|
5216
5216
|
styleInject(css_248z);
|
|
5217
5217
|
|
|
5218
|
+
var _ALLOWED_KEYS;
|
|
5218
5219
|
var getPriceImpact$1 = function getPriceImpact(value, tokenIn, tokenInAmount) {
|
|
5219
5220
|
var textColor = Number(value) <= 1 ? 'text-greenLight' : 1 < Number(value) && Number(value) <= 2 ? 'text-warn' : 'text-error';
|
|
5220
5221
|
var displayValue = scientificNotationToString(multiply(tokenInAmount || '0', divide(value, '100')));
|
|
@@ -5525,6 +5526,34 @@ var HalfAndMaxAmount = function HalfAndMaxAmount(_ref6) {
|
|
|
5525
5526
|
}
|
|
5526
5527
|
}, "Max"));
|
|
5527
5528
|
};
|
|
5529
|
+
var DECIMAL_POINT = '.';
|
|
5530
|
+
var ALLOWED_KEYS = (_ALLOWED_KEYS = {
|
|
5531
|
+
'0': true,
|
|
5532
|
+
'1': true,
|
|
5533
|
+
'2': true,
|
|
5534
|
+
'3': true,
|
|
5535
|
+
'4': true,
|
|
5536
|
+
'5': true,
|
|
5537
|
+
'6': true,
|
|
5538
|
+
'7': true,
|
|
5539
|
+
'8': true,
|
|
5540
|
+
'9': true
|
|
5541
|
+
}, _ALLOWED_KEYS[DECIMAL_POINT] = true, _ALLOWED_KEYS);
|
|
5542
|
+
var isValidInput = function isValidInput(value) {
|
|
5543
|
+
var decimalPointsAmount = 0;
|
|
5544
|
+
if (value === DECIMAL_POINT) return false;
|
|
5545
|
+
for (var i = 0; i < value.length; i++) {
|
|
5546
|
+
var _char = value[i];
|
|
5547
|
+
if (!ALLOWED_KEYS[_char]) return false;
|
|
5548
|
+
if (_char === DECIMAL_POINT) {
|
|
5549
|
+
decimalPointsAmount++;
|
|
5550
|
+
if (decimalPointsAmount === 2) {
|
|
5551
|
+
return false;
|
|
5552
|
+
}
|
|
5553
|
+
}
|
|
5554
|
+
}
|
|
5555
|
+
return true;
|
|
5556
|
+
};
|
|
5528
5557
|
var TokenAmount = function TokenAmount(props) {
|
|
5529
5558
|
var _ref$current2;
|
|
5530
5559
|
var balance = props.balance,
|
|
@@ -5590,7 +5619,8 @@ var TokenAmount = function TokenAmount(props) {
|
|
|
5590
5619
|
}, !token ? React.createElement(React.Fragment, null, React.createElement("span", {
|
|
5591
5620
|
style: {
|
|
5592
5621
|
whiteSpace: 'nowrap',
|
|
5593
|
-
height: '26px'
|
|
5622
|
+
height: '26px',
|
|
5623
|
+
userSelect: 'none'
|
|
5594
5624
|
},
|
|
5595
5625
|
className: "__ref-swap-widget-row-flex-center"
|
|
5596
5626
|
}, "Select Token")) : React.createElement(React.Fragment, null, React.createElement("img", {
|
|
@@ -5625,26 +5655,22 @@ var TokenAmount = function TokenAmount(props) {
|
|
|
5625
5655
|
}, React.createElement("input", {
|
|
5626
5656
|
ref: ref,
|
|
5627
5657
|
max: !!onChangeAmount ? curMax : undefined,
|
|
5628
|
-
min: "0",
|
|
5629
5658
|
onWheel: function onWheel() {
|
|
5630
5659
|
if (ref.current) {
|
|
5631
5660
|
ref.current.blur();
|
|
5632
5661
|
}
|
|
5633
5662
|
},
|
|
5634
5663
|
className: "__ref-swap-widget-input-class",
|
|
5635
|
-
step: "any",
|
|
5636
5664
|
value: amount,
|
|
5637
|
-
type: "
|
|
5665
|
+
type: "text",
|
|
5638
5666
|
placeholder: !onChangeAmount ? '-' : '0.0',
|
|
5639
5667
|
onChange: function onChange(_ref7) {
|
|
5640
5668
|
var target = _ref7.target;
|
|
5669
|
+
if (!isValidInput(target.value)) return;
|
|
5641
5670
|
target.setCustomValidity('');
|
|
5642
5671
|
handleChange(target.value);
|
|
5643
5672
|
},
|
|
5644
5673
|
disabled: !onChangeAmount,
|
|
5645
|
-
onKeyDown: function onKeyDown(e) {
|
|
5646
|
-
return symbolsArr.includes(e.key) && e.preventDefault();
|
|
5647
|
-
},
|
|
5648
5674
|
style: {
|
|
5649
5675
|
color: primary,
|
|
5650
5676
|
marginBottom: '8px',
|
|
@@ -6621,6 +6647,9 @@ var SwapWidget = function SwapWidget(props) {
|
|
|
6621
6647
|
makeSwap();
|
|
6622
6648
|
};
|
|
6623
6649
|
var canSubmit = tokenIn && tokenOut && canSwap && !swapError && isSignedIn && new Big(tokenInBalance || '0').gte(amountIn || '0') && slippageTolerance > 0 && slippageTolerance < 100 && !ONLY_ZEROS.test(tokenInBalance);
|
|
6650
|
+
var tokensLoaded = useMemo(function () {
|
|
6651
|
+
return tokens.length > 0;
|
|
6652
|
+
}, [tokens]);
|
|
6624
6653
|
return React.createElement(ThemeContextProvider, {
|
|
6625
6654
|
customTheme: curTheme
|
|
6626
6655
|
}, React.createElement(TokenPriceContextProvider, null, widgetRoute === 'swap' && React.createElement("form", {
|
|
@@ -6662,6 +6691,7 @@ var SwapWidget = function SwapWidget(props) {
|
|
|
6662
6691
|
price: !tokenIn ? null : tokenPriceList == null ? void 0 : (_tokenPriceList$token = tokenPriceList[tokenIn.id]) == null ? void 0 : _tokenPriceList$token.price,
|
|
6663
6692
|
onChangeAmount: setAmountIn,
|
|
6664
6693
|
onSelectToken: function onSelectToken() {
|
|
6694
|
+
if (!tokensLoaded) return;
|
|
6665
6695
|
setWidgetRoute('token-selector-in');
|
|
6666
6696
|
}
|
|
6667
6697
|
}), React.createElement("div", {
|
|
@@ -6687,6 +6717,7 @@ var SwapWidget = function SwapWidget(props) {
|
|
|
6687
6717
|
token: tokenOut,
|
|
6688
6718
|
price: !tokenOut ? null : tokenPriceList == null ? void 0 : (_tokenPriceList$token2 = tokenPriceList[tokenOut.id]) == null ? void 0 : _tokenPriceList$token2.price,
|
|
6689
6719
|
onSelectToken: function onSelectToken() {
|
|
6720
|
+
if (!tokensLoaded) return;
|
|
6690
6721
|
setWidgetRoute('token-selector-out');
|
|
6691
6722
|
},
|
|
6692
6723
|
onForceUpdate: function onForceUpdate() {
|
|
@@ -6723,7 +6754,9 @@ var SwapWidget = function SwapWidget(props) {
|
|
|
6723
6754
|
cursor: !canSubmit ? 'not-allowed' : 'pointer'
|
|
6724
6755
|
},
|
|
6725
6756
|
disabled: !canSubmit
|
|
6726
|
-
}, 'Swap'
|
|
6757
|
+
}, tokensLoaded ? 'Swap' : React.createElement("div", {
|
|
6758
|
+
className: "__ref-swap-widget-submit-button-loader"
|
|
6759
|
+
})) : React.createElement("button", {
|
|
6727
6760
|
type: "button",
|
|
6728
6761
|
className: "__ref-swap-widget-submit-button __ref-swap-widget-button",
|
|
6729
6762
|
onClick: onConnect,
|