@rabbitio/ui-kit 1.0.0-beta.123 → 1.0.0-beta.124

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 (204) hide show
  1. package/coverage/clover.xml +610 -566
  2. package/coverage/coverage-final.json +4 -4
  3. package/coverage/index.html +23 -23
  4. package/coverage/rabbit-ui-kit/index.html +1 -1
  5. package/coverage/rabbit-ui-kit/index.js.html +1 -1
  6. package/coverage/rabbit-ui-kit/src/common-apis/adapters/analyticsAdapters/googleAnalyticsAdapter.js.html +1 -1
  7. package/coverage/rabbit-ui-kit/src/common-apis/adapters/analyticsAdapters/index.html +1 -1
  8. package/coverage/rabbit-ui-kit/src/common-apis/adapters/analyticsAdapters/metrikaAdapter.js.html +1 -1
  9. package/coverage/rabbit-ui-kit/src/common-apis/adapters/analyticsAdapters/mixpanelAdapter.js.html +1 -1
  10. package/coverage/rabbit-ui-kit/src/common-apis/adapters/axiosAdapter.js.html +1 -1
  11. package/coverage/rabbit-ui-kit/src/common-apis/adapters/index.html +1 -1
  12. package/coverage/rabbit-ui-kit/src/common-apis/adapters/qrUtils.js.html +1 -1
  13. package/coverage/rabbit-ui-kit/src/common-apis/external-apis/apiGroups.js.html +1 -1
  14. package/coverage/rabbit-ui-kit/src/common-apis/external-apis/emailAPI.js.html +1 -1
  15. package/coverage/rabbit-ui-kit/src/common-apis/external-apis/index.html +1 -1
  16. package/coverage/rabbit-ui-kit/src/common-apis/external-apis/ipAddressProviders.js.html +1 -1
  17. package/coverage/rabbit-ui-kit/src/common-apis/globalConstants.jsx.html +1 -1
  18. package/coverage/rabbit-ui-kit/src/common-apis/index.html +1 -1
  19. package/coverage/rabbit-ui-kit/src/common-apis/models/blockchain.js.html +1 -1
  20. package/coverage/rabbit-ui-kit/src/common-apis/models/coin.js.html +1 -1
  21. package/coverage/rabbit-ui-kit/src/common-apis/models/index.html +1 -1
  22. package/coverage/rabbit-ui-kit/src/common-apis/models/protocol.js.html +1 -1
  23. package/coverage/rabbit-ui-kit/src/common-apis/services/fiatCurrenciesService.js.html +1 -1
  24. package/coverage/rabbit-ui-kit/src/common-apis/services/index.html +1 -1
  25. package/coverage/rabbit-ui-kit/src/common-apis/utils/amountUtils.js.html +40 -16
  26. package/coverage/rabbit-ui-kit/src/common-apis/utils/cache.js.html +1 -1
  27. package/coverage/rabbit-ui-kit/src/common-apis/utils/emailUtils.js.html +1 -1
  28. package/coverage/rabbit-ui-kit/src/common-apis/utils/errorUtils.js.html +1 -1
  29. package/coverage/rabbit-ui-kit/src/common-apis/utils/index.html +11 -11
  30. package/coverage/rabbit-ui-kit/src/common-apis/utils/logging/index.html +1 -1
  31. package/coverage/rabbit-ui-kit/src/common-apis/utils/logging/logger.js.html +1 -1
  32. package/coverage/rabbit-ui-kit/src/common-apis/utils/logging/logsStorage.js.html +1 -1
  33. package/coverage/rabbit-ui-kit/src/common-apis/utils/postponeExecution.js.html +1 -1
  34. package/coverage/rabbit-ui-kit/src/common-apis/utils/rabbitTicker.js.html +1 -1
  35. package/coverage/rabbit-ui-kit/src/common-apis/utils/safeStringify.js.html +1 -1
  36. package/coverage/rabbit-ui-kit/src/index.html +1 -1
  37. package/coverage/rabbit-ui-kit/src/index.js.html +1 -1
  38. package/coverage/rabbit-ui-kit/src/robust-api-caller/cacheAndConcurrentRequestsResolver.js.html +1 -1
  39. package/coverage/rabbit-ui-kit/src/robust-api-caller/cachedRobustExternalApiCallerService.js.html +1 -1
  40. package/coverage/rabbit-ui-kit/src/robust-api-caller/cancelProcessing.js.html +1 -1
  41. package/coverage/rabbit-ui-kit/src/robust-api-caller/concurrentCalculationsMetadataHolder.js.html +1 -1
  42. package/coverage/rabbit-ui-kit/src/robust-api-caller/externalApiProvider.js.html +1 -1
  43. package/coverage/rabbit-ui-kit/src/robust-api-caller/externalServicesStatsCollector.js.html +1 -1
  44. package/coverage/rabbit-ui-kit/src/robust-api-caller/index.html +1 -1
  45. package/coverage/rabbit-ui-kit/src/robust-api-caller/robustExternalAPICallerService.js.html +1 -1
  46. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/changeHeroSwapProvider.js.html +1 -1
  47. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/changeNowSwapProvider.js.html +1 -1
  48. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/exolixSwapProvider.js.html +1 -1
  49. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/goexmeSwapProvider.js.html +1 -1
  50. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/index.html +14 -14
  51. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/letsExchangeSwapProvider.js.html +1 -1
  52. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/retriableErrorsUtils.js.html +1 -1
  53. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/swapProvider.js.html +1 -1
  54. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/swapspaceSwapProvider.js.html +101 -11
  55. package/coverage/rabbit-ui-kit/src/swaps-lib/external-apis/utils.js.html +1 -1
  56. package/coverage/rabbit-ui-kit/src/swaps-lib/models/baseSwapCreationInfo.js.html +1 -1
  57. package/coverage/rabbit-ui-kit/src/swaps-lib/models/existingSwap.js.html +1 -1
  58. package/coverage/rabbit-ui-kit/src/swaps-lib/models/existingSwapWithFiatData.js.html +1 -1
  59. package/coverage/rabbit-ui-kit/src/swaps-lib/models/index.html +1 -1
  60. package/coverage/rabbit-ui-kit/src/swaps-lib/models/partner.js.html +1 -1
  61. package/coverage/rabbit-ui-kit/src/swaps-lib/models/swapProviderCoinInfo.js.html +1 -1
  62. package/coverage/rabbit-ui-kit/src/swaps-lib/services/index.html +1 -1
  63. package/coverage/rabbit-ui-kit/src/swaps-lib/services/publicSwapService.js.html +1 -1
  64. package/coverage/rabbit-ui-kit/src/swaps-lib/utils/index.html +1 -1
  65. package/coverage/rabbit-ui-kit/src/swaps-lib/utils/swapUtils.js.html +1 -1
  66. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/arrowIcon.jsx.html +1 -1
  67. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/arrowTosca.jsx.html +1 -1
  68. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/arrowWhite.jsx.html +1 -1
  69. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/darkRectangle.jsx.html +1 -1
  70. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/determinedError.jsx.html +1 -1
  71. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/failedValidationIcon.jsx.html +1 -1
  72. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/index.html +1 -1
  73. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/infoIcon.jsx.html +1 -1
  74. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/messageIcon.jsx.html +1 -1
  75. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/noticeQuestionIcon.jsx.html +1 -1
  76. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/successfulValidationIcon.jsx.html +1 -1
  77. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/supportDialogImage.jsx.html +1 -1
  78. package/coverage/rabbit-ui-kit/src/ui-kit/assets/wrappedImages/walletIcon.jsx.html +1 -1
  79. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/AssetIcon/AssetIcon.jsx.html +1 -1
  80. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/AssetIcon/index.html +1 -1
  81. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/AssetSelection/AssetSelection.jsx.html +1 -1
  82. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/AssetSelection/index.html +1 -1
  83. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/BackgroundTitle/BackgroundTitle.jsx.html +1 -1
  84. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/BackgroundTitle/index.html +1 -1
  85. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/InformationMessage/InformationMessage.jsx.html +1 -1
  86. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/InformationMessage/index.html +1 -1
  87. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Input/Input.jsx.html +1 -1
  88. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Input/index.html +1 -1
  89. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/LoadingDots/LoadingDots.jsx.html +1 -1
  90. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/LoadingDots/index.html +1 -1
  91. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/NoticeIcon/NoticeIcon.jsx.html +1 -1
  92. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/NoticeIcon/index.html +1 -1
  93. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/QrCode/QrCode.jsx.html +1 -1
  94. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/QrCode/index.html +1 -1
  95. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/RateSelector/RateSelector.jsx.html +1 -1
  96. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/RateSelector/index.html +1 -1
  97. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/SupportChat/SupportChat.jsx.html +1 -1
  98. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/SupportChat/index.html +1 -1
  99. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Textarea/Textarea.jsx.html +1 -1
  100. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Textarea/index.html +1 -1
  101. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/TitleBox/TitleBox.jsx.html +1 -1
  102. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/TitleBox/index.html +1 -1
  103. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Tooltip/Tooltip.jsx.html +1 -1
  104. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Tooltip/index.html +1 -1
  105. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/TwoLinesOfText/LinesOfText.jsx.html +1 -1
  106. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/TwoLinesOfText/index.html +1 -1
  107. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Validation/Validation.jsx.html +1 -1
  108. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/Validation/index.html +1 -1
  109. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/Button/Button.jsx.html +20 -5
  110. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/Button/index.html +5 -5
  111. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/Close/Close.jsx.html +1 -1
  112. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/Close/index.html +1 -1
  113. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/LinkButton/LinkButton.jsx.html +1 -1
  114. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/LinkButton/index.html +1 -1
  115. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/RadioButtonWithText/RadioButtonWithText.jsx.html +1 -1
  116. package/coverage/rabbit-ui-kit/src/ui-kit/components/atoms/buttons/RadioButtonWithText/index.html +1 -1
  117. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/AmountInput/AmountInput.jsx.html +1 -1
  118. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/AmountInput/index.html +1 -1
  119. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/CoinPicker/CoinPicker.jsx.html +1 -1
  120. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/CoinPicker/index.html +1 -1
  121. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/ColoredNotice/ColoredNotice.jsx.html +1 -1
  122. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/ColoredNotice/index.html +1 -1
  123. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/LineWithIconLink/LineWithIconLink.jsx.html +1 -1
  124. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/LineWithIconLink/index.html +1 -1
  125. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/LogoCarousel/LogoCarousel.jsx.html +1 -1
  126. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/LogoCarousel/index.html +1 -1
  127. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/SearchableCoinsList/SearchableCoinsList.jsx.html +1 -1
  128. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/SearchableCoinsList/index.html +1 -1
  129. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/TitledLineWithIconLink/TitledLineWithIconLink.jsx.html +1 -1
  130. package/coverage/rabbit-ui-kit/src/ui-kit/components/molecules/TitledLineWithIconLink/index.html +1 -1
  131. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/CoinPickerDialogStep/CoinPickerDialogStep.jsx.html +1 -1
  132. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/CoinPickerDialogStep/index.html +1 -1
  133. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/Dialog.jsx.html +1 -1
  134. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/DialogButtons/DialogButtons.jsx.html +1 -1
  135. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/DialogButtons/index.html +1 -1
  136. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/DialogStep/DialogStep.jsx.html +1 -1
  137. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/DialogStep/index.html +1 -1
  138. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/Dialog/index.html +1 -1
  139. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/SwapForm/SwapForm.jsx.html +1 -1
  140. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/SwapForm/index.html +1 -1
  141. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/WaitlistSubscription/WaitlistSubscription.jsx.html +1 -1
  142. package/coverage/rabbit-ui-kit/src/ui-kit/components/organisms/WaitlistSubscription/index.html +1 -1
  143. package/coverage/rabbit-ui-kit/src/ui-kit/components/templates/DeterminedErrorDialogStep/DeterminedErrorDialogStep.jsx.html +1 -1
  144. package/coverage/rabbit-ui-kit/src/ui-kit/components/templates/DeterminedErrorDialogStep/index.html +1 -1
  145. package/coverage/rabbit-ui-kit/src/ui-kit/hooks/index.html +1 -1
  146. package/coverage/rabbit-ui-kit/src/ui-kit/hooks/useCallHandlingErrors.js.html +1 -1
  147. package/coverage/rabbit-ui-kit/src/ui-kit/hooks/useIsHydrated.js.html +1 -1
  148. package/coverage/rabbit-ui-kit/src/ui-kit/hooks/useReferredState.js.html +1 -1
  149. package/coverage/rabbit-ui-kit/src/ui-kit/utils/index.html +1 -1
  150. package/coverage/rabbit-ui-kit/src/ui-kit/utils/inputValueProviders.js.html +1 -1
  151. package/coverage/rabbit-ui-kit/src/ui-kit/utils/searchCoins.js.html +1 -1
  152. package/coverage/rabbit-ui-kit/src/ui-kit/utils/textUtils.js.html +1 -1
  153. package/coverage/rabbit-ui-kit/src/ui-kit/utils/uiUtils.js.html +1 -1
  154. package/coverage/rabbit-ui-kit/src/ui-kit/utils/urlQueryUtils.js.html +1 -1
  155. package/coverage/rabbit-ui-kit/stories/atoms/BackgroundTitle.stories.jsx.html +1 -1
  156. package/coverage/rabbit-ui-kit/stories/atoms/LinesOfText.stories.jsx.html +1 -1
  157. package/coverage/rabbit-ui-kit/stories/atoms/LoadingDots.stories.jsx.html +1 -1
  158. package/coverage/rabbit-ui-kit/stories/atoms/QrCode.stories.jsx.html +1 -1
  159. package/coverage/rabbit-ui-kit/stories/atoms/RateSelector.stories.jsx.html +1 -1
  160. package/coverage/rabbit-ui-kit/stories/atoms/Validation.stories.jsx.html +1 -1
  161. package/coverage/rabbit-ui-kit/stories/atoms/buttons/Button.stories.jsx.html +7 -4
  162. package/coverage/rabbit-ui-kit/stories/atoms/buttons/Close.stories.jsx.html +1 -1
  163. package/coverage/rabbit-ui-kit/stories/atoms/buttons/LinkButton.stories.jsx.html +1 -1
  164. package/coverage/rabbit-ui-kit/stories/atoms/buttons/index.html +5 -5
  165. package/coverage/rabbit-ui-kit/stories/atoms/index.html +1 -1
  166. package/coverage/rabbit-ui-kit/stories/molecules/AmountInput.stories.jsx.html +1 -1
  167. package/coverage/rabbit-ui-kit/stories/molecules/CoinPicker.stories.jsx.html +1 -1
  168. package/coverage/rabbit-ui-kit/stories/molecules/ColoredNotice.stories.jsx.html +1 -1
  169. package/coverage/rabbit-ui-kit/stories/molecules/LineWithIconLink.stories.jsx.html +1 -1
  170. package/coverage/rabbit-ui-kit/stories/molecules/LogoCarousel.stories.jsx.html +1 -1
  171. package/coverage/rabbit-ui-kit/stories/molecules/TitledLineWithIconLink.stories.jsx.html +1 -1
  172. package/coverage/rabbit-ui-kit/stories/molecules/index.html +1 -1
  173. package/coverage/rabbit-ui-kit/stories/organisms/Dialog/Dialog.stories.jsx.html +1 -1
  174. package/coverage/rabbit-ui-kit/stories/organisms/Dialog/DialogButtons/DialogButtons.stories.jsx.html +1 -1
  175. package/coverage/rabbit-ui-kit/stories/organisms/Dialog/DialogButtons/index.html +1 -1
  176. package/coverage/rabbit-ui-kit/stories/organisms/Dialog/DialogStep/DialogStep.stories.jsx.html +1 -1
  177. package/coverage/rabbit-ui-kit/stories/organisms/Dialog/DialogStep/index.html +1 -1
  178. package/coverage/rabbit-ui-kit/stories/organisms/Dialog/index.html +1 -1
  179. package/coverage/rabbit-ui-kit/stories/organisms/WaitlistSubscription.stories.jsx.html +1 -1
  180. package/coverage/rabbit-ui-kit/stories/organisms/index.html +1 -1
  181. package/coverage/rabbit-ui-kit/stories/stubs/coins.jsx.html +1 -1
  182. package/coverage/rabbit-ui-kit/stories/stubs/exampleContent.jsx.html +1 -1
  183. package/coverage/rabbit-ui-kit/stories/stubs/index.html +1 -1
  184. package/coverage/rabbit-ui-kit/stories/templates/DeterminedErrorDialogStep.stories.jsx.html +1 -1
  185. package/coverage/rabbit-ui-kit/stories/templates/index.html +1 -1
  186. package/dist/global.css +10 -0
  187. package/dist/global.css.map +1 -1
  188. package/dist/index.cjs +137 -108
  189. package/dist/index.cjs.map +1 -1
  190. package/dist/index.css +3 -0
  191. package/dist/index.css.map +1 -1
  192. package/dist/index.modern.js +47 -14
  193. package/dist/index.modern.js.map +1 -1
  194. package/dist/index.module.js +137 -108
  195. package/dist/index.module.js.map +1 -1
  196. package/dist/index.umd.js +137 -108
  197. package/dist/index.umd.js.map +1 -1
  198. package/package.json +1 -1
  199. package/src/common-apis/utils/amountUtils.js +18 -10
  200. package/src/swaps-lib/external-apis/swapspaceSwapProvider.js +32 -2
  201. package/src/ui-kit/assets/styles/_mixins.scss +9 -0
  202. package/src/ui-kit/assets/styles/global.scss +4 -0
  203. package/src/ui-kit/components/atoms/buttons/Button/Button.jsx +6 -1
  204. package/src/ui-kit/components/atoms/buttons/Button/Button.module.scss +4 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rabbitio/ui-kit",
