@rabbitio/ui-kit 1.0.0-beta.83 → 1.0.0-beta.84

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.
Files changed (216) hide show
  1. package/coverage/base.css +224 -0
  2. package/coverage/block-navigation.js +87 -0
  3. package/coverage/clover.xml +15674 -0
  4. package/coverage/coverage-final.json +112 -0
  5. package/coverage/favicon.png +0 -0
  6. package/coverage/index.html +986 -0
  7. package/coverage/prettify.css +1 -0
  8. package/coverage/prettify.js +2 -0
  9. package/coverage/rabbit-ui-kit/index.html +116 -0
  10. package/coverage/rabbit-ui-kit/index.js.html +88 -0
  11. package/coverage/rabbit-ui-kit/src/common-apis/adapters/analyticsAdapters/googleAnalyticsAdapter.js.html +148 -0
  12. package/coverage/rabbit-ui-kit/src/common-apis/adapters/analyticsAdapters/index.html +131 -0
  13. package/coverage/rabbit-ui-kit/src/common-apis/adapters/analyticsAdapters/mixpanelAdapter.js.html +199 -0
  14. package/coverage/rabbit-ui-kit/src/common-apis/adapters/axiosAdapter.js.html +190 -0
  15. package/coverage/rabbit-ui-kit/src/common-apis/adapters/index.html +131 -0
  16. package/coverage/rabbit-ui-kit/src/common-apis/adapters/qrUtils.js.html +139 -0
  17. package/coverage/rabbit-ui-kit/src/common-apis/amountUtils.js.html +1162 -0
  18. package/coverage/rabbit-ui-kit/src/common-apis/errorUtils.js.html +211 -0
  19. package/coverage/rabbit-ui-kit/src/common-apis/external-apis/apiGroups.js.html +250 -0
  20. package/coverage/rabbit-ui-kit/src/common-apis/external-apis/index.html +131 -0
  21. package/coverage/rabbit-ui-kit/src/common-apis/external-apis/ipAddressProviders.js.html +352 -0
  22. package/coverage/rabbit-ui-kit/src/common-apis/fiatCurrenciesService.js.html +544 -0
  23. package/coverage/rabbit-ui-kit/src/common-apis/globalConstants.jsx.html +94 -0
  24. package/coverage/rabbit-ui-kit/src/common-apis/index.html +161 -0
  25. package/coverage/rabbit-ui-kit/src/common-apis/models/blockchain.js.html +115 -0
  26. package/coverage/rabbit-ui-kit/src/common-apis/models/coin.js.html +544 -0
  27. package/coverage/rabbit-ui-kit/src/common-apis/models/index.html +146 -0
  28. package/coverage/rabbit-ui-kit/src/common-apis/models/protocol.js.html +100 -0
  29. package/coverage/rabbit-ui-kit/src/common-apis/utils/cache.js.html +811 -0
  30. package/coverage/rabbit-ui-kit/src/common-apis/utils/emailAPI.js.html +133 -0
  31. package/coverage/rabbit-ui-kit/src/common-apis/utils/index.html +161 -0
  32. package/coverage/rabbit-ui-kit/src/common-apis/utils/logging/index.html +131 -0
  33. package/coverage/rabbit-ui-kit/src/common-apis/utils/logging/logger.js.html +208 -0
  34. package/coverage/rabbit-ui-kit/src/common-apis/utils/logging/logsStorage.js.html +268 -0
  35. package/coverage/rabbit-ui-kit/src/common-apis/utils/postponeExecution.js.html +118 -0
  36. package/coverage/rabbit-ui-kit/src/common-apis/utils/safeStringify.js.html +235 -0
  37. package/coverage/rabbit-ui-kit/src/index.html +116 -0
  38. package/coverage/rabbit-ui-kit/src/index.js.html +358 -0
  39. package/coverage/rabbit-ui-kit/src/robust-api-caller/cacheAndConcurrentRequestsResolver.js.html +1570 -0
  40. package/coverage/rabbit-ui-kit/src/robust-api-caller/cachedRobustExternalApiCallerService.js.html +526 -0
  41. package/coverage/rabbit-ui-kit/src/robust-api-caller/cancelProcessing.js.html +172 -0
  42. package/coverage/rabbit-ui-kit/src/robust-api-caller/concurrentCalculationsMetadataHolder.js.html +310 -0
  43. package/coverage/rabbit-ui-kit/src/robust-api-caller/externalApiProvider.js.html +553 -0
  44. package/coverage/rabbit-ui-kit/src/robust-api-caller/externalServicesStatsCollector.js.html +319 -0
  45. package/coverage/rabbit-ui-kit/src/robust-api-caller/index.html +206 -0
  46. package/coverage/rabbit-ui-kit/src/robust-api-caller/robustExternalAPICallerService.js.html +997 -0
  47. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/index.html +146 -0
  48. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/letsExchangeSwapProvider.js.html +1543 -0
  49. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/swapProvider.js.html +1705 -0
  50. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/swapspaceSwapProvider.js.html +1801 -0
  51. package/coverage/rabbit-ui-kit/src/swaps-lib/models/baseSwapCreationInfo.js.html +223 -0
  52. package/coverage/rabbit-ui-kit/src/swaps-lib/models/existingSwap.js.html +304 -0
  53. package/coverage/rabbit-ui-kit/src/swaps-lib/models/existingSwapWithFiatData.js.html +469 -0
  54. package/coverage/rabbit-ui-kit/src/swaps-lib/models/index.html +176 -0
  55. package/coverage/rabbit-ui-kit/src/swaps-lib/models/partner.js.html +106 -0
  56. package/coverage/rabbit-ui-kit/src/swaps-lib/models/swapProviderCoinInfo.js.html +193 -0
  57. package/coverage/rabbit-ui-kit/src/swaps-lib/services/index.html +116 -0
  58. package/coverage/rabbit-ui-kit/src/swaps-lib/services/publicSwapService.js.html +2161 -0
  59. package/coverage/rabbit-ui-kit/src/swaps-lib/utils/index.html +116 -0
  60. package/coverage/rabbit-ui-kit/src/swaps-lib/utils/swapUtils.js.html +670 -0
  61. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/arrowIcon.jsx.html +124 -0
  62. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/arrowTosca.jsx.html +127 -0
  63. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/arrowWhite.jsx.html +127 -0
  64. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/darkRectangle.jsx.html +106 -0
  65. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/determinedError.jsx.html +439 -0
  66. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/failedValidationIcon.jsx.html +202 -0
  67. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/index.html +281 -0
  68. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/infoIcon.jsx.html +133 -0
  69. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/messageIcon.jsx.html +346 -0
  70. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/noticeQuestionIcon.jsx.html +247 -0
  71. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/successfulValidationIcon.jsx.html +163 -0
  72. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/supportDialogImage.jsx.html +268 -0
  73. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/walletIcon.jsx.html +151 -0
  74. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/AssetIcon/AssetIcon.jsx.html +256 -0
  75. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/AssetIcon/index.html +116 -0
  76. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/AssetSelection/AssetSelection.jsx.html +289 -0
  77. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/AssetSelection/index.html +116 -0
  78. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/BackgroundTitle/BackgroundTitle.jsx.html +187 -0
  79. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/BackgroundTitle/index.html +116 -0
  80. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/InformationMessage/InformationMessage.jsx.html +238 -0
  81. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/InformationMessage/index.html +116 -0
  82. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Input/Input.jsx.html +634 -0
  83. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Input/index.html +116 -0
  84. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/LoadingDots/LoadingDots.jsx.html +196 -0
  85. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/LoadingDots/index.html +116 -0
  86. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/NoticeIcon/NoticeIcon.jsx.html +277 -0
  87. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/NoticeIcon/index.html +116 -0
  88. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/QrCode/QrCode.jsx.html +217 -0
  89. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/QrCode/index.html +116 -0
  90. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/RateSelector/RateSelector.jsx.html +175 -0
  91. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/RateSelector/index.html +116 -0
  92. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/SupportChat/SupportChat.jsx.html +217 -0
  93. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/SupportChat/index.html +116 -0
  94. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Textarea/Textarea.jsx.html +529 -0
  95. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Textarea/index.html +116 -0
  96. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/TitleBox/TitleBox.jsx.html +508 -0
  97. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/TitleBox/index.html +116 -0
  98. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Tooltip/Tooltip.jsx.html +316 -0
  99. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Tooltip/index.html +116 -0
  100. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/TwoLinesOfText/LinesOfText.jsx.html +313 -0
  101. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/TwoLinesOfText/index.html +116 -0
  102. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Validation/Validation.jsx.html +202 -0
  103. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Validation/index.html +116 -0
  104. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/Button/Button.jsx.html +712 -0
  105. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/Button/index.html +116 -0
  106. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/Close/Close.jsx.html +259 -0
  107. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/Close/index.html +116 -0
  108. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/LinkButton/LinkButton.jsx.html +421 -0
  109. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/LinkButton/index.html +116 -0
  110. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/RadioButtonWithText/RadioButtonWithText.jsx.html +415 -0
  111. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/RadioButtonWithText/index.html +116 -0
  112. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/AmountInput/AmountInput.jsx.html +1087 -0
  113. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/AmountInput/index.html +116 -0
  114. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/CoinPicker/CoinPicker.jsx.html +1474 -0
  115. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/CoinPicker/index.html +116 -0
  116. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/ColoredNotice/ColoredNotice.jsx.html +211 -0
  117. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/ColoredNotice/index.html +116 -0
  118. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/LineWithIconLink/LineWithIconLink.jsx.html +190 -0
  119. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/LineWithIconLink/index.html +116 -0
  120. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/LogoCarousel/LogoCarousel.jsx.html +196 -0
  121. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/LogoCarousel/index.html +116 -0
  122. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/SearchableCoinsList/SearchableCoinsList.jsx.html +496 -0
  123. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/SearchableCoinsList/index.html +116 -0
  124. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/TitledLineWithIconLink/TitledLineWithIconLink.jsx.html +181 -0
  125. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/TitledLineWithIconLink/index.html +116 -0
  126. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/CoinPickerDialogStep/CoinPickerDialogStep.jsx.html +283 -0
  127. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/CoinPickerDialogStep/index.html +116 -0
  128. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/Dialog.jsx.html +1567 -0
  129. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/DialogButtons/DialogButtons.jsx.html +481 -0
  130. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/DialogButtons/index.html +116 -0
  131. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/DialogStep/DialogStep.jsx.html +1747 -0
  132. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/DialogStep/index.html +116 -0
  133. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/index.html +116 -0
  134. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/SwapForm/SwapForm.jsx.html +4168 -0
  135. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/SwapForm/index.html +116 -0
  136. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/WaitlistSubscription/WaitlistSubscription.jsx.html +559 -0
  137. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/WaitlistSubscription/index.html +116 -0
  138. package/coverage/rabbit-ui-kit/src/ui-kit/components/templates/DeterminedErrorDialogStep/DeterminedErrorDialogStep.jsx.html +316 -0
  139. package/coverage/rabbit-ui-kit/src/ui-kit/components/templates/DeterminedErrorDialogStep/index.html +116 -0
  140. package/coverage/rabbit-ui-kit/src/ui-kit/hooks/index.html +146 -0
  141. package/coverage/rabbit-ui-kit/src/ui-kit/hooks/useCallHandlingErrors.js.html +151 -0
  142. package/coverage/rabbit-ui-kit/src/ui-kit/hooks/useIsHydrated.js.html +121 -0
  143. package/coverage/rabbit-ui-kit/src/ui-kit/hooks/useReferredState.js.html +157 -0
  144. package/coverage/rabbit-ui-kit/src/ui-kit/utils/index.html +161 -0
  145. package/coverage/rabbit-ui-kit/src/ui-kit/utils/inputValueProviders.js.html +235 -0
  146. package/coverage/rabbit-ui-kit/src/ui-kit/utils/textUtils.js.html +139 -0
  147. package/coverage/rabbit-ui-kit/src/ui-kit/utils/uiUtils.js.html +121 -0
  148. package/coverage/rabbit-ui-kit/src/ui-kit/utils/urlQueryUtils.js.html +271 -0
  149. package/coverage/rabbit-ui-kit/stories/atoms/BackgroundTitle.stories.jsx.html +202 -0
  150. package/coverage/rabbit-ui-kit/stories/atoms/LinesOfText.stories.jsx.html +283 -0
  151. package/coverage/rabbit-ui-kit/stories/atoms/LoadingDots.stories.jsx.html +226 -0
  152. package/coverage/rabbit-ui-kit/stories/atoms/QrCode.stories.jsx.html +175 -0
  153. package/coverage/rabbit-ui-kit/stories/atoms/RateSelector.stories.jsx.html +136 -0
  154. package/coverage/rabbit-ui-kit/stories/atoms/Validation.stories.jsx.html +178 -0
  155. package/coverage/rabbit-ui-kit/stories/atoms/buttons/Button.stories.jsx.html +883 -0
  156. package/coverage/rabbit-ui-kit/stories/atoms/buttons/Close.stories.jsx.html +211 -0
  157. package/coverage/rabbit-ui-kit/stories/atoms/buttons/LinkButton.stories.jsx.html +301 -0
  158. package/coverage/rabbit-ui-kit/stories/atoms/buttons/index.html +146 -0
  159. package/coverage/rabbit-ui-kit/stories/atoms/index.html +191 -0
  160. package/coverage/rabbit-ui-kit/stories/molecules/CoinPicker.stories.jsx.html +271 -0
  161. package/coverage/rabbit-ui-kit/stories/molecules/ColoredNotice.stories.jsx.html +178 -0
  162. package/coverage/rabbit-ui-kit/stories/molecules/LineWithIconLink.stories.jsx.html +154 -0
  163. package/coverage/rabbit-ui-kit/stories/molecules/LogoCarousel.stories.jsx.html +160 -0
  164. package/coverage/rabbit-ui-kit/stories/molecules/TitledLineWithIconLink.stories.jsx.html +160 -0
  165. package/coverage/rabbit-ui-kit/stories/molecules/index.html +176 -0
  166. package/coverage/rabbit-ui-kit/stories/organisms/Dialog/Dialog.stories.jsx.html +523 -0
  167. package/coverage/rabbit-ui-kit/stories/organisms/Dialog/DialogButtons/DialogButtons.stories.jsx.html +328 -0
  168. package/coverage/rabbit-ui-kit/stories/organisms/Dialog/DialogButtons/index.html +116 -0
  169. package/coverage/rabbit-ui-kit/stories/organisms/Dialog/DialogStep/DialogStep.stories.jsx.html +337 -0
  170. package/coverage/rabbit-ui-kit/stories/organisms/Dialog/DialogStep/index.html +116 -0
  171. package/coverage/rabbit-ui-kit/stories/organisms/Dialog/index.html +116 -0
  172. package/coverage/rabbit-ui-kit/stories/organisms/WaitlistSubscription.stories.jsx.html +151 -0
  173. package/coverage/rabbit-ui-kit/stories/organisms/index.html +116 -0
  174. package/coverage/rabbit-ui-kit/stories/stubs/coins.jsx.html +6880 -0
  175. package/coverage/rabbit-ui-kit/stories/stubs/exampleContent.jsx.html +145 -0
  176. package/coverage/rabbit-ui-kit/stories/stubs/index.html +131 -0
  177. package/coverage/rabbit-ui-kit/stories/templates/DeterminedErrorDialogStep.stories.jsx.html +190 -0
  178. package/coverage/rabbit-ui-kit/stories/templates/index.html +116 -0
  179. package/coverage/sort-arrow-sprite.png +0 -0
  180. package/coverage/sorter.js +196 -0
  181. package/dist/global.css.map +1 -1
  182. package/dist/index.cjs +1107 -494
  183. package/dist/index.cjs.map +1 -1
  184. package/dist/index.css +93 -0
  185. package/dist/index.css.map +1 -1
  186. package/dist/index.modern.js +926 -418
  187. package/dist/index.modern.js.map +1 -1
  188. package/dist/index.module.js +1104 -495
  189. package/dist/index.module.js.map +1 -1
  190. package/dist/index.umd.js +1107 -494
  191. package/dist/index.umd.js.map +1 -1
  192. package/package.json +1 -1
  193. package/src/index.js +4 -0
  194. package/src/swaps-lib/external-apis/letsExchangeSwapProvider.js +11 -0
  195. package/src/swaps-lib/external-apis/swapProvider.js +8 -0
  196. package/src/swaps-lib/external-apis/swapspaceSwapProvider.js +20 -1
  197. package/src/swaps-lib/models/partner.js +7 -0
  198. package/src/swaps-lib/services/publicSwapService.js +17 -0
  199. package/src/ui-kit/assets/styles/global.scss +4 -7
  200. package/src/ui-kit/assets/wrappedImages/messageIcon.jsx +87 -0
  201. package/src/ui-kit/assets/wrappedImages/supportDialogImage.jsx +61 -0
  202. package/src/ui-kit/components/atoms/RateSelector/RateSelector.jsx +2 -2
  203. package/src/ui-kit/components/atoms/Validation/Validation.jsx +7 -9
  204. package/src/ui-kit/components/atoms/Validation/validation.module.scss +4 -0
  205. package/src/ui-kit/components/molecules/AmountInput/AmountInput.jsx +57 -48
  206. package/src/ui-kit/components/molecules/AmountInput/amount-input.module.scss +33 -0
  207. package/src/ui-kit/components/molecules/CoinPicker/CoinPicker.jsx +84 -132
  208. package/src/ui-kit/components/molecules/ColoredNotice/ColoredNotice.jsx +42 -0
  209. package/src/ui-kit/components/molecules/ColoredNotice/colored-notice.module.scss +20 -0
  210. package/src/ui-kit/components/molecules/LogoCarousel/LogoCarousel.jsx +37 -0
  211. package/src/ui-kit/components/molecules/LogoCarousel/logo-carousel.module.scss +64 -0
  212. package/src/ui-kit/components/molecules/SearchableCoinsList/SearchableCoinsList.jsx +137 -0
  213. package/src/ui-kit/components/organisms/Dialog/DialogButtons/DialogButtons.jsx +10 -0
  214. package/src/ui-kit/components/organisms/Dialog/DialogStep/DialogStep.jsx +16 -0
  215. package/src/ui-kit/components/organisms/SwapForm/SwapForm.jsx +35 -12
  216. package/src/ui-kit/components/organisms/WaitlistSubscription/WaitlistSubscription.jsx +158 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rabbitio/ui-kit",
