@rabbitio/ui-kit 1.0.0-beta.83 → 1.0.0-beta.85
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/coverage/base.css +224 -0
- package/coverage/block-navigation.js +87 -0
- package/coverage/clover.xml +15720 -0
- package/coverage/coverage-final.json +112 -0
- package/coverage/favicon.png +0 -0
- package/coverage/index.html +986 -0
- package/coverage/prettify.css +1 -0
- package/coverage/prettify.js +2 -0
- package/coverage/rabbit-ui-kit/index.html +116 -0
- package/coverage/rabbit-ui-kit/index.js.html +88 -0
- package/coverage/rabbit-ui-kit/src/common-apis/adapters/analyticsAdapters/googleAnalyticsAdapter.js.html +148 -0
- package/coverage/rabbit-ui-kit/src/common-apis/adapters/analyticsAdapters/index.html +131 -0
- package/coverage/rabbit-ui-kit/src/common-apis/adapters/analyticsAdapters/mixpanelAdapter.js.html +199 -0
- package/coverage/rabbit-ui-kit/src/common-apis/adapters/axiosAdapter.js.html +190 -0
- package/coverage/rabbit-ui-kit/src/common-apis/adapters/index.html +131 -0
- package/coverage/rabbit-ui-kit/src/common-apis/adapters/qrUtils.js.html +139 -0
- package/coverage/rabbit-ui-kit/src/common-apis/amountUtils.js.html +1162 -0
- package/coverage/rabbit-ui-kit/src/common-apis/errorUtils.js.html +211 -0
- package/coverage/rabbit-ui-kit/src/common-apis/external-apis/apiGroups.js.html +250 -0
- package/coverage/rabbit-ui-kit/src/common-apis/external-apis/index.html +131 -0
- package/coverage/rabbit-ui-kit/src/common-apis/external-apis/ipAddressProviders.js.html +352 -0
- package/coverage/rabbit-ui-kit/src/common-apis/fiatCurrenciesService.js.html +544 -0
- package/coverage/rabbit-ui-kit/src/common-apis/globalConstants.jsx.html +94 -0
- package/coverage/rabbit-ui-kit/src/common-apis/index.html +161 -0
- package/coverage/rabbit-ui-kit/src/common-apis/models/blockchain.js.html +115 -0
- package/coverage/rabbit-ui-kit/src/common-apis/models/coin.js.html +544 -0
- package/coverage/rabbit-ui-kit/src/common-apis/models/index.html +146 -0
- package/coverage/rabbit-ui-kit/src/common-apis/models/protocol.js.html +100 -0
- package/coverage/rabbit-ui-kit/src/common-apis/utils/cache.js.html +811 -0
- package/coverage/rabbit-ui-kit/src/common-apis/utils/emailAPI.js.html +133 -0
- package/coverage/rabbit-ui-kit/src/common-apis/utils/index.html +161 -0
- package/coverage/rabbit-ui-kit/src/common-apis/utils/logging/index.html +131 -0
- package/coverage/rabbit-ui-kit/src/common-apis/utils/logging/logger.js.html +208 -0
- package/coverage/rabbit-ui-kit/src/common-apis/utils/logging/logsStorage.js.html +268 -0
- package/coverage/rabbit-ui-kit/src/common-apis/utils/postponeExecution.js.html +118 -0
- package/coverage/rabbit-ui-kit/src/common-apis/utils/safeStringify.js.html +235 -0
- package/coverage/rabbit-ui-kit/src/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/index.js.html +358 -0
- package/coverage/rabbit-ui-kit/src/robust-api-caller/cacheAndConcurrentRequestsResolver.js.html +1570 -0
- package/coverage/rabbit-ui-kit/src/robust-api-caller/cachedRobustExternalApiCallerService.js.html +526 -0
- package/coverage/rabbit-ui-kit/src/robust-api-caller/cancelProcessing.js.html +172 -0
- package/coverage/rabbit-ui-kit/src/robust-api-caller/concurrentCalculationsMetadataHolder.js.html +310 -0
- package/coverage/rabbit-ui-kit/src/robust-api-caller/externalApiProvider.js.html +553 -0
- package/coverage/rabbit-ui-kit/src/robust-api-caller/externalServicesStatsCollector.js.html +319 -0
- package/coverage/rabbit-ui-kit/src/robust-api-caller/index.html +206 -0
- package/coverage/rabbit-ui-kit/src/robust-api-caller/robustExternalAPICallerService.js.html +997 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/index.html +146 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/letsExchangeSwapProvider.js.html +1543 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/swapProvider.js.html +1705 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/swapspaceSwapProvider.js.html +1801 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/models/baseSwapCreationInfo.js.html +223 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/models/existingSwap.js.html +304 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/models/existingSwapWithFiatData.js.html +469 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/models/index.html +176 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/models/partner.js.html +106 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/models/swapProviderCoinInfo.js.html +193 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/services/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/services/publicSwapService.js.html +2161 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/utils/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/swaps-lib/utils/swapUtils.js.html +670 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/arrowIcon.jsx.html +124 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/arrowTosca.jsx.html +127 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/arrowWhite.jsx.html +127 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/darkRectangle.jsx.html +106 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/determinedError.jsx.html +439 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/failedValidationIcon.jsx.html +202 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/index.html +281 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/infoIcon.jsx.html +133 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/messageIcon.jsx.html +346 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/noticeQuestionIcon.jsx.html +247 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/successfulValidationIcon.jsx.html +163 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/supportDialogImage.jsx.html +268 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/walletIcon.jsx.html +151 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/AssetIcon/AssetIcon.jsx.html +256 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/AssetIcon/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/AssetSelection/AssetSelection.jsx.html +289 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/AssetSelection/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/BackgroundTitle/BackgroundTitle.jsx.html +187 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/BackgroundTitle/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/InformationMessage/InformationMessage.jsx.html +238 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/InformationMessage/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Input/Input.jsx.html +634 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Input/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/LoadingDots/LoadingDots.jsx.html +196 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/LoadingDots/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/NoticeIcon/NoticeIcon.jsx.html +277 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/NoticeIcon/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/QrCode/QrCode.jsx.html +217 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/QrCode/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/RateSelector/RateSelector.jsx.html +175 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/RateSelector/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/SupportChat/SupportChat.jsx.html +217 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/SupportChat/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Textarea/Textarea.jsx.html +529 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Textarea/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/TitleBox/TitleBox.jsx.html +508 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/TitleBox/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Tooltip/Tooltip.jsx.html +316 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Tooltip/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/TwoLinesOfText/LinesOfText.jsx.html +313 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/TwoLinesOfText/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Validation/Validation.jsx.html +202 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Validation/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/Button/Button.jsx.html +712 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/Button/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/Close/Close.jsx.html +259 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/Close/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/LinkButton/LinkButton.jsx.html +421 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/LinkButton/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/RadioButtonWithText/RadioButtonWithText.jsx.html +415 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/RadioButtonWithText/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/AmountInput/AmountInput.jsx.html +1087 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/AmountInput/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/CoinPicker/CoinPicker.jsx.html +1474 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/CoinPicker/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/ColoredNotice/ColoredNotice.jsx.html +211 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/ColoredNotice/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/LineWithIconLink/LineWithIconLink.jsx.html +190 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/LineWithIconLink/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/LogoCarousel/LogoCarousel.jsx.html +283 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/LogoCarousel/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/SearchableCoinsList/SearchableCoinsList.jsx.html +496 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/SearchableCoinsList/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/TitledLineWithIconLink/TitledLineWithIconLink.jsx.html +181 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/TitledLineWithIconLink/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/CoinPickerDialogStep/CoinPickerDialogStep.jsx.html +283 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/CoinPickerDialogStep/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/Dialog.jsx.html +1567 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/DialogButtons/DialogButtons.jsx.html +481 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/DialogButtons/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/DialogStep/DialogStep.jsx.html +1747 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/DialogStep/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/SwapForm/SwapForm.jsx.html +4168 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/SwapForm/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/WaitlistSubscription/WaitlistSubscription.jsx.html +559 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/WaitlistSubscription/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/templates/DeterminedErrorDialogStep/DeterminedErrorDialogStep.jsx.html +316 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/components/templates/DeterminedErrorDialogStep/index.html +116 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/hooks/index.html +146 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/hooks/useCallHandlingErrors.js.html +151 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/hooks/useIsHydrated.js.html +121 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/hooks/useReferredState.js.html +157 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/utils/index.html +161 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/utils/inputValueProviders.js.html +235 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/utils/textUtils.js.html +139 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/utils/uiUtils.js.html +121 -0
- package/coverage/rabbit-ui-kit/src/ui-kit/utils/urlQueryUtils.js.html +271 -0
- package/coverage/rabbit-ui-kit/stories/atoms/BackgroundTitle.stories.jsx.html +202 -0
- package/coverage/rabbit-ui-kit/stories/atoms/LinesOfText.stories.jsx.html +283 -0
- package/coverage/rabbit-ui-kit/stories/atoms/LoadingDots.stories.jsx.html +226 -0
- package/coverage/rabbit-ui-kit/stories/atoms/QrCode.stories.jsx.html +175 -0
- package/coverage/rabbit-ui-kit/stories/atoms/RateSelector.stories.jsx.html +136 -0
- package/coverage/rabbit-ui-kit/stories/atoms/Validation.stories.jsx.html +178 -0
- package/coverage/rabbit-ui-kit/stories/atoms/buttons/Button.stories.jsx.html +883 -0
- package/coverage/rabbit-ui-kit/stories/atoms/buttons/Close.stories.jsx.html +211 -0
- package/coverage/rabbit-ui-kit/stories/atoms/buttons/LinkButton.stories.jsx.html +301 -0
- package/coverage/rabbit-ui-kit/stories/atoms/buttons/index.html +146 -0
- package/coverage/rabbit-ui-kit/stories/atoms/index.html +191 -0
- package/coverage/rabbit-ui-kit/stories/molecules/CoinPicker.stories.jsx.html +322 -0
- package/coverage/rabbit-ui-kit/stories/molecules/ColoredNotice.stories.jsx.html +178 -0
- package/coverage/rabbit-ui-kit/stories/molecules/LineWithIconLink.stories.jsx.html +154 -0
- package/coverage/rabbit-ui-kit/stories/molecules/LogoCarousel.stories.jsx.html +160 -0
- package/coverage/rabbit-ui-kit/stories/molecules/TitledLineWithIconLink.stories.jsx.html +160 -0
- package/coverage/rabbit-ui-kit/stories/molecules/index.html +176 -0
- package/coverage/rabbit-ui-kit/stories/organisms/Dialog/Dialog.stories.jsx.html +523 -0
- package/coverage/rabbit-ui-kit/stories/organisms/Dialog/DialogButtons/DialogButtons.stories.jsx.html +328 -0
- package/coverage/rabbit-ui-kit/stories/organisms/Dialog/DialogButtons/index.html +116 -0
- package/coverage/rabbit-ui-kit/stories/organisms/Dialog/DialogStep/DialogStep.stories.jsx.html +337 -0
- package/coverage/rabbit-ui-kit/stories/organisms/Dialog/DialogStep/index.html +116 -0
- package/coverage/rabbit-ui-kit/stories/organisms/Dialog/index.html +116 -0
- package/coverage/rabbit-ui-kit/stories/organisms/WaitlistSubscription.stories.jsx.html +151 -0
- package/coverage/rabbit-ui-kit/stories/organisms/index.html +116 -0
- package/coverage/rabbit-ui-kit/stories/stubs/coins.jsx.html +6880 -0
- package/coverage/rabbit-ui-kit/stories/stubs/exampleContent.jsx.html +145 -0
- package/coverage/rabbit-ui-kit/stories/stubs/index.html +131 -0
- package/coverage/rabbit-ui-kit/stories/templates/DeterminedErrorDialogStep.stories.jsx.html +190 -0
- package/coverage/rabbit-ui-kit/stories/templates/index.html +116 -0
- package/coverage/sort-arrow-sprite.png +0 -0
- package/coverage/sorter.js +196 -0
- package/dist/global.css.map +1 -1
- package/dist/index.cjs +1139 -496
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +111 -0
- package/dist/index.css.map +1 -1
- package/dist/index.modern.js +950 -420
- package/dist/index.modern.js.map +1 -1
- package/dist/index.module.js +1136 -497
- package/dist/index.module.js.map +1 -1
- package/dist/index.umd.js +1139 -496
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/index.js +4 -0
- package/src/swaps-lib/external-apis/letsExchangeSwapProvider.js +11 -0
- package/src/swaps-lib/external-apis/swapProvider.js +8 -0
- package/src/swaps-lib/external-apis/swapspaceSwapProvider.js +20 -1
- package/src/swaps-lib/models/partner.js +7 -0
- package/src/swaps-lib/services/publicSwapService.js +17 -0
- package/src/ui-kit/assets/styles/global.scss +4 -7
- package/src/ui-kit/assets/wrappedImages/messageIcon.jsx +87 -0
- package/src/ui-kit/assets/wrappedImages/supportDialogImage.jsx +61 -0
- package/src/ui-kit/components/atoms/RateSelector/RateSelector.jsx +2 -2
- package/src/ui-kit/components/atoms/Validation/Validation.jsx +7 -9
- package/src/ui-kit/components/atoms/Validation/validation.module.scss +4 -0
- package/src/ui-kit/components/molecules/AmountInput/AmountInput.jsx +57 -48
- package/src/ui-kit/components/molecules/AmountInput/amount-input.module.scss +34 -0
- package/src/ui-kit/components/molecules/CoinPicker/CoinPicker.jsx +84 -132
- package/src/ui-kit/components/molecules/ColoredNotice/ColoredNotice.jsx +42 -0
- package/src/ui-kit/components/molecules/ColoredNotice/colored-notice.module.scss +20 -0
- package/src/ui-kit/components/molecules/LogoCarousel/LogoCarousel.jsx +66 -0
- package/src/ui-kit/components/molecules/LogoCarousel/logo-carousel.module.scss +87 -0
- package/src/ui-kit/components/molecules/SearchableCoinsList/SearchableCoinsList.jsx +137 -0
- package/src/ui-kit/components/organisms/Dialog/DialogButtons/DialogButtons.jsx +10 -0
- package/src/ui-kit/components/organisms/Dialog/DialogStep/DialogStep.jsx +16 -0
- package/src/ui-kit/components/organisms/SwapForm/SwapForm.jsx +35 -12
- package/src/ui-kit/components/organisms/WaitlistSubscription/WaitlistSubscription.jsx +158 -0
package/dist/index.module.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React, { useState, useRef, useEffect, useCallback, forwardRef } from 'react';
|
|
2
2
|
import { CSSTransition } from 'react-transition-group';
|
|
3
3
|
import AnimateHeight from 'react-animate-height';
|
|
4
|
-
import ResizeObserver from 'resize-observer-polyfill';
|
|
4
|
+
import ResizeObserver$1 from 'resize-observer-polyfill';
|
|
5
5
|
import { clearAllBodyScrollLocks, enableBodyScroll, disableBodyScroll } from 'body-scroll-lock';
|
|
6
6
|
import animateScrollTo from 'animated-scroll-to';
|
|
7
7
|
import copy from 'clipboard-copy';
|
|
@@ -1456,7 +1456,7 @@ SupportChat.defaultProps = {
|
|
|
1456
1456
|
locale: "en"
|
|
1457
1457
|
};
|
|
1458
1458
|
|
|
1459
|
-
var s$
|
|
1459
|
+
var s$o = {"asset-icon":"_0RwWA","small":"_QL4L6","asset-icon-primary":"_ltTJa","asset-icon-secondary":"_3rtPy"};
|
|
1460
1460
|
|
|
1461
1461
|
/**
|
|
1462
1462
|
* AssetIcon component to display an icon for an asset.
|
|
@@ -1481,16 +1481,16 @@ var AssetIcon = function AssetIcon(_ref) {
|
|
|
1481
1481
|
e.target.src = fallbackSrc;
|
|
1482
1482
|
};
|
|
1483
1483
|
return /*#__PURE__*/React.createElement("div", {
|
|
1484
|
-
className: s$
|
|
1484
|
+
className: s$o["asset-icon"] + (small ? " " + s$o["small"] : "")
|
|
1485
1485
|
}, /*#__PURE__*/React.createElement("img", {
|
|
1486
1486
|
src: assetIconSrc,
|
|
1487
|
-
className: s$
|
|
1487
|
+
className: s$o["asset-icon-primary"] + (small ? " " + s$o["small"] : ""),
|
|
1488
1488
|
alt: " ",
|
|
1489
1489
|
onError: handleFailedLoad,
|
|
1490
1490
|
loading: "lazy"
|
|
1491
1491
|
}), assetIconProtocolSrc ? /*#__PURE__*/React.createElement("img", {
|
|
1492
1492
|
src: assetIconProtocolSrc,
|
|
1493
|
-
className: s$
|
|
1493
|
+
className: s$o["asset-icon-secondary"] + (small ? " " + s$o["small"] : ""),
|
|
1494
1494
|
alt: " ",
|
|
1495
1495
|
onError: handleFailedLoad,
|
|
1496
1496
|
loading: "lazy"
|
|
@@ -1646,7 +1646,7 @@ var Logger = /*#__PURE__*/function () {
|
|
|
1646
1646
|
return Logger;
|
|
1647
1647
|
}();
|
|
1648
1648
|
|
|
1649
|
-
function _catch$
|
|
1649
|
+
function _catch$g(body, recover) {
|
|
1650
1650
|
try {
|
|
1651
1651
|
var result = body();
|
|
1652
1652
|
} catch (e) {
|
|
@@ -1662,7 +1662,7 @@ function useCallHandlingErrors() {
|
|
|
1662
1662
|
setState = _useState[1];
|
|
1663
1663
|
return useCallback(function (functionToBeCalled, event) {
|
|
1664
1664
|
try {
|
|
1665
|
-
var _temp = _catch$
|
|
1665
|
+
var _temp = _catch$g(function () {
|
|
1666
1666
|
return Promise.resolve(functionToBeCalled(event)).then(function () {});
|
|
1667
1667
|
}, function (error) {
|
|
1668
1668
|
Logger.logError(error, (functionToBeCalled == null ? void 0 : functionToBeCalled.name) || "errorBoundaryTrigger", "Caught by ErrorBoundary");
|
|
@@ -1678,7 +1678,7 @@ function useCallHandlingErrors() {
|
|
|
1678
1678
|
}, []);
|
|
1679
1679
|
}
|
|
1680
1680
|
|
|
1681
|
-
var s$
|
|
1681
|
+
var s$n = {"link-button-text":"_1Qn04","link-button":"_UDMz-","disabled":"_UtHO6","icon-rotate-90deg":"_v0g-W","icon-rotate-180deg":"_oxet9","icon-rotate-270deg":"_0aAbG","colored":"_UlsXW"};
|
|
1682
1682
|
|
|
1683
1683
|
var ICON_ROTATE_OPTIONS = {
|
|
1684
1684
|
rotate0: "0deg",
|
|
@@ -1747,14 +1747,14 @@ var LinkButton = function LinkButton(_ref) {
|
|
|
1747
1747
|
return isLoading ? /*#__PURE__*/React.createElement(LoadingDots, {
|
|
1748
1748
|
isColored: true
|
|
1749
1749
|
}) : /*#__PURE__*/React.createElement("div", {
|
|
1750
|
-
className: s$
|
|
1750
|
+
className: s$n["link-button"] + (" " + (processedIconRotation && processedIconRotation !== ICON_ROTATE_OPTIONS.rotate0 ? " " + s$n["icon-rotate-" + processedIconRotation] : "") + " " + (isDisabled ? " " + s$n["disabled"] : "")),
|
|
1751
1751
|
onClick: handleClick
|
|
1752
1752
|
}, icon ? /*#__PURE__*/React.createElement("img", {
|
|
1753
1753
|
src: icon,
|
|
1754
1754
|
alt: "link button alt",
|
|
1755
1755
|
loading: "lazy"
|
|
1756
1756
|
}) : null, IconComponent ? /*#__PURE__*/React.createElement(IconComponent, null) : null, /*#__PURE__*/React.createElement("p", {
|
|
1757
|
-
className: s$
|
|
1757
|
+
className: s$n["link-button-text"] + (" " + (isColored ? s$n["colored"] : "") + " " + (isDisabled ? s$n["disabled"] : ""))
|
|
1758
1758
|
}, content));
|
|
1759
1759
|
};
|
|
1760
1760
|
LinkButton.propTypes = {
|
|
@@ -1777,7 +1777,7 @@ LinkButton.defaultProps = {
|
|
|
1777
1777
|
iconRotate: ICON_ROTATE_OPTIONS.rotate0
|
|
1778
1778
|
};
|
|
1779
1779
|
|
|
1780
|
-
var s$
|
|
1780
|
+
var s$m = {"dialog-buttons":"_UtFG3","hide-on-mobiles":"_fVQUd","space-between-layout":"_zVTkC"};
|
|
1781
1781
|
|
|
1782
1782
|
/**
|
|
1783
1783
|
* Renders a dialog component with configurable primary and secondary buttons.
|
|
@@ -1788,11 +1788,13 @@ var s$k = {"dialog-buttons":"_UtFG3","hide-on-mobiles":"_fVQUd","space-between-l
|
|
|
1788
1788
|
* @param {Object} props - Props for configuring the DialogButtons.
|
|
1789
1789
|
* @param {string} [props.primaryButtonTitle] - The text to display on the primary button.
|
|
1790
1790
|
* @param {Function} props.primaryButtonOnClick - Function to call when the primary button is clicked.
|
|
1791
|
+
* @param {boolean} props.primaryButtonEnabled - Determines whether the secondary button is enabled.
|
|
1791
1792
|
* @param {boolean} [props.primaryButtonLoader=false] - Whether to show a loader on the primary button.
|
|
1792
1793
|
* @param {string} [props.primaryButtonTo] - The URL or route the primary button should navigate to.
|
|
1793
1794
|
* @param {Function} [props.primaryButtonSetClickTrigger] - Additional click handling logic for the primary button.
|
|
1794
1795
|
* @param {string} [props.secondaryButtonTitle] - The text to display on the secondary button.
|
|
1795
1796
|
* @param {Function} props.secondaryButtonOnClick - Function to call when the secondary button is clicked.
|
|
1797
|
+
* @param {boolean} props.secondaryButtonEnabled - Determines whether the primary button is enabled.
|
|
1796
1798
|
* @param {string} [props.secondaryButtonTo] - The URL or route the secondary button should navigate to.
|
|
1797
1799
|
* @param {boolean} [props.secondaryButtonBig=false] - Makes the secondary button larger for visual emphasis.
|
|
1798
1800
|
* @param {boolean} [props.withBackgroundImage=false] - Indicates if the button should adjust its styling for background images.
|
|
@@ -1802,12 +1804,14 @@ var s$k = {"dialog-buttons":"_UtFG3","hide-on-mobiles":"_fVQUd","space-between-l
|
|
|
1802
1804
|
var DialogButtons = function DialogButtons(_ref) {
|
|
1803
1805
|
var primaryButtonTitle = _ref.primaryButtonTitle,
|
|
1804
1806
|
primaryButtonOnClick = _ref.primaryButtonOnClick,
|
|
1807
|
+
primaryButtonEnabled = _ref.primaryButtonEnabled,
|
|
1805
1808
|
_ref$primaryButtonLoa = _ref.primaryButtonLoader,
|
|
1806
1809
|
primaryButtonLoader = _ref$primaryButtonLoa === void 0 ? false : _ref$primaryButtonLoa,
|
|
1807
1810
|
primaryButtonTo = _ref.primaryButtonTo,
|
|
1808
1811
|
primaryButtonSetClickTrigger = _ref.primaryButtonSetClickTrigger,
|
|
1809
1812
|
secondaryButtonTitle = _ref.secondaryButtonTitle,
|
|
1810
1813
|
secondaryButtonOnClick = _ref.secondaryButtonOnClick,
|
|
1814
|
+
secondaryButtonEnabled = _ref.secondaryButtonEnabled,
|
|
1811
1815
|
secondaryButtonTo = _ref.secondaryButtonTo,
|
|
1812
1816
|
_ref$secondaryButtonB = _ref.secondaryButtonBig,
|
|
1813
1817
|
secondaryButtonBig = _ref$secondaryButtonB === void 0 ? false : _ref$secondaryButtonB,
|
|
@@ -1817,7 +1821,7 @@ var DialogButtons = function DialogButtons(_ref) {
|
|
|
1817
1821
|
hideOnMobiles = _ref$hideOnMobiles === void 0 ? false : _ref$hideOnMobiles;
|
|
1818
1822
|
var callHandlingErrors = useCallHandlingErrors();
|
|
1819
1823
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
1820
|
-
className: s$
|
|
1824
|
+
className: s$m["dialog-buttons"] + (hideOnMobiles ? " " + s$m["hide-on-mobiles"] : "") + (secondaryButtonBig ? " " + s$m["space-between-layout"] : "")
|
|
1821
1825
|
}, secondaryButtonTitle ? secondaryButtonTo ? /*#__PURE__*/React.createElement(Button, {
|
|
1822
1826
|
mode: "primary-transparent",
|
|
1823
1827
|
to: secondaryButtonTo,
|
|
@@ -1826,7 +1830,8 @@ var DialogButtons = function DialogButtons(_ref) {
|
|
|
1826
1830
|
fullWidthOnMobiles: true,
|
|
1827
1831
|
content: secondaryButtonTitle,
|
|
1828
1832
|
onClick: secondaryButtonOnClick,
|
|
1829
|
-
handleError: callHandlingErrors
|
|
1833
|
+
handleError: callHandlingErrors,
|
|
1834
|
+
isDisabled: !secondaryButtonEnabled
|
|
1830
1835
|
}) : secondaryButtonBig ? /*#__PURE__*/React.createElement(Button, {
|
|
1831
1836
|
mode: "transparent",
|
|
1832
1837
|
size: "lg",
|
|
@@ -1834,11 +1839,13 @@ var DialogButtons = function DialogButtons(_ref) {
|
|
|
1834
1839
|
fullWidthOnMobiles: true,
|
|
1835
1840
|
content: secondaryButtonTitle,
|
|
1836
1841
|
onClick: secondaryButtonOnClick,
|
|
1837
|
-
handleError: callHandlingErrors
|
|
1842
|
+
handleError: callHandlingErrors,
|
|
1843
|
+
isDisabled: !secondaryButtonEnabled
|
|
1838
1844
|
}) : /*#__PURE__*/React.createElement(LinkButton, {
|
|
1839
1845
|
onClick: secondaryButtonOnClick,
|
|
1840
1846
|
content: secondaryButtonTitle,
|
|
1841
|
-
isColored: !withBackgroundImage
|
|
1847
|
+
isColored: !withBackgroundImage,
|
|
1848
|
+
isDisabled: !secondaryButtonEnabled
|
|
1842
1849
|
}) : null, primaryButtonTitle ? /*#__PURE__*/React.createElement(Button, {
|
|
1843
1850
|
mode: "primary",
|
|
1844
1851
|
size: "lg",
|
|
@@ -1848,17 +1855,20 @@ var DialogButtons = function DialogButtons(_ref) {
|
|
|
1848
1855
|
fullWidthOnMobiles: true,
|
|
1849
1856
|
content: primaryButtonTitle,
|
|
1850
1857
|
setClickTrigger: primaryButtonSetClickTrigger,
|
|
1851
|
-
handleError: callHandlingErrors
|
|
1858
|
+
handleError: callHandlingErrors,
|
|
1859
|
+
isDisabled: !primaryButtonEnabled
|
|
1852
1860
|
}) : null));
|
|
1853
1861
|
};
|
|
1854
1862
|
DialogButtons.propTypes = {
|
|
1855
1863
|
primaryButtonTitle: PropTypes.string,
|
|
1856
1864
|
primaryButtonOnClick: PropTypes.func,
|
|
1865
|
+
primaryButtonEnabled: PropTypes.bool,
|
|
1857
1866
|
primaryButtonLoader: PropTypes.bool,
|
|
1858
1867
|
primaryButtonTo: PropTypes.string,
|
|
1859
1868
|
primaryButtonSetClickTrigger: PropTypes.func,
|
|
1860
1869
|
secondaryButtonTitle: PropTypes.string,
|
|
1861
1870
|
secondaryButtonOnClick: PropTypes.func,
|
|
1871
|
+
secondaryButtonEnabled: PropTypes.bool,
|
|
1862
1872
|
secondaryButtonTo: PropTypes.string,
|
|
1863
1873
|
secondaryButtonBig: PropTypes.bool,
|
|
1864
1874
|
withBackgroundImage: PropTypes.bool,
|
|
@@ -1871,7 +1881,7 @@ DialogButtons.defaultProps = {
|
|
|
1871
1881
|
hideOnMobiles: false
|
|
1872
1882
|
};
|
|
1873
1883
|
|
|
1874
|
-
var s$
|
|
1884
|
+
var s$l = {"background-title":"_Gzho7","background-title-wrapper":"_Rvcyg","small-margins":"_WjuWI","background-title-wrapper-text":"_cAVcA"};
|
|
1875
1885
|
|
|
1876
1886
|
/**
|
|
1877
1887
|
* Component for displaying a title with a fancy background text, which
|
|
@@ -1887,11 +1897,11 @@ var BackgroundTitle = function BackgroundTitle(_ref) {
|
|
|
1887
1897
|
_ref$smallMargins = _ref.smallMargins,
|
|
1888
1898
|
smallMargins = _ref$smallMargins === void 0 ? false : _ref$smallMargins;
|
|
1889
1899
|
return /*#__PURE__*/React.createElement("div", {
|
|
1890
|
-
className: s$
|
|
1900
|
+
className: s$l["background-title"]
|
|
1891
1901
|
}, /*#__PURE__*/React.createElement("div", {
|
|
1892
|
-
className: s$
|
|
1902
|
+
className: s$l["background-title-wrapper"] + (smallMargins ? " " + s$l["small-margins"] : "")
|
|
1893
1903
|
}, /*#__PURE__*/React.createElement("div", {
|
|
1894
|
-
className: s$
|
|
1904
|
+
className: s$l["background-title-wrapper-text"] + (smallMargins ? " " + s$l["small-margins"] : "")
|
|
1895
1905
|
}, text)));
|
|
1896
1906
|
};
|
|
1897
1907
|
BackgroundTitle.propTypes = {
|
|
@@ -1902,7 +1912,7 @@ BackgroundTitle.defaultProps = {
|
|
|
1902
1912
|
smallMargins: false
|
|
1903
1913
|
};
|
|
1904
1914
|
|
|
1905
|
-
var s$
|
|
1915
|
+
var s$k = {"close":"_yMoDc","large":"_clOG2","white":"_145xN","dark-invert":"_-CvSS","dark":"_tTNnu"};
|
|
1906
1916
|
|
|
1907
1917
|
var CLOSE_COLORS = {
|
|
1908
1918
|
WHITE: "white",
|
|
@@ -1930,7 +1940,7 @@ var Close = function Close(_ref) {
|
|
|
1930
1940
|
large = _ref$large === void 0 ? false : _ref$large;
|
|
1931
1941
|
var callHandlingErrors = useCallHandlingErrors();
|
|
1932
1942
|
return /*#__PURE__*/React.createElement("svg", {
|
|
1933
|
-
className: s$
|
|
1943
|
+
className: s$k["close"] + " " + s$k[color] + (large ? " " + s$k["large"] : ""),
|
|
1934
1944
|
onClick: function onClick(e) {
|
|
1935
1945
|
return callHandlingErrors(_onClick, e);
|
|
1936
1946
|
},
|
|
@@ -1956,7 +1966,7 @@ Close.defaultProps = {
|
|
|
1956
1966
|
large: false
|
|
1957
1967
|
};
|
|
1958
1968
|
|
|
1959
|
-
var s$
|
|
1969
|
+
var s$j = {"validation-text":"_VIr-M","validation":"_L3OdW"};
|
|
1960
1970
|
|
|
1961
1971
|
var SuccessfulValidationIcon = (function () {
|
|
1962
1972
|
return /*#__PURE__*/React.createElement("svg", {
|
|
@@ -2054,15 +2064,15 @@ var Validation = function Validation(_ref) {
|
|
|
2054
2064
|
text = _ref$text === void 0 ? "" : _ref$text,
|
|
2055
2065
|
isSuccessAlert = _ref.isSuccessAlert;
|
|
2056
2066
|
return /*#__PURE__*/React.createElement("div", {
|
|
2057
|
-
className: s$
|
|
2058
|
-
},
|
|
2067
|
+
className: s$j["validation"]
|
|
2068
|
+
}, isSuccessAlert ?
|
|
2059
2069
|
/*#__PURE__*/
|
|
2060
2070
|
// <img src={successfulValidationIcon} alt="validation icon" />
|
|
2061
2071
|
React.createElement(SuccessfulValidationIcon, null) :
|
|
2062
2072
|
/*#__PURE__*/
|
|
2063
2073
|
// <img src={failedValidationIcon} alt="validation icon" />
|
|
2064
|
-
React.createElement(FailedValidationIcon, null)
|
|
2065
|
-
className: s$
|
|
2074
|
+
React.createElement(FailedValidationIcon, null), /*#__PURE__*/React.createElement("span", {
|
|
2075
|
+
className: s$j["validation-text"]
|
|
2066
2076
|
}, text));
|
|
2067
2077
|
};
|
|
2068
2078
|
Validation.propTypes = {
|
|
@@ -2194,7 +2204,7 @@ function logErrorOrOutputToConsole(e) {
|
|
|
2194
2204
|
}
|
|
2195
2205
|
}
|
|
2196
2206
|
|
|
2197
|
-
var s$
|
|
2207
|
+
var s$i = {"dialog":"_AyHwj","hidden":"_hX4Lf","vertical-overflow-disabled":"_gRENy","inline":"_Da-tZ","dialog-transition-enter":"_0YlL9","scrollable":"_LaCqO","dialog-transition-enter-active":"_j35L1","dialog-transition-exit":"_lGJtS","dialog-transition-exit-active":"_Vg6Z2","fixed-buttons-container":"_ZNfnj","fixed-buttons-container-enter":"_vi-ug","fixed-buttons-container-enter-active":"_rIo-s","fixed-buttons-container-enter-done":"_5aNZC","fixed-buttons-container-exit":"_3ImpU","fixed-buttons-container-exit-active":"_dk-DE","fixed-buttons-container-exit-done":"_h9qrO","dialog-wrapper":"_HhhGp","animation-disabled":"_f8vf5","wide":"_hVh9o","dialog-wrapper-rah-content":"_ioVHo","dialog-wrapper-controls-top-padding":"_1bNLu","dialog-wrapper-close":"_nCuuj"};
|
|
2198
2208
|
|
|
2199
2209
|
var DIALOG_SIZES = {
|
|
2200
2210
|
small: {
|
|
@@ -2495,7 +2505,7 @@ var Dialog = function Dialog(_ref) {
|
|
|
2495
2505
|
}, [animationConfiguration]);
|
|
2496
2506
|
useEffect(function () {
|
|
2497
2507
|
if (currentStepRef.current) {
|
|
2498
|
-
resizeObserverRef.current = new ResizeObserver(function (entries) {
|
|
2508
|
+
resizeObserverRef.current = new ResizeObserver$1(function (entries) {
|
|
2499
2509
|
if (entries === void 0) {
|
|
2500
2510
|
entries = [];
|
|
2501
2511
|
}
|
|
@@ -2576,10 +2586,10 @@ var Dialog = function Dialog(_ref) {
|
|
|
2576
2586
|
"in": showDialogProcessed,
|
|
2577
2587
|
timeout: DIALOG_TRANSITION_STEP_DURATION,
|
|
2578
2588
|
classNames: inline ? undefined : {
|
|
2579
|
-
enter: s$
|
|
2580
|
-
enterActive: s$
|
|
2581
|
-
exit: s$
|
|
2582
|
-
exitActive: s$
|
|
2589
|
+
enter: s$i["dialog-transition-enter"],
|
|
2590
|
+
enterActive: s$i["dialog-transition-enter-active"],
|
|
2591
|
+
exit: s$i["dialog-transition-exit"],
|
|
2592
|
+
exitActive: s$i["dialog-transition-exit-active"]
|
|
2583
2593
|
},
|
|
2584
2594
|
unmountOnExit: true,
|
|
2585
2595
|
onExited: function onExited() {
|
|
@@ -2598,13 +2608,13 @@ var Dialog = function Dialog(_ref) {
|
|
|
2598
2608
|
disableBodyScroll(dialogRef.current);
|
|
2599
2609
|
}
|
|
2600
2610
|
}, /*#__PURE__*/React.createElement("div", {
|
|
2601
|
-
className: s$
|
|
2611
|
+
className: s$i["dialog"] + " " + (dialogVerticalHeight > 1 || !isMultiStep ? "" : " " + s$i["hidden"]) + (animationConfiguration.dialogContainerOverflowDisabled ? " " + s$i["vertical-overflow-disabled"] : "") + (inline ? " " + s$i["inline"] : ""),
|
|
2602
2612
|
ref: dialogRef
|
|
2603
2613
|
}, /*#__PURE__*/React.createElement("div", {
|
|
2604
|
-
className: s$
|
|
2614
|
+
className: s$i["scrollable"] + (inline ? " " + s$i["inline"] : ""),
|
|
2605
2615
|
ref: scrollableRef
|
|
2606
2616
|
}, /*#__PURE__*/React.createElement("div", {
|
|
2607
|
-
className: s$
|
|
2617
|
+
className: s$i["dialog-wrapper"] + (animationConfiguration.wrapperWidthAnimationEnabled ? "" : " " + s$i["animation-disabled"]) + (inline ? " " + s$i["inline"] : ""),
|
|
2608
2618
|
ref: dialogWrapperRef,
|
|
2609
2619
|
style: dialogConfiguration.customWidth !== "" ? {
|
|
2610
2620
|
maxWidth: dialogConfiguration.customWidth
|
|
@@ -2615,9 +2625,9 @@ var Dialog = function Dialog(_ref) {
|
|
|
2615
2625
|
duration: animationConfiguration.animateHeightTransitionEnabled ? animationConfiguration.animateHeightTransitionSpeed : 0,
|
|
2616
2626
|
delay: animationConfiguration.animateHeightTransitionEnabled ? animationConfiguration.animateHeightDelay : 0,
|
|
2617
2627
|
height: isMultiStep ? dialogVerticalHeight : "auto",
|
|
2618
|
-
contentClassName: s$
|
|
2628
|
+
contentClassName: s$i["dialog-wrapper-rah-content"]
|
|
2619
2629
|
}, inline ? "" : /*#__PURE__*/React.createElement("div", {
|
|
2620
|
-
className: s$
|
|
2630
|
+
className: s$i["dialog-wrapper-close"]
|
|
2621
2631
|
}, /*#__PURE__*/React.createElement(Close, {
|
|
2622
2632
|
color: "dark",
|
|
2623
2633
|
onClick: function onClick(e) {
|
|
@@ -2630,16 +2640,16 @@ var Dialog = function Dialog(_ref) {
|
|
|
2630
2640
|
// classNames={s["fixed-buttons-container"]}
|
|
2631
2641
|
,
|
|
2632
2642
|
classNames: {
|
|
2633
|
-
enter: s$
|
|
2634
|
-
enterActive: s$
|
|
2635
|
-
enterDone: s$
|
|
2636
|
-
exit: s$
|
|
2637
|
-
exitActive: s$
|
|
2638
|
-
exitDone: s$
|
|
2643
|
+
enter: s$i["fixed-buttons-container-enter"],
|
|
2644
|
+
enterActive: s$i["fixed-buttons-container-enter-active"],
|
|
2645
|
+
enterDone: s$i["fixed-buttons-container-enter-done"],
|
|
2646
|
+
exit: s$i["fixed-buttons-container-exit"],
|
|
2647
|
+
exitActive: s$i["fixed-buttons-container-exit-active"],
|
|
2648
|
+
exitDone: s$i["fixed-buttons-container-exit-done"]
|
|
2639
2649
|
},
|
|
2640
2650
|
unmountOnExit: true
|
|
2641
2651
|
}, /*#__PURE__*/React.createElement("div", {
|
|
2642
|
-
className: s$
|
|
2652
|
+
className: s$i["fixed-buttons-container"]
|
|
2643
2653
|
}, /*#__PURE__*/React.createElement(DialogButtons, buttonsConfiguration)))));
|
|
2644
2654
|
};
|
|
2645
2655
|
Dialog.propTypes = {
|
|
@@ -2696,7 +2706,7 @@ var arrowWhite = (function () {
|
|
|
2696
2706
|
}));
|
|
2697
2707
|
});
|
|
2698
2708
|
|
|
2699
|
-
var s$
|
|
2709
|
+
var s$h = {"dialog-step":"_0e-Qk","dialog":"_hKHTW","hidden":"_OT1zR","vertical-overflow-disabled":"_r1zu9","inline":"_Fl90j","dialog-transition-enter":"_I2XgD","scrollable":"_bzLMI","dialog-transition-enter-active":"_oVr8Y","dialog-transition-exit":"_Z16VM","dialog-transition-exit-active":"_n15oq","fixed-buttons-container":"_wROD2","fixed-buttons-container-enter":"_sjNeR","fixed-buttons-container-enter-active":"_ClXNv","fixed-buttons-container-enter-done":"_RFDsV","fixed-buttons-container-exit":"_biF1s","fixed-buttons-container-exit-active":"_rnsbL","fixed-buttons-container-exit-done":"_fq5hb","dialog-wrapper":"_f3-0r","animation-disabled":"_WC3TT","wide":"_KzekW","dialog-wrapper-rah-content":"_RQkF-","dialog-wrapper-controls-top-padding":"_4IXJZ","dialog-wrapper-close":"_ursQ7","single-step":"_uhIvi","current":"_cf5Kv","with-background":"_50qat","prev":"_XwrWV","next":"_rWauR","dialog-step-background-image":"_BGO3z","dialog-step-background-image-desktop":"_JHVKU","dialog-step-background-image-mobile":"_XCWwZ","primary":"_CZCMe","dialog-step-wrapper":"_abWKW","slideToLeft":"_gUTFZ","slideToRight":"_IvqZI","appear-from-left":"_kCimd","slideFromLeft":"_Qn75y","appear-from-right":"_IJNy-","slideFromRight":"_-pa-6","dialog-step-wrapper-back-button":"_RtjTj","dialog-step-wrapper-header":"_-n02U","text-left":"_KgtZY","with-background-image":"_Lvz6f","dialog-step-wrapper-header-logo":"_ICMMd","dialog-step-wrapper-header-title":"_Sit8v","without-logo":"_GuW8x","close-button-padding":"_ovES2","no-close-button-padding":"_sFNQz","dialog-step-wrapper-header-title-icon":"_Ygqlx","dialog-step-wrapper-header-title-coin-icon":"_wQKfR","dialog-step-wrapper-header-title-loading":"_pR41Y","dialog-step-wrapper-header-title-text-content":"_-kVUI","white":"_JShTb","dialog-step-wrapper-header-text":"_a7sff","break-words":"_I16HH","small-margin":"_w6f6j","no-margin":"_RF8u-","dialog-step-wrapper-content":"_dgGiX","align-left":"_9c1qs","align-center":"_z0o-e","align-right":"_-6p5j","dialog-step-wrapper-buttons":"_uuxmx","big-margin":"_U-vR6"};
|
|
2700
2710
|
|
|
2701
2711
|
var DIALOG_STEP_CLASS = "dialog-step";
|
|
2702
2712
|
|
|
@@ -2717,9 +2727,11 @@ var DIALOG_STEP_CLASS = "dialog-step";
|
|
|
2717
2727
|
* @param {string} props.subtitle - Step subtitle.
|
|
2718
2728
|
* @param {string} props.backButtonText - Secondary button title.
|
|
2719
2729
|
* @param {function} props.backButtonClick - Secondary button click handler.
|
|
2730
|
+
* @param {boolean} props.backButtonEnabled - Determines whether the secondary button is enabled.
|
|
2720
2731
|
* @param {string} props.backButtonTo - Secondary button link.
|
|
2721
2732
|
* @param {string} props.confirmButtonText - Primary button title.
|
|
2722
2733
|
* @param {function} props.confirmButtonClick - Primary button click handler.
|
|
2734
|
+
* @param {boolean} props.confirmButtonEnabled - Determines whether the primary button is enabled.
|
|
2723
2735
|
* @param {string} props.confirmButtonLink - Primary button link.
|
|
2724
2736
|
* @param {boolean} props.primaryButtonLoader - Enable loader for the primary button.
|
|
2725
2737
|
* @param {boolean} props.fixedButtons - Enable fixed buttons in the bottom for mobile devices.
|
|
@@ -2766,12 +2778,16 @@ var DialogStep = function DialogStep(_ref) {
|
|
|
2766
2778
|
backButtonText = _ref$backButtonText === void 0 ? "" : _ref$backButtonText,
|
|
2767
2779
|
_ref$backButtonClick = _ref.backButtonClick,
|
|
2768
2780
|
backButtonClick = _ref$backButtonClick === void 0 ? function () {} : _ref$backButtonClick,
|
|
2781
|
+
_ref$backButtonEnable = _ref.backButtonEnabled,
|
|
2782
|
+
backButtonEnabled = _ref$backButtonEnable === void 0 ? true : _ref$backButtonEnable,
|
|
2769
2783
|
_ref$backButtonTo = _ref.backButtonTo,
|
|
2770
2784
|
backButtonTo = _ref$backButtonTo === void 0 ? "" : _ref$backButtonTo,
|
|
2771
2785
|
_ref$confirmButtonTex = _ref.confirmButtonText,
|
|
2772
2786
|
confirmButtonText = _ref$confirmButtonTex === void 0 ? "" : _ref$confirmButtonTex,
|
|
2773
2787
|
_ref$confirmButtonCli = _ref.confirmButtonClick,
|
|
2774
2788
|
confirmButtonClick = _ref$confirmButtonCli === void 0 ? function () {} : _ref$confirmButtonCli,
|
|
2789
|
+
_ref$confirmButtonEna = _ref.confirmButtonEnabled,
|
|
2790
|
+
confirmButtonEnabled = _ref$confirmButtonEna === void 0 ? true : _ref$confirmButtonEna,
|
|
2775
2791
|
_ref$confirmButtonLin = _ref.confirmButtonLink,
|
|
2776
2792
|
confirmButtonLink = _ref$confirmButtonLin === void 0 ? "" : _ref$confirmButtonLin,
|
|
2777
2793
|
_ref$primaryButtonLoa = _ref.primaryButtonLoader,
|
|
@@ -2864,10 +2880,10 @@ var DialogStep = function DialogStep(_ref) {
|
|
|
2864
2880
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
2865
2881
|
}, []);
|
|
2866
2882
|
var handleTransitionEnd = function handleTransitionEnd(event) {
|
|
2867
|
-
if (isMultiStep && isCurrentStep(stepName) && event.propertyName === "opacity" && event.target.classList[0] === s$
|
|
2883
|
+
if (isMultiStep && isCurrentStep(stepName) && event.propertyName === "opacity" && event.target.classList[0] === s$h[DIALOG_STEP_CLASS]) {
|
|
2868
2884
|
disableAnimation(animationConfiguration.animateHeightTransitionEnabled);
|
|
2869
2885
|
}
|
|
2870
|
-
if (isMultiStep && unmountOnAnimationEndTrigger && event.propertyName === "opacity" && event.target.classList[0] === s$
|
|
2886
|
+
if (isMultiStep && unmountOnAnimationEndTrigger && event.propertyName === "opacity" && event.target.classList[0] === s$h[DIALOG_STEP_CLASS]) {
|
|
2871
2887
|
clearButtonsConfiguration();
|
|
2872
2888
|
scrollDialogToTop();
|
|
2873
2889
|
setStepMounted(false);
|
|
@@ -2904,11 +2920,13 @@ var DialogStep = function DialogStep(_ref) {
|
|
|
2904
2920
|
primaryButtonOnClick: function primaryButtonOnClick(resetButtonLoader) {
|
|
2905
2921
|
return confirmButtonClick(resetButtonLoader);
|
|
2906
2922
|
},
|
|
2923
|
+
primaryButtonEnabled: confirmButtonEnabled,
|
|
2907
2924
|
primaryButtonLoader: primaryButtonLoader,
|
|
2908
2925
|
primaryButtonTo: confirmButtonLink,
|
|
2909
2926
|
primaryButtonSetClickTrigger: setClickTrigger,
|
|
2910
2927
|
secondaryButtonTitle: backButtonText,
|
|
2911
2928
|
secondaryButtonOnClick: backButtonClick,
|
|
2929
|
+
secondaryButtonEnabled: backButtonEnabled,
|
|
2912
2930
|
secondaryButtonTo: backButtonTo,
|
|
2913
2931
|
fixedButtonsEnabled: fixedButtons
|
|
2914
2932
|
}, stepName);
|
|
@@ -2935,44 +2953,46 @@ var DialogStep = function DialogStep(_ref) {
|
|
|
2935
2953
|
primaryButtonOnClick: function primaryButtonOnClick(resetButtonLoader) {
|
|
2936
2954
|
return confirmButtonClick(resetButtonLoader);
|
|
2937
2955
|
},
|
|
2956
|
+
primaryButtonEnabled: confirmButtonEnabled,
|
|
2938
2957
|
primaryButtonLoader: primaryButtonLoader,
|
|
2939
2958
|
primaryButtonTo: confirmButtonLink,
|
|
2940
2959
|
primaryButtonSetClickTrigger: setClickTrigger,
|
|
2941
2960
|
secondaryButtonTitle: backButtonText,
|
|
2942
2961
|
secondaryButtonOnClick: backButtonClick,
|
|
2962
|
+
secondaryButtonEnabled: backButtonEnabled,
|
|
2943
2963
|
secondaryButtonTo: backButtonTo,
|
|
2944
2964
|
fixedButtonsEnabled: fixedButtons
|
|
2945
2965
|
}, stepName);
|
|
2946
2966
|
}
|
|
2947
2967
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
2948
|
-
}, [confirmButtonText, confirmButtonClick, primaryButtonLoader, confirmButtonLink, setClickTrigger, backButtonText, backButtonClick, backButtonTo, currentStep]);
|
|
2968
|
+
}, [confirmButtonText, confirmButtonClick, confirmButtonEnabled, primaryButtonLoader, confirmButtonLink, setClickTrigger, backButtonText, backButtonClick, backButtonEnabled, backButtonTo, currentStep]);
|
|
2949
2969
|
var _ref2 = titleIconCoin && coinToIconPaths ? coinToIconPaths(titleIconCoin) : {},
|
|
2950
2970
|
assetIconSrc = _ref2.assetIconSrc,
|
|
2951
2971
|
assetIconProtocolSrc = _ref2.assetIconProtocolSrc,
|
|
2952
2972
|
fallbackSrc = _ref2.fallbackSrc;
|
|
2953
2973
|
return /*#__PURE__*/React.createElement("div", {
|
|
2954
|
-
className: s$
|
|
2974
|
+
className: s$h[DIALOG_STEP_CLASS] + " " + s$h[stepClass] + (!isMultiStep || !(animationConfiguration != null && animationConfiguration.currentStepAnimationEnabled) ? " " + s$h["animation-disabled"] : "") + (!isMultiStep ? " " + s$h["single-step"] : "") + (backgroundImage || backgroundImageMobile ? " " + s$h["with-background"] : "") + (inline ? " " + s$h["inline"] : ""),
|
|
2955
2975
|
ref: currentStepRef,
|
|
2956
2976
|
onTransitionEnd: handleTransitionEnd,
|
|
2957
2977
|
style: height ? {
|
|
2958
2978
|
height: height
|
|
2959
2979
|
} : null
|
|
2960
2980
|
}, stepMounted ? /*#__PURE__*/React.createElement(React.Fragment, null, backgroundImage || backgroundImageMobile ? /*#__PURE__*/React.createElement("div", {
|
|
2961
|
-
className: s$
|
|
2981
|
+
className: s$h["dialog-step-background-image"] + " " + s$h[stepClass]
|
|
2962
2982
|
}, backgroundImage ? /*#__PURE__*/React.createElement("img", {
|
|
2963
2983
|
src: backgroundImage,
|
|
2964
|
-
className: s$
|
|
2984
|
+
className: s$h["dialog-step-background-image-desktop"] + " " + stepClass + (!backgroundImageMobile ? " " + s$h["primary"] : ""),
|
|
2965
2985
|
alt: "dialog step background",
|
|
2966
2986
|
loading: "lazy"
|
|
2967
2987
|
}) : null, backgroundImageMobile ? /*#__PURE__*/React.createElement("img", {
|
|
2968
2988
|
src: backgroundImageMobile,
|
|
2969
|
-
className: s$
|
|
2989
|
+
className: s$h["dialog-step-background-image-mobile"] + " " + stepClass + (!backgroundImage ? " " + s$h["primary"] : ""),
|
|
2970
2990
|
alt: "dialog step background",
|
|
2971
2991
|
loading: "lazy"
|
|
2972
2992
|
}) : null) : null, /*#__PURE__*/React.createElement("div", {
|
|
2973
|
-
className: s$
|
|
2993
|
+
className: s$h["dialog-step-wrapper"] + " " + s$h[stepClass] + " " + s$h[wrapperDirectionSubclass] + (inline ? " " + s$h["inline"] : "")
|
|
2974
2994
|
}, isMultiStep && showCornerButtonForStep(stepName, showCornerBackButton) ? /*#__PURE__*/React.createElement("div", {
|
|
2975
|
-
className: s$
|
|
2995
|
+
className: s$h["dialog-step-wrapper-back-button"]
|
|
2976
2996
|
}, /*#__PURE__*/React.createElement(LinkButton, {
|
|
2977
2997
|
onClick: cornerBackButtonClick ? cornerBackButtonClick : previousStep,
|
|
2978
2998
|
content: cornerBackButtonTitle ? cornerBackButtonTitle :
|
|
@@ -2982,54 +3002,56 @@ var DialogStep = function DialogStep(_ref) {
|
|
|
2982
3002
|
iconRotate: ICON_ROTATE_OPTIONS.rotate90,
|
|
2983
3003
|
isColored: backgroundImage || backgroundImageMobile ? false : undefined
|
|
2984
3004
|
})) : null, /*#__PURE__*/React.createElement("div", {
|
|
2985
|
-
className: s$
|
|
3005
|
+
className: s$h["dialog-step-wrapper-header"] + (headerTitleLeft ? " " + s$h["text-left"] : "") + (backgroundImage || backgroundImageMobile ? " " + s$h["with-background-image"] : "")
|
|
2986
3006
|
}, image ? /*#__PURE__*/React.createElement("img", {
|
|
2987
3007
|
src: image,
|
|
2988
3008
|
alt: "dialog popup logo",
|
|
2989
|
-
className: s$
|
|
3009
|
+
className: s$h["dialog-step-wrapper-header-logo"],
|
|
2990
3010
|
loading: "lazy"
|
|
2991
3011
|
}) : ImageRaw ? /*#__PURE__*/React.createElement("div", {
|
|
2992
|
-
className: s$
|
|
3012
|
+
className: s$h["dialog-step-wrapper-header-logo"]
|
|
2993
3013
|
}, /*#__PURE__*/React.createElement(ImageRaw, null)) : null, /*#__PURE__*/React.createElement("div", {
|
|
2994
|
-
className: s$
|
|
3014
|
+
className: s$h["dialog-step-wrapper-header-title"] + (!isTopImagePassed ? " " + s$h["without-logo"] : "") + (!isTopImagePassed && headerTitleLeft ? " " + s$h["close-button-padding"] : "") + (inline ? " " + s$h["no-close-button-padding"] : "")
|
|
2995
3015
|
}, titleIconCoin ? /*#__PURE__*/React.createElement("div", {
|
|
2996
|
-
className: s$
|
|
3016
|
+
className: s$h["dialog-step-wrapper-header-title-coin-icon"]
|
|
2997
3017
|
}, /*#__PURE__*/React.createElement(AssetIcon, {
|
|
2998
3018
|
assetIconSrc: assetIconSrc,
|
|
2999
3019
|
assetIconProtocolSrc: assetIconProtocolSrc,
|
|
3000
3020
|
fallbackSrc: fallbackSrc
|
|
3001
3021
|
})) : titleIcon ? /*#__PURE__*/React.createElement("div", {
|
|
3002
|
-
className: s$
|
|
3022
|
+
className: s$h["dialog-step-wrapper-header-title-icon"]
|
|
3003
3023
|
}, /*#__PURE__*/React.createElement("img", {
|
|
3004
3024
|
src: titleIcon,
|
|
3005
3025
|
alt: "coin icon to send",
|
|
3006
3026
|
loading: "lazy"
|
|
3007
3027
|
})) : null, titleLoadingDots ? /*#__PURE__*/React.createElement("div", {
|
|
3008
|
-
className: s$
|
|
3028
|
+
className: s$h["dialog-step-wrapper-header-title-loading"]
|
|
3009
3029
|
}, /*#__PURE__*/React.createElement(LoadingDots, {
|
|
3010
3030
|
isColored: true
|
|
3011
3031
|
})) : "", /*#__PURE__*/React.createElement("div", {
|
|
3012
|
-
className: s$
|
|
3032
|
+
className: s$h["dialog-step-wrapper-header-title-text"]
|
|
3013
3033
|
}, !isTopImagePassed && showBackgroundTitle ? /*#__PURE__*/React.createElement(BackgroundTitle, {
|
|
3014
3034
|
text: title
|
|
3015
3035
|
}) : null, /*#__PURE__*/React.createElement("h5", {
|
|
3016
|
-
className: s$
|
|
3036
|
+
className: s$h["dialog-step-wrapper-header-title-text-content"] + (!isTopImagePassed ? " " + s$h["without-logo"] : "") + (backgroundImage || backgroundImageMobile ? " " + s$h["white"] : "")
|
|
3017
3037
|
}, title))), subtitle ? /*#__PURE__*/React.createElement("p", {
|
|
3018
|
-
className: s$
|
|
3038
|
+
className: s$h["dialog-step-wrapper-header-text"] + (" " + (!isTopImagePassed ? s$h["without-logo"] : "") + " " + (subtitleSmallMargin ? s$h["small-margin"] : "") + (subtitleNoMargin ? s$h["no-margin"] : "") + " " + (headerTitleLeft ? s$h["text-left"] : "") + " " + (breakSubtitleWords ? s$h["break-words"] : "") + " " + (backgroundImage || backgroundImageMobile ? s$h["white"] : ""))
|
|
3019
3039
|
}, subtitle) : null), /*#__PURE__*/React.createElement("div", {
|
|
3020
|
-
className: s$
|
|
3040
|
+
className: s$h["dialog-step-wrapper-content"] + " " + s$h["align-" + contentAlign]
|
|
3021
3041
|
}, children), backButtonText || confirmButtonText ? /*#__PURE__*/React.createElement("div", {
|
|
3022
|
-
className: s$
|
|
3042
|
+
className: s$h["dialog-step-wrapper-buttons"] + (" " + (bigButtonMargins ? s$h["big-margin"] : "") + " " + (noButtonMargins ? s$h["no-margin"] : "") + " " + (isSecondaryButtonBig ? s$h["space-between-layout"] : ""))
|
|
3023
3043
|
}, /*#__PURE__*/React.createElement(DialogButtons, {
|
|
3024
3044
|
primaryButtonTitle: confirmButtonText,
|
|
3025
3045
|
primaryButtonOnClick: function primaryButtonOnClick(resetButtonLoader) {
|
|
3026
3046
|
return confirmButtonClick(resetButtonLoader);
|
|
3027
3047
|
},
|
|
3048
|
+
primaryButtonEnabled: confirmButtonEnabled,
|
|
3028
3049
|
primaryButtonLoader: primaryButtonLoader,
|
|
3029
3050
|
primaryButtonTo: confirmButtonLink,
|
|
3030
3051
|
primaryButtonSetClickTrigger: setClickTrigger,
|
|
3031
3052
|
secondaryButtonTitle: backButtonText,
|
|
3032
3053
|
secondaryButtonOnClick: backButtonClick,
|
|
3054
|
+
secondaryButtonEnabled: backButtonEnabled,
|
|
3033
3055
|
secondaryButtonTo: backButtonTo,
|
|
3034
3056
|
secondaryButtonBig: isSecondaryButtonBig,
|
|
3035
3057
|
withBackgroundImage: !!backgroundImage || !!backgroundImageMobile,
|
|
@@ -3049,9 +3071,11 @@ DialogStep.propTypes = {
|
|
|
3049
3071
|
subtitle: PropTypes.string,
|
|
3050
3072
|
backButtonText: PropTypes.string,
|
|
3051
3073
|
backButtonClick: PropTypes.func,
|
|
3074
|
+
backButtonEnabled: PropTypes.bool,
|
|
3052
3075
|
backButtonTo: PropTypes.string,
|
|
3053
3076
|
confirmButtonText: PropTypes.string,
|
|
3054
3077
|
confirmButtonClick: PropTypes.func,
|
|
3078
|
+
confirmButtonEnabled: PropTypes.bool,
|
|
3055
3079
|
confirmButtonLink: PropTypes.string,
|
|
3056
3080
|
primaryButtonLoader: PropTypes.bool,
|
|
3057
3081
|
fixedButtons: PropTypes.bool,
|
|
@@ -3087,9 +3111,11 @@ DialogStep.defaultProps = {
|
|
|
3087
3111
|
subtitle: "",
|
|
3088
3112
|
backButtonText: "",
|
|
3089
3113
|
backButtonClick: function backButtonClick() {},
|
|
3114
|
+
backButtonEnabled: true,
|
|
3090
3115
|
backButtonTo: "",
|
|
3091
3116
|
confirmButtonText: "",
|
|
3092
3117
|
confirmButtonClick: function confirmButtonClick() {},
|
|
3118
|
+
confirmButtonEnabled: true,
|
|
3093
3119
|
confirmButtonLink: "",
|
|
3094
3120
|
primaryButtonLoader: false,
|
|
3095
3121
|
fixedButtons: false,
|
|
@@ -3112,7 +3138,7 @@ DialogStep.defaultProps = {
|
|
|
3112
3138
|
isSecondaryButtonBig: false
|
|
3113
3139
|
};
|
|
3114
3140
|
|
|
3115
|
-
var s$
|
|
3141
|
+
var s$g = {"asset-selection":"_xevLY","disabled":"_DZRfD","active":"_oBw9O","asset-selection-protocol-wrapper":"_ixAiH","asset-selection-icon-wrapper":"_gJ5LN","arrow":"_W8Ibq"};
|
|
3116
3142
|
|
|
3117
3143
|
var ArrowIcon = (function () {
|
|
3118
3144
|
return /*#__PURE__*/React.createElement("svg", {
|
|
@@ -3154,21 +3180,21 @@ var AssetSelection = function AssetSelection(_ref) {
|
|
|
3154
3180
|
fallbackSrc = _ref.fallbackSrc;
|
|
3155
3181
|
var handleError = useCallHandlingErrors();
|
|
3156
3182
|
return /*#__PURE__*/React.createElement("div", {
|
|
3157
|
-
className: s$
|
|
3183
|
+
className: s$g["asset-selection"] + " " + (disabled ? s$g["disabled"] : ""),
|
|
3158
3184
|
onClick: disabled ? function () {} : function (e) {
|
|
3159
3185
|
return handleError(handleClick, e);
|
|
3160
3186
|
}
|
|
3161
3187
|
}, /*#__PURE__*/React.createElement("div", {
|
|
3162
|
-
className: s$
|
|
3188
|
+
className: s$g["asset-selection-icon-wrapper"]
|
|
3163
3189
|
}, /*#__PURE__*/React.createElement(AssetIcon, {
|
|
3164
3190
|
small: true,
|
|
3165
3191
|
assetIconSrc: assetIconSrc,
|
|
3166
3192
|
assetIconProtocolSrc: assetIconProtocolSrc,
|
|
3167
3193
|
fallbackSrc: fallbackSrc
|
|
3168
3194
|
})), protocolName ? /*#__PURE__*/React.createElement("div", {
|
|
3169
|
-
className: s$
|
|
3195
|
+
className: s$g["asset-selection-protocol-wrapper"]
|
|
3170
3196
|
}, protocolName) : "", /*#__PURE__*/React.createElement("div", {
|
|
3171
|
-
className: s$
|
|
3197
|
+
className: s$g["arrow"]
|
|
3172
3198
|
}, /*#__PURE__*/React.createElement(ArrowIcon, null)));
|
|
3173
3199
|
};
|
|
3174
3200
|
AssetSelection.propTypes = {
|
|
@@ -3185,7 +3211,7 @@ AssetSelection.defaultProps = {
|
|
|
3185
3211
|
assetIconProtocolSrc: null
|
|
3186
3212
|
};
|
|
3187
3213
|
|
|
3188
|
-
var s$
|
|
3214
|
+
var s$f = {"tooltip":"_8eyAx","enter":"_RpNdl","enter-active":"_BJddw","exit":"_BTWC-","exit-active":"_nxU2j","top-left":"_pPuyF","enter-done":"_UTN4U","top-right":"_2ppAB","left":"_--VUv","bottom":"_a1OJb","right":"_KNVu3","wide":"_s17pG","ignore-pointer":"_RCyas","tooltip-enter":"_3372j","tooltip-enter-active":"_-RNGY","tooltip-enter-done":"_90MOt","tooltip-exit":"_QT297","tooltip-exit-active":"_a0CNW"};
|
|
3189
3215
|
|
|
3190
3216
|
var DarkRectangle = (function () {
|
|
3191
3217
|
return /*#__PURE__*/React.createElement("svg", {
|
|
@@ -3244,7 +3270,7 @@ var Tooltip = function Tooltip(_ref) {
|
|
|
3244
3270
|
timeout: 400,
|
|
3245
3271
|
unmountOnExit: true
|
|
3246
3272
|
}, /*#__PURE__*/React.createElement("span", {
|
|
3247
|
-
className: s$
|
|
3273
|
+
className: s$f["tooltip"] + " " + (wide ? s$f["wide"] : "") + " " + s$f[position] + " " + (ignorePointerEvents ? s$f["ignore-pointer"] : ""),
|
|
3248
3274
|
onClick: function onClick(e) {
|
|
3249
3275
|
return handleError(_onClick, e);
|
|
3250
3276
|
},
|
|
@@ -3270,7 +3296,7 @@ Tooltip.defaultProps = {
|
|
|
3270
3296
|
ignorePointerEvents: false
|
|
3271
3297
|
};
|
|
3272
3298
|
|
|
3273
|
-
var s$
|
|
3299
|
+
var s$e = {"notice-icon-image":"_MdvCj","notice-icon":"_lFNkE","notice-icon-tooltip":"_l38uS"};
|
|
3274
3300
|
|
|
3275
3301
|
var handleClickOutside = function handleClickOutside(exceptionsRefs, callback) {
|
|
3276
3302
|
function handleClick(event) {
|
|
@@ -3376,7 +3402,7 @@ var NoticeIcon = function NoticeIcon(_ref) {
|
|
|
3376
3402
|
}, []);
|
|
3377
3403
|
return /*#__PURE__*/React.createElement("div", {
|
|
3378
3404
|
ref: noticeRef,
|
|
3379
|
-
className: s$
|
|
3405
|
+
className: s$e["notice-icon"]
|
|
3380
3406
|
}, titleNoticeIcon ? /*#__PURE__*/React.createElement("img", {
|
|
3381
3407
|
src: titleNoticeIcon,
|
|
3382
3408
|
alt: "title icon",
|
|
@@ -3385,17 +3411,17 @@ var NoticeIcon = function NoticeIcon(_ref) {
|
|
|
3385
3411
|
return !prev;
|
|
3386
3412
|
});
|
|
3387
3413
|
},
|
|
3388
|
-
className: s$
|
|
3414
|
+
className: s$e["notice-icon-image"],
|
|
3389
3415
|
loading: "lazy"
|
|
3390
3416
|
}) : /*#__PURE__*/React.createElement("div", {
|
|
3391
|
-
className: s$
|
|
3417
|
+
className: s$e["notice-icon-image"],
|
|
3392
3418
|
onClick: function onClick() {
|
|
3393
3419
|
return setShowTooltip(function (prev) {
|
|
3394
3420
|
return !prev;
|
|
3395
3421
|
});
|
|
3396
3422
|
}
|
|
3397
3423
|
}, /*#__PURE__*/React.createElement(NoticeQuestionIcon, null)), /*#__PURE__*/React.createElement("div", {
|
|
3398
|
-
className: s$
|
|
3424
|
+
className: s$e["notice-icon-tooltip"]
|
|
3399
3425
|
}, /*#__PURE__*/React.createElement(Tooltip, {
|
|
3400
3426
|
showTooltip: showTooltip,
|
|
3401
3427
|
handleClick: function handleClick() {
|
|
@@ -3415,7 +3441,7 @@ NoticeIcon.defaultProps = {
|
|
|
3415
3441
|
tooltipPosition: TOOLTIP_POSITIONS.TOP
|
|
3416
3442
|
};
|
|
3417
3443
|
|
|
3418
|
-
var s$
|
|
3444
|
+
var s$d = {"title-box":"_2Kb-x","full-width":"_-5MIw","title-box-wrapper":"_f8RmO","title-box-wrapper-title":"_Oxg7u","transparent-title":"_NwGqA","title-box-wrapper-link-button":"_f-4ZL"};
|
|
3419
3445
|
|
|
3420
3446
|
/**
|
|
3421
3447
|
* Copies given text to clipboard inside browser.
|
|
@@ -3479,7 +3505,7 @@ var TitleBox = function TitleBox(_ref) {
|
|
|
3479
3505
|
copyButtonContent = _ref.copyButtonContent,
|
|
3480
3506
|
copyButtonTooltipContent = _ref.copyButtonTooltipContent;
|
|
3481
3507
|
var handleError = useCallHandlingErrors();
|
|
3482
|
-
var transparentTitleClass = transparentTitle ? s$
|
|
3508
|
+
var transparentTitleClass = transparentTitle ? s$d["transparent-title"] : "";
|
|
3483
3509
|
var _useState = useState(false),
|
|
3484
3510
|
showCopyNotice = _useState[0],
|
|
3485
3511
|
setShowCopyNotice = _useState[1];
|
|
@@ -3493,19 +3519,19 @@ var TitleBox = function TitleBox(_ref) {
|
|
|
3493
3519
|
}, e);
|
|
3494
3520
|
};
|
|
3495
3521
|
return /*#__PURE__*/React.createElement("div", {
|
|
3496
|
-
className: s$
|
|
3522
|
+
className: s$d["title-box"] + " " + (fullWidth ? s$d["full-width"] : "")
|
|
3497
3523
|
}, title || titleNoticeText || linkText ? /*#__PURE__*/React.createElement("div", {
|
|
3498
|
-
className: s$
|
|
3524
|
+
className: s$d["title-box-wrapper"]
|
|
3499
3525
|
}, bigTitle ? /*#__PURE__*/React.createElement("h5", {
|
|
3500
|
-
className: s$
|
|
3526
|
+
className: s$d["title-box-wrapper-title"] + " " + transparentTitleClass
|
|
3501
3527
|
}, title) : /*#__PURE__*/React.createElement("h6", {
|
|
3502
|
-
className: s$
|
|
3528
|
+
className: s$d["title-box-wrapper-title"] + " " + transparentTitleClass
|
|
3503
3529
|
}, title), titleNoticeText ? /*#__PURE__*/React.createElement(NoticeIcon, {
|
|
3504
3530
|
noticeText: titleNoticeText,
|
|
3505
3531
|
titleNoticeIcon: titleNoticeIcon,
|
|
3506
3532
|
tooltipPosition: titleNoticePosition
|
|
3507
3533
|
}) : null, copyButtonContent && copyButtonText ? /*#__PURE__*/React.createElement("div", {
|
|
3508
|
-
className: s$
|
|
3534
|
+
className: s$d["title-box-wrapper-link-button"]
|
|
3509
3535
|
}, /*#__PURE__*/React.createElement(LinkButton, {
|
|
3510
3536
|
content: copyButtonText,
|
|
3511
3537
|
onClick: handleCopyButton,
|
|
@@ -3515,7 +3541,7 @@ var TitleBox = function TitleBox(_ref) {
|
|
|
3515
3541
|
position: TOOLTIP_POSITIONS.TOP_LEFT,
|
|
3516
3542
|
showTooltip: showCopyNotice
|
|
3517
3543
|
}, copyButtonTooltipContent)) : linkText ? /*#__PURE__*/React.createElement("div", {
|
|
3518
|
-
className: s$
|
|
3544
|
+
className: s$d["title-box-wrapper-link-button"]
|
|
3519
3545
|
}, /*#__PURE__*/React.createElement(LinkButton, {
|
|
3520
3546
|
content: linkText,
|
|
3521
3547
|
onClick: linkButtonClick,
|
|
@@ -3553,7 +3579,7 @@ TitleBox.defaultProps = {
|
|
|
3553
3579
|
transparentTitle: false
|
|
3554
3580
|
};
|
|
3555
3581
|
|
|
3556
|
-
var s$
|
|
3582
|
+
var s$c = {"amount-input-container-input-wrapper":"_OQ-ym","requested-amount-fiat-skeleton-content":"_zck4j","requested-amount-coin-skeleton-content":"_rZsYH","amount-input-container":"_AQaqi","upper-form-position":"_FjX1X","lower-form-position":"_g5zUv","error-encountered":"_XjaEm","focus":"_-jHS0","disabled":"_3y8Yo","bottom-margin":"_3RoIe","asset-balance":"_Z9fcv","red":"_EXTAF","requested-amount-coin":"_AV4qa","requested-amount-coin-currency":"_OGQ9l","requested-amount-coin-input":"_KY6tO","requested-amount-coin-skeleton":"_gIBI7","requested-amount-fiat":"_gwWcz","requested-amount-fiat-enter":"_Q3eUh","requested-amount-fiat-enter-active":"_ijYoP","requested-amount-fiat-exit":"_czDtf","requested-amount-fiat-exit-active":"_Hav2r","requested-amount-fiat-currency":"_RACoB","requested-amount-fiat-input":"_L5lVd","requested-amount-fiat-placeholder":"_HV2XM","requested-amount-fiat-skeleton":"_63hUZ"};
|
|
3557
3583
|
|
|
3558
3584
|
var WalletIcon = (function () {
|
|
3559
3585
|
return /*#__PURE__*/React.createElement("svg", {
|
|
@@ -4222,15 +4248,15 @@ var AmountInput = /*#__PURE__*/React.forwardRef(function (_ref, buttonForwardRef
|
|
|
4222
4248
|
linkText: isSendAll !== null ? isSendAll ? linkButtonActiveText : linkButtonInactiveText : null,
|
|
4223
4249
|
linkButtonClick: handleSendAllClick
|
|
4224
4250
|
}, /*#__PURE__*/React.createElement("div", {
|
|
4225
|
-
className: [s$
|
|
4251
|
+
className: [s$c["amount-input-container"], isInFocus ? s$c["focus"] : "", errorEncountered || highlightInput ? s$c["error-encountered"] : "", upperFormPosition ? s$c["upper-form-position"] : "", lowerFormPosition ? s$c["lower-form-position"] : ""].join(" ")
|
|
4226
4252
|
}, /*#__PURE__*/React.createElement("div", {
|
|
4227
|
-
className: s$
|
|
4253
|
+
className: s$c["amount-input-container-input-wrapper"] + " " + (disabled ? s$c["disabled"] : "") + "\n " + (children ? s$c["bottom-margin"] : "")
|
|
4228
4254
|
}, showBalance ? /*#__PURE__*/React.createElement("div", {
|
|
4229
|
-
className: s$
|
|
4255
|
+
className: s$c["asset-balance"] + " " + (highlightBalance ? s$c["red"] : "")
|
|
4230
4256
|
}, /*#__PURE__*/React.createElement(WalletIcon, null), /*#__PURE__*/React.createElement("p", null, (assetBalance == null ? void 0 : assetBalance.assetAmount) != null && (assetBalance == null ? void 0 : assetBalance.fiatAmount) != null && ticker && fiatCurrencyCode ? /*#__PURE__*/React.createElement(React.Fragment, null, AmountUtils.cryptoFull(assetBalance.assetAmount, tickerPrintable, assetDecimalPlaces), /*#__PURE__*/React.createElement("span", null, " ~ " + AmountUtils.fiat(assetBalance.fiatAmount, fiatCurrencyCode))) : balanceLoaderText)) : "", /*#__PURE__*/React.createElement("div", {
|
|
4231
|
-
className: s$
|
|
4257
|
+
className: s$c["requested-amount-coin"]
|
|
4232
4258
|
}, /*#__PURE__*/React.createElement("span", {
|
|
4233
|
-
className: s$
|
|
4259
|
+
className: s$c["requested-amount-coin-currency"]
|
|
4234
4260
|
}, tickerPrintable ? (estimateAmount ? "~ " : "") + tickerPrintable : ""), !isLoading ? /*#__PURE__*/React.createElement("input", {
|
|
4235
4261
|
type: "text",
|
|
4236
4262
|
inputMode: "decimal",
|
|
@@ -4239,7 +4265,7 @@ var AmountInput = /*#__PURE__*/React.forwardRef(function (_ref, buttonForwardRef
|
|
|
4239
4265
|
return handleChangeAmount(e.target.value);
|
|
4240
4266
|
},
|
|
4241
4267
|
placeholder: coinAmountPlaceholder,
|
|
4242
|
-
className: s$
|
|
4268
|
+
className: s$c["requested-amount-coin-input"],
|
|
4243
4269
|
disabled: disabled || locked,
|
|
4244
4270
|
onFocus: function onFocus(e) {
|
|
4245
4271
|
return callHandlingErrors(function () {
|
|
@@ -4252,17 +4278,27 @@ var AmountInput = /*#__PURE__*/React.forwardRef(function (_ref, buttonForwardRef
|
|
|
4252
4278
|
}, e);
|
|
4253
4279
|
}
|
|
4254
4280
|
}) : /*#__PURE__*/React.createElement("div", {
|
|
4255
|
-
className: s$
|
|
4281
|
+
className: s$c["requested-amount-coin-skeleton"]
|
|
4256
4282
|
}, /*#__PURE__*/React.createElement("span", {
|
|
4257
|
-
className: s$
|
|
4258
|
-
}))),
|
|
4259
|
-
|
|
4283
|
+
className: s$c["requested-amount-coin-skeleton-content"] + " " + "skeleton-dark"
|
|
4284
|
+
}))), /*#__PURE__*/React.createElement(CSSTransition, {
|
|
4285
|
+
"in": fiatCurrencyCode !== null,
|
|
4286
|
+
timeout: 200,
|
|
4287
|
+
classNames: {
|
|
4288
|
+
enter: s$c["requested-amount-fiat-enter"],
|
|
4289
|
+
enterActive: s$c["requested-amount-fiat-enter-active"],
|
|
4290
|
+
exit: s$c["requested-amount-fiat-exit"],
|
|
4291
|
+
exitActive: s$c["requested-amount-fiat-exit-active"]
|
|
4292
|
+
},
|
|
4293
|
+
unmountOnExit: true
|
|
4294
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
4295
|
+
className: s$c["requested-amount-fiat"] + (interactedWith ? " " + s$c["interacted"] : "")
|
|
4260
4296
|
}, interactedWith ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", {
|
|
4261
|
-
className: s$
|
|
4297
|
+
className: s$c["requested-amount-fiat-currency"]
|
|
4262
4298
|
}, (estimateAmount ? "~ " : "") + fiatCurrencyCode), !isLoading && cryptoAssetToFiatRate != null ? /*#__PURE__*/React.createElement("input", {
|
|
4263
4299
|
type: "text",
|
|
4264
4300
|
inputMode: "decimal",
|
|
4265
|
-
className: s$
|
|
4301
|
+
className: s$c["requested-amount-fiat-input"],
|
|
4266
4302
|
value: fiatAmountValue,
|
|
4267
4303
|
disabled: disabled || locked,
|
|
4268
4304
|
onChange: function onChange(e) {
|
|
@@ -4281,18 +4317,18 @@ var AmountInput = /*#__PURE__*/React.forwardRef(function (_ref, buttonForwardRef
|
|
|
4281
4317
|
}, e);
|
|
4282
4318
|
}
|
|
4283
4319
|
}) : /*#__PURE__*/React.createElement("div", {
|
|
4284
|
-
className: s$
|
|
4320
|
+
className: s$c["requested-amount-fiat-skeleton"]
|
|
4285
4321
|
}, /*#__PURE__*/React.createElement("span", {
|
|
4286
|
-
className: s$
|
|
4322
|
+
className: s$c["requested-amount-fiat-skeleton-content"] + " " + "skeleton-dark"
|
|
4287
4323
|
}))) : /*#__PURE__*/React.createElement("span", {
|
|
4288
|
-
className: s$
|
|
4324
|
+
className: s$c["requested-amount-fiat-placeholder"],
|
|
4289
4325
|
onClick: function onClick(e) {
|
|
4290
4326
|
return callHandlingErrors(function () {
|
|
4291
4327
|
return handleFiatInteraction();
|
|
4292
4328
|
}, e);
|
|
4293
4329
|
}
|
|
4294
|
-
}, fiatInputPlaceholderText)))
|
|
4295
|
-
className: s$
|
|
4330
|
+
}, fiatInputPlaceholderText)))), showChangeAssetButton && ticker ? /*#__PURE__*/React.createElement("div", {
|
|
4331
|
+
className: s$c["amount-input-container-button-wrapper"],
|
|
4296
4332
|
ref: buttonForwardRef
|
|
4297
4333
|
}, /*#__PURE__*/React.createElement(AssetSelection, {
|
|
4298
4334
|
assetIconSrc: assetIconSrc,
|
|
@@ -4306,9 +4342,9 @@ var AmountInput = /*#__PURE__*/React.forwardRef(function (_ref, buttonForwardRef
|
|
|
4306
4342
|
}) : null);
|
|
4307
4343
|
});
|
|
4308
4344
|
|
|
4309
|
-
var s$
|
|
4345
|
+
var s$b = {"swap-form-inputs-separator":"_2vSSb","disabled":"_t1R13","swap-form":"_Uwb2p","swap-form-inputs":"_kkR8O","swap-form-information-field":"_ZUAfe","semi-transparent":"_1mu0j","interactable":"_S9zQS","red":"_SbQSO","swap-form-address-field":"_c8Nfv","swap-form-rate-selector":"_Fo9O-","swap-form-validation-text":"_8iEHB","swap-form-button-container":"_cVVfG","swap-form-button-container-consent-text":"_UNMjb","swap-form-button-container-consent-text-link":"_-g020"};
|
|
4310
4346
|
|
|
4311
|
-
var s$
|
|
4347
|
+
var s$a = {"textarea-input":"_EJFn-","textarea":"_YjRAf","full-height":"_kDp5e","textarea-input-label":"_XQC6S","adaptive-height":"_UnSJE","small-text":"_WtRnB","disabled":"_IO5nl","error-encountered":"_00pBS"};
|
|
4312
4348
|
|
|
4313
4349
|
/**
|
|
4314
4350
|
* A textarea component with optional adaptive height and validation messaging.
|
|
@@ -4369,12 +4405,12 @@ var Textarea = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
4369
4405
|
if (((_e$target = e.target) == null ? void 0 : _e$target.value.indexOf("\n")) === -1 || !ignoreEnter) _onChange(e);
|
|
4370
4406
|
};
|
|
4371
4407
|
return /*#__PURE__*/React.createElement("div", {
|
|
4372
|
-
className: s$
|
|
4408
|
+
className: s$a["textarea"] + (" " + (fullHeight ? " " + s$a["full-height"] : ""))
|
|
4373
4409
|
}, label ? /*#__PURE__*/React.createElement("label", {
|
|
4374
4410
|
htmlFor: id,
|
|
4375
|
-
className: s$
|
|
4411
|
+
className: s$a["textarea-input-label"]
|
|
4376
4412
|
}, label) : null, adaptiveHeight ? /*#__PURE__*/React.createElement(TextareaAutosize, {
|
|
4377
|
-
className: s$
|
|
4413
|
+
className: s$a["textarea-input"] + " " + s$a["adaptive-height"] + (disabled ? " " + s$a["disabled"] : "") + (errorEncountered ? " " + s$a["error-encountered"] : ""),
|
|
4378
4414
|
minRows: 1,
|
|
4379
4415
|
maxRows: 3,
|
|
4380
4416
|
onChange: function onChange(e) {
|
|
@@ -4388,7 +4424,7 @@ var Textarea = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
4388
4424
|
disabled: disabled
|
|
4389
4425
|
}) : /*#__PURE__*/React.createElement("textarea", {
|
|
4390
4426
|
name: name,
|
|
4391
|
-
className: s$
|
|
4427
|
+
className: s$a["textarea-input"] + (" " + (fullHeight ? s$a["full-height"] : "") + " " + (smallText ? s$a["small-text"] : "") + " " + (disabled ? s$a["disabled"] : "")),
|
|
4392
4428
|
onChange: function onChange(e) {
|
|
4393
4429
|
return callHandlingErrors(_onChange, e);
|
|
4394
4430
|
},
|
|
@@ -4438,7 +4474,7 @@ Textarea.defaultProps = {
|
|
|
4438
4474
|
ignoreEnter: false
|
|
4439
4475
|
};
|
|
4440
4476
|
|
|
4441
|
-
var s$
|
|
4477
|
+
var s$9 = {"rate-selector":"_bqJFm","rate-selector-item":"_te8yb","selected":"_HU2Oq","rate-selector-item-text":"_ew-Z1"};
|
|
4442
4478
|
|
|
4443
4479
|
// TODO: [dev] add JSDoc
|
|
4444
4480
|
var RateSelector = function RateSelector(_ref) {
|
|
@@ -4452,21 +4488,21 @@ var RateSelector = function RateSelector(_ref) {
|
|
|
4452
4488
|
fixedRate: "Fixed rate"
|
|
4453
4489
|
} : _ref$translations;
|
|
4454
4490
|
return /*#__PURE__*/React.createElement("div", {
|
|
4455
|
-
className: s$
|
|
4491
|
+
className: s$9["rate-selector"]
|
|
4456
4492
|
}, /*#__PURE__*/React.createElement("div", {
|
|
4457
|
-
className: s$
|
|
4493
|
+
className: s$9["rate-selector-item"] + " " + (!isFixed ? s$9["selected"] : ""),
|
|
4458
4494
|
onClick: function onClick() {
|
|
4459
|
-
return setIsFixed(false);
|
|
4495
|
+
return isFixed ? setIsFixed(false) : null;
|
|
4460
4496
|
}
|
|
4461
4497
|
}, /*#__PURE__*/React.createElement("div", {
|
|
4462
|
-
className: s$
|
|
4498
|
+
className: s$9["rate-selector-item-text"]
|
|
4463
4499
|
}, translations.floatingRate)), /*#__PURE__*/React.createElement("div", {
|
|
4464
|
-
className: s$
|
|
4500
|
+
className: s$9["rate-selector-item"] + " " + (isFixed ? s$9["selected"] : ""),
|
|
4465
4501
|
onClick: function onClick() {
|
|
4466
|
-
return setIsFixed(true);
|
|
4502
|
+
return !isFixed ? setIsFixed(true) : null;
|
|
4467
4503
|
}
|
|
4468
4504
|
}, /*#__PURE__*/React.createElement("div", {
|
|
4469
|
-
className: s$
|
|
4505
|
+
className: s$9["rate-selector-item-text"]
|
|
4470
4506
|
}, translations.fixedRate)));
|
|
4471
4507
|
};
|
|
4472
4508
|
|
|
@@ -4691,7 +4727,7 @@ function useIsHydrated() {
|
|
|
4691
4727
|
* @constructor
|
|
4692
4728
|
*/
|
|
4693
4729
|
|
|
4694
|
-
function _catch$
|
|
4730
|
+
function _catch$f(body, recover) {
|
|
4695
4731
|
try {
|
|
4696
4732
|
var result = body();
|
|
4697
4733
|
} catch (e) {
|
|
@@ -5015,23 +5051,26 @@ var SwapForm = function SwapForm(_ref) {
|
|
|
5015
5051
|
setMaximumAmountValid(!maximumAmount.current || BigNumber(amount).eq("0") || BigNumber(amount).lte(maximumAmount.current.crypto));
|
|
5016
5052
|
setMinimalAmountValid(!minimalAmount.current || BigNumber(amount).eq("0") || BigNumber(amount).gte((_minimalAmount$curren5 = minimalAmount.current) == null ? void 0 : _minimalAmount$curren5.crypto));
|
|
5017
5053
|
};
|
|
5018
|
-
var requestDataRefresh = function requestDataRefresh(amount, immediately, isSwapAll) {
|
|
5054
|
+
var requestDataRefresh = function requestDataRefresh(amount, immediately, isSwapAll, ignoreEmptyAmount) {
|
|
5019
5055
|
if (immediately === void 0) {
|
|
5020
5056
|
immediately = false;
|
|
5021
5057
|
}
|
|
5022
5058
|
if (isSwapAll === void 0) {
|
|
5023
5059
|
isSwapAll = false;
|
|
5024
5060
|
}
|
|
5061
|
+
if (ignoreEmptyAmount === void 0) {
|
|
5062
|
+
ignoreEmptyAmount = false;
|
|
5063
|
+
}
|
|
5025
5064
|
try {
|
|
5026
5065
|
clearTimeout(dataUpdateTimeoutId.current);
|
|
5027
5066
|
if (isSwapAll) {
|
|
5028
5067
|
loadFullEstimation(null);
|
|
5029
5068
|
return;
|
|
5030
5069
|
}
|
|
5031
|
-
if (!amount) {
|
|
5070
|
+
if (!amount && !ignoreEmptyAmount) {
|
|
5032
5071
|
return;
|
|
5033
5072
|
}
|
|
5034
|
-
if (BigNumber(amount).eq("0")) {
|
|
5073
|
+
if (BigNumber(amount).eq("0") || amount == null || amount === "") {
|
|
5035
5074
|
if (immediately) {
|
|
5036
5075
|
loadMinimalAmountAndSwapRate(true);
|
|
5037
5076
|
} else {
|
|
@@ -5087,7 +5126,7 @@ var SwapForm = function SwapForm(_ref) {
|
|
|
5087
5126
|
}
|
|
5088
5127
|
(function () {
|
|
5089
5128
|
try {
|
|
5090
|
-
return _catch$
|
|
5129
|
+
return _catch$f(function () {
|
|
5091
5130
|
var _minimalAmount$curren6, _maximumAmount$curren5, _isFixedRate$current;
|
|
5092
5131
|
var dataMemento = {
|
|
5093
5132
|
rate: swapRate,
|
|
@@ -5173,7 +5212,7 @@ var SwapForm = function SwapForm(_ref) {
|
|
|
5173
5212
|
}
|
|
5174
5213
|
(function () {
|
|
5175
5214
|
try {
|
|
5176
|
-
return _catch$
|
|
5215
|
+
return _catch$f(function () {
|
|
5177
5216
|
setIsLoading(true);
|
|
5178
5217
|
setMinimalAmount(null);
|
|
5179
5218
|
setMaximumAmount(null);
|
|
@@ -5182,7 +5221,7 @@ var SwapForm = function SwapForm(_ref) {
|
|
|
5182
5221
|
setIsPairSupported(true);
|
|
5183
5222
|
setIsSwapCalculated(false);
|
|
5184
5223
|
return Promise.resolve(retrieveInitialSwapData(sendingAssetTicker, receivingAssetTicker)).then(function (swapData) {
|
|
5185
|
-
if (sendAssetAmount.current != null && !isCalledForClearedInput) {
|
|
5224
|
+
if ((isFixedRate.current && isLastEditedReceiving.current ? receiveAssetAmount.current != null : sendAssetAmount.current != null) && !isCalledForClearedInput) {
|
|
5186
5225
|
// Means user already entered amount after starting the form initialization
|
|
5187
5226
|
return;
|
|
5188
5227
|
}
|
|
@@ -5226,7 +5265,7 @@ var SwapForm = function SwapForm(_ref) {
|
|
|
5226
5265
|
};
|
|
5227
5266
|
var handleRateModeChanged = function handleRateModeChanged(isFixed) {
|
|
5228
5267
|
setIsFixedRate(isFixed);
|
|
5229
|
-
requestDataRefresh(isLastEditedReceiving.current ? receiveAssetAmount.current : sendAssetAmount.current, true);
|
|
5268
|
+
requestDataRefresh(isLastEditedReceiving.current ? receiveAssetAmount.current : sendAssetAmount.current, true, null, true);
|
|
5230
5269
|
};
|
|
5231
5270
|
useEffect(function () {
|
|
5232
5271
|
if (isSwapAll.current === true) {
|
|
@@ -5243,9 +5282,10 @@ var SwapForm = function SwapForm(_ref) {
|
|
|
5243
5282
|
}, [isFixedRate.current]);
|
|
5244
5283
|
useEffect(function () {
|
|
5245
5284
|
if (!sendingAssetTicker || !receivingAssetTicker) return;
|
|
5246
|
-
var
|
|
5285
|
+
var currentAmount = isLastEditedReceiving.current ? receiveAssetAmount.current : sendAssetAmount.current;
|
|
5286
|
+
var isCurrentAmountNotZero = currentAmount && !BigNumber("0").eq(currentAmount);
|
|
5247
5287
|
if (isCurrentAmountNotZero) {
|
|
5248
|
-
loadFullEstimation(
|
|
5288
|
+
loadFullEstimation(currentAmount);
|
|
5249
5289
|
} else {
|
|
5250
5290
|
loadMinimalAmountAndSwapRate(true);
|
|
5251
5291
|
}
|
|
@@ -5341,7 +5381,7 @@ var SwapForm = function SwapForm(_ref) {
|
|
|
5341
5381
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
5342
5382
|
}, [updateSendInputTo, updateReceiveInputTo]);
|
|
5343
5383
|
useEffect(function () {
|
|
5344
|
-
if (swapRate != null && sendAssetAmount.current != null) {
|
|
5384
|
+
if (swapRate != null && (isLastEditedReceiving.current ? receiveAssetAmount.current : sendAssetAmount.current) != null) {
|
|
5345
5385
|
if (isLastEditedReceiving.current) {
|
|
5346
5386
|
setUpdateSendInputTo(AmountUtils.trim(BigNumber(receiveAssetAmount.current).div(swapRate), sendingAssetDecimalCount));
|
|
5347
5387
|
} else {
|
|
@@ -5372,7 +5412,7 @@ var SwapForm = function SwapForm(_ref) {
|
|
|
5372
5412
|
var recipientAddressExtraIdName = getExtraIdNameByTicker(receivingAssetTicker);
|
|
5373
5413
|
var refundAddressExtraIdName = getExtraIdNameByTicker(sendingAssetTicker);
|
|
5374
5414
|
return /*#__PURE__*/React.createElement("div", {
|
|
5375
|
-
className: s$
|
|
5415
|
+
className: s$b["swap-form"]
|
|
5376
5416
|
}, /*#__PURE__*/React.createElement(TitleBox, {
|
|
5377
5417
|
linkButtonClick: BigNumber(sendingAssetBalance == null ? void 0 : sendingAssetBalance.assetAmount).eq(0) ? null : function (resetButtonLoader) {
|
|
5378
5418
|
return handleSwapAllClick(resetButtonLoader);
|
|
@@ -5381,13 +5421,13 @@ var SwapForm = function SwapForm(_ref) {
|
|
|
5381
5421
|
linkButtonLoader: true,
|
|
5382
5422
|
isLinkButtonDisabled: isLoading.current || sendingAssetTicker === receivingAssetTicker || BigNumber(sendingAssetBalance == null ? void 0 : sendingAssetBalance.assetAmount).eq(0)
|
|
5383
5423
|
}, displayRateSelector ? /*#__PURE__*/React.createElement("div", {
|
|
5384
|
-
className: s$
|
|
5424
|
+
className: s$b["swap-form-rate-selector"]
|
|
5385
5425
|
}, /*#__PURE__*/React.createElement(RateSelector, {
|
|
5386
5426
|
isFixed: (_isFixedRate$current2 = isFixedRate.current) != null ? _isFixedRate$current2 : IS_FIXED_BY_DEFAULT,
|
|
5387
5427
|
setIsFixed: handleRateModeChanged,
|
|
5388
5428
|
translations: translations.rateSelector
|
|
5389
5429
|
})) : "", /*#__PURE__*/React.createElement("div", {
|
|
5390
|
-
className: s$
|
|
5430
|
+
className: s$b["swap-form-inputs"]
|
|
5391
5431
|
}, /*#__PURE__*/React.createElement(AmountInput, {
|
|
5392
5432
|
ticker: sendingAssetTicker,
|
|
5393
5433
|
tickerPrintable: sendingAssetTickerPrintable,
|
|
@@ -5412,12 +5452,12 @@ var SwapForm = function SwapForm(_ref) {
|
|
|
5412
5452
|
ref: fromAssetSelectionButtonRef,
|
|
5413
5453
|
isLoading: isLastEditedReceiving.current ? isLoading.current : false,
|
|
5414
5454
|
cryptoAssetToFiatRate: sendingAssetToFiatRate,
|
|
5415
|
-
fiatCurrencyCode: formHasFiat ? fiatCurrencyCode : null,
|
|
5455
|
+
fiatCurrencyCode: formHasFiat && (isLoading.current || sendingAssetToFiatRate != null) ? fiatCurrencyCode : null,
|
|
5416
5456
|
fiatCurrencyDecimals: fiatCurrencyDecimals,
|
|
5417
5457
|
balanceLoaderText: translations.input.balanceLoaderText,
|
|
5418
5458
|
fiatInputPlaceholderText: translations.input.fiatPlaceholder
|
|
5419
5459
|
}), /*#__PURE__*/React.createElement("div", {
|
|
5420
|
-
className: s$
|
|
5460
|
+
className: s$b["swap-form-inputs-separator"] + " " + (isLoading.current || sendingAssetTicker === null || receivingAssetTicker === null ? s$b["disabled"] : "")
|
|
5421
5461
|
}, /*#__PURE__*/React.createElement("img", {
|
|
5422
5462
|
src: swapSeparatorIconSrc,
|
|
5423
5463
|
alt: "swap icon",
|
|
@@ -5435,7 +5475,7 @@ var SwapForm = function SwapForm(_ref) {
|
|
|
5435
5475
|
assetIconProtocolSrc: receivingAssetProtocolIconSrc,
|
|
5436
5476
|
fallbackAssetIconSrc: fallBackAssetIconSrc,
|
|
5437
5477
|
disabled: isSwapAll.current || sendingAssetTicker === null || receivingAssetTicker === null,
|
|
5438
|
-
locked: !formHasBalance
|
|
5478
|
+
locked: !formHasBalance,
|
|
5439
5479
|
handleCoinAmountChange: handleReceiveAssetAmountChange,
|
|
5440
5480
|
handleChangeAssetClick: handleChangeReceivingAssetClick,
|
|
5441
5481
|
updateAssetInputTo: updateReceiveInputTo,
|
|
@@ -5448,30 +5488,30 @@ var SwapForm = function SwapForm(_ref) {
|
|
|
5448
5488
|
ref: toAssetSelectionButtonRef,
|
|
5449
5489
|
isLoading: isLastEditedReceiving.current ? false : isLoading.current,
|
|
5450
5490
|
cryptoAssetToFiatRate: receivingAssetToFiatRate,
|
|
5451
|
-
fiatCurrencyCode: formHasFiat ? fiatCurrencyCode : null,
|
|
5491
|
+
fiatCurrencyCode: formHasFiat && (isLoading.current || receivingAssetToFiatRate != null) ? fiatCurrencyCode : null,
|
|
5452
5492
|
fiatCurrencyDecimals: fiatCurrencyDecimals,
|
|
5453
5493
|
balanceLoaderText: translations.input.balanceLoaderText,
|
|
5454
5494
|
fiatInputPlaceholderText: translations.input.fiatPlaceholder
|
|
5455
5495
|
})), /*#__PURE__*/React.createElement("div", {
|
|
5456
|
-
className: s$
|
|
5496
|
+
className: s$b["swap-form-information-field"]
|
|
5457
5497
|
}, /*#__PURE__*/React.createElement("p", null, !isPairSupported ? translations.informationBlock.pairNotAvailable : transactionFee && minimalAmountValid ? /*#__PURE__*/React.createElement(React.Fragment, null, translations.informationBlock.transactionFee, /*#__PURE__*/React.createElement("span", null, AmountUtils.crypto(transactionFee == null ? void 0 : transactionFee.crypto, sendingAssetFeeCoinTickerPrintable)), (transactionFee == null ? void 0 : transactionFee.fiat) != null && (transactionFee == null ? void 0 : transactionFee.fiat) !== "" ? /*#__PURE__*/React.createElement("span", {
|
|
5458
5498
|
className: "semi-transparent"
|
|
5459
5499
|
}, " ~ " + AmountUtils.fiat(transactionFee == null ? void 0 : transactionFee.fiat, fiatCurrencyCode)) : "") : !isLoading.current && (isSwapCalculated || !minimalAmount.current && swapRate) ? /*#__PURE__*/React.createElement(React.Fragment, null, translations.informationBlock.swapRate, /*#__PURE__*/React.createElement("span", null, AmountUtils.composeRateText(sendingAssetTickerPrintable, receivingAssetTickerPrintable, swapRate, receivingAssetDecimalCount, (_isFixedRate$current3 = isFixedRate.current) != null ? _isFixedRate$current3 : IS_FIXED_BY_DEFAULT))) : minimalAmount.current || maximumAmount.current ? !maximumAmountValid && maximumAmount.current != null ? /*#__PURE__*/React.createElement(React.Fragment, null, translations.informationBlock.maximumAmount, /*#__PURE__*/React.createElement("span", {
|
|
5460
|
-
className: s$
|
|
5500
|
+
className: s$b["interactable"] + " " + s$b["red"],
|
|
5461
5501
|
onClick: isLoading.current ? function () {} : function (e) {
|
|
5462
5502
|
return callHandlingErrors(handleMaximumAmountClick, e);
|
|
5463
5503
|
}
|
|
5464
5504
|
}, AmountUtils.crypto((_maximumAmount$curren6 = maximumAmount.current) == null ? void 0 : _maximumAmount$curren6.crypto, isLastEditedReceiving.current ? receivingAssetTickerPrintable : sendingAssetTickerPrintable)), ((_maximumAmount$curren7 = maximumAmount.current) == null ? void 0 : _maximumAmount$curren7.fiat) != null && ((_maximumAmount$curren8 = maximumAmount.current) == null ? void 0 : _maximumAmount$curren8.fiat) !== "" ? /*#__PURE__*/React.createElement("span", {
|
|
5465
5505
|
className: "semi-transparent"
|
|
5466
5506
|
}, " ~ " + AmountUtils.fiat(maximumAmount.current.fiat, fiatCurrencyCode)) : "") : !minimalAmount.current ? "" : /*#__PURE__*/React.createElement(React.Fragment, null, translations.informationBlock.minimumAmount, /*#__PURE__*/React.createElement("span", {
|
|
5467
|
-
className: s$
|
|
5507
|
+
className: s$b["interactable"] + " " + (!minimalAmountValid ? s$b["red"] : ""),
|
|
5468
5508
|
onClick: isLoading.current ? function () {} : function (e) {
|
|
5469
5509
|
return callHandlingErrors(handleMinimalAmountClick, e);
|
|
5470
5510
|
}
|
|
5471
5511
|
}, AmountUtils.crypto(minimalAmount.current.crypto, isLastEditedReceiving.current ? receivingAssetTickerPrintable : sendingAssetTickerPrintable)), ((_minimalAmount$curren7 = minimalAmount.current) == null ? void 0 : _minimalAmount$curren7.fiat) != null && minimalAmount.current.fiat !== "" ? /*#__PURE__*/React.createElement("span", {
|
|
5472
5512
|
className: "semi-transparent"
|
|
5473
|
-
}, " ~ " + AmountUtils.fiat(minimalAmount.current.fiat, fiatCurrencyCode)) : "") : isLoading.current ? sendAssetAmount.current || isSwapAll.current ? translations.informationBlock[formHasBalance ? "calculatingNetworkFee" : "calculatingSwapRates"] : translations.informationBlock.loadingMinimalAmount : "")), isAddressFieldEnabled ? /*#__PURE__*/React.createElement("div", {
|
|
5474
|
-
className: s$
|
|
5513
|
+
}, " ~ " + AmountUtils.fiat(minimalAmount.current.fiat, fiatCurrencyCode)) : "") : isLoading.current ? sendAssetAmount.current || receiveAssetAmount.current || isSwapAll.current ? translations.informationBlock[formHasBalance ? "calculatingNetworkFee" : "calculatingSwapRates"] : translations.informationBlock.loadingMinimalAmount : "")), isAddressFieldEnabled ? /*#__PURE__*/React.createElement("div", {
|
|
5514
|
+
className: s$b["swap-form-address-field"]
|
|
5475
5515
|
}, /*#__PURE__*/React.createElement(TitleBox, {
|
|
5476
5516
|
title: translations.addressFields.addressTitle
|
|
5477
5517
|
}, /*#__PURE__*/React.createElement(Textarea, {
|
|
@@ -5517,20 +5557,20 @@ var SwapForm = function SwapForm(_ref) {
|
|
|
5517
5557
|
adaptiveHeight: true,
|
|
5518
5558
|
placeholder: translations.addressFields.extraIdPlaceholder
|
|
5519
5559
|
})) : null) : null) : null, validationContent ? /*#__PURE__*/React.createElement("div", {
|
|
5520
|
-
className: s$
|
|
5560
|
+
className: s$b["swap-form-validation-text"]
|
|
5521
5561
|
}, /*#__PURE__*/React.createElement(Validation, {
|
|
5522
5562
|
text: validationContent
|
|
5523
5563
|
})) : "", /*#__PURE__*/React.createElement("div", {
|
|
5524
|
-
className: s$
|
|
5564
|
+
className: s$b["swap-form-button-container"]
|
|
5525
5565
|
}, !termsOfUseUrl || !privacyPolicyUrl ? null : /*#__PURE__*/React.createElement("p", {
|
|
5526
|
-
className: s$
|
|
5566
|
+
className: s$b["swap-form-button-container-consent-text"]
|
|
5527
5567
|
}, translations.consents.consentText + " ", /*#__PURE__*/React.createElement("a", {
|
|
5528
5568
|
href: termsOfUseUrl,
|
|
5529
|
-
className: s$
|
|
5569
|
+
className: s$b["swap-form-button-container-consent-text-link"],
|
|
5530
5570
|
target: "_blank"
|
|
5531
5571
|
}, translations.consents.termsOfUse), " " + translations.consents.and + " ", /*#__PURE__*/React.createElement("a", {
|
|
5532
5572
|
href: privacyPolicyUrl,
|
|
5533
|
-
className: s$
|
|
5573
|
+
className: s$b["swap-form-button-container-consent-text-link"],
|
|
5534
5574
|
target: "_blank"
|
|
5535
5575
|
}, translations.consents.privacyPolicy), "."), /*#__PURE__*/React.createElement(Button, {
|
|
5536
5576
|
size: "lg",
|
|
@@ -5641,7 +5681,7 @@ SwapForm.defaultProps = {
|
|
|
5641
5681
|
* @return {Promise<string>} xml string of generated svg image
|
|
5642
5682
|
*/
|
|
5643
5683
|
|
|
5644
|
-
function _catch$
|
|
5684
|
+
function _catch$e(body, recover) {
|
|
5645
5685
|
try {
|
|
5646
5686
|
var result = body();
|
|
5647
5687
|
} catch (e) {
|
|
@@ -5654,7 +5694,7 @@ function _catch$d(body, recover) {
|
|
|
5654
5694
|
}
|
|
5655
5695
|
var generateQrAndShowInCanvas = function generateQrAndShowInCanvas(encodingString) {
|
|
5656
5696
|
try {
|
|
5657
|
-
return Promise.resolve(_catch$
|
|
5697
|
+
return Promise.resolve(_catch$e(function () {
|
|
5658
5698
|
return Promise.resolve(QRCode.toString(encodingString, {
|
|
5659
5699
|
type: "svg"
|
|
5660
5700
|
}));
|
|
@@ -5666,7 +5706,7 @@ var generateQrAndShowInCanvas = function generateQrAndShowInCanvas(encodingStrin
|
|
|
5666
5706
|
}
|
|
5667
5707
|
};
|
|
5668
5708
|
|
|
5669
|
-
var s$
|
|
5709
|
+
var s$8 = {"qr-code":"_VZ0dT","fill":"_hFE1l"};
|
|
5670
5710
|
|
|
5671
5711
|
/**
|
|
5672
5712
|
* QrCode component renders a QR code for a provided crypto address.
|
|
@@ -5679,7 +5719,7 @@ var s$6 = {"qr-code":"_VZ0dT","fill":"_hFE1l"};
|
|
|
5679
5719
|
* @returns {JSX.Element} A div containing the generated QR code.
|
|
5680
5720
|
*/
|
|
5681
5721
|
|
|
5682
|
-
function _catch$
|
|
5722
|
+
function _catch$d(body, recover) {
|
|
5683
5723
|
try {
|
|
5684
5724
|
var result = body();
|
|
5685
5725
|
} catch (e) {
|
|
@@ -5698,7 +5738,7 @@ var QrCode = function QrCode(_ref) {
|
|
|
5698
5738
|
useEffect(function () {
|
|
5699
5739
|
(function () {
|
|
5700
5740
|
try {
|
|
5701
|
-
return _catch$
|
|
5741
|
+
return _catch$d(function () {
|
|
5702
5742
|
var _temp = function () {
|
|
5703
5743
|
if (address) {
|
|
5704
5744
|
return Promise.resolve(generateQrAndShowInCanvas(address)).then(function (_generateQrAndShowInC) {
|
|
@@ -5716,7 +5756,7 @@ var QrCode = function QrCode(_ref) {
|
|
|
5716
5756
|
})();
|
|
5717
5757
|
}, [address]);
|
|
5718
5758
|
return /*#__PURE__*/React.createElement("div", {
|
|
5719
|
-
className: s$
|
|
5759
|
+
className: s$8["qr-code"] + (fill ? " " + s$8["fill"] : ""),
|
|
5720
5760
|
ref: canvasRef
|
|
5721
5761
|
});
|
|
5722
5762
|
};
|
|
@@ -5728,7 +5768,7 @@ QrCode.defaultProps = {
|
|
|
5728
5768
|
fill: false
|
|
5729
5769
|
};
|
|
5730
5770
|
|
|
5731
|
-
var s$
|
|
5771
|
+
var s$7 = {"first-line-text":"_IGz2I","wrap":"_eKd8P","break":"_mT5i4","full-text":"_PVKxC","shorted":"_wB5qV","horizontal":"_lqJz-","line":"_MGRy0","second-line-text":"_hdF64"};
|
|
5732
5772
|
|
|
5733
5773
|
/**
|
|
5734
5774
|
* Renders up to three lines of text with configurable options for horizontal layout, text wrapping, and breaking.
|
|
@@ -5766,19 +5806,19 @@ var LinesOfText = function LinesOfText(_ref) {
|
|
|
5766
5806
|
_ref$breakFirstLine = _ref.breakFirstLine,
|
|
5767
5807
|
breakFirstLine = _ref$breakFirstLine === void 0 ? false : _ref$breakFirstLine;
|
|
5768
5808
|
return defaultTextContent ? /*#__PURE__*/React.createElement("div", {
|
|
5769
|
-
className: s$
|
|
5809
|
+
className: s$7["centered-vertically"]
|
|
5770
5810
|
}, defaultTextContent) : /*#__PURE__*/React.createElement("div", {
|
|
5771
|
-
className: isHorizontal ? s$
|
|
5811
|
+
className: isHorizontal ? s$7["horizontal"] : ""
|
|
5772
5812
|
}, /*#__PURE__*/React.createElement("h5", {
|
|
5773
|
-
className: s$
|
|
5813
|
+
className: s$7["first-line-text"]
|
|
5774
5814
|
}, /*#__PURE__*/React.createElement("span", {
|
|
5775
|
-
className: (isFirstLineTextReducible ? s$
|
|
5815
|
+
className: (isFirstLineTextReducible ? s$7["shorted"] : s$7["full-text"]) + " " + (wrapFirstLine ? " " + s$7["wrap"] : "") + " " + (breakFirstLine ? " " + s$7["break"] : "")
|
|
5776
5816
|
}, firstLineText), "\xA0" + firstLineNotReducibleSuffix), isHorizontal ? /*#__PURE__*/React.createElement("div", {
|
|
5777
5817
|
className: "line"
|
|
5778
5818
|
}) : null, secondLineText ? /*#__PURE__*/React.createElement("p", {
|
|
5779
|
-
className: s$
|
|
5819
|
+
className: s$7["second-line-text"]
|
|
5780
5820
|
}, secondLineText) : null, thirdLineText ? /*#__PURE__*/React.createElement("p", {
|
|
5781
|
-
className: s$
|
|
5821
|
+
className: s$7["second-line-text"]
|
|
5782
5822
|
}, thirdLineText) : null);
|
|
5783
5823
|
};
|
|
5784
5824
|
LinesOfText.propTypes = {
|
|
@@ -5804,7 +5844,7 @@ LinesOfText.defaultProps = {
|
|
|
5804
5844
|
breakFirstLine: false
|
|
5805
5845
|
};
|
|
5806
5846
|
|
|
5807
|
-
var s$
|
|
5847
|
+
var s$6 = {"line-with-icon-link-icon":"_8HT4K","line-with-icon-link":"_m8MBC","line-with-icon-link-text":"_M7e-R"};
|
|
5808
5848
|
|
|
5809
5849
|
/**
|
|
5810
5850
|
* Renders a line with text and an accompanying icon that serves as a link.
|
|
@@ -5819,9 +5859,9 @@ var LineWithIconLink = function LineWithIconLink(_ref) {
|
|
|
5819
5859
|
icon = _ref.icon,
|
|
5820
5860
|
url = _ref.url;
|
|
5821
5861
|
return /*#__PURE__*/React.createElement("div", {
|
|
5822
|
-
className: s$
|
|
5862
|
+
className: s$6["line-with-icon-link"]
|
|
5823
5863
|
}, /*#__PURE__*/React.createElement("h5", {
|
|
5824
|
-
className: s$
|
|
5864
|
+
className: s$6["line-with-icon-link-text"]
|
|
5825
5865
|
}, text), /*#__PURE__*/React.createElement("a", {
|
|
5826
5866
|
href: url,
|
|
5827
5867
|
target: "_blank",
|
|
@@ -6063,7 +6103,7 @@ TitledLineWithIconLink.propTypes = {
|
|
|
6063
6103
|
};
|
|
6064
6104
|
TitledLineWithIconLink.defaultProps = {};
|
|
6065
6105
|
|
|
6066
|
-
var s$
|
|
6106
|
+
var s$5 = {"radio-button-with-text-container":"_n8DcU","radio-button-with-text":"_BcSKE","selected":"_orWq2","disabled":"_2bALK","hide":"_-LxGT","radio-button-with-text-wrapper":"_cRkxm","radio-button-with-text-content":"_gUlt9","radio-button-with-text-dots":"_pyIax","show":"_EOvAZ"};
|
|
6067
6107
|
|
|
6068
6108
|
/**
|
|
6069
6109
|
* RadioButtonWithText component with a label and optional tooltip.
|
|
@@ -6123,10 +6163,10 @@ var RadioButtonWithText = function RadioButtonWithText(_ref) {
|
|
|
6123
6163
|
}
|
|
6124
6164
|
};
|
|
6125
6165
|
return /*#__PURE__*/React.createElement("div", {
|
|
6126
|
-
className: s$
|
|
6166
|
+
className: s$5["radio-button-with-text-container"]
|
|
6127
6167
|
}, /*#__PURE__*/React.createElement("label", {
|
|
6128
6168
|
htmlFor: "radio-button-with-text-" + id,
|
|
6129
|
-
className: [s$
|
|
6169
|
+
className: [s$5["radio-button-with-text"], isSwitchedOn ? s$5["selected"] : "", isLoading ? s$5["hide"] : "", isDisabled ? s$5["disabled"] : ""].join(" "),
|
|
6130
6170
|
onMouseEnter: function onMouseEnter(e) {
|
|
6131
6171
|
return handleError(_onMouseEnter, e);
|
|
6132
6172
|
},
|
|
@@ -6139,16 +6179,16 @@ var RadioButtonWithText = function RadioButtonWithText(_ref) {
|
|
|
6139
6179
|
return setShowTooltip(false);
|
|
6140
6180
|
}
|
|
6141
6181
|
}, tooltipText)) : null, /*#__PURE__*/React.createElement("div", {
|
|
6142
|
-
className: s$
|
|
6182
|
+
className: s$5["radio-button-with-text-dots"] + (isLoading ? s$5["show"] : "")
|
|
6143
6183
|
}, /*#__PURE__*/React.createElement(LoadingDots, null)), /*#__PURE__*/React.createElement("div", {
|
|
6144
|
-
className: s$
|
|
6184
|
+
className: s$5["radio-button-with-text-content"] + " " + ("")
|
|
6145
6185
|
}, /*#__PURE__*/React.createElement("input", {
|
|
6146
6186
|
id: "radio-button-with-text-" + id,
|
|
6147
6187
|
type: "checkbox",
|
|
6148
6188
|
value: isSwitchedOn,
|
|
6149
6189
|
onChange: handleChange
|
|
6150
6190
|
}), /*#__PURE__*/React.createElement("span", {
|
|
6151
|
-
className: s$
|
|
6191
|
+
className: s$5["radio-button-with-text-wrapper"]
|
|
6152
6192
|
}, text))));
|
|
6153
6193
|
};
|
|
6154
6194
|
RadioButtonWithText.propTypes = {
|
|
@@ -6167,7 +6207,7 @@ RadioButtonWithText.defaultProps = {
|
|
|
6167
6207
|
id: ""
|
|
6168
6208
|
};
|
|
6169
6209
|
|
|
6170
|
-
var s$
|
|
6210
|
+
var s$4 = {"information-message":"_95-Ev","data-loaded":"_-kB8A","big-image":"_2LO1t","information-message-text":"_BiT68","white-text":"_-BraU"};
|
|
6171
6211
|
|
|
6172
6212
|
var InfoIcon = (function () {
|
|
6173
6213
|
return /*#__PURE__*/React.createElement("svg", {
|
|
@@ -6210,13 +6250,13 @@ var InformationMessage = function InformationMessage(_ref) {
|
|
|
6210
6250
|
_ref$children = _ref.children,
|
|
6211
6251
|
children = _ref$children === void 0 ? null : _ref$children;
|
|
6212
6252
|
return /*#__PURE__*/React.createElement("div", {
|
|
6213
|
-
className: s$
|
|
6253
|
+
className: s$4["information-message"] + (bigImage ? " " + s$4["big-image"] : "")
|
|
6214
6254
|
}, icon ? /*#__PURE__*/React.createElement("img", {
|
|
6215
6255
|
src: icon,
|
|
6216
6256
|
alt: "info icon",
|
|
6217
6257
|
loading: "lazy"
|
|
6218
6258
|
}) : /*#__PURE__*/React.createElement(InfoIcon, null), /*#__PURE__*/React.createElement("p", {
|
|
6219
|
-
className: s$
|
|
6259
|
+
className: s$4["information-message-text"] + (whiteText ? " " + s$4["white-text"] : "")
|
|
6220
6260
|
}, text, children));
|
|
6221
6261
|
};
|
|
6222
6262
|
InformationMessage.propTypes = {
|
|
@@ -6234,7 +6274,7 @@ InformationMessage.defaultProps = {
|
|
|
6234
6274
|
children: null
|
|
6235
6275
|
};
|
|
6236
6276
|
|
|
6237
|
-
var s$
|
|
6277
|
+
var s$3 = {"input":"_ulRDR","big-height":"_F2P0V","small-height":"_-B-mJ","disabled":"_nGsPr","fill-width":"_5xJbH","error-encountered":"_zp1RY","input-clear-button":"_iqmlY","image-background":"_YK4ec","image-background-clear-button":"_VOvdT","input-label":"_bICe7"};
|
|
6238
6278
|
|
|
6239
6279
|
/**
|
|
6240
6280
|
* Input component for forms.
|
|
@@ -6317,12 +6357,12 @@ var Input = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
6317
6357
|
}
|
|
6318
6358
|
};
|
|
6319
6359
|
return /*#__PURE__*/React.createElement("div", {
|
|
6320
|
-
className: [s$
|
|
6360
|
+
className: [s$3["input"], isBigHeight ? s$3["big-height"] : "", isSmallHeight ? s$3["small-height"] : "", disabled ? s$3["disabled"] : "", fillWidth ? s$3["fill-width"] : "", imageBackground ? s$3["image-background"] : ""].join(" ")
|
|
6321
6361
|
}, label ? /*#__PURE__*/React.createElement("label", {
|
|
6322
6362
|
htmlFor: id,
|
|
6323
|
-
className: s$
|
|
6363
|
+
className: s$3["input-label"]
|
|
6324
6364
|
}, label) : null, clearButton ? /*#__PURE__*/React.createElement("div", {
|
|
6325
|
-
className: s$
|
|
6365
|
+
className: s$3["input-clear-button"]
|
|
6326
6366
|
}, /*#__PURE__*/React.createElement(Close, {
|
|
6327
6367
|
onClick: handleClearButtonClick,
|
|
6328
6368
|
color: "dark-invert"
|
|
@@ -6334,7 +6374,7 @@ var Input = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
6334
6374
|
return handleError(_onChange, e);
|
|
6335
6375
|
},
|
|
6336
6376
|
placeholder: placeholder,
|
|
6337
|
-
className: className + (errorEncountered ? " " + s$
|
|
6377
|
+
className: className + (errorEncountered ? " " + s$3["error-encountered"] : ""),
|
|
6338
6378
|
defaultValue: defaultValue,
|
|
6339
6379
|
disabled: disabled,
|
|
6340
6380
|
onKeyUp: function onKeyUp(event) {
|
|
@@ -6350,7 +6390,7 @@ var Input = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
6350
6390
|
return handleError(_onChange, e);
|
|
6351
6391
|
},
|
|
6352
6392
|
placeholder: placeholder,
|
|
6353
|
-
className: className + (errorEncountered ? " " + s$
|
|
6393
|
+
className: className + (errorEncountered ? " " + s$3["error-encountered"] : ""),
|
|
6354
6394
|
value: value,
|
|
6355
6395
|
disabled: disabled,
|
|
6356
6396
|
onKeyUp: function onKeyUp(event) {
|
|
@@ -6407,12 +6447,290 @@ Input.defaultProps = {
|
|
|
6407
6447
|
errorEncountered: false
|
|
6408
6448
|
};
|
|
6409
6449
|
|
|
6410
|
-
var s = {"coin-picker":"_mvuzQ","loading":"_18kIX","item":"_fSxCX","link":"_rOS3q","content":"_ONDTD","name":"_GlPf1","amount":"_kiTZB","icon":"_jrdDI","coin-picker-search":"_9BFcQ","coin-picker-wrapper":"_6Melc","fixed-height":"_pSvdH","reached-top":"_SQFMD","reached-bottom":"_CTcCE","coin-picker-wrapper-content":"_uK6LL","coin-picker-wrapper-content-bottom-message":"_TxE8d","coin-picker-wrapper-content-bottom-message-link":"_jX5uW","coin-picker-wrapper-content-assets":"_YA-nb","outline":"_665-T","disabled":"_hBmLs","toggle-container":"_KZMGR","arrow":"_dgQQJ","coin-picker-wrapper-content-load-more-button":"_DjR6l","coin-picker-wrapper-content-asset-not-found":"_0PUY9"};
|
|
6450
|
+
var s$2 = {"coin-picker":"_mvuzQ","loading":"_18kIX","item":"_fSxCX","link":"_rOS3q","content":"_ONDTD","name":"_GlPf1","amount":"_kiTZB","icon":"_jrdDI","coin-picker-search":"_9BFcQ","coin-picker-wrapper":"_6Melc","fixed-height":"_pSvdH","reached-top":"_SQFMD","reached-bottom":"_CTcCE","coin-picker-wrapper-content":"_uK6LL","coin-picker-wrapper-content-bottom-message":"_TxE8d","coin-picker-wrapper-content-bottom-message-link":"_jX5uW","coin-picker-wrapper-content-assets":"_YA-nb","outline":"_665-T","disabled":"_hBmLs","toggle-container":"_KZMGR","arrow":"_dgQQJ","coin-picker-wrapper-content-load-more-button":"_DjR6l","coin-picker-wrapper-content-asset-not-found":"_0PUY9"};
|
|
6411
6451
|
|
|
6412
6452
|
var FALLBACK_ASSET_ICON_URL = "https://rabbit.io/asset-icons/fallback.svg";
|
|
6413
6453
|
var DEFAULT_CRYPTO_DECIMAL_COUNT = 8;
|
|
6414
6454
|
|
|
6415
|
-
|
|
6455
|
+
/**
|
|
6456
|
+
* The model for cryptocurrency coins.
|
|
6457
|
+
*
|
|
6458
|
+
* WARNING: this class should not be instantiated directly. Use only predefined singleton Coin (or descendants) instances.
|
|
6459
|
+
*/
|
|
6460
|
+
var Coin = /*#__PURE__*/function () {
|
|
6461
|
+
/**
|
|
6462
|
+
* Creates new coin
|
|
6463
|
+
*
|
|
6464
|
+
* @param latinName {string} the coin name in latin symbols like "Bitcoin"
|
|
6465
|
+
* @param ticker {string} the coin symbol/ticker/code like 'BTC'. Always upper case. A unique coin identifier
|
|
6466
|
+
* @param tickerPrintable {string} ticker but in printable format. Useful for tokens based on external blockchains
|
|
6467
|
+
* like ERC20 or TRC20. It is not friendly to display USDTERC20 or BUSDTRC20 - more neat options are just
|
|
6468
|
+
* USDT and BUSD. Note that you should always care about user's understanding of what coin he/she is working
|
|
6469
|
+
* with as printable ticker for USDTERC20 and USDTTRC20 are the same.
|
|
6470
|
+
* @param digitsCountAfterComma {number} count of digits after the comma. E.g. 8 for bitcoin
|
|
6471
|
+
* @param maxValue {number|null} max possible value for cryptocurrency. Null means that the currency has no max possible value
|
|
6472
|
+
* @param atomName {string} name of the coin's atomic value. Like 'satoshi' for bitcoin
|
|
6473
|
+
* @param mainnet {Network} main network for this coin
|
|
6474
|
+
* @param testnet {Network} test network for this coin
|
|
6475
|
+
* @param minConfirmations {number} min confirmations count to treat the coin's transaction confirmed
|
|
6476
|
+
* @param payableEntityStringForFeeRate {string|null} the payable fee entity like byte for bitcoin or gas for ether if present
|
|
6477
|
+
* @param feeOptionsTimeStringsSortedDesc {string[]} array of 4 strings for fee options when sending coins. Should be sorted from the highest time to the smallest
|
|
6478
|
+
* @param feeRatesExpirationTimeMs {number} number of milliseconds to treat the fee rates as expired
|
|
6479
|
+
* @param blockchain {Blockchain} blockchain object
|
|
6480
|
+
* @param [protocol] {Protocol|null} token/coin protocol if relevant
|
|
6481
|
+
* @param [tokenAddress] {string|null} address of contract of this token (if the coin is token)
|
|
6482
|
+
* @param [doesUseLowerCaseAddresses] {boolean} flag to clarify whether we can use lower case addresses to ensure more robust comparisons
|
|
6483
|
+
* @param [doesUseOutputs=false] {boolean} true if this coin uses inputs/outputs concept and false if it uses just balances
|
|
6484
|
+
*/
|
|
6485
|
+
function Coin(latinName, ticker, tickerPrintable, digitsCountAfterComma, maxValue, atomName, mainnet, testnet, minConfirmations, payableEntityStringForFeeRate, feeOptionsTimeStringsSortedDesc, feeRatesExpirationTimeMs, blockchain, protocol, tokenAddress, doesUseLowerCaseAddresses, doesUseOutputs) {
|
|
6486
|
+
if (protocol === void 0) {
|
|
6487
|
+
protocol = null;
|
|
6488
|
+
}
|
|
6489
|
+
if (tokenAddress === void 0) {
|
|
6490
|
+
tokenAddress = null;
|
|
6491
|
+
}
|
|
6492
|
+
if (doesUseLowerCaseAddresses === void 0) {
|
|
6493
|
+
doesUseLowerCaseAddresses = true;
|
|
6494
|
+
}
|
|
6495
|
+
if (doesUseOutputs === void 0) {
|
|
6496
|
+
doesUseOutputs = false;
|
|
6497
|
+
}
|
|
6498
|
+
this.latinName = latinName;
|
|
6499
|
+
this.ticker = ticker;
|
|
6500
|
+
this.tickerPrintable = tickerPrintable;
|
|
6501
|
+
this.digits = digitsCountAfterComma;
|
|
6502
|
+
this.maxValue = maxValue;
|
|
6503
|
+
this.atomName = atomName;
|
|
6504
|
+
this.mainnet = mainnet;
|
|
6505
|
+
this.testnet = testnet;
|
|
6506
|
+
this.minConfirmations = minConfirmations;
|
|
6507
|
+
this.payableEntityStringForFeeRate = payableEntityStringForFeeRate;
|
|
6508
|
+
this.feeOptionsTimeStringsSortedDesc = feeOptionsTimeStringsSortedDesc;
|
|
6509
|
+
this.feeRatesExpirationTimeMs = feeRatesExpirationTimeMs;
|
|
6510
|
+
this.protocol = protocol;
|
|
6511
|
+
this.blockchain = blockchain;
|
|
6512
|
+
// TODO: [bug, critical] use testnet property for testnet contract address as it blocks the app work in testnets
|
|
6513
|
+
this.tokenAddress = tokenAddress;
|
|
6514
|
+
this.feeCoin = this;
|
|
6515
|
+
this._significantDigits = 8;
|
|
6516
|
+
this.doesUseLowerCaseAddresses = doesUseLowerCaseAddresses;
|
|
6517
|
+
this.doesUseOutputs = doesUseOutputs;
|
|
6518
|
+
}
|
|
6519
|
+
|
|
6520
|
+
/**
|
|
6521
|
+
* Sets fee coin
|
|
6522
|
+
*
|
|
6523
|
+
* @param feeCoin {Coin} some tokens use another coin to charge transaction fee as they work on top of some external
|
|
6524
|
+
* blockchain. So pass here the coin the token uses for fee charging. Like for ERC20 token the fee coin is ETH.
|
|
6525
|
+
* By default, the creating coin will be set as a value for this field.
|
|
6526
|
+
*/
|
|
6527
|
+
var _proto = Coin.prototype;
|
|
6528
|
+
_proto.setFeeCoin = function setFeeCoin(feeCoin) {
|
|
6529
|
+
this.feeCoin = feeCoin;
|
|
6530
|
+
}
|
|
6531
|
+
|
|
6532
|
+
/**
|
|
6533
|
+
* Checks whether this coin uses another coin (blockchain) to charge fee for transactions (means works on base of
|
|
6534
|
+
* some external blockchain).
|
|
6535
|
+
*
|
|
6536
|
+
* @return {boolean} true if this coin uses external blockchain to perform transactions and charge fee
|
|
6537
|
+
*/;
|
|
6538
|
+
_proto.doesUseDifferentCoinFee = function doesUseDifferentCoinFee() {
|
|
6539
|
+
return this.feeCoin !== this;
|
|
6540
|
+
}
|
|
6541
|
+
|
|
6542
|
+
/**
|
|
6543
|
+
* Converts the given atoms string/number to string representing the same amount in coin itself - floating point number
|
|
6544
|
+
*
|
|
6545
|
+
* @param atoms {string} atoms positive integer amount
|
|
6546
|
+
* @return {string} coin amount floating point number as a string
|
|
6547
|
+
*/;
|
|
6548
|
+
_proto.atomsToCoinAmount = function atomsToCoinAmount(atoms) {
|
|
6549
|
+
throw new Error("Not implemented in base Coin");
|
|
6550
|
+
}
|
|
6551
|
+
|
|
6552
|
+
/**
|
|
6553
|
+
* Converts the given coins amount string/number to string representing the same amount in coin atoms - integer number
|
|
6554
|
+
*
|
|
6555
|
+
* @param coinsAmount {string} coins positive floating point amount
|
|
6556
|
+
* @return {string} coin atoms amount integer number as a string
|
|
6557
|
+
*/;
|
|
6558
|
+
_proto.coinAmountToAtoms = function coinAmountToAtoms(coinsAmount) {
|
|
6559
|
+
throw new Error("Not implemented in base Coin");
|
|
6560
|
+
}
|
|
6561
|
+
|
|
6562
|
+
/**
|
|
6563
|
+
* Composes URL to view the tx with given id in the external blockchain explorer
|
|
6564
|
+
*
|
|
6565
|
+
* @param txId {string} id of transaction
|
|
6566
|
+
* @return {string} URL string
|
|
6567
|
+
*/;
|
|
6568
|
+
_proto.composeUrlToTransactionExplorer = function composeUrlToTransactionExplorer(txId) {
|
|
6569
|
+
throw new Error("Not implemented in base Coin");
|
|
6570
|
+
}
|
|
6571
|
+
|
|
6572
|
+
/**
|
|
6573
|
+
* Most of the cryptocurrencies has specific fee rate or fee price metric. This value usually has specific measure
|
|
6574
|
+
* like satoshi/byte or gWei/gas. This function adds the described denomination string to the given amount
|
|
6575
|
+
* as a suffix and returns the result string ready to be show to a user.
|
|
6576
|
+
*
|
|
6577
|
+
* @param coinAtomsString {string} coin atoms positive integer amount
|
|
6578
|
+
* @return {string} string of coin amount and fee rate units
|
|
6579
|
+
*/;
|
|
6580
|
+
_proto.coinAtomsFeeRateToCommonlyUsedAmountFormatWithDenominationString = function coinAtomsFeeRateToCommonlyUsedAmountFormatWithDenominationString(coinAtomsString) {
|
|
6581
|
+
throw new Error("Not implemented in base Coin");
|
|
6582
|
+
}
|
|
6583
|
+
|
|
6584
|
+
/**
|
|
6585
|
+
* Check whether this coin support transaction prioritisation during the sending process.
|
|
6586
|
+
*
|
|
6587
|
+
* @return {boolean} true if support transaction prioritisation and false otherwise
|
|
6588
|
+
*/;
|
|
6589
|
+
_proto.doesSupportTransactionPrioritisation = function doesSupportTransactionPrioritisation() {
|
|
6590
|
+
return Array.isArray(this.feeOptionsTimeStringsSortedDesc);
|
|
6591
|
+
};
|
|
6592
|
+
_proto.tickerAndProtocol = function tickerAndProtocol() {
|
|
6593
|
+
try {
|
|
6594
|
+
var _ref;
|
|
6595
|
+
return "" + this.tickerPrintable + (this.protocol ? (_ref = " " + this.protocol.protocol) != null ? _ref : "" : "");
|
|
6596
|
+
} catch (e) {
|
|
6597
|
+
improveAndRethrow(e, "tickerAndProtocol");
|
|
6598
|
+
}
|
|
6599
|
+
};
|
|
6600
|
+
return Coin;
|
|
6601
|
+
}();
|
|
6602
|
+
|
|
6603
|
+
/**
|
|
6604
|
+
* A component that displays a list of coins that can be searched and filtered.
|
|
6605
|
+
*
|
|
6606
|
+
* @param {Object} props - The properties object.
|
|
6607
|
+
* @param {Coin[]} props.coinsList - The list of all available coins.
|
|
6608
|
+
* @param {Array<{coin: Coin, component: React.Component}>} props.coinsBundle - The bundle of coin components to be displayed.
|
|
6609
|
+
* @param {string} props.searchQuery - The search query to filter coins.
|
|
6610
|
+
* @param {boolean} props.partialLoadingEnabled - Determines if partial loading is enabled.
|
|
6611
|
+
* @param {number} props.partialLoadingIncrement - The increment of coins to load when loading more.
|
|
6612
|
+
* @param {Function} props.onListUpdated - Callback when the list of displayed coins is updated.
|
|
6613
|
+
* @param {Function} props.setIsListFull - Callback to set if the list is fully displayed.
|
|
6614
|
+
* @param {Function} props.setIsSearchResultEmpty - Callback to set if the search result is empty.
|
|
6615
|
+
* @param {number} props.triggerLoadMoreCoins - Triggers loading more coins.
|
|
6616
|
+
*/
|
|
6617
|
+
var SearchableCoinsList = function SearchableCoinsList(_ref) {
|
|
6618
|
+
var coinsList = _ref.coinsList,
|
|
6619
|
+
coinsBundle = _ref.coinsBundle,
|
|
6620
|
+
searchQuery = _ref.searchQuery,
|
|
6621
|
+
_ref$partialLoadingEn = _ref.partialLoadingEnabled,
|
|
6622
|
+
partialLoadingEnabled = _ref$partialLoadingEn === void 0 ? true : _ref$partialLoadingEn,
|
|
6623
|
+
_ref$partialLoadingIn = _ref.partialLoadingIncrement,
|
|
6624
|
+
partialLoadingIncrement = _ref$partialLoadingIn === void 0 ? 100 : _ref$partialLoadingIn,
|
|
6625
|
+
_ref$onListUpdated = _ref.onListUpdated,
|
|
6626
|
+
onListUpdated = _ref$onListUpdated === void 0 ? function () {} : _ref$onListUpdated,
|
|
6627
|
+
_ref$setIsListFull = _ref.setIsListFull,
|
|
6628
|
+
setIsListFull = _ref$setIsListFull === void 0 ? function () {} : _ref$setIsListFull,
|
|
6629
|
+
_ref$setIsSearchResul = _ref.setIsSearchResultEmpty,
|
|
6630
|
+
setIsSearchResultEmpty = _ref$setIsSearchResul === void 0 ? function () {} : _ref$setIsSearchResul,
|
|
6631
|
+
triggerLoadMoreCoins = _ref.triggerLoadMoreCoins;
|
|
6632
|
+
var _useState = useState([]),
|
|
6633
|
+
filteredCoins = _useState[0],
|
|
6634
|
+
setFilteredCoins = _useState[1];
|
|
6635
|
+
var _useReferredState = useReferredState(0),
|
|
6636
|
+
limitedCoinsNumber = _useReferredState[0],
|
|
6637
|
+
setLimitedCoinsNumber = _useReferredState[1];
|
|
6638
|
+
var _useState2 = useState([]),
|
|
6639
|
+
displayedCoins = _useState2[0],
|
|
6640
|
+
setDisplayedCoins = _useState2[1];
|
|
6641
|
+
var handleSearchAsset = function handleSearchAsset(value) {
|
|
6642
|
+
var searchTerm = value.trim().toLowerCase();
|
|
6643
|
+
if (searchTerm !== "") {
|
|
6644
|
+
var searchWords = searchTerm.split(/\s+/); // Split search terms on whitespace
|
|
6645
|
+
|
|
6646
|
+
var filteredAndSortedCoins = coinsList.filter(function (coin) {
|
|
6647
|
+
// Check if all search words are found in any of the given properties
|
|
6648
|
+
return searchWords.every(function (word) {
|
|
6649
|
+
var _coin$latinName, _coin$ticker, _coin$tickerPrintable;
|
|
6650
|
+
return (coin == null || (_coin$latinName = coin.latinName) == null ? void 0 : _coin$latinName.toLowerCase().includes(word)) || (coin == null || (_coin$ticker = coin.ticker) == null ? void 0 : _coin$ticker.toLowerCase().includes(word)) || (coin == null || (_coin$tickerPrintable = coin.tickerPrintable) == null ? void 0 : _coin$tickerPrintable.toLowerCase().includes(word));
|
|
6651
|
+
});
|
|
6652
|
+
}).sort(function (a, b) {
|
|
6653
|
+
// Check for exact matches
|
|
6654
|
+
var aMatch = a.latinName.toLowerCase() === searchTerm || a.ticker.toLowerCase() === searchTerm || a.tickerPrintable.toLowerCase() === searchTerm ? 1 : 0;
|
|
6655
|
+
var bMatch = b.latinName.toLowerCase() === searchTerm || b.ticker.toLowerCase() === searchTerm || b.tickerPrintable.toLowerCase() === searchTerm ? 1 : 0;
|
|
6656
|
+
if (bMatch - aMatch !== 0) {
|
|
6657
|
+
// Prioritize exact matches to the top
|
|
6658
|
+
return bMatch - aMatch;
|
|
6659
|
+
} else {
|
|
6660
|
+
// Sort remaining items alphabetically by latinName
|
|
6661
|
+
return a.latinName.toLowerCase().localeCompare(b.latinName.toLowerCase());
|
|
6662
|
+
}
|
|
6663
|
+
});
|
|
6664
|
+
setFilteredCoins(filteredAndSortedCoins);
|
|
6665
|
+
} else {
|
|
6666
|
+
setFilteredCoins(coinsList); // Reset to original list if search term is empty
|
|
6667
|
+
}
|
|
6668
|
+
};
|
|
6669
|
+
var updateDisplayedCoins = function updateDisplayedCoins() {
|
|
6670
|
+
var fullList = limitedCoinsNumber.current >= filteredCoins.length;
|
|
6671
|
+
setDisplayedCoins(fullList ? filteredCoins : filteredCoins.slice(0, limitedCoinsNumber.current));
|
|
6672
|
+
setIsListFull(fullList);
|
|
6673
|
+
};
|
|
6674
|
+
var displayMoreCoins = function displayMoreCoins() {
|
|
6675
|
+
setLimitedCoinsNumber(function (prev) {
|
|
6676
|
+
return prev + partialLoadingIncrement;
|
|
6677
|
+
});
|
|
6678
|
+
updateDisplayedCoins();
|
|
6679
|
+
};
|
|
6680
|
+
|
|
6681
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
6682
|
+
useEffect(function () {
|
|
6683
|
+
return onListUpdated();
|
|
6684
|
+
}, [displayedCoins]);
|
|
6685
|
+
|
|
6686
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
6687
|
+
useEffect(function () {
|
|
6688
|
+
return displayMoreCoins();
|
|
6689
|
+
}, [triggerLoadMoreCoins]);
|
|
6690
|
+
useEffect(function () {
|
|
6691
|
+
if ((filteredCoins == null ? void 0 : filteredCoins.length) > partialLoadingIncrement && partialLoadingEnabled) {
|
|
6692
|
+
setLimitedCoinsNumber(partialLoadingIncrement);
|
|
6693
|
+
updateDisplayedCoins();
|
|
6694
|
+
} else {
|
|
6695
|
+
setLimitedCoinsNumber(0);
|
|
6696
|
+
setDisplayedCoins(filteredCoins);
|
|
6697
|
+
setIsListFull(true);
|
|
6698
|
+
}
|
|
6699
|
+
setIsSearchResultEmpty((filteredCoins == null ? void 0 : filteredCoins.length) === 0 && searchQuery !== "");
|
|
6700
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
6701
|
+
}, [filteredCoins]);
|
|
6702
|
+
useEffect(function () {
|
|
6703
|
+
if (coinsBundle != null) handleSearchAsset(searchQuery);
|
|
6704
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
6705
|
+
}, [coinsList, searchQuery]);
|
|
6706
|
+
return displayedCoins.map(function (coin) {
|
|
6707
|
+
return coinsBundle.find(function (bundleItem) {
|
|
6708
|
+
return bundleItem.coin.ticker === coin.ticker;
|
|
6709
|
+
}).component;
|
|
6710
|
+
}).map(function (Item) {
|
|
6711
|
+
return /*#__PURE__*/React.createElement(Item, null);
|
|
6712
|
+
});
|
|
6713
|
+
};
|
|
6714
|
+
SearchableCoinsList.propTypes = {
|
|
6715
|
+
coinsList: PropTypes.array.isRequired,
|
|
6716
|
+
coinsBundle: PropTypes.array.isRequired,
|
|
6717
|
+
searchQuery: PropTypes.string.isRequired,
|
|
6718
|
+
partialLoadingEnabled: PropTypes.bool,
|
|
6719
|
+
partialLoadingIncrement: PropTypes.number,
|
|
6720
|
+
onListUpdated: PropTypes.func,
|
|
6721
|
+
setIsListFull: PropTypes.func,
|
|
6722
|
+
setIsSearchResultEmpty: PropTypes.func,
|
|
6723
|
+
triggerLoadMoreCoins: PropTypes.number
|
|
6724
|
+
};
|
|
6725
|
+
SearchableCoinsList.defaultProps = {
|
|
6726
|
+
partialLoadingEnabled: true,
|
|
6727
|
+
partialLoadingIncrement: 100,
|
|
6728
|
+
onListUpdated: function onListUpdated() {},
|
|
6729
|
+
setIsListFull: function setIsListFull() {},
|
|
6730
|
+
setIsSearchResultEmpty: function setIsSearchResultEmpty() {}
|
|
6731
|
+
};
|
|
6732
|
+
|
|
6733
|
+
function _catch$c(body, recover) {
|
|
6416
6734
|
try {
|
|
6417
6735
|
var result = body();
|
|
6418
6736
|
} catch (e) {
|
|
@@ -6513,39 +6831,36 @@ var CoinPicker = function CoinPicker(_ref) {
|
|
|
6513
6831
|
var _useState = useState(null),
|
|
6514
6832
|
coins = _useState[0],
|
|
6515
6833
|
setCoins = _useState[1];
|
|
6516
|
-
var _useState2 = useState([]),
|
|
6517
|
-
filteredCoins = _useState2[0],
|
|
6518
|
-
setFilteredCoins = _useState2[1];
|
|
6519
6834
|
var _useReferredState = useReferredState({}),
|
|
6520
6835
|
initiallyEnabledCoins = _useReferredState[0],
|
|
6521
6836
|
setInitiallyEnabledCoins = _useReferredState[1];
|
|
6522
6837
|
var _useReferredState2 = useReferredState({}),
|
|
6523
6838
|
currentlyEnabledCoins = _useReferredState2[0],
|
|
6524
6839
|
setCurrentlyEnabledCoins = _useReferredState2[1];
|
|
6840
|
+
var _useState2 = useState(""),
|
|
6841
|
+
searchFieldValue = _useState2[0],
|
|
6842
|
+
setSearchFieldValue = _useState2[1];
|
|
6525
6843
|
var _useState3 = useState(""),
|
|
6526
|
-
|
|
6527
|
-
|
|
6528
|
-
var _useState4 = useState(
|
|
6529
|
-
|
|
6530
|
-
|
|
6531
|
-
var _useState5 = useState(
|
|
6532
|
-
|
|
6533
|
-
|
|
6534
|
-
var _useState6 = useState(
|
|
6535
|
-
|
|
6536
|
-
|
|
6537
|
-
var _useState7 = useState(
|
|
6538
|
-
|
|
6539
|
-
|
|
6540
|
-
var _useState8 = useState(
|
|
6541
|
-
|
|
6542
|
-
|
|
6543
|
-
var _useState9 = useState(
|
|
6544
|
-
|
|
6545
|
-
|
|
6546
|
-
var _useState10 = useState(true),
|
|
6547
|
-
isListFull = _useState10[0],
|
|
6548
|
-
setIsListFull = _useState10[1];
|
|
6844
|
+
scrollWrapperClass = _useState3[0],
|
|
6845
|
+
setScrollWrapperClass = _useState3[1];
|
|
6846
|
+
var _useState4 = useState(false),
|
|
6847
|
+
searchEnabled = _useState4[0],
|
|
6848
|
+
setSearchEnabled = _useState4[1];
|
|
6849
|
+
var _useState5 = useState(null),
|
|
6850
|
+
coinsContent = _useState5[0],
|
|
6851
|
+
setCoinsContent = _useState5[1];
|
|
6852
|
+
var _useState6 = useState(false),
|
|
6853
|
+
isCoinsDataReloadable = _useState6[0],
|
|
6854
|
+
setIsCoinsDataReloadable = _useState6[1];
|
|
6855
|
+
var _useState7 = useState(true),
|
|
6856
|
+
isListFull = _useState7[0],
|
|
6857
|
+
setIsListFull = _useState7[1];
|
|
6858
|
+
var _useState8 = useState(false),
|
|
6859
|
+
isSearchResultEmpty = _useState8[0],
|
|
6860
|
+
setIsSearchResultEmpty = _useState8[1];
|
|
6861
|
+
var _useState9 = useState(0),
|
|
6862
|
+
triggerLoadMoreCoins = _useState9[0],
|
|
6863
|
+
setTriggerLoadMoreCoins = _useState9[1];
|
|
6549
6864
|
var searchRef = useRef();
|
|
6550
6865
|
var scrollContainerRef = useRef();
|
|
6551
6866
|
var skeletonItemsCount = (initiallyEnabledCoinsList == null ? void 0 : initiallyEnabledCoinsList.length) || (partialLoadingEnabled ? partialLoadingIncrement : 6);
|
|
@@ -6603,43 +6918,12 @@ var CoinPicker = function CoinPicker(_ref) {
|
|
|
6603
6918
|
if (mode === COIN_PICKER_MODES.CHECKBOX) handleToggleClick(coin.ticker);
|
|
6604
6919
|
handleClick(coin.ticker);
|
|
6605
6920
|
};
|
|
6606
|
-
var handleSearchAsset = function handleSearchAsset(value) {
|
|
6607
|
-
// TODO: [refactoring, high] use unified search function. task_id=be0475316f374dd4a926c948d969e704
|
|
6608
|
-
setSearchFieldValue(value); // Trim the input to handle leading/trailing spaces
|
|
6609
|
-
var searchTerm = value.trim().toLowerCase();
|
|
6610
|
-
if (searchTerm !== "") {
|
|
6611
|
-
var searchWords = searchTerm.split(/\s+/); // Split search terms on whitespace
|
|
6612
|
-
|
|
6613
|
-
var filteredAndSortedCoins = coins.filter(function (coin) {
|
|
6614
|
-
// Check if all search words are found in any of the given properties
|
|
6615
|
-
return searchWords.every(function (word) {
|
|
6616
|
-
var _coin$latinName, _coin$ticker, _coin$tickerPrintable;
|
|
6617
|
-
return (coin == null || (_coin$latinName = coin.latinName) == null ? void 0 : _coin$latinName.toLowerCase().includes(word)) || (coin == null || (_coin$ticker = coin.ticker) == null ? void 0 : _coin$ticker.toLowerCase().includes(word)) || (coin == null || (_coin$tickerPrintable = coin.tickerPrintable) == null ? void 0 : _coin$tickerPrintable.toLowerCase().includes(word));
|
|
6618
|
-
});
|
|
6619
|
-
}).sort(function (a, b) {
|
|
6620
|
-
// Check for exact matches
|
|
6621
|
-
var aMatch = a.latinName.toLowerCase() === searchTerm || a.ticker.toLowerCase() === searchTerm || a.tickerPrintable.toLowerCase() === searchTerm ? 1 : 0;
|
|
6622
|
-
var bMatch = b.latinName.toLowerCase() === searchTerm || b.ticker.toLowerCase() === searchTerm || b.tickerPrintable.toLowerCase() === searchTerm ? 1 : 0;
|
|
6623
|
-
if (bMatch - aMatch !== 0) {
|
|
6624
|
-
// Prioritize exact matches to the top
|
|
6625
|
-
return bMatch - aMatch;
|
|
6626
|
-
} else {
|
|
6627
|
-
// Sort remaining items alphabetically by latinName
|
|
6628
|
-
return a.latinName.toLowerCase().localeCompare(b.latinName.toLowerCase());
|
|
6629
|
-
}
|
|
6630
|
-
});
|
|
6631
|
-
setFilteredCoins(filteredAndSortedCoins);
|
|
6632
|
-
} else {
|
|
6633
|
-
setFilteredCoins(coins); // Reset to original list if search term is empty
|
|
6634
|
-
}
|
|
6635
|
-
};
|
|
6636
6921
|
var loadCoinsAndSaveToState = function loadCoinsAndSaveToState() {
|
|
6637
6922
|
(function () {
|
|
6638
6923
|
try {
|
|
6639
|
-
var _temp = _catch$
|
|
6924
|
+
var _temp = _catch$c(function () {
|
|
6640
6925
|
return Promise.resolve(loadCoinsAndContent ? loadCoinsAndContent() : defaultLoadCoinsAndContent()).then(function (data) {
|
|
6641
6926
|
setCoins(data.coins);
|
|
6642
|
-
setFilteredCoins(data.coins);
|
|
6643
6927
|
setCoinsContent(data.content);
|
|
6644
6928
|
setIsCoinsDataReloadable(!!data.isCoinsDataReloadable);
|
|
6645
6929
|
});
|
|
@@ -6687,45 +6971,22 @@ var CoinPicker = function CoinPicker(_ref) {
|
|
|
6687
6971
|
setSearchEnabled(search ? true : searchAdaptive && initiallyEnabledCoinsList ? initiallyEnabledCoinsList.length > 6 : false);
|
|
6688
6972
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
6689
6973
|
}, [search, searchAdaptive, coins]);
|
|
6690
|
-
useEffect(function () {
|
|
6691
|
-
if ((filteredCoins == null ? void 0 : filteredCoins.length) > partialLoadingIncrement && partialLoadingEnabled) {
|
|
6692
|
-
setLimitedCoinsNumber(partialLoadingIncrement);
|
|
6693
|
-
} else {
|
|
6694
|
-
setLimitedCoinsNumber(0);
|
|
6695
|
-
setDisplayedCoins(filteredCoins);
|
|
6696
|
-
setIsListFull(true);
|
|
6697
|
-
}
|
|
6698
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
6699
|
-
}, [filteredCoins]);
|
|
6700
|
-
useEffect(function () {
|
|
6701
|
-
if (limitedCoinsNumber > 0) {
|
|
6702
|
-
var coinsToDisplay = filteredCoins.slice(0, limitedCoinsNumber);
|
|
6703
|
-
setDisplayedCoins(coinsToDisplay);
|
|
6704
|
-
setIsListFull(coinsToDisplay.length === filteredCoins.length);
|
|
6705
|
-
}
|
|
6706
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
6707
|
-
}, [limitedCoinsNumber]);
|
|
6708
|
-
var displayMoreCoins = function displayMoreCoins() {
|
|
6709
|
-
setLimitedCoinsNumber(function (prev) {
|
|
6710
|
-
return prev + partialLoadingIncrement;
|
|
6711
|
-
});
|
|
6712
|
-
};
|
|
6713
6974
|
var skeleton = function skeleton() {
|
|
6714
6975
|
var skeletonItems = [];
|
|
6715
6976
|
for (var i = 0; i < skeletonItemsCount; i++) {
|
|
6716
6977
|
skeletonItems.push( /*#__PURE__*/React.createElement("div", {
|
|
6717
|
-
className: s["item"],
|
|
6978
|
+
className: s$2["item"],
|
|
6718
6979
|
key: "coin-picker-skeleton-" + i
|
|
6719
6980
|
}, /*#__PURE__*/React.createElement("div", {
|
|
6720
|
-
className: s["link"] + " " + s["loading"]
|
|
6981
|
+
className: s$2["link"] + " " + s$2["loading"]
|
|
6721
6982
|
}, /*#__PURE__*/React.createElement("div", {
|
|
6722
|
-
className: s["icon"] + " " + "skeleton-dark"
|
|
6983
|
+
className: s$2["icon"] + " " + "skeleton-dark"
|
|
6723
6984
|
}), /*#__PURE__*/React.createElement("div", {
|
|
6724
|
-
className: s["content"]
|
|
6985
|
+
className: s$2["content"]
|
|
6725
6986
|
}, /*#__PURE__*/React.createElement("div", {
|
|
6726
|
-
className: s["name"] + " " + "skeleton-dark"
|
|
6987
|
+
className: s$2["name"] + " " + "skeleton-dark"
|
|
6727
6988
|
}), /*#__PURE__*/React.createElement("div", {
|
|
6728
|
-
className: s["amount"] + " " + "skeleton-dark"
|
|
6989
|
+
className: s$2["amount"] + " " + "skeleton-dark"
|
|
6729
6990
|
})))));
|
|
6730
6991
|
}
|
|
6731
6992
|
return skeletonItems;
|
|
@@ -6733,24 +6994,27 @@ var CoinPicker = function CoinPicker(_ref) {
|
|
|
6733
6994
|
var handleScroll = function handleScroll() {
|
|
6734
6995
|
var _scrollContainerRef$c, _scrollContainerRef$c2, _scrollContainerRef$c3, _scrollContainerRef$c4, _scrollContainerRef$c5, _scrollContainerRef$c6, _scrollContainerRef$c7;
|
|
6735
6996
|
if (scrollWrapperClass !== "") setScrollWrapperClass("");
|
|
6736
|
-
if (((_scrollContainerRef$c = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c.scrollTop) === 0) setScrollWrapperClass(s["reached-top"] + (((_scrollContainerRef$c2 = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c2.scrollHeight) - ((_scrollContainerRef$c3 = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c3.clientHeight) === 0 ? " " + s["reached-bottom"] : ""));
|
|
6737
|
-
if (((_scrollContainerRef$c4 = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c4.scrollTop) > 0 && ((_scrollContainerRef$c5 = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c5.scrollTop) === ((_scrollContainerRef$c6 = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c6.scrollHeight) - ((_scrollContainerRef$c7 = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c7.clientHeight)) setScrollWrapperClass(s["reached-bottom"]);
|
|
6997
|
+
if (((_scrollContainerRef$c = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c.scrollTop) === 0) setScrollWrapperClass(s$2["reached-top"] + (((_scrollContainerRef$c2 = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c2.scrollHeight) - ((_scrollContainerRef$c3 = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c3.clientHeight) === 0 ? " " + s$2["reached-bottom"] : ""));
|
|
6998
|
+
if (((_scrollContainerRef$c4 = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c4.scrollTop) > 0 && ((_scrollContainerRef$c5 = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c5.scrollTop) === ((_scrollContainerRef$c6 = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c6.scrollHeight) - ((_scrollContainerRef$c7 = scrollContainerRef.current) == null ? void 0 : _scrollContainerRef$c7.clientHeight)) setScrollWrapperClass(s$2["reached-bottom"]);
|
|
6999
|
+
};
|
|
7000
|
+
var displayMoreCoins = function displayMoreCoins() {
|
|
7001
|
+
return setTriggerLoadMoreCoins(function (prev) {
|
|
7002
|
+
return prev + 1;
|
|
7003
|
+
});
|
|
6738
7004
|
};
|
|
6739
7005
|
|
|
6740
7006
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
6741
7007
|
useEffect(handleScroll, []);
|
|
6742
|
-
|
|
6743
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
6744
|
-
useEffect(handleScroll, [filteredCoins]);
|
|
6745
7008
|
var shouldShowSkeleton = coins == null;
|
|
6746
7009
|
return coins ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
6747
|
-
className: s["coin-picker"] + (shouldShowSkeleton ? " " + s["loading"] : "")
|
|
7010
|
+
className: s$2["coin-picker"] + (shouldShowSkeleton ? " " + s$2["loading"] : "")
|
|
6748
7011
|
}, searchEnabled ? /*#__PURE__*/React.createElement("div", {
|
|
6749
|
-
className: s["coin-picker-search"]
|
|
7012
|
+
className: s$2["coin-picker-search"]
|
|
6750
7013
|
}, /*#__PURE__*/React.createElement(Input, {
|
|
6751
7014
|
value: searchFieldValue,
|
|
6752
7015
|
onChange: function onChange(e) {
|
|
6753
|
-
|
|
7016
|
+
setSearchFieldValue(e.target.value);
|
|
7017
|
+
handleScroll();
|
|
6754
7018
|
},
|
|
6755
7019
|
placeholder: texts.searchPlaceholder,
|
|
6756
7020
|
isSmallHeight: true,
|
|
@@ -6758,71 +7022,88 @@ var CoinPicker = function CoinPicker(_ref) {
|
|
|
6758
7022
|
ref: searchRef,
|
|
6759
7023
|
disabled: shouldShowSkeleton
|
|
6760
7024
|
})) : "", /*#__PURE__*/React.createElement("div", {
|
|
6761
|
-
className: s["coin-picker-wrapper"] + " " + scrollWrapperClass + (searchEnabled ? " " + s["fixed-height"] : "")
|
|
7025
|
+
className: s$2["coin-picker-wrapper"] + " " + scrollWrapperClass + (searchEnabled ? " " + s$2["fixed-height"] : "")
|
|
6762
7026
|
}, /*#__PURE__*/React.createElement("div", {
|
|
6763
|
-
className: s["coin-picker-wrapper-content"] + (searchEnabled ? " " + s["fixed-height"] : ""),
|
|
7027
|
+
className: s$2["coin-picker-wrapper-content"] + (searchEnabled ? " " + s$2["fixed-height"] : ""),
|
|
6764
7028
|
ref: scrollContainerRef,
|
|
6765
7029
|
onScroll: handleScroll
|
|
6766
7030
|
}, /*#__PURE__*/React.createElement("div", {
|
|
6767
|
-
className: s["coin-picker-wrapper-content-assets"]
|
|
6768
|
-
}, shouldShowSkeleton ? skeleton() :
|
|
6769
|
-
|
|
6770
|
-
|
|
6771
|
-
|
|
6772
|
-
|
|
6773
|
-
|
|
6774
|
-
|
|
6775
|
-
|
|
6776
|
-
|
|
6777
|
-
|
|
6778
|
-
|
|
6779
|
-
|
|
6780
|
-
|
|
6781
|
-
|
|
6782
|
-
|
|
6783
|
-
|
|
6784
|
-
|
|
6785
|
-
|
|
6786
|
-
|
|
6787
|
-
|
|
6788
|
-
|
|
6789
|
-
|
|
6790
|
-
|
|
6791
|
-
|
|
6792
|
-
|
|
6793
|
-
|
|
6794
|
-
|
|
6795
|
-
|
|
6796
|
-
|
|
6797
|
-
|
|
6798
|
-
|
|
6799
|
-
|
|
6800
|
-
|
|
6801
|
-
|
|
6802
|
-
|
|
6803
|
-
|
|
6804
|
-
|
|
6805
|
-
|
|
6806
|
-
|
|
6807
|
-
|
|
6808
|
-
|
|
7031
|
+
className: s$2["coin-picker-wrapper-content-assets"]
|
|
7032
|
+
}, shouldShowSkeleton ? skeleton() : /*#__PURE__*/React.createElement(SearchableCoinsList, {
|
|
7033
|
+
searchQuery: searchFieldValue,
|
|
7034
|
+
onListUpdated: function onListUpdated() {
|
|
7035
|
+
return handleScroll();
|
|
7036
|
+
},
|
|
7037
|
+
setIsListFull: setIsListFull,
|
|
7038
|
+
setIsSearchResultEmpty: setIsSearchResultEmpty,
|
|
7039
|
+
triggerLoadMoreCoins: triggerLoadMoreCoins,
|
|
7040
|
+
coinsList: coins,
|
|
7041
|
+
coinsBundle: coins == null ? void 0 : coins.map(function (coin, index) {
|
|
7042
|
+
return {
|
|
7043
|
+
coin: coin,
|
|
7044
|
+
component: function component() {
|
|
7045
|
+
var _coinsContent$find$su, _coinsContent$find;
|
|
7046
|
+
var _coinToIconPaths = coinToIconPaths(coin),
|
|
7047
|
+
assetIconSrc = _coinToIconPaths.assetIconSrc,
|
|
7048
|
+
assetIconProtocolSrc = _coinToIconPaths.assetIconProtocolSrc;
|
|
7049
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
7050
|
+
className: s$2["item"],
|
|
7051
|
+
key: "picker-" + coin.ticker + "-" + index,
|
|
7052
|
+
onClick: function onClick(e) {
|
|
7053
|
+
return handleError(function () {
|
|
7054
|
+
return handleCoinClick(coin);
|
|
7055
|
+
}, e);
|
|
7056
|
+
}
|
|
7057
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
7058
|
+
className: s$2["link"] + (currentlyEnabledCoins.current[coin.ticker] !== initiallyEnabledCoins.current[coin.ticker] ? " " + s$2["outline"] : "")
|
|
7059
|
+
}, /*#__PURE__*/React.createElement(AssetIcon, {
|
|
7060
|
+
assetIconSrc: assetIconSrc,
|
|
7061
|
+
assetIconProtocolSrc: assetIconProtocolSrc,
|
|
7062
|
+
fallbackSrc: FALLBACK_ASSET_ICON_URL
|
|
7063
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
7064
|
+
className: s$2["content"],
|
|
7065
|
+
key: coin.ticker
|
|
7066
|
+
}, /*#__PURE__*/React.createElement("p", {
|
|
7067
|
+
className: s$2["name"]
|
|
7068
|
+
}, coin.latinName), /*#__PURE__*/React.createElement("p", {
|
|
7069
|
+
className: s$2["amount"]
|
|
7070
|
+
}, (_coinsContent$find$su = coinsContent == null || (_coinsContent$find = coinsContent.find(function (i) {
|
|
7071
|
+
return i.coin === coin;
|
|
7072
|
+
})) == null ? void 0 : _coinsContent$find.subtitle) != null ? _coinsContent$find$su : "")), mode === COIN_PICKER_MODES.BUTTON ? /*#__PURE__*/React.createElement("div", {
|
|
7073
|
+
className: s$2["arrow"]
|
|
7074
|
+
}, /*#__PURE__*/React.createElement(ArrowIcon, null)) : mode === COIN_PICKER_MODES.CHECKBOX ? /*#__PURE__*/React.createElement("div", {
|
|
7075
|
+
className: s$2["toggle-container"]
|
|
7076
|
+
}, /*#__PURE__*/React.createElement(RadioButtonWithText, {
|
|
7077
|
+
onStateChange: function onStateChange(resetButtonLoader) {
|
|
7078
|
+
return handleToggleClick(coin.ticker, resetButtonLoader);
|
|
7079
|
+
},
|
|
7080
|
+
isSwitchedOn: currentlyEnabledCoins.current[coin.ticker],
|
|
7081
|
+
id: index
|
|
7082
|
+
})) : ""));
|
|
7083
|
+
}
|
|
7084
|
+
};
|
|
7085
|
+
})
|
|
7086
|
+
})), isSearchResultEmpty ? /*#__PURE__*/React.createElement("div", {
|
|
7087
|
+
className: s$2["coin-picker-wrapper-content-asset-not-found"]
|
|
6809
7088
|
}, /*#__PURE__*/React.createElement("h6", null, texts.noAssetsMessage)) : "", partialLoadingEnabled && !isListFull ? /*#__PURE__*/React.createElement("div", {
|
|
6810
|
-
className: s["coin-picker-wrapper-content-load-more-button"]
|
|
7089
|
+
className: s$2["coin-picker-wrapper-content-load-more-button"]
|
|
6811
7090
|
}, /*#__PURE__*/React.createElement(Button, {
|
|
6812
7091
|
mode: "primary-transparent",
|
|
6813
7092
|
size: "sm",
|
|
6814
7093
|
loader: false,
|
|
6815
7094
|
content: texts.loadMoreButton,
|
|
6816
|
-
onClick:
|
|
7095
|
+
onClick: function onClick() {
|
|
7096
|
+
return displayMoreCoins();
|
|
7097
|
+
},
|
|
6817
7098
|
handleError: handleError
|
|
6818
7099
|
})) : "", searchEnabled && showRequestMissingCoinsInfoMessage ? /*#__PURE__*/React.createElement("div", {
|
|
6819
|
-
className: s["coin-picker-wrapper-content-bottom-message"]
|
|
7100
|
+
className: s$2["coin-picker-wrapper-content-bottom-message"]
|
|
6820
7101
|
}, /*#__PURE__*/React.createElement(InformationMessage, {
|
|
6821
7102
|
text: /*#__PURE__*/React.createElement(React.Fragment, null, texts.assetSuggestionMessage.part1, /*#__PURE__*/React.createElement("a", {
|
|
6822
7103
|
target: "_blank",
|
|
6823
7104
|
rel: "noreferrer",
|
|
6824
7105
|
href: supportUrl,
|
|
6825
|
-
className: s["coin-picker-wrapper-content-bottom-message-link"]
|
|
7106
|
+
className: s$2["coin-picker-wrapper-content-bottom-message-link"]
|
|
6826
7107
|
}, " " + texts.assetSuggestionMessage.part2 + " "), texts.assetSuggestionMessage.part3)
|
|
6827
7108
|
})) : "")))) : /*#__PURE__*/React.createElement(LoadingDots, null);
|
|
6828
7109
|
};
|
|
@@ -6907,34 +7188,463 @@ var CoinPickerDialogStep = function CoinPickerDialogStep(_ref) {
|
|
|
6907
7188
|
texts = _ref.texts;
|
|
6908
7189
|
return /*#__PURE__*/React.createElement(DialogStep, {
|
|
6909
7190
|
controls: controls,
|
|
6910
|
-
stepName: stepName,
|
|
6911
|
-
title: title,
|
|
6912
|
-
subtitle: subtitle,
|
|
6913
|
-
cornerBackButtonTitle: cornerBackButtonTitle,
|
|
6914
|
-
cornerBackButtonClick: cornerBackButtonClick,
|
|
6915
|
-
confirmButtonText: confirmButtonText,
|
|
6916
|
-
confirmButtonClick: confirmButtonClick,
|
|
6917
|
-
showCornerBackButton: showCornerBackButton,
|
|
6918
|
-
headerTitleLeft: true,
|
|
7191
|
+
stepName: stepName,
|
|
7192
|
+
title: title,
|
|
7193
|
+
subtitle: subtitle,
|
|
7194
|
+
cornerBackButtonTitle: cornerBackButtonTitle,
|
|
7195
|
+
cornerBackButtonClick: cornerBackButtonClick,
|
|
7196
|
+
confirmButtonText: confirmButtonText,
|
|
7197
|
+
confirmButtonClick: confirmButtonClick,
|
|
7198
|
+
showCornerBackButton: showCornerBackButton,
|
|
7199
|
+
headerTitleLeft: true,
|
|
7200
|
+
subtitleSmallMargin: true,
|
|
7201
|
+
width: controls ? DIALOG_SIZES.largePlus.width : null
|
|
7202
|
+
}, /*#__PURE__*/React.createElement(CoinPicker, {
|
|
7203
|
+
mode: mode,
|
|
7204
|
+
allCoins: allCoins,
|
|
7205
|
+
initiallyEnabledCoinsList: initiallyEnabledCoinsList,
|
|
7206
|
+
handleClick: function handleClick(ticker) {
|
|
7207
|
+
return handleCoinSelection(ticker);
|
|
7208
|
+
},
|
|
7209
|
+
triggerToReloadData: triggerToReloadData,
|
|
7210
|
+
search: search,
|
|
7211
|
+
searchAdaptive: searchAdaptive,
|
|
7212
|
+
loadCoinsAndContent: loadCoinsAndContent,
|
|
7213
|
+
showRequestMissingCoinsInfoMessage: showRequestMissingCoinsInfoMessage,
|
|
7214
|
+
coinToIconPaths: coinToIconPaths,
|
|
7215
|
+
supportUrl: supportUrl,
|
|
7216
|
+
texts: texts
|
|
7217
|
+
}));
|
|
7218
|
+
};
|
|
7219
|
+
|
|
7220
|
+
var s$1 = {"colored-notice":"_ZE1ju","colored-notice-text":"_aN0LH"};
|
|
7221
|
+
|
|
7222
|
+
/**
|
|
7223
|
+
* ColoredNotice component displays a notice with optional text and a button.
|
|
7224
|
+
*
|
|
7225
|
+
* @component
|
|
7226
|
+
* @param {Object} props - The component props.
|
|
7227
|
+
* @param {string} [props.text] - The text to be displayed in the notice.
|
|
7228
|
+
* @param {string} [props.buttonTitle] - The title of the button.
|
|
7229
|
+
* @param {function} [props.onButtonClick] - Callback function to be called when the button is clicked.
|
|
7230
|
+
* @returns {JSX.Element} The ColoredNotice component.
|
|
7231
|
+
*/
|
|
7232
|
+
var ColoredNotice = function ColoredNotice(_ref) {
|
|
7233
|
+
var _ref$text = _ref.text,
|
|
7234
|
+
text = _ref$text === void 0 ? "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor." : _ref$text,
|
|
7235
|
+
buttonTitle = _ref.buttonTitle,
|
|
7236
|
+
_ref$onButtonClick = _ref.onButtonClick,
|
|
7237
|
+
onButtonClick = _ref$onButtonClick === void 0 ? function () {} : _ref$onButtonClick;
|
|
7238
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
7239
|
+
className: s$1["colored-notice"]
|
|
7240
|
+
}, /*#__PURE__*/React.createElement("p", {
|
|
7241
|
+
className: s$1["colored-notice-text"]
|
|
7242
|
+
}, text), buttonTitle ? /*#__PURE__*/React.createElement(Button, {
|
|
7243
|
+
mode: "primary",
|
|
7244
|
+
size: "sm",
|
|
7245
|
+
content: buttonTitle,
|
|
7246
|
+
loader: false,
|
|
7247
|
+
onClick: onButtonClick
|
|
7248
|
+
}) : null);
|
|
7249
|
+
};
|
|
7250
|
+
ColoredNotice.propTypes = {
|
|
7251
|
+
text: PropTypes.string,
|
|
7252
|
+
buttonTitle: PropTypes.string,
|
|
7253
|
+
onButtonClick: PropTypes.func
|
|
7254
|
+
};
|
|
7255
|
+
ColoredNotice.defaultProps = {
|
|
7256
|
+
text: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor.",
|
|
7257
|
+
onButtonClick: function onButtonClick() {}
|
|
7258
|
+
};
|
|
7259
|
+
|
|
7260
|
+
var messageIcon = (function () {
|
|
7261
|
+
return /*#__PURE__*/React.createElement("svg", {
|
|
7262
|
+
width: "130",
|
|
7263
|
+
height: "130",
|
|
7264
|
+
viewBox: "0 0 130 130",
|
|
7265
|
+
fill: "none",
|
|
7266
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
7267
|
+
}, /*#__PURE__*/React.createElement("path", {
|
|
7268
|
+
"fill-rule": "evenodd",
|
|
7269
|
+
"clip-rule": "evenodd",
|
|
7270
|
+
d: "M65 130C100.899 130 130 100.899 130 65C130 29.1015 100.899 0 65 0C29.1015 0 0 29.1015 0 65C0 100.899 29.1015 130 65 130Z",
|
|
7271
|
+
fill: "#2294F0"
|
|
7272
|
+
}), /*#__PURE__*/React.createElement("mask", {
|
|
7273
|
+
id: "mask0",
|
|
7274
|
+
style: {
|
|
7275
|
+
maskType: "alpha"
|
|
7276
|
+
},
|
|
7277
|
+
maskUnits: "userSpaceOnUse",
|
|
7278
|
+
x: "0",
|
|
7279
|
+
y: "0",
|
|
7280
|
+
width: "130",
|
|
7281
|
+
height: "130"
|
|
7282
|
+
}, /*#__PURE__*/React.createElement("path", {
|
|
7283
|
+
"fill-rule": "evenodd",
|
|
7284
|
+
"clip-rule": "evenodd",
|
|
7285
|
+
d: "M65 130C100.899 130 130 100.899 130 65C130 29.1015 100.899 0 65 0C29.1015 0 0 29.1015 0 65C0 100.899 29.1015 130 65 130Z",
|
|
7286
|
+
fill: "white"
|
|
7287
|
+
})), /*#__PURE__*/React.createElement("g", {
|
|
7288
|
+
mask: "url(#mask0)"
|
|
7289
|
+
}, /*#__PURE__*/React.createElement("rect", {
|
|
7290
|
+
opacity: "0.3",
|
|
7291
|
+
x: "3.25",
|
|
7292
|
+
y: "150.776",
|
|
7293
|
+
width: "227.136",
|
|
7294
|
+
height: "25.2373",
|
|
7295
|
+
transform: "rotate(-45 3.25 150.776)",
|
|
7296
|
+
fill: "white"
|
|
7297
|
+
}), /*#__PURE__*/React.createElement("rect", {
|
|
7298
|
+
opacity: "0.3",
|
|
7299
|
+
x: "-48.4546",
|
|
7300
|
+
y: "126.52",
|
|
7301
|
+
width: "227.136",
|
|
7302
|
+
height: "25.2373",
|
|
7303
|
+
transform: "rotate(-45 -48.4546 126.52)",
|
|
7304
|
+
fill: "white"
|
|
7305
|
+
}), /*#__PURE__*/React.createElement("rect", {
|
|
7306
|
+
x: "27.75",
|
|
7307
|
+
y: "29.5",
|
|
7308
|
+
width: "74.5",
|
|
7309
|
+
height: "81.5",
|
|
7310
|
+
rx: "12",
|
|
7311
|
+
fill: "white"
|
|
7312
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
7313
|
+
d: "M27.75 41.5C27.75 34.8726 33.1226 29.5 39.75 29.5H90.25C96.8774 29.5 102.25 34.8726 102.25 41.5V118C102.25 124.627 96.8774 130 90.25 130H39.75C33.1226 130 27.75 124.627 27.75 118V41.5Z",
|
|
7314
|
+
fill: "white"
|
|
7315
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
7316
|
+
"fill-rule": "evenodd",
|
|
7317
|
+
"clip-rule": "evenodd",
|
|
7318
|
+
d: "M51.5 63.5C58.1274 63.5 63.5 58.1274 63.5 51.5C63.5 44.8726 58.1274 39.5 51.5 39.5C44.8726 39.5 39.5 44.8726 39.5 51.5C39.5 58.1274 44.8726 63.5 51.5 63.5Z",
|
|
7319
|
+
fill: "#2294F0"
|
|
7320
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
7321
|
+
d: "M50.072 49.088H52.03V54.5H50.072V49.088ZM52.074 46.382V48.153H50.028V46.382H52.074Z",
|
|
7322
|
+
fill: "white"
|
|
7323
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
7324
|
+
opacity: "0.2",
|
|
7325
|
+
d: "M41 74.5H63",
|
|
7326
|
+
stroke: "#2294F0",
|
|
7327
|
+
"stroke-width": "4",
|
|
7328
|
+
"stroke-linecap": "round",
|
|
7329
|
+
"stroke-linejoin": "round"
|
|
7330
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
7331
|
+
opacity: "0.2",
|
|
7332
|
+
d: "M41 84.6157H84.1426",
|
|
7333
|
+
stroke: "#2294F0",
|
|
7334
|
+
"stroke-width": "4",
|
|
7335
|
+
"stroke-linecap": "round",
|
|
7336
|
+
"stroke-linejoin": "round"
|
|
7337
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
7338
|
+
opacity: "0.2",
|
|
7339
|
+
d: "M41 94.7314H84.1426",
|
|
7340
|
+
stroke: "#2294F0",
|
|
7341
|
+
"stroke-width": "4",
|
|
7342
|
+
"stroke-linecap": "round",
|
|
7343
|
+
"stroke-linejoin": "round"
|
|
7344
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
7345
|
+
opacity: "0.2",
|
|
7346
|
+
d: "M41 104.731H84.1426",
|
|
7347
|
+
stroke: "#2294F0",
|
|
7348
|
+
"stroke-width": "4",
|
|
7349
|
+
"stroke-linecap": "round",
|
|
7350
|
+
"stroke-linejoin": "round"
|
|
7351
|
+
})));
|
|
7352
|
+
});
|
|
7353
|
+
|
|
7354
|
+
var supportDialogImage = (function () {
|
|
7355
|
+
return /*#__PURE__*/React.createElement("svg", {
|
|
7356
|
+
width: "130",
|
|
7357
|
+
height: "130",
|
|
7358
|
+
viewBox: "0 0 130 130",
|
|
7359
|
+
fill: "none",
|
|
7360
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
7361
|
+
}, /*#__PURE__*/React.createElement("path", {
|
|
7362
|
+
"fill-rule": "evenodd",
|
|
7363
|
+
"clip-rule": "evenodd",
|
|
7364
|
+
d: "M65 130C100.899 130 130 100.899 130 65C130 29.1015 100.899 0 65 0C29.1015 0 0 29.1015 0 65C0 100.899 29.1015 130 65 130Z",
|
|
7365
|
+
fill: "#AFEBC3"
|
|
7366
|
+
}), /*#__PURE__*/React.createElement("mask", {
|
|
7367
|
+
id: "mask0",
|
|
7368
|
+
"mask-type": "alpha",
|
|
7369
|
+
maskUnits: "userSpaceOnUse",
|
|
7370
|
+
x: "0",
|
|
7371
|
+
y: "0",
|
|
7372
|
+
width: "130",
|
|
7373
|
+
height: "130"
|
|
7374
|
+
}, /*#__PURE__*/React.createElement("path", {
|
|
7375
|
+
"fill-rule": "evenodd",
|
|
7376
|
+
"clip-rule": "evenodd",
|
|
7377
|
+
d: "M65 130C100.899 130 130 100.899 130 65C130 29.1015 100.899 0 65 0C29.1015 0 0 29.1015 0 65C0 100.899 29.1015 130 65 130Z",
|
|
7378
|
+
fill: "white"
|
|
7379
|
+
})), /*#__PURE__*/React.createElement("g", {
|
|
7380
|
+
mask: "url(#mask0)"
|
|
7381
|
+
}, /*#__PURE__*/React.createElement("rect", {
|
|
7382
|
+
opacity: "0.3",
|
|
7383
|
+
x: "3.25",
|
|
7384
|
+
y: "150.776",
|
|
7385
|
+
width: "227.136",
|
|
7386
|
+
height: "25.2373",
|
|
7387
|
+
transform: "rotate(-45 3.25 150.776)",
|
|
7388
|
+
fill: "white"
|
|
7389
|
+
}), /*#__PURE__*/React.createElement("rect", {
|
|
7390
|
+
opacity: "0.3",
|
|
7391
|
+
x: "-48.4545",
|
|
7392
|
+
y: "126.52",
|
|
7393
|
+
width: "227.136",
|
|
7394
|
+
height: "25.2373",
|
|
7395
|
+
transform: "rotate(-45 -48.4545 126.52)",
|
|
7396
|
+
fill: "white"
|
|
7397
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
7398
|
+
d: "M9.69092 69.153C9.69092 66.0864 11.2523 63.2309 13.8339 61.576L55.8257 34.6583C61.4168 31.0742 68.5832 31.0742 74.1743 34.6583L116.166 61.576C118.748 63.2309 120.309 66.0864 120.309 69.153V126.495C120.309 131.466 116.28 135.495 111.309 135.495H18.6909C13.7204 135.495 9.69092 131.466 9.69092 126.495V69.153Z",
|
|
7399
|
+
fill: "#14A957"
|
|
7400
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
7401
|
+
d: "M30.9045 51.8818H97.9136V117.118H30.9045V51.8818Z",
|
|
7402
|
+
fill: "white"
|
|
7403
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
7404
|
+
opacity: "0.1",
|
|
7405
|
+
d: "M63.8182 107.167C76.8722 107.167 87.4545 96.5849 87.4545 83.5308C87.4545 70.4768 76.8722 59.8945 63.8182 59.8945C50.7642 59.8945 40.1818 70.4768 40.1818 83.5308C40.1818 96.5849 50.7642 107.167 63.8182 107.167Z",
|
|
7406
|
+
fill: "#24BE6A"
|
|
7407
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
7408
|
+
d: "M58.2093 83.4849L63.0246 88.3002L71.3036 79.047",
|
|
7409
|
+
stroke: "#24BE6A",
|
|
7410
|
+
"stroke-width": "3.76358",
|
|
7411
|
+
"stroke-linecap": "round",
|
|
7412
|
+
"stroke-linejoin": "round"
|
|
7413
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
7414
|
+
d: "M9.69092 70.2531C9.69092 68.672 11.4391 67.7161 12.7703 68.5694L65 102.05L117.23 68.5694C118.561 67.7161 120.309 68.672 120.309 70.2531V128.859C120.309 133.83 116.28 137.859 111.309 137.859H18.6909C13.7204 137.859 9.69092 133.83 9.69092 128.859V70.2531Z",
|
|
7415
|
+
fill: "#24BE6A"
|
|
7416
|
+
})));
|
|
7417
|
+
});
|
|
7418
|
+
|
|
7419
|
+
/**
|
|
7420
|
+
* Saves a user's subscription to receive notifications about a specific coin.
|
|
7421
|
+
* This function sends an email to subscribe the user to notifications for the specified coin.
|
|
7422
|
+
*
|
|
7423
|
+
* @function
|
|
7424
|
+
* @name saveSubscription
|
|
7425
|
+
* @param {Coin} coin - The coin object containing information about the coin, including its ticker symbol.
|
|
7426
|
+
* @param {string} address - The email address of the user who wishes to subscribe.
|
|
7427
|
+
* @returns {Promise<boolean>} A promise that resolves to `true` if the subscription email was sent successfully, or `false` if an error occurred during the process.
|
|
7428
|
+
*/
|
|
7429
|
+
|
|
7430
|
+
/**
|
|
7431
|
+
* WaitlistSubscription component handles user subscription to a waitlist for coin notifications.
|
|
7432
|
+
* It displays a notice with a button to open a dialog where the user can enter their email to subscribe.
|
|
7433
|
+
*
|
|
7434
|
+
* @component
|
|
7435
|
+
* @param {Object} props - The component props.
|
|
7436
|
+
* @param {Coin} props.coin - The coin object containing information about the coin.
|
|
7437
|
+
* @param {Object} props.translations - The text translations for the component.
|
|
7438
|
+
* @param {saveSubscription} props.saveSubscription - Function to handle/save the subscription.
|
|
7439
|
+
* @returns {JSX.Element} The WaitlistSubscription component.
|
|
7440
|
+
*/
|
|
7441
|
+
|
|
7442
|
+
function _catch$b(body, recover) {
|
|
7443
|
+
try {
|
|
7444
|
+
var result = body();
|
|
7445
|
+
} catch (e) {
|
|
7446
|
+
return recover(e);
|
|
7447
|
+
}
|
|
7448
|
+
if (result && result.then) {
|
|
7449
|
+
return result.then(void 0, recover);
|
|
7450
|
+
}
|
|
7451
|
+
return result;
|
|
7452
|
+
}
|
|
7453
|
+
var WaitlistSubscription = function WaitlistSubscription(_ref) {
|
|
7454
|
+
var coin = _ref.coin,
|
|
7455
|
+
translations = _ref.translations,
|
|
7456
|
+
saveSubscription = _ref.saveSubscription;
|
|
7457
|
+
var _useState = useState(),
|
|
7458
|
+
controls = _useState[0],
|
|
7459
|
+
_initControls = _useState[1];
|
|
7460
|
+
var _useState2 = useState(false),
|
|
7461
|
+
showDialog = _useState2[0],
|
|
7462
|
+
setShowDialog = _useState2[1];
|
|
7463
|
+
var _useState3 = useState(""),
|
|
7464
|
+
inputValue = _useState3[0],
|
|
7465
|
+
setInputValue = _useState3[1];
|
|
7466
|
+
var _useState4 = useState(false),
|
|
7467
|
+
isEmailValid = _useState4[0],
|
|
7468
|
+
setIsEmailValid = _useState4[1];
|
|
7469
|
+
var _useState5 = useState(false),
|
|
7470
|
+
errorEncountered = _useState5[0],
|
|
7471
|
+
setErrorEncountered = _useState5[1];
|
|
7472
|
+
var defaultTranslations = {
|
|
7473
|
+
coloredNotice: {
|
|
7474
|
+
text: "This is a pre-listed coin, meaning that the swap is not yet available. As soon as this coin allows exchanges, it will be automatically enabled. If you want to get a notification as soon as this coin becomes available for swap - sign up for the waitlist below!",
|
|
7475
|
+
buttonTitle: "Subscribe for updates"
|
|
7476
|
+
},
|
|
7477
|
+
signUpStep: {
|
|
7478
|
+
title: coin.latinName + " (" + coin.ticker + ") listing notification",
|
|
7479
|
+
subtitle: "To be notified as soon as " + coin.latinName + " becomes available for swaps, please provide your email address. We’ll send you a single notification when it’s listed.",
|
|
7480
|
+
actionButtonTitle: "Subscribe",
|
|
7481
|
+
inputTitle: "Your email address:",
|
|
7482
|
+
error: "Something went wrong. Please try again later."
|
|
7483
|
+
},
|
|
7484
|
+
successStep: {
|
|
7485
|
+
title: "Subscribed successfully!",
|
|
7486
|
+
subtitle: "We’ll notify you as soon as " + coin.latinName + " becomes available for swaps. Keep an eye on your inbox for the update.",
|
|
7487
|
+
actionButtonTitle: "Close"
|
|
7488
|
+
}
|
|
7489
|
+
};
|
|
7490
|
+
var t = translations != null ? translations : defaultTranslations;
|
|
7491
|
+
var STEPS = {
|
|
7492
|
+
signUp: "signUp",
|
|
7493
|
+
success: "success"
|
|
7494
|
+
};
|
|
7495
|
+
var subscribe = function subscribe(resetButtonLoader) {
|
|
7496
|
+
try {
|
|
7497
|
+
var _temp = _catch$b(function () {
|
|
7498
|
+
setErrorEncountered(false);
|
|
7499
|
+
return Promise.resolve(saveSubscription(coin, inputValue)).then(function (result) {
|
|
7500
|
+
if (result) {
|
|
7501
|
+
controls == null || controls.goToStep(STEPS.success);
|
|
7502
|
+
} else {
|
|
7503
|
+
setErrorEncountered(true);
|
|
7504
|
+
}
|
|
7505
|
+
resetButtonLoader();
|
|
7506
|
+
});
|
|
7507
|
+
}, function (e) {
|
|
7508
|
+
resetButtonLoader();
|
|
7509
|
+
logErrorOrOutputToConsole(e);
|
|
7510
|
+
setShowDialog(false);
|
|
7511
|
+
});
|
|
7512
|
+
return Promise.resolve(_temp && _temp.then ? _temp.then(function () {}) : void 0);
|
|
7513
|
+
} catch (e) {
|
|
7514
|
+
return Promise.reject(e);
|
|
7515
|
+
}
|
|
7516
|
+
};
|
|
7517
|
+
var openDialog = function openDialog() {
|
|
7518
|
+
setErrorEncountered(false);
|
|
7519
|
+
setInputValue("");
|
|
7520
|
+
setIsEmailValid(false);
|
|
7521
|
+
controls == null || controls.toFirstStep(false);
|
|
7522
|
+
setShowDialog(true);
|
|
7523
|
+
};
|
|
7524
|
+
useEffect(function () {
|
|
7525
|
+
setIsEmailValid(/^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/.test(inputValue));
|
|
7526
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
7527
|
+
}, [inputValue]);
|
|
7528
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Dialog, {
|
|
7529
|
+
initControls: function initControls(controls) {
|
|
7530
|
+
return _initControls(controls);
|
|
7531
|
+
},
|
|
7532
|
+
showDialog: showDialog,
|
|
7533
|
+
onClose: function onClose() {
|
|
7534
|
+
return setShowDialog(false);
|
|
7535
|
+
}
|
|
7536
|
+
}, /*#__PURE__*/React.createElement(DialogStep, {
|
|
7537
|
+
stepName: STEPS.signUp,
|
|
7538
|
+
controls: controls,
|
|
7539
|
+
title: t.signUpStep.title,
|
|
7540
|
+
subtitle: t.signUpStep.subtitle,
|
|
7541
|
+
confirmButtonClick: subscribe,
|
|
7542
|
+
confirmButtonEnabled: isEmailValid,
|
|
7543
|
+
confirmButtonText: t.signUpStep.actionButtonTitle,
|
|
7544
|
+
primaryButtonLoader: true,
|
|
6919
7545
|
subtitleSmallMargin: true,
|
|
6920
|
-
|
|
6921
|
-
|
|
6922
|
-
|
|
6923
|
-
|
|
6924
|
-
|
|
6925
|
-
|
|
6926
|
-
|
|
7546
|
+
showBackgroundTitle: false,
|
|
7547
|
+
ImageRaw: messageIcon
|
|
7548
|
+
}, /*#__PURE__*/React.createElement(TitleBox, {
|
|
7549
|
+
title: t.signUpStep.inputTitle
|
|
7550
|
+
}, /*#__PURE__*/React.createElement(Input, {
|
|
7551
|
+
type: "text",
|
|
7552
|
+
onChange: function onChange(e) {
|
|
7553
|
+
return setInputValue(e.target.value);
|
|
6927
7554
|
},
|
|
6928
|
-
|
|
6929
|
-
|
|
6930
|
-
|
|
6931
|
-
|
|
6932
|
-
|
|
6933
|
-
|
|
6934
|
-
|
|
6935
|
-
|
|
7555
|
+
value: inputValue
|
|
7556
|
+
}), errorEncountered ? /*#__PURE__*/React.createElement(Validation, {
|
|
7557
|
+
text: t.signUpStep.error
|
|
7558
|
+
}) : null)), /*#__PURE__*/React.createElement(DialogStep, {
|
|
7559
|
+
stepName: STEPS.success,
|
|
7560
|
+
controls: controls,
|
|
7561
|
+
title: t.successStep.title,
|
|
7562
|
+
subtitle: t.successStep.subtitle,
|
|
7563
|
+
confirmButtonClick: function confirmButtonClick() {
|
|
7564
|
+
return setShowDialog(false);
|
|
7565
|
+
},
|
|
7566
|
+
confirmButtonText: t.successStep.actionButtonTitle,
|
|
7567
|
+
showBackgroundTitle: false,
|
|
7568
|
+
ImageRaw: supportDialogImage,
|
|
7569
|
+
showCornerBackButton: false,
|
|
7570
|
+
subtitleSmallMargin: true
|
|
7571
|
+
})), /*#__PURE__*/React.createElement(ColoredNotice, {
|
|
7572
|
+
text: t.coloredNotice.text,
|
|
7573
|
+
buttonTitle: t.coloredNotice.buttonTitle,
|
|
7574
|
+
onButtonClick: openDialog
|
|
6936
7575
|
}));
|
|
6937
7576
|
};
|
|
7577
|
+
WaitlistSubscription.propTypes = {
|
|
7578
|
+
coin: PropTypes.object.isRequired,
|
|
7579
|
+
translations: PropTypes.object
|
|
7580
|
+
};
|
|
7581
|
+
|
|
7582
|
+
var s = {"logo-carousel":"_CgRBd","logo-carousel-wrapper":"_cVsiX","slide":"_Gu7XN","logo-carousel-slide":"_hIh2D","clickable":"_VuuGX","easeIn":"_i56By"};
|
|
7583
|
+
|
|
7584
|
+
/**
|
|
7585
|
+
* LogoCarousel component renders a set of logos in a sliding carousel.
|
|
7586
|
+
*
|
|
7587
|
+
* @component
|
|
7588
|
+
*
|
|
7589
|
+
* @param {Object} props - The props object for this component.
|
|
7590
|
+
* @param {Array<{logo: string, url: string}>} props.logos - Array of objects representing logos and their corresponding URLs.
|
|
7591
|
+
*/
|
|
7592
|
+
var LogoCarousel = function LogoCarousel(_ref) {
|
|
7593
|
+
var _wrapperRef$current;
|
|
7594
|
+
var logos = _ref.logos;
|
|
7595
|
+
var _useState = useState(),
|
|
7596
|
+
multiplier = _useState[0],
|
|
7597
|
+
setMultiplier = _useState[1];
|
|
7598
|
+
var _useState2 = useState(0),
|
|
7599
|
+
width = _useState2[0],
|
|
7600
|
+
setWidth = _useState2[1];
|
|
7601
|
+
var wrapperRef = useRef();
|
|
7602
|
+
useEffect(function () {
|
|
7603
|
+
var resizeObserver = new ResizeObserver(function (entries) {
|
|
7604
|
+
return entries.map(function (entry) {
|
|
7605
|
+
return setWidth(entry.contentRect.width);
|
|
7606
|
+
});
|
|
7607
|
+
});
|
|
7608
|
+
if (wrapperRef.current) resizeObserver.observe(wrapperRef.current);
|
|
7609
|
+
return function () {
|
|
7610
|
+
if (wrapperRef.current) resizeObserver.unobserve(wrapperRef.current);
|
|
7611
|
+
};
|
|
7612
|
+
}, []);
|
|
7613
|
+
useEffect(function () {
|
|
7614
|
+
setMultiplier(wrapperRef.current.clientWidth / 120);
|
|
7615
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
7616
|
+
}, [wrapperRef, wrapperRef == null || (_wrapperRef$current = wrapperRef.current) == null ? void 0 : _wrapperRef$current.clientWidth, logos, width]);
|
|
7617
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
7618
|
+
className: s["logo-carousel"]
|
|
7619
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
7620
|
+
className: s["logo-carousel-wrapper"],
|
|
7621
|
+
ref: wrapperRef,
|
|
7622
|
+
style: {
|
|
7623
|
+
animationDuration: multiplier + "s"
|
|
7624
|
+
}
|
|
7625
|
+
}, [].concat(Array(2)).map(function (z, i) {
|
|
7626
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
7627
|
+
className: s["logo-carousel-slide"],
|
|
7628
|
+
key: "logo-carousel-slide-" + i
|
|
7629
|
+
}, logos.map(function (item, index) {
|
|
7630
|
+
return /*#__PURE__*/React.createElement("a", {
|
|
7631
|
+
key: "logo-carousel-slide-" + i + "-" + index,
|
|
7632
|
+
className: item != null && item.url ? s["clickable"] : null,
|
|
7633
|
+
href: item == null ? void 0 : item.url,
|
|
7634
|
+
target: "_blank"
|
|
7635
|
+
}, /*#__PURE__*/React.createElement("img", {
|
|
7636
|
+
src: item.logo,
|
|
7637
|
+
alt: "logo"
|
|
7638
|
+
}));
|
|
7639
|
+
}));
|
|
7640
|
+
})));
|
|
7641
|
+
};
|
|
7642
|
+
LogoCarousel.propTypes = {
|
|
7643
|
+
logos: PropTypes.arrayOf(PropTypes.shape({
|
|
7644
|
+
logo: PropTypes.string.isRequired,
|
|
7645
|
+
url: PropTypes.string.isRequired
|
|
7646
|
+
})).isRequired
|
|
7647
|
+
};
|
|
6938
7648
|
|
|
6939
7649
|
var PARAMETER_VALUES_SEPARATOR = "|*|"; // Sting that with high probability will not be in the user's data
|
|
6940
7650
|
|
|
@@ -7028,154 +7738,6 @@ var Protocol = function Protocol(protocolName) {
|
|
|
7028
7738
|
this.protocol = protocolName;
|
|
7029
7739
|
};
|
|
7030
7740
|
|
|
7031
|
-
/**
|
|
7032
|
-
* The model for cryptocurrency coins.
|
|
7033
|
-
*
|
|
7034
|
-
* WARNING: this class should not be instantiated directly. Use only predefined singleton Coin (or descendants) instances.
|
|
7035
|
-
*/
|
|
7036
|
-
var Coin = /*#__PURE__*/function () {
|
|
7037
|
-
/**
|
|
7038
|
-
* Creates new coin
|
|
7039
|
-
*
|
|
7040
|
-
* @param latinName {string} the coin name in latin symbols like "Bitcoin"
|
|
7041
|
-
* @param ticker {string} the coin symbol/ticker/code like 'BTC'. Always upper case. A unique coin identifier
|
|
7042
|
-
* @param tickerPrintable {string} ticker but in printable format. Useful for tokens based on external blockchains
|
|
7043
|
-
* like ERC20 or TRC20. It is not friendly to display USDTERC20 or BUSDTRC20 - more neat options are just
|
|
7044
|
-
* USDT and BUSD. Note that you should always care about user's understanding of what coin he/she is working
|
|
7045
|
-
* with as printable ticker for USDTERC20 and USDTTRC20 are the same.
|
|
7046
|
-
* @param digitsCountAfterComma {number} count of digits after the comma. E.g. 8 for bitcoin
|
|
7047
|
-
* @param maxValue {number|null} max possible value for cryptocurrency. Null means that the currency has no max possible value
|
|
7048
|
-
* @param atomName {string} name of the coin's atomic value. Like 'satoshi' for bitcoin
|
|
7049
|
-
* @param mainnet {Network} main network for this coin
|
|
7050
|
-
* @param testnet {Network} test network for this coin
|
|
7051
|
-
* @param minConfirmations {number} min confirmations count to treat the coin's transaction confirmed
|
|
7052
|
-
* @param payableEntityStringForFeeRate {string|null} the payable fee entity like byte for bitcoin or gas for ether if present
|
|
7053
|
-
* @param feeOptionsTimeStringsSortedDesc {string[]} array of 4 strings for fee options when sending coins. Should be sorted from the highest time to the smallest
|
|
7054
|
-
* @param feeRatesExpirationTimeMs {number} number of milliseconds to treat the fee rates as expired
|
|
7055
|
-
* @param blockchain {Blockchain} blockchain object
|
|
7056
|
-
* @param [protocol] {Protocol|null} token/coin protocol if relevant
|
|
7057
|
-
* @param [tokenAddress] {string|null} address of contract of this token (if the coin is token)
|
|
7058
|
-
* @param [doesUseLowerCaseAddresses] {boolean} flag to clarify whether we can use lower case addresses to ensure more robust comparisons
|
|
7059
|
-
* @param [doesUseOutputs=false] {boolean} true if this coin uses inputs/outputs concept and false if it uses just balances
|
|
7060
|
-
*/
|
|
7061
|
-
function Coin(latinName, ticker, tickerPrintable, digitsCountAfterComma, maxValue, atomName, mainnet, testnet, minConfirmations, payableEntityStringForFeeRate, feeOptionsTimeStringsSortedDesc, feeRatesExpirationTimeMs, blockchain, protocol, tokenAddress, doesUseLowerCaseAddresses, doesUseOutputs) {
|
|
7062
|
-
if (protocol === void 0) {
|
|
7063
|
-
protocol = null;
|
|
7064
|
-
}
|
|
7065
|
-
if (tokenAddress === void 0) {
|
|
7066
|
-
tokenAddress = null;
|
|
7067
|
-
}
|
|
7068
|
-
if (doesUseLowerCaseAddresses === void 0) {
|
|
7069
|
-
doesUseLowerCaseAddresses = true;
|
|
7070
|
-
}
|
|
7071
|
-
if (doesUseOutputs === void 0) {
|
|
7072
|
-
doesUseOutputs = false;
|
|
7073
|
-
}
|
|
7074
|
-
this.latinName = latinName;
|
|
7075
|
-
this.ticker = ticker;
|
|
7076
|
-
this.tickerPrintable = tickerPrintable;
|
|
7077
|
-
this.digits = digitsCountAfterComma;
|
|
7078
|
-
this.maxValue = maxValue;
|
|
7079
|
-
this.atomName = atomName;
|
|
7080
|
-
this.mainnet = mainnet;
|
|
7081
|
-
this.testnet = testnet;
|
|
7082
|
-
this.minConfirmations = minConfirmations;
|
|
7083
|
-
this.payableEntityStringForFeeRate = payableEntityStringForFeeRate;
|
|
7084
|
-
this.feeOptionsTimeStringsSortedDesc = feeOptionsTimeStringsSortedDesc;
|
|
7085
|
-
this.feeRatesExpirationTimeMs = feeRatesExpirationTimeMs;
|
|
7086
|
-
this.protocol = protocol;
|
|
7087
|
-
this.blockchain = blockchain;
|
|
7088
|
-
// TODO: [bug, critical] use testnet property for testnet contract address as it blocks the app work in testnets
|
|
7089
|
-
this.tokenAddress = tokenAddress;
|
|
7090
|
-
this.feeCoin = this;
|
|
7091
|
-
this._significantDigits = 8;
|
|
7092
|
-
this.doesUseLowerCaseAddresses = doesUseLowerCaseAddresses;
|
|
7093
|
-
this.doesUseOutputs = doesUseOutputs;
|
|
7094
|
-
}
|
|
7095
|
-
|
|
7096
|
-
/**
|
|
7097
|
-
* Sets fee coin
|
|
7098
|
-
*
|
|
7099
|
-
* @param feeCoin {Coin} some tokens use another coin to charge transaction fee as they work on top of some external
|
|
7100
|
-
* blockchain. So pass here the coin the token uses for fee charging. Like for ERC20 token the fee coin is ETH.
|
|
7101
|
-
* By default, the creating coin will be set as a value for this field.
|
|
7102
|
-
*/
|
|
7103
|
-
var _proto = Coin.prototype;
|
|
7104
|
-
_proto.setFeeCoin = function setFeeCoin(feeCoin) {
|
|
7105
|
-
this.feeCoin = feeCoin;
|
|
7106
|
-
}
|
|
7107
|
-
|
|
7108
|
-
/**
|
|
7109
|
-
* Checks whether this coin uses another coin (blockchain) to charge fee for transactions (means works on base of
|
|
7110
|
-
* some external blockchain).
|
|
7111
|
-
*
|
|
7112
|
-
* @return {boolean} true if this coin uses external blockchain to perform transactions and charge fee
|
|
7113
|
-
*/;
|
|
7114
|
-
_proto.doesUseDifferentCoinFee = function doesUseDifferentCoinFee() {
|
|
7115
|
-
return this.feeCoin !== this;
|
|
7116
|
-
}
|
|
7117
|
-
|
|
7118
|
-
/**
|
|
7119
|
-
* Converts the given atoms string/number to string representing the same amount in coin itself - floating point number
|
|
7120
|
-
*
|
|
7121
|
-
* @param atoms {string} atoms positive integer amount
|
|
7122
|
-
* @return {string} coin amount floating point number as a string
|
|
7123
|
-
*/;
|
|
7124
|
-
_proto.atomsToCoinAmount = function atomsToCoinAmount(atoms) {
|
|
7125
|
-
throw new Error("Not implemented in base Coin");
|
|
7126
|
-
}
|
|
7127
|
-
|
|
7128
|
-
/**
|
|
7129
|
-
* Converts the given coins amount string/number to string representing the same amount in coin atoms - integer number
|
|
7130
|
-
*
|
|
7131
|
-
* @param coinsAmount {string} coins positive floating point amount
|
|
7132
|
-
* @return {string} coin atoms amount integer number as a string
|
|
7133
|
-
*/;
|
|
7134
|
-
_proto.coinAmountToAtoms = function coinAmountToAtoms(coinsAmount) {
|
|
7135
|
-
throw new Error("Not implemented in base Coin");
|
|
7136
|
-
}
|
|
7137
|
-
|
|
7138
|
-
/**
|
|
7139
|
-
* Composes URL to view the tx with given id in the external blockchain explorer
|
|
7140
|
-
*
|
|
7141
|
-
* @param txId {string} id of transaction
|
|
7142
|
-
* @return {string} URL string
|
|
7143
|
-
*/;
|
|
7144
|
-
_proto.composeUrlToTransactionExplorer = function composeUrlToTransactionExplorer(txId) {
|
|
7145
|
-
throw new Error("Not implemented in base Coin");
|
|
7146
|
-
}
|
|
7147
|
-
|
|
7148
|
-
/**
|
|
7149
|
-
* Most of the cryptocurrencies has specific fee rate or fee price metric. This value usually has specific measure
|
|
7150
|
-
* like satoshi/byte or gWei/gas. This function adds the described denomination string to the given amount
|
|
7151
|
-
* as a suffix and returns the result string ready to be show to a user.
|
|
7152
|
-
*
|
|
7153
|
-
* @param coinAtomsString {string} coin atoms positive integer amount
|
|
7154
|
-
* @return {string} string of coin amount and fee rate units
|
|
7155
|
-
*/;
|
|
7156
|
-
_proto.coinAtomsFeeRateToCommonlyUsedAmountFormatWithDenominationString = function coinAtomsFeeRateToCommonlyUsedAmountFormatWithDenominationString(coinAtomsString) {
|
|
7157
|
-
throw new Error("Not implemented in base Coin");
|
|
7158
|
-
}
|
|
7159
|
-
|
|
7160
|
-
/**
|
|
7161
|
-
* Check whether this coin support transaction prioritisation during the sending process.
|
|
7162
|
-
*
|
|
7163
|
-
* @return {boolean} true if support transaction prioritisation and false otherwise
|
|
7164
|
-
*/;
|
|
7165
|
-
_proto.doesSupportTransactionPrioritisation = function doesSupportTransactionPrioritisation() {
|
|
7166
|
-
return Array.isArray(this.feeOptionsTimeStringsSortedDesc);
|
|
7167
|
-
};
|
|
7168
|
-
_proto.tickerAndProtocol = function tickerAndProtocol() {
|
|
7169
|
-
try {
|
|
7170
|
-
var _ref;
|
|
7171
|
-
return "" + this.tickerPrintable + (this.protocol ? (_ref = " " + this.protocol.protocol) != null ? _ref : "" : "");
|
|
7172
|
-
} catch (e) {
|
|
7173
|
-
improveAndRethrow(e, "tickerAndProtocol");
|
|
7174
|
-
}
|
|
7175
|
-
};
|
|
7176
|
-
return Coin;
|
|
7177
|
-
}();
|
|
7178
|
-
|
|
7179
7741
|
/**
|
|
7180
7742
|
* TODO: [tests, critical] Ued by payments logic
|
|
7181
7743
|
*
|
|
@@ -10277,6 +10839,13 @@ var SwapProvider = /*#__PURE__*/function () {
|
|
|
10277
10839
|
}
|
|
10278
10840
|
}
|
|
10279
10841
|
return coinName;
|
|
10842
|
+
}
|
|
10843
|
+
|
|
10844
|
+
/**
|
|
10845
|
+
* @return {Promise<Partner[]>}
|
|
10846
|
+
*/;
|
|
10847
|
+
_proto.getPartnersList = function getPartnersList() {
|
|
10848
|
+
return Promise.resolve([]);
|
|
10280
10849
|
};
|
|
10281
10850
|
return SwapProvider;
|
|
10282
10851
|
}();
|
|
@@ -10297,6 +10866,7 @@ SwapProvider.SWAP_STATUSES = {
|
|
|
10297
10866
|
WAITING_FOR_PAYMENT: "waiting_for_payment",
|
|
10298
10867
|
CONFIRMING: "confirming",
|
|
10299
10868
|
PAYMENT_RECEIVED: "payment_received",
|
|
10869
|
+
VERIFYING: "verifying",
|
|
10300
10870
|
EXCHANGING: "exchanging",
|
|
10301
10871
|
COMPLETED: "completed",
|
|
10302
10872
|
REFUNDED: "refunded",
|
|
@@ -10304,6 +10874,12 @@ SwapProvider.SWAP_STATUSES = {
|
|
|
10304
10874
|
FAILED: "failed"
|
|
10305
10875
|
};
|
|
10306
10876
|
|
|
10877
|
+
var Partner = function Partner(name, url, logoUrl) {
|
|
10878
|
+
this.name = name;
|
|
10879
|
+
this.url = url;
|
|
10880
|
+
this.logoUrl = logoUrl;
|
|
10881
|
+
};
|
|
10882
|
+
|
|
10307
10883
|
function _catch$3(body, recover) {
|
|
10308
10884
|
try {
|
|
10309
10885
|
var result = body();
|
|
@@ -10713,7 +11289,7 @@ var SwapspaceSwapProvider = /*#__PURE__*/function (_SwapProvider) {
|
|
|
10713
11289
|
case "finished":
|
|
10714
11290
|
return SwapProvider.SWAP_STATUSES.COMPLETED;
|
|
10715
11291
|
case "verifying":
|
|
10716
|
-
return SwapProvider.SWAP_STATUSES.
|
|
11292
|
+
return SwapProvider.SWAP_STATUSES.VERIFYING;
|
|
10717
11293
|
case "refunded":
|
|
10718
11294
|
return SwapProvider.SWAP_STATUSES.REFUNDED;
|
|
10719
11295
|
case "expired":
|
|
@@ -10805,6 +11381,29 @@ var SwapspaceSwapProvider = /*#__PURE__*/function (_SwapProvider) {
|
|
|
10805
11381
|
return Promise.reject(e);
|
|
10806
11382
|
}
|
|
10807
11383
|
};
|
|
11384
|
+
_proto.getPartnersList = function getPartnersList() {
|
|
11385
|
+
try {
|
|
11386
|
+
var _this7 = this;
|
|
11387
|
+
return Promise.resolve(_catch$3(function () {
|
|
11388
|
+
return Promise.resolve(_this7._fetchPartnersListIfNeeded()).then(function () {
|
|
11389
|
+
return _this7._partners.filter(function (p) {
|
|
11390
|
+
return !BANNED_PARTNERS.find(function (banned) {
|
|
11391
|
+
return banned === p.path;
|
|
11392
|
+
});
|
|
11393
|
+
}).map(function (p) {
|
|
11394
|
+
var _p$image;
|
|
11395
|
+
return new Partner(p.name, null,
|
|
11396
|
+
// No data in swapspace
|
|
11397
|
+
p != null && (_p$image = p.image) != null && _p$image["default"] ? "https://storage.swapspace.co" + p.image["default"] : null);
|
|
11398
|
+
});
|
|
11399
|
+
});
|
|
11400
|
+
}, function (e) {
|
|
11401
|
+
improveAndRethrow(e, "swapspace.getPartnersList");
|
|
11402
|
+
}));
|
|
11403
|
+
} catch (e) {
|
|
11404
|
+
return Promise.reject(e);
|
|
11405
|
+
}
|
|
11406
|
+
};
|
|
10808
11407
|
return SwapspaceSwapProvider;
|
|
10809
11408
|
}(SwapProvider);
|
|
10810
11409
|
|
|
@@ -11585,6 +12184,13 @@ var LetsExchangeSwapProvider = /*#__PURE__*/function (_SwapProvider) {
|
|
|
11585
12184
|
throw new Error("Unknown LetsExchange status: " + status);
|
|
11586
12185
|
}
|
|
11587
12186
|
};
|
|
12187
|
+
_proto.getPartnersList = function getPartnersList() {
|
|
12188
|
+
try {
|
|
12189
|
+
return Promise.resolve([new Partner("LetsExchange", "https://letsexchange.io/", "https://letsexchange.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F02e45813-b375-49d8-b2b0-092ce1847fff%2F55ebbc3c-4ee6-4fa7-847b-f673e82594f3%2Flets-logo-basic__on-light.svg?table=block&id=bec5952a-2f9c-47fb-8cc0-86e1391a7f60&spaceId=02e45813-b375-49d8-b2b0-092ce1847fff&userId=&cache=v2")]);
|
|
12190
|
+
} catch (e) {
|
|
12191
|
+
return Promise.reject(e);
|
|
12192
|
+
}
|
|
12193
|
+
};
|
|
11588
12194
|
return LetsExchangeSwapProvider;
|
|
11589
12195
|
}(SwapProvider);
|
|
11590
12196
|
LetsExchangeSwapProvider.AFFILIATE_ID = "0zbj9hf7xg7jgdgv";
|
|
@@ -12290,6 +12896,39 @@ var PublicSwapService = /*#__PURE__*/function () {
|
|
|
12290
12896
|
improveAndRethrow(e, "getExtraIdNameIfPresentForAsset");
|
|
12291
12897
|
}
|
|
12292
12898
|
};
|
|
12899
|
+
_proto.getPartnersList = function getPartnersList() {
|
|
12900
|
+
try {
|
|
12901
|
+
var _temp17 = function _temp17(_result15) {
|
|
12902
|
+
return _exit4 ? _result15 : [];
|
|
12903
|
+
};
|
|
12904
|
+
var _exit4;
|
|
12905
|
+
var _this13 = this;
|
|
12906
|
+
var _temp16 = _catch(function () {
|
|
12907
|
+
var allPartners = [_this13._swapProvider, _this13._fixedSwapProvider].map(function (provider) {
|
|
12908
|
+
return provider.getPartnersList();
|
|
12909
|
+
});
|
|
12910
|
+
return Promise.resolve(Promise.all(allPartners)).then(function (_Promise$all) {
|
|
12911
|
+
allPartners = _Promise$all;
|
|
12912
|
+
allPartners = allPartners.flat().flat();
|
|
12913
|
+
var _allPartners$reduce = allPartners.reduce(function (prev, cur) {
|
|
12914
|
+
if (!prev.find(function (partner) {
|
|
12915
|
+
return partner.name.toLowerCase() === cur.name.toLowerCase();
|
|
12916
|
+
})) {
|
|
12917
|
+
prev.push(cur);
|
|
12918
|
+
}
|
|
12919
|
+
return prev;
|
|
12920
|
+
}, []);
|
|
12921
|
+
_exit4 = 1;
|
|
12922
|
+
return _allPartners$reduce;
|
|
12923
|
+
});
|
|
12924
|
+
}, function (e) {
|
|
12925
|
+
Logger.logError(e, "getPartnersList");
|
|
12926
|
+
});
|
|
12927
|
+
return Promise.resolve(_temp16 && _temp16.then ? _temp16.then(_temp17) : _temp17(_temp16));
|
|
12928
|
+
} catch (e) {
|
|
12929
|
+
return Promise.reject(e);
|
|
12930
|
+
}
|
|
12931
|
+
};
|
|
12293
12932
|
return PublicSwapService;
|
|
12294
12933
|
}();
|
|
12295
12934
|
PublicSwapService.PUBLIC_SWAP_CREATED_ANALYTICS_EVENT = "public_swap_created_event";
|
|
@@ -12306,5 +12945,5 @@ PublicSwapService.PUBLIC_SWAP_DETAILS_FAIL_REASONS = {
|
|
|
12306
12945
|
};
|
|
12307
12946
|
PublicSwapService._fiatDecimalsCount = FiatCurrenciesService.getCurrencyDecimalCountByCode("USD");
|
|
12308
12947
|
|
|
12309
|
-
export { AmountInput, AmountUtils, ApiGroup, ApiGroups, AssetIcon, AssetSelection, AxiosAdapter, BackgroundTitle, BaseSwapCreationInfo, Blockchain, Button, CLOSE_COLORS, COIN_PICKER_MODES, Cache, CacheAndConcurrentRequestsResolver, CachedRobustExternalApiCallerService, CancelProcessing, Close, Coin, CoinPicker, CoinPickerDialogStep, ConcurrentCalculationsMetadataHolder, DEFAULT_CRYPTO_DECIMAL_COUNT, DIALOG_SIZES, DIALOG_STEP_CLASS, DIALOG_TRANSITION_STEP_DURATION, DeterminedErrorDialogStep, Dialog, DialogButtons, DialogStep, EmailsApi, ExistingSwap, ExistingSwapWithFiatData, ExternalApiProvider, FALLBACK_ASSET_ICON_URL, FiatCurrenciesService, GoogleAnalyticsAdapter, ICON_ROTATE_OPTIONS, InformationMessage, Input, InputValuesProviders, IpAddressProvider, LineWithIconLink, LinesOfText, LinkButton, LoadingDots, Logger, LogsStorage, MixpanelAdapter, NoticeIcon, Protocol, PublicSwapService, QrCode, RadioButtonWithText, RobustExternalAPICallerService, SupportChat, SwapForm, SwapProvider, SwapUtils, SwapspaceSwapProvider, TOOLTIP_POSITIONS, Textarea, TitleBox, TitledLineWithIconLink, Tooltip, Validation, copyBrowserTextToClipboard, getQueryParameterSingleValue, getQueryParameterValues, handleClickOutside, improveAndRethrow, logErrorOrOutputToConsole, postponeExecution, removeQueryParameterAndValues, safeStringify, saveQueryParameterAndValues, useCallHandlingErrors, useIsHydrated, useReferredState };
|
|
12948
|
+
export { AmountInput, AmountUtils, ApiGroup, ApiGroups, AssetIcon, AssetSelection, AxiosAdapter, BackgroundTitle, BaseSwapCreationInfo, Blockchain, Button, CLOSE_COLORS, COIN_PICKER_MODES, Cache, CacheAndConcurrentRequestsResolver, CachedRobustExternalApiCallerService, CancelProcessing, Close, Coin, CoinPicker, CoinPickerDialogStep, ColoredNotice, ConcurrentCalculationsMetadataHolder, DEFAULT_CRYPTO_DECIMAL_COUNT, DIALOG_SIZES, DIALOG_STEP_CLASS, DIALOG_TRANSITION_STEP_DURATION, DeterminedErrorDialogStep, Dialog, DialogButtons, DialogStep, EmailsApi, ExistingSwap, ExistingSwapWithFiatData, ExternalApiProvider, FALLBACK_ASSET_ICON_URL, FiatCurrenciesService, GoogleAnalyticsAdapter, ICON_ROTATE_OPTIONS, InformationMessage, Input, InputValuesProviders, IpAddressProvider, LineWithIconLink, LinesOfText, LinkButton, LoadingDots, Logger, LogoCarousel, LogsStorage, MixpanelAdapter, NoticeIcon, Protocol, PublicSwapService, QrCode, RadioButtonWithText, RobustExternalAPICallerService, SearchableCoinsList, SupportChat, SwapForm, SwapProvider, SwapUtils, SwapspaceSwapProvider, TOOLTIP_POSITIONS, Textarea, TitleBox, TitledLineWithIconLink, Tooltip, Validation, WaitlistSubscription, copyBrowserTextToClipboard, getQueryParameterSingleValue, getQueryParameterValues, handleClickOutside, improveAndRethrow, logErrorOrOutputToConsole, postponeExecution, removeQueryParameterAndValues, safeStringify, saveQueryParameterAndValues, useCallHandlingErrors, useIsHydrated, useReferredState };
|
|
12310
12949
|
//# sourceMappingURL=index.module.js.map
|