3
- "version": "1.0.0-beta.123",
3
+ "version": "1.0.0-beta.124",
4
4
  "description": "Rabbit.io react.js components kit",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -16,6 +16,7 @@ export class AmountUtils {
16
16
  ticker: true, // If true, currency code will be shown
17
17
  enableCurrencySymbols: true, // Enables currency symbols where available. Requires "ticker: true"
18
18
  collapsible: true, // Enables minimization of amounts over 1 million (example: 1.52M)
19
+ collapseThousands: false, // Enables "K" minimization for amounts over 1 thousand (example: 1.52K)
19
20
  limitTotalLength: true, // Limits the total amount length to maxTotalLength
20
21
  extraSmallLength: false, // Limits the total amount length to extraSmallMaxTotalLength
21
22
  };
@@ -48,8 +49,11 @@ export class AmountUtils {
48
49
  : BigNumber(amount);
49
50
 
50
51
  let processedAmount = BigNumber(trimmedByMaxDigits);
51
- if (params.collapsible && processedAmount.gte(BigNumber("1000"))) {
52
- processedAmount = this._collapseToMillionsAndFormat(
52
+ const shouldCollapseThousands =
53
+ params.collapsible && params.collapseThousands && processedAmount.gte(BigNumber("1000"));
54
+ const shouldCollapseMillions = params.collapsible && processedAmount.gte(BigNumber("1000000"));
55
+ if (shouldCollapseMillions || shouldCollapseThousands) {
56
+ processedAmount = this._collapseBigNumberToSuffixAndFormat(
53
57
  processedAmount,
54
58
  this.collapsedDecimalCount,
55
59
  params
@@ -77,6 +81,7 @@ export class AmountUtils {
77
81
  static defaultCryptoParams = {
78
82
  ticker: true, // If true, asset ticker will be shown
79
83
  collapsible: true, // Enables minimization of amounts over 1 million (example: 1.52M)
84
+ collapseThousands: false, // Enables "K" minimization for amounts over 1 thousand (example: 1.52K)
80
85
  trim: true, // Cuts the right part of the amount if necessary, and adds ".." in the end
81
86
  limitTotalLength: true, // Limits the total amount length to maxTotalLength
82
87
  extraSmallLength: false, // Limits the total amount length to extraSmallMaxTotalLength
@@ -164,22 +169,25 @@ export class AmountUtils {
164
169
  processedAmount = limitResult.processedAmount;
165
170
  addPeriods ||= limitResult.addPeriods;
166
171
 
167
- let wereMillionsCollapsed = false;
168
- if (params.collapsible && amountBigNumber.gte("1000000")) {
169
- // Collapse the 1M+ amounts if applicable
170
- processedAmount = this._collapseToMillionsAndFormat(
172
+ let wasCollapsed = false;
173
+ const shouldCollapse =
174
+ params.collapsible &&
175
+ (amountBigNumber.gte("1000000") || (params.collapseThousands && amountBigNumber.gte("1000")));
176
+ if (shouldCollapse) {
177
+ // Collapse the large amounts if applicable
178
+ processedAmount = this._collapseBigNumberToSuffixAndFormat(
171
179
  BigNumber(processedAmount),
172
180
  this.collapsedDecimalCount,
173
181
  params
174
182
  );
175
- wereMillionsCollapsed = true;
183
+ wasCollapsed = true;
176
184
  } else if (params.numberPartsSeparator) {
177
185
  // Add separators to integer part of the amount
178
186
  processedAmount = BigNumber(processedAmount).toFormat();
179
187
  }
180
188
 
181
189
  // Adding periods, if the amount was shortened
182
- if (params.periods && addPeriods && !wereMillionsCollapsed) {
190
+ if (params.periods && addPeriods && !wasCollapsed) {
183
191
  processedAmount = processedAmount + this.periods;
184
192
  }
185
193
 
@@ -240,9 +248,9 @@ export class AmountUtils {
240
248
  * @param amountBigNumber {BigNumber} The number value to be trimmed
241
249
  * @param decimalCount {number} The number of digits after period to keep in millions representation
242
250
  * @param params {object} params object
243
- * @return {string} A shortened string, converted into "millions" format, if the amount exceeds 1 million
251
+ * @return {string} A potentially shortened string
244
252
  */
245
- static _collapseToMillionsAndFormat(amountBigNumber, decimalCount, params = {}) {
253
+ static _collapseBigNumberToSuffixAndFormat(amountBigNumber, decimalCount, params = {}) {
246
254
  try {
247
255
  const thousand = BigNumber("1000");
248
256
  const million = BigNumber("1000000");
@@ -186,12 +186,43 @@ export class SwapspaceSwapProvider extends SwapProvider {
186
186
  reason: SwapProvider.NO_SWAPS_REASONS.NOT_SUPPORTED,
187
187
  };
188
188
  }
189
+ await this._fetchPartnersListIfNeeded();
190
+ const bannedPartnersSet = new Set(bannedPartners);
191
+ const whitelistedPartnersSet = whitelistedPartners == null ? null : new Set(whitelistedPartners);
192
+ const finalAllowedSwapspacePartners = this._partners
193
+ .map(partner => partner?.path)
194
+ .filter(
195
+ partnerId =>
196
+ typeof partnerId === "string" &&
197
+ partnerId.length > 0 &&
198
+ !bannedPartnersSet.has(partnerId) &&
199
+ (whitelistedPartnersSet == null || whitelistedPartnersSet.has(partnerId))
200
+ );
201
+ if (this._partners.length > 0 && finalAllowedSwapspacePartners.length === 0) {
202
+ Logger.log("No allowed swapspace partners to request after restrictions.", loggerSource);
203
+ return {
204
+ result: false,
205
+ reason: SwapProvider.NO_SWAPS_REASONS.NOT_SUPPORTED,
206
+ };
207
+ }
189
208
  /* Here we use not documented parameter 'estimated=false'. This parameter controls whether we want to use
190
209
  * cached rate values stored in swapspace cache. Their support says they store at most for 30 sec.
191
210
  * But we are better off using the most actual rates.
192
211
  */
212
+ const requestParams = new URLSearchParams({
213
+ fromCurrency: fromCoinSwapspaceDetails.code,
214
+ fromNetwork: fromCoinSwapspaceDetails.network,
215
+ toNetwork: toCoinSwapspaceDetails.network,
216
+ toCurrency: toCoinSwapspaceDetails.code,
217
+ amount: amountCoins,
218
+ estimated: "false",
219
+ });
220
+ if (finalAllowedSwapspacePartners?.length > 0) {
221
+ // Swapspace `partner` param filters estimation to specific comma-separated partner IDs.
222
+ requestParams.set("partner", finalAllowedSwapspacePartners.join(","));
223
+ }
193
224
  const response = await axios.get(
194
- `${this._URL}/api/v2/amounts?fromCurrency=${fromCoinSwapspaceDetails.code}&fromNetwork=${fromCoinSwapspaceDetails.network}&toNetwork=${toCoinSwapspaceDetails.network}&toCurrency=${toCoinSwapspaceDetails.code}&amount=${amountCoins}&estimated=false`,
225
+ `${this._URL}/api/v2/amounts?${requestParams.toString()}`,
195
226
  { headers: this._headers, ...createRobustTimeoutSetupForAxios() }
196
227
  );
197
228
  Logger.log(`Retrieved ${response?.data?.length} options`, loggerSource);
@@ -284,7 +315,6 @@ export class SwapspaceSwapProvider extends SwapProvider {
284
315
  const rate =
285
316
  bestOpt.toAmount && bestOpt.fromAmount ? BigNumber(bestOpt.toAmount).div(bestOpt.fromAmount) : null;
286
317
 
287
- await this._fetchPartnersListIfNeeded();
288
318
  const partner = this._partners.find(p => bestOpt?.partner?.toLowerCase() === p.path.toLowerCase());
289
319
  const isRefundAddressRequired =
290
320
  partner == null ? true : bestOpt.fixed ? partner.reqFixedRefund : partner.reqFloatRefund;
@@ -56,4 +56,13 @@
56
56
  margin: 0;
57
57
  color: SolidColor("dark");
58
58
  }
59
+ @if ($tag == "psmall") {
60
+ display: block;
61
+ font-size: 12px;
62
+ line-height: 22px;
63
+ letter-spacing: $letterSpacing;
64
+ font-weight: $medium;
65
+ margin: 0;
66
+ color: SolidColor("dark");
67
+ }
59
68
  }
@@ -169,3 +169,7 @@ h6 {
169
169
  p {
170
170
  @include typograpy("p");
171
171
  }
172
+
173
+ psmall {
174
+ @include typograpy("psmall");
175
+ }
@@ -30,6 +30,7 @@ import { LoadingDots } from "../../LoadingDots/LoadingDots.jsx";
30
30
  * @param {boolean} [props.checkmarkOnClick=false] - Shows a checkmark instead of content for a few seconds after click.
31
31
  * @param {boolean} [props.propagatePrimaryButtonClick=true] - Propagates the primary button click event if true.
32
32
  * @param {boolean} [props.smallPaddingOnSmallMobiles=false] - Enables smaller paddings for extra-small screen sizes.
33
+ * @param {boolean} [props.noShadow=false] - Removes box-shadow styling when true.
33
34
  * @param {Function} [props.handleError=(func) => func()] - Function to handle errors during button click events.
34
35
  * @returns {React.ReactElement}
35
36
  */
@@ -52,6 +53,7 @@ export const Button = ({
52
53
  checkmarkOnClick = false,
53
54
  propagatePrimaryButtonClick = true,
54
55
  smallPaddingOnSmallMobiles = false,
56
+ noShadow = false,
55
57
  handleError = (func, event) => func(event),
56
58
  openNewTab = false,
57
59
  }) => {
@@ -104,7 +106,8 @@ export const Button = ({
104
106
  (fullWidthOnMobiles ? ` ${styles["full-width-on-mobiles"]}` : "") +
105
107
  (fullWidthOnTablets ? ` ${styles["full-width-on-tablets"]}` : "") +
106
108
  (isDisabled ? ` ${styles.disable}` : "") +
107
- (smallPaddingOnSmallMobiles ? ` ${styles["small-padding-on-small-mobiles"]}` : "");
109
+ (smallPaddingOnSmallMobiles ? ` ${styles["small-padding-on-small-mobiles"]}` : "") +
110
+ (noShadow ? ` ${styles["no-shadow"]}` : "");
108
111
 
109
112
  return (
110
113
  <>
@@ -190,6 +193,7 @@ Button.propTypes = {
190
193
  checkmarkOnClick: PropTypes.bool,
191
194
  propagatePrimaryButtonClick: PropTypes.bool,
192
195
  smallPaddingOnSmallMobiles: PropTypes.bool,
196
+ noShadow: PropTypes.bool,
193
197
  handleError: PropTypes.func,
194
198
  };
195
199
 
@@ -212,5 +216,6 @@ Button.defaultProps = {
212
216
  checkmarkOnClick: false,
213
217
  propagatePrimaryButtonClick: true,
214
218
  smallPaddingOnSmallMobiles: false,
219
+ noShadow: false,
215
220
  handleError: func => func(),
216
221
  };
@@ -28,6 +28,10 @@
28
28
  }
29
29
  }
30
30
 
31
+ &.no-shadow {
32
+ box-shadow: none !important;
33
+ }
34
+
31
35
  @media (max-width: $tablet-width) {
32
36
  &.full-width-on-tablets {
33
37
  max-width: 100%;