3
- "version": "1.0.0-beta.83",
3
+ "version": "1.0.0-beta.84",
4
4
  "description": "Rabbit.io react.js components kit",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
package/src/index.js CHANGED
@@ -27,6 +27,10 @@ export { InformationMessage } from "./ui-kit/components/atoms/InformationMessage
27
27
  export { Input } from "./ui-kit/components/atoms/Input/Input.jsx";
28
28
  export { COIN_PICKER_MODES, CoinPicker } from "./ui-kit/components/molecules/CoinPicker/CoinPicker.jsx";
29
29
  export { CoinPickerDialogStep } from "./ui-kit/components/organisms/CoinPickerDialogStep/CoinPickerDialogStep.jsx";
30
+ export { SearchableCoinsList } from "./ui-kit/components/molecules/SearchableCoinsList/SearchableCoinsList.jsx";
31
+ export { ColoredNotice } from "./ui-kit/components/molecules/ColoredNotice/ColoredNotice.jsx";
32
+ export { WaitlistSubscription } from "./ui-kit/components/organisms/WaitlistSubscription/WaitlistSubscription.jsx";
33
+ export { LogoCarousel } from "./ui-kit/components/molecules/LogoCarousel/LogoCarousel.jsx";
30
34
 
31
35
  // UI-KIT constants
32
36
  export { FALLBACK_ASSET_ICON_URL, DEFAULT_CRYPTO_DECIMAL_COUNT } from "./common-apis/globalConstants.jsx";
@@ -10,6 +10,7 @@ import { safeStringify } from "../../common-apis/utils/safeStringify.js";
10
10
  import { Logger } from "../../common-apis/utils/logging/logger.js";
11
11
  import { DEFAULT_CRYPTO_DECIMAL_COUNT, FALLBACK_ASSET_ICON_URL } from "../../common-apis/globalConstants.jsx";
12
12
  import { SwapProviderCoinInfo } from "../models/swapProviderCoinInfo.js";
13
+ import { Partner } from "../models/partner.js";
13
14
 
14
15
  export class LetsExchangeSwapProvider extends SwapProvider {
15
16
  constructor(apiKeysProxyUrl, cache, customCoinBuilder = (coin, network) => null, useRestrictedCoinsSet = true) {
@@ -472,4 +473,14 @@ export class LetsExchangeSwapProvider extends SwapProvider {
472
473
  throw new Error(`Unknown LetsExchange status: ${status}`);
473
474
  }
474
475
  }
476
+
477
+ async getPartnersList() {
478
+ return [
479
+ new Partner(
480
+ "LetsExchange",
481
+ "https://letsexchange.io/",
482
+ "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"
483
+ ),
484
+ ];
485
+ }
475
486
  }
@@ -70,6 +70,7 @@ export class SwapProvider {
70
70
  WAITING_FOR_PAYMENT: "waiting_for_payment",
71
71
  CONFIRMING: "confirming",
72
72
  PAYMENT_RECEIVED: "payment_received",
73
+ VERIFYING: "verifying",
73
74
  EXCHANGING: "exchanging",
74
75
  COMPLETED: "completed",
75
76
  REFUNDED: "refunded",
@@ -529,4 +530,11 @@ export class SwapProvider {
529
530
  }
530
531
  return coinName;
531
532
  }
533
+
534
+ /**
535
+ * @return {Promise<Partner[]>}
536
+ */
537
+ async getPartnersList() {
538
+ return [];
539
+ }
532
540
  }
@@ -11,6 +11,7 @@ import { safeStringify } from "../../common-apis/utils/safeStringify.js";
11
11
  import { Logger } from "../../common-apis/utils/logging/logger.js";
12
12
  import { FALLBACK_ASSET_ICON_URL } from "../../common-apis/globalConstants.jsx";
13
13
  import { SwapProviderCoinInfo } from "../models/swapProviderCoinInfo.js";
14
+ import { Partner } from "../models/partner.js";
14
15
 
15
16
  export const BANNED_PARTNERS = ["stealthex", "changee", "coincraddle", "easybit"];
16
17
 
@@ -453,7 +454,7 @@ export class SwapspaceSwapProvider extends SwapProvider {
453
454
  case "finished":
454
455
  return SwapProvider.SWAP_STATUSES.COMPLETED;
455
456
  case "verifying":
456
- return SwapProvider.SWAP_STATUSES.EXCHANGING;
457
+ return SwapProvider.SWAP_STATUSES.VERIFYING;
457
458
  case "refunded":
458
459
  return SwapProvider.SWAP_STATUSES.REFUNDED;
459
460
  case "expired":
@@ -550,4 +551,22 @@ export class SwapspaceSwapProvider extends SwapProvider {
550
551
  improveAndRethrow(e, loggerSource);
551
552
  }
552
553
  }
554
+
555
+ async getPartnersList() {
556
+ try {
557
+ await this._fetchPartnersListIfNeeded();
558
+ return this._partners
559
+ .filter(p => !BANNED_PARTNERS.find(banned => banned === p.path))
560
+ .map(
561
+ p =>
562
+ new Partner(
563
+ p.name,
564
+ null, // No data in swapspace
565
+ p?.image?.default ? "https://storage.swapspace.co" + p.image.default : null
566
+ )
567
+ );
568
+ } catch (e) {
569
+ improveAndRethrow(e, "swapspace.getPartnersList");
570
+ }
571
+ }
553
572
  }
@@ -0,0 +1,7 @@
1
+ export class Partner {
2
+ constructor(name, url, logoUrl) {
3
+ this.name = name;
4
+ this.url = url;
5
+ this.logoUrl = logoUrl;
6
+ }
7
+ }
@@ -672,4 +672,21 @@ export class PublicSwapService {
672
672
  improveAndRethrow(e, "getExtraIdNameIfPresentForAsset");
673
673
  }
674
674
  }
675
+
676
+ async getPartnersList() {
677
+ try {
678
+ let allPartners = [this._swapProvider, this._fixedSwapProvider].map(provider => provider.getPartnersList());
679
+ allPartners = await Promise.all(allPartners);
680
+ allPartners = allPartners.flat().flat();
681
+ return allPartners.reduce((prev, cur) => {
682
+ if (!prev.find(partner => partner.name.toLowerCase() === cur.name.toLowerCase())) {
683
+ prev.push(cur);
684
+ }
685
+ return prev;
686
+ }, []);
687
+ } catch (e) {
688
+ Logger.logError(e, "getPartnersList");
689
+ }
690
+ return [];
691
+ }
675
692
  }
@@ -6,13 +6,10 @@
6
6
  // Global classes.
7
7
  //
8
8
  // Rule for adding new global classes:
9
- // When adding new classes, make sure that the class name is unique enough, so
10
- // that it can be easily searched through the code base. Class names in the
11
- // format of xxxx-xxxx-xxxx with 2+ words are unique enough, but if the class
12
- // name contains just one word (like "container", for example), you need to
13
- // add a prefix "gc_", so that we can easily find all its usages throughout the code.
14
- // For example, if you want to add a class called ".button", you must name it as
15
- // ".gc_button", so that it can be easily found.
9
+ // All new classes must start with prefix ".global-class--", so that
10
+ // the class name is unique enough for it to be searched globally.
11
+ // For example, if you want to add a class called ".button", you must
12
+ // name it as ".global-class--button", so that it can be easily found.
16
13
 
17
14
  .container {
18
15
  max-width: 1260px;
@@ -0,0 +1,87 @@
1
+ import React from "react";
2
+
3
+ export default () => (
4
+ <svg width="130" height="130" viewBox="0 0 130 130" fill="none" xmlns="http://www.w3.org/2000/svg">
5
+ <path
6
+ fill-rule="evenodd"
7
+ clip-rule="evenodd"
8
+ 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"
9
+ fill="#2294F0"
10
+ />
11
+ <mask id="mask0" style={{ maskType: "alpha" }} maskUnits="userSpaceOnUse" x="0" y="0" width="130" height="130">
12
+ <path
13
+ fill-rule="evenodd"
14
+ clip-rule="evenodd"
15
+ 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"
16
+ fill="white"
17
+ />
18
+ </mask>
19
+ <g mask="url(#mask0)">
20
+ <rect
21
+ opacity="0.3"
22
+ x="3.25"
23
+ y="150.776"
24
+ width="227.136"
25
+ height="25.2373"
26
+ transform="rotate(-45 3.25 150.776)"
27
+ fill="white"
28
+ />
29
+ <rect
30
+ opacity="0.3"
31
+ x="-48.4546"
32
+ y="126.52"
33
+ width="227.136"
34
+ height="25.2373"
35
+ transform="rotate(-45 -48.4546 126.52)"
36
+ fill="white"
37
+ />
38
+ <rect x="27.75" y="29.5" width="74.5" height="81.5" rx="12" fill="white" />
39
+ <path
40
+ 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"
41
+ fill="white"
42
+ />
43
+ <path
44
+ fill-rule="evenodd"
45
+ clip-rule="evenodd"
46
+ 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"
47
+ fill="#2294F0"
48
+ />
49
+ <path
50
+ d="M50.072 49.088H52.03V54.5H50.072V49.088ZM52.074 46.382V48.153H50.028V46.382H52.074Z"
51
+ fill="white"
52
+ />
53
+ <path
54
+ opacity="0.2"
55
+ d="M41 74.5H63"
56
+ stroke="#2294F0"
57
+ stroke-width="4"
58
+ stroke-linecap="round"
59
+ stroke-linejoin="round"
60
+ />
61
+ <path
62
+ opacity="0.2"
63
+ d="M41 84.6157H84.1426"
64
+ stroke="#2294F0"
65
+ stroke-width="4"
66
+ stroke-linecap="round"
67
+ stroke-linejoin="round"
68
+ />
69
+ <path
70
+ opacity="0.2"
71
+ d="M41 94.7314H84.1426"
72
+ stroke="#2294F0"
73
+ stroke-width="4"
74
+ stroke-linecap="round"
75
+ stroke-linejoin="round"
76
+ />
77
+ <path
78
+ opacity="0.2"
79
+ d="M41 104.731H84.1426"
80
+ stroke="#2294F0"
81
+ stroke-width="4"
82
+ stroke-linecap="round"
83
+ stroke-linejoin="round"
84
+ />
85
+ </g>
86
+ </svg>
87
+ );
@@ -0,0 +1,61 @@
1
+ import React from "react";
2
+
3
+ export default () => (
4
+ <svg width="130" height="130" viewBox="0 0 130 130" fill="none" xmlns="http://www.w3.org/2000/svg">
5
+ <path
6
+ fill-rule="evenodd"
7
+ clip-rule="evenodd"
8
+ 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"
9
+ fill="#AFEBC3"
10
+ />
11
+ <mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="130" height="130">
12
+ <path
13
+ fill-rule="evenodd"
14
+ clip-rule="evenodd"
15
+ 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"
16
+ fill="white"
17
+ />
18
+ </mask>
19
+ <g mask="url(#mask0)">
20
+ <rect
21
+ opacity="0.3"
22
+ x="3.25"
23
+ y="150.776"
24
+ width="227.136"
25
+ height="25.2373"
26
+ transform="rotate(-45 3.25 150.776)"
27
+ fill="white"
28
+ />
29
+ <rect
30
+ opacity="0.3"
31
+ x="-48.4545"
32
+ y="126.52"
33
+ width="227.136"
34
+ height="25.2373"
35
+ transform="rotate(-45 -48.4545 126.52)"
36
+ fill="white"
37
+ />
38
+ <path
39
+ 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"
40
+ fill="#14A957"
41
+ />
42
+ <path d="M30.9045 51.8818H97.9136V117.118H30.9045V51.8818Z" fill="white" />
43
+ <path
44
+ opacity="0.1"
45
+ 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"
46
+ fill="#24BE6A"
47
+ />
48
+ <path
49
+ d="M58.2093 83.4849L63.0246 88.3002L71.3036 79.047"
50
+ stroke="#24BE6A"
51
+ stroke-width="3.76358"
52
+ stroke-linecap="round"
53
+ stroke-linejoin="round"
54
+ />
55
+ <path
56
+ 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"
57
+ fill="#24BE6A"
58
+ />
59
+ </g>
60
+ </svg>
61
+ );
@@ -15,13 +15,13 @@ export const RateSelector = ({
15
15
  <div className={s["rate-selector"]}>
16
16
  <div
17
17
  className={`${s["rate-selector-item"]} ${!isFixed ? s["selected"] : ""}`}
18
- onClick={() => setIsFixed(false)}
18
+ onClick={() => (isFixed ? setIsFixed(false) : null)}
19
19
  >
20
20
  <div className={s["rate-selector-item-text"]}>{translations.floatingRate}</div>
21
21
  </div>
22
22
  <div
23
23
  className={`${s["rate-selector-item"]} ${isFixed ? s["selected"] : ""}`}
24
- onClick={() => setIsFixed(true)}
24
+ onClick={() => (!isFixed ? setIsFixed(true) : null)}
25
25
  >
26
26
  <div className={s["rate-selector-item-text"]}>{translations.fixedRate}</div>
27
27
  </div>
@@ -16,15 +16,13 @@ import FailedValidationIcon from "../../../assets/wrappedImages/failedValidation
16
16
  export const Validation = ({ text = "", isSuccessAlert }) => {
17
17
  return (
18
18
  <div className={s["validation"]}>
19
- <div>
20
- {isSuccessAlert ? (
21
- // <img src={successfulValidationIcon} alt="validation icon" />
22
- <SuccessfulValidationIcon />
23
- ) : (
24
- // <img src={failedValidationIcon} alt="validation icon" />
25
- <FailedValidationIcon />
26
- )}
27
- </div>
19
+ {isSuccessAlert ? (
20
+ // <img src={successfulValidationIcon} alt="validation icon" />
21
+ <SuccessfulValidationIcon />
22
+ ) : (
23
+ // <img src={failedValidationIcon} alt="validation icon" />
24
+ <FailedValidationIcon />
25
+ )}
28
26
  <span className={s["validation-text"]}>{text}</span>
29
27
  </div>
30
28
  );
@@ -5,6 +5,10 @@
5
5
  align-items: center;
6
6
  margin-top: Margin("3");
7
7
 
8
+ svg {
9
+ flex-shrink: 0;
10
+ }
11
+
8
12
  &-text {
9
13
  text-align: left;
10
14
  color: SolidColor("sky");
@@ -1,5 +1,6 @@
1
1
  import React, { useEffect, useState } from "react";
2
2
  import { BigNumber } from "bignumber.js";
3
+ import { CSSTransition } from "react-transition-group";
3
4
 
4
5
  import s from "./amount-input.module.scss";
5
6
  import WalletIcon from "../../../assets/wrappedImages/walletIcon.jsx";
@@ -251,55 +252,63 @@ export const AmountInput = React.forwardRef(
251
252
  </div>
252
253
  )}
253
254
  </div>
254
- {fiatCurrencyCode !== null ? (
255
- <>
256
- <div
257
- className={
258
- s["requested-amount-fiat"] + (interactedWith ? " " + s["interacted"] : "")
259
- }
260
- >
261
- {interactedWith ? (
262
- <>
263
- <span className={s["requested-amount-fiat-currency"]}>
264
- {(estimateAmount ? "~ " : "") + fiatCurrencyCode}
265
- </span>
266
-
267
- {!isLoading && cryptoAssetToFiatRate != null ? (
268
- <input
269
- type="text"
270
- inputMode="decimal"
271
- className={s["requested-amount-fiat-input"]}
272
- value={fiatAmountValue}
273
- disabled={disabled || locked}
274
- onChange={e => handleChangeAmountFiat(e.target.value)}
275
- placeholder={placeholderByDecimalCount(fiatCurrencyDecimals)}
276
- autoFocus={fiatAmountAutoFocus}
277
- onFocus={e => callHandlingErrors(() => setIsInFocus(true), e)}
278
- onBlur={e => callHandlingErrors(() => setIsInFocus(false), e)}
279
- />
280
- ) : (
281
- <div className={s["requested-amount-fiat-skeleton"]}>
282
- <span
283
- className={
284
- s["requested-amount-fiat-skeleton-content"] +
285
- " " +
286
- "skeleton-dark"
287
- }
288
- ></span>
289
- </div>
290
- )}
291
- </>
292
- ) : (
293
- <span
294
- className={s["requested-amount-fiat-placeholder"]}
295
- onClick={e => callHandlingErrors(() => handleFiatInteraction(), e)}
296
- >
297
- {fiatInputPlaceholderText}
255
+ <CSSTransition
256
+ in={fiatCurrencyCode !== null}
257
+ timeout={200}
258
+ classNames={{
259
+ enter: s["requested-amount-fiat-enter"],
260
+ enterActive: s["requested-amount-fiat-enter-active"],
261
+ exit: s["requested-amount-fiat-exit"],
262
+ exitActive: s["requested-amount-fiat-exit-active"],
263
+ }}
264
+ unmountOnExit
265
+ >
266
+ <div
267
+ className={
268
+ s["requested-amount-fiat"] + (interactedWith ? " " + s["interacted"] : "")
269
+ }
270
+ >
271
+ {interactedWith ? (
272
+ <>
273
+ <span className={s["requested-amount-fiat-currency"]}>
274
+ {(estimateAmount ? "~ " : "") + fiatCurrencyCode}
298
275
  </span>
299
- )}
300
- </div>
301
- </>
302
- ) : null}
276
+
277
+ {!isLoading && cryptoAssetToFiatRate != null ? (
278
+ <input
279
+ type="text"
280
+ inputMode="decimal"
281
+ className={s["requested-amount-fiat-input"]}
282
+ value={fiatAmountValue}
283
+ disabled={disabled || locked}
284
+ onChange={e => handleChangeAmountFiat(e.target.value)}
285
+ placeholder={placeholderByDecimalCount(fiatCurrencyDecimals)}
286
+ autoFocus={fiatAmountAutoFocus}
287
+ onFocus={e => callHandlingErrors(() => setIsInFocus(true), e)}
288
+ onBlur={e => callHandlingErrors(() => setIsInFocus(false), e)}
289
+ />
290
+ ) : (
291
+ <div className={s["requested-amount-fiat-skeleton"]}>
292
+ <span
293
+ className={
294
+ s["requested-amount-fiat-skeleton-content"] +
295
+ " " +
296
+ "skeleton-dark"
297
+ }
298
+ ></span>
299
+ </div>
300
+ )}
301
+ </>
302
+ ) : (
303
+ <span
304
+ className={s["requested-amount-fiat-placeholder"]}
305
+ onClick={e => callHandlingErrors(() => handleFiatInteraction(), e)}
306
+ >
307
+ {fiatInputPlaceholderText}
308
+ </span>
309
+ )}
310
+ </div>
311
+ </CSSTransition>
303
312
  </div>
304
313
  {showChangeAssetButton && ticker ? (
305
314
  <div className={s["amount-input-container-button-wrapper"]} ref={buttonForwardRef}>
@@ -9,6 +9,7 @@
9
9
  gap: 10px;
10
10
  justify-content: space-between;
11
11
  transition: 0.2s box-shadow ease;
12
+ height: 86.5px;
12
13
 
13
14
  &.upper-form-position {
14
15
  border-bottom-left-radius: 4px;
@@ -152,6 +153,38 @@
152
153
  align-items: center;
153
154
  font-size: 14px;
154
155
 
156
+ &-enter {
157
+ opacity: 0;
158
+ margin-top: -19px;
159
+ transform: translateY(24px);
160
+ }
161
+
162
+ &-enter-active {
163
+ opacity: 1;
164
+ transition:
165
+ opacity 0.2s $transitionEaseOut,
166
+ margin-top 0.2s $transitionEaseOut,
167
+ transform 0.2s $transitionEaseOut;
168
+ margin-top: 0;
169
+ transform: translateY(0);
170
+ }
171
+
172
+ &-exit {
173
+ opacity: 1;
174
+ margin-top: 0;
175
+ transform: translateY(0);
176
+ }
177
+
178
+ &-exit-active {
179
+ opacity: 0;
180
+ transition:
181
+ opacity 0.1s $transitionEaseOut,
182
+ margin-top 0.2s $transitionEaseOut,
183
+ transform 0.2s $transitionEaseOut;
184
+ margin-top: -19px;
185
+ transform: translateY(24px);
186
+ }
187
+
155
188
  &-currency,
156
189
  &-input,
157
190
  &-placeholder {