@gearbox-protocol/ui-kit 4.0.0-next.2 → 4.0.0-next.21

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 (314) hide show
  1. package/dist/cjs/components/assets-list-cell/assets-list-cell.cjs +1 -1
  2. package/dist/cjs/components/badge/badge.cjs +1 -1
  3. package/dist/cjs/components/badge/chip.cjs +1 -0
  4. package/dist/cjs/components/badge/index.cjs +1 -1
  5. package/dist/cjs/components/base/amount-input/token-select-panel.cjs +1 -1
  6. package/dist/cjs/components/base/borrow-rate-block/borrow-rate-block.cjs +1 -1
  7. package/dist/cjs/components/base/chart-with-side-card/chart-with-side-card.cjs +1 -1
  8. package/dist/cjs/components/base/detailed-page-title/detailed-page-title.cjs +1 -1
  9. package/dist/cjs/components/base/health-factor-block/health-factor-block.cjs +1 -1
  10. package/dist/cjs/components/base/history-chart/history-chart.cjs +1 -1
  11. package/dist/cjs/components/base/index.cjs +1 -1
  12. package/dist/cjs/components/base/info-list/index.cjs +1 -1
  13. package/dist/cjs/components/base/info-list/info-list.cjs +1 -1
  14. package/dist/cjs/components/base/leverage-input/leverage-input.cjs +1 -1
  15. package/dist/cjs/components/base/leverage-preset-chips/constants.cjs +1 -0
  16. package/dist/cjs/components/base/leverage-preset-chips/index.cjs +1 -0
  17. package/dist/cjs/components/base/leverage-preset-chips/leverage-preset-chips.cjs +1 -0
  18. package/dist/cjs/components/base/liquidation-price-block/liquidation-price-block.cjs +1 -1
  19. package/dist/cjs/components/base/manage-pane/constants.cjs +1 -1
  20. package/dist/cjs/components/base/manage-pane/manage-pane.cjs +1 -1
  21. package/dist/cjs/components/base/page-title/index.cjs +1 -1
  22. package/dist/cjs/components/base/page-title/page-title.cjs +1 -1
  23. package/dist/cjs/components/base/pool-apy-breakdown-card/pool-apy-breakdown-card.cjs +1 -1
  24. package/dist/cjs/components/base/position-assets/constants.cjs +1 -0
  25. package/dist/cjs/components/base/position-assets/index.cjs +1 -0
  26. package/dist/cjs/components/base/position-assets/position-assets.cjs +1 -0
  27. package/dist/cjs/components/base/review-button/constants.cjs +1 -1
  28. package/dist/cjs/components/base/review-button/review-button.cjs +1 -1
  29. package/dist/cjs/components/base/stat-badge/constants.cjs +1 -1
  30. package/dist/cjs/components/base/stat-badge/stat-badge.cjs +1 -1
  31. package/dist/cjs/components/base/strategy-apy-breakdown-card/constants.cjs +1 -1
  32. package/dist/cjs/components/base/strategy-apy-breakdown-card/strategy-apy-breakdown-card.cjs +1 -1
  33. package/dist/cjs/components/base/tabber/tabber.cjs +1 -1
  34. package/dist/cjs/components/base/time-to-liquidation-block/time-to-liquidation-block.cjs +1 -1
  35. package/dist/cjs/components/base/title-meta/constants.cjs +1 -1
  36. package/dist/cjs/components/base/title-meta/title-meta.cjs +1 -1
  37. package/dist/cjs/components/base/token-amount/token-amount.cjs +1 -1
  38. package/dist/cjs/components/base/values/constants.cjs +1 -1
  39. package/dist/cjs/components/base/values/index.cjs +1 -1
  40. package/dist/cjs/components/base/values/points-value.cjs +1 -0
  41. package/dist/cjs/components/base/values/position-status-badge.cjs +1 -0
  42. package/dist/cjs/components/base/values/position-type-badge.cjs +1 -1
  43. package/dist/cjs/components/base/values/scalars.cjs +1 -1
  44. package/dist/cjs/components/base-table/base-table-line.cjs +1 -0
  45. package/dist/cjs/components/base-table/base-table.cjs +1 -0
  46. package/dist/cjs/components/base-table/constants.cjs +1 -0
  47. package/dist/cjs/components/base-table/index.cjs +1 -0
  48. package/dist/cjs/components/checkbox/checkbox-labeled.cjs +1 -1
  49. package/dist/cjs/components/client-adapters/styled-rounded-image/styled-rounded-image.cjs +1 -1
  50. package/dist/cjs/components/collateral-allocation-tooltip/allocation-wheel.cjs +1 -0
  51. package/dist/cjs/components/collateral-allocation-tooltip/collateral-allocation-tooltip.cjs +1 -0
  52. package/dist/cjs/components/collateral-allocation-tooltip/constants.cjs +1 -0
  53. package/dist/cjs/components/collateral-allocation-tooltip/index.cjs +1 -0
  54. package/dist/cjs/components/composites/index.cjs +1 -1
  55. package/dist/cjs/components/composites/pool-assets-table/constants.cjs +1 -0
  56. package/dist/cjs/components/composites/pool-assets-table/index.cjs +1 -1
  57. package/dist/cjs/components/composites/pool-assets-table/pool-assets-table-head.cjs +1 -1
  58. package/dist/cjs/components/composites/pool-assets-table/pool-assets-table-row.cjs +1 -1
  59. package/dist/cjs/components/composites/pool-assets-table/pool-assets-table.cjs +1 -1
  60. package/dist/cjs/components/composites/tx-preview/confirm/amounts/TransactionConfirmAmountField.cjs +1 -1
  61. package/dist/cjs/components/composites/tx-preview/confirm/dialog/TransactionConfirmShell.cjs +1 -1
  62. package/dist/cjs/components/composites/tx-preview/confirm/dialog/constants.cjs +1 -1
  63. package/dist/cjs/components/composites/tx-preview/confirm/dialog/index.cjs +1 -1
  64. package/dist/cjs/components/composites/tx-preview/confirm/dialog/transactionConfirmShellTypes.cjs +1 -0
  65. package/dist/cjs/components/composites/tx-preview/confirm/index.cjs +1 -1
  66. package/dist/cjs/components/composites/tx-preview/index.cjs +1 -1
  67. package/dist/cjs/components/compound-apy/compound-apy.cjs +1 -1
  68. package/dist/cjs/components/detailed-page-title/detailed-page-title-explorer-dropdown.cjs +1 -1
  69. package/dist/cjs/components/filter/filter-chip.cjs +1 -1
  70. package/dist/cjs/components/graph/default-config.cjs +1 -1
  71. package/dist/cjs/components/graph/formatters.cjs +1 -1
  72. package/dist/cjs/components/graph/graph-view.cjs +1 -1
  73. package/dist/cjs/components/graph/graph.cjs +1 -1
  74. package/dist/cjs/components/hf-indicator/hf-indicator.cjs +1 -0
  75. package/dist/cjs/components/hf-indicator/index.cjs +1 -0
  76. package/dist/cjs/components/index.cjs +1 -1
  77. package/dist/cjs/components/infinite-scroll/index.cjs +1 -0
  78. package/dist/cjs/components/infinite-scroll/infinite-scroll-wrapper.cjs +1 -0
  79. package/dist/cjs/components/layout/app-footer/app-footer.cjs +1 -1
  80. package/dist/cjs/components/name-cell/index.cjs +1 -0
  81. package/dist/cjs/components/name-cell/name-cell.cjs +1 -0
  82. package/dist/cjs/components/network-icon/index.cjs +1 -1
  83. package/dist/cjs/components/network-icon/network-indicator.cjs +1 -0
  84. package/dist/cjs/components/sdk-status-pill/constants.cjs +1 -0
  85. package/dist/cjs/components/sdk-status-pill/index.cjs +1 -0
  86. package/dist/cjs/components/sdk-status-pill/sdk-status-pill.cjs +1 -0
  87. package/dist/cjs/components/sdk-status-pill/sdk-status.cjs +1 -0
  88. package/dist/cjs/components/trading-view/trading-view.cjs +1 -1
  89. package/dist/cjs/components/with-copy/with-copy.cjs +1 -1
  90. package/dist/cjs/components/yield-breakdown-tooltip/yield-breakdown-tooltip.cjs +1 -1
  91. package/dist/cjs/configs/tailwind-preset.cjs +1 -1
  92. package/dist/cjs/hooks/index.cjs +1 -1
  93. package/dist/cjs/hooks/use-observed-width-key.cjs +1 -0
  94. package/dist/cjs/index.cjs +1 -1
  95. package/dist/cjs/locale/en.json.cjs +1 -1
  96. package/dist/cjs/utils/format-leverage.cjs +1 -0
  97. package/dist/cjs/utils/format-money.cjs +1 -1
  98. package/dist/cjs/utils/index.cjs +1 -1
  99. package/dist/cjs/utils/leverage-presets.cjs +1 -0
  100. package/dist/esm/components/assets-list-cell/assets-list-cell.js +161 -159
  101. package/dist/esm/components/badge/badge.js +14 -8
  102. package/dist/esm/components/badge/chip.js +47 -0
  103. package/dist/esm/components/badge/index.js +8 -3
  104. package/dist/esm/components/base/amount-input/token-select-panel.js +33 -37
  105. package/dist/esm/components/base/borrow-rate-block/borrow-rate-block.js +32 -25
  106. package/dist/esm/components/base/chart-with-side-card/chart-with-side-card.js +6 -6
  107. package/dist/esm/components/base/detailed-page-title/detailed-page-title.js +26 -27
  108. package/dist/esm/components/base/health-factor-block/health-factor-block.js +25 -25
  109. package/dist/esm/components/base/history-chart/history-chart.js +82 -41
  110. package/dist/esm/components/base/index.js +156 -141
  111. package/dist/esm/components/base/info-list/index.js +5 -4
  112. package/dist/esm/components/base/info-list/info-list.js +52 -27
  113. package/dist/esm/components/base/leverage-input/leverage-input.js +18 -20
  114. package/dist/esm/components/base/leverage-preset-chips/constants.js +7 -0
  115. package/dist/esm/components/base/leverage-preset-chips/index.js +6 -0
  116. package/dist/esm/components/base/leverage-preset-chips/leverage-preset-chips.js +39 -0
  117. package/dist/esm/components/base/liquidation-price-block/liquidation-price-block.js +33 -28
  118. package/dist/esm/components/base/manage-pane/constants.js +3 -2
  119. package/dist/esm/components/base/manage-pane/manage-pane.js +154 -113
  120. package/dist/esm/components/base/page-title/index.js +5 -4
  121. package/dist/esm/components/base/page-title/page-title.js +31 -23
  122. package/dist/esm/components/base/pool-apy-breakdown-card/pool-apy-breakdown-card.js +23 -30
  123. package/dist/esm/components/base/position-assets/constants.js +8 -0
  124. package/dist/esm/components/base/position-assets/index.js +6 -0
  125. package/dist/esm/components/base/position-assets/position-assets.js +96 -0
  126. package/dist/esm/components/base/review-button/constants.js +3 -2
  127. package/dist/esm/components/base/review-button/review-button.js +35 -22
  128. package/dist/esm/components/base/stat-badge/constants.js +1 -0
  129. package/dist/esm/components/base/stat-badge/stat-badge.js +91 -47
  130. package/dist/esm/components/base/strategy-apy-breakdown-card/constants.js +8 -3
  131. package/dist/esm/components/base/strategy-apy-breakdown-card/strategy-apy-breakdown-card.js +191 -29
  132. package/dist/esm/components/base/tabber/tabber.js +67 -64
  133. package/dist/esm/components/base/time-to-liquidation-block/time-to-liquidation-block.js +31 -31
  134. package/dist/esm/components/base/title-meta/constants.js +1 -0
  135. package/dist/esm/components/base/title-meta/title-meta.js +53 -33
  136. package/dist/esm/components/base/token-amount/token-amount.js +17 -16
  137. package/dist/esm/components/base/values/constants.js +1 -0
  138. package/dist/esm/components/base/values/index.js +18 -13
  139. package/dist/esm/components/base/values/points-value.js +30 -0
  140. package/dist/esm/components/base/values/position-status-badge.js +26 -0
  141. package/dist/esm/components/base/values/position-type-badge.js +7 -6
  142. package/dist/esm/components/base/values/scalars.js +58 -32
  143. package/dist/esm/components/base-table/base-table-line.js +117 -0
  144. package/dist/esm/components/base-table/base-table.js +110 -0
  145. package/dist/esm/components/base-table/constants.js +12 -0
  146. package/dist/esm/components/base-table/index.js +9 -0
  147. package/dist/esm/components/checkbox/checkbox-labeled.js +25 -20
  148. package/dist/esm/components/client-adapters/styled-rounded-image/styled-rounded-image.js +25 -20
  149. package/dist/esm/components/collateral-allocation-tooltip/allocation-wheel.js +71 -0
  150. package/dist/esm/components/collateral-allocation-tooltip/collateral-allocation-tooltip.js +102 -0
  151. package/dist/esm/components/collateral-allocation-tooltip/constants.js +12 -0
  152. package/dist/esm/components/collateral-allocation-tooltip/index.js +9 -0
  153. package/dist/esm/components/composites/index.js +31 -31
  154. package/dist/esm/components/composites/pool-assets-table/constants.js +9 -0
  155. package/dist/esm/components/composites/pool-assets-table/index.js +8 -6
  156. package/dist/esm/components/composites/pool-assets-table/pool-assets-table-head.js +52 -30
  157. package/dist/esm/components/composites/pool-assets-table/pool-assets-table-row.js +111 -77
  158. package/dist/esm/components/composites/pool-assets-table/pool-assets-table.js +44 -26
  159. package/dist/esm/components/composites/tx-preview/confirm/amounts/TransactionConfirmAmountField.js +50 -39
  160. package/dist/esm/components/composites/tx-preview/confirm/dialog/TransactionConfirmShell.js +114 -59
  161. package/dist/esm/components/composites/tx-preview/confirm/dialog/constants.js +10 -7
  162. package/dist/esm/components/composites/tx-preview/confirm/dialog/index.js +8 -10
  163. package/dist/esm/components/composites/tx-preview/confirm/dialog/transactionConfirmShellTypes.js +1 -0
  164. package/dist/esm/components/composites/tx-preview/confirm/index.js +24 -26
  165. package/dist/esm/components/composites/tx-preview/index.js +24 -26
  166. package/dist/esm/components/compound-apy/compound-apy.js +88 -82
  167. package/dist/esm/components/detailed-page-title/detailed-page-title-explorer-dropdown.js +50 -41
  168. package/dist/esm/components/filter/filter-chip.js +1 -0
  169. package/dist/esm/components/graph/default-config.js +20 -18
  170. package/dist/esm/components/graph/formatters.js +62 -52
  171. package/dist/esm/components/graph/graph-view.js +72 -88
  172. package/dist/esm/components/graph/graph.js +459 -458
  173. package/dist/esm/components/hf-indicator/hf-indicator.js +59 -0
  174. package/dist/esm/components/hf-indicator/index.js +4 -0
  175. package/dist/esm/components/index.js +739 -695
  176. package/dist/esm/components/infinite-scroll/index.js +4 -0
  177. package/dist/esm/components/infinite-scroll/infinite-scroll-wrapper.js +30 -0
  178. package/dist/esm/components/layout/app-footer/app-footer.js +20 -23
  179. package/dist/esm/components/name-cell/index.js +4 -0
  180. package/dist/esm/components/name-cell/name-cell.js +35 -0
  181. package/dist/esm/components/network-icon/index.js +4 -2
  182. package/dist/esm/components/network-icon/network-indicator.js +82 -0
  183. package/dist/esm/components/sdk-status-pill/constants.js +8 -0
  184. package/dist/esm/components/sdk-status-pill/index.js +8 -0
  185. package/dist/esm/components/sdk-status-pill/sdk-status-pill.js +59 -0
  186. package/dist/esm/components/sdk-status-pill/sdk-status.js +6 -0
  187. package/dist/esm/components/trading-view/trading-view.js +193 -155
  188. package/dist/esm/components/with-copy/with-copy.js +25 -20
  189. package/dist/esm/components/yield-breakdown-tooltip/yield-breakdown-tooltip.js +114 -171
  190. package/dist/esm/configs/tailwind-preset.js +13 -1
  191. package/dist/esm/hooks/index.js +20 -18
  192. package/dist/esm/hooks/use-observed-width-key.js +24 -0
  193. package/dist/esm/index.js +896 -842
  194. package/dist/esm/locale/en.json.js +28 -25
  195. package/dist/esm/utils/format-leverage.js +6 -0
  196. package/dist/esm/utils/format-money.js +59 -41
  197. package/dist/esm/utils/index.js +91 -85
  198. package/dist/esm/utils/leverage-presets.js +13 -0
  199. package/dist/globals.css +1 -1
  200. package/dist/types/components/assets-list-cell/assets-list-cell.d.ts +3 -0
  201. package/dist/types/components/badge/badge.d.ts +2 -1
  202. package/dist/types/components/badge/chip.d.ts +22 -0
  203. package/dist/types/components/badge/index.d.ts +1 -0
  204. package/dist/types/components/base/amount-input/amount-input.d.ts +3 -2
  205. package/dist/types/components/base/amount-input/token-select-panel.d.ts +4 -3
  206. package/dist/types/components/base/borrow-rate-block/borrow-rate-block.d.ts +10 -5
  207. package/dist/types/components/base/detailed-page-title/detailed-page-title.d.ts +1 -3
  208. package/dist/types/components/base/health-factor-block/health-factor-block.d.ts +6 -6
  209. package/dist/types/components/base/history-chart/history-chart.d.ts +32 -8
  210. package/dist/types/components/base/index.d.ts +2 -0
  211. package/dist/types/components/base/info-list/info-list.d.ts +7 -0
  212. package/dist/types/components/base/leverage-input/leverage-input.d.ts +1 -1
  213. package/dist/types/components/base/leverage-preset-chips/constants.d.ts +4 -0
  214. package/dist/types/components/base/leverage-preset-chips/index.d.ts +2 -0
  215. package/dist/types/components/base/leverage-preset-chips/leverage-preset-chips.d.ts +13 -0
  216. package/dist/types/components/base/liquidation-params-table/liquidation-params-table.d.ts +2 -2
  217. package/dist/types/components/base/liquidation-price-block/liquidation-price-block.d.ts +6 -4
  218. package/dist/types/components/base/manage-pane/constants.d.ts +1 -0
  219. package/dist/types/components/base/manage-pane/manage-pane.d.ts +3 -1
  220. package/dist/types/components/base/page-title/page-title.d.ts +12 -6
  221. package/dist/types/components/base/pool-apy-breakdown-card/pool-apy-breakdown-card.d.ts +4 -5
  222. package/dist/types/components/base/position-assets/constants.d.ts +5 -0
  223. package/dist/types/components/base/position-assets/index.d.ts +2 -0
  224. package/dist/types/components/base/position-assets/position-assets.d.ts +55 -0
  225. package/dist/types/components/base/review-button/constants.d.ts +1 -0
  226. package/dist/types/components/base/review-button/review-button.d.ts +17 -3
  227. package/dist/types/components/base/stat-badge/constants.d.ts +1 -0
  228. package/dist/types/components/base/stat-badge/stat-badge.d.ts +11 -1
  229. package/dist/types/components/base/strategy-apy-breakdown-card/constants.d.ts +6 -1
  230. package/dist/types/components/base/strategy-apy-breakdown-card/strategy-apy-breakdown-card.d.ts +43 -4
  231. package/dist/types/components/base/tabber/tabber.d.ts +2 -2
  232. package/dist/types/components/base/time-to-liquidation-block/time-to-liquidation-block.d.ts +5 -6
  233. package/dist/types/components/base/title-meta/constants.d.ts +1 -0
  234. package/dist/types/components/base/title-meta/title-meta.d.ts +9 -1
  235. package/dist/types/components/base/token-amount/token-amount.d.ts +8 -2
  236. package/dist/types/components/base/values/constants.d.ts +1 -0
  237. package/dist/types/components/base/values/index.d.ts +3 -1
  238. package/dist/types/components/base/values/points-value.d.ts +11 -0
  239. package/dist/types/components/base/values/position-short-label.d.ts +1 -1
  240. package/dist/types/components/base/values/position-status-badge.d.ts +7 -0
  241. package/dist/types/components/base/values/position-type-badge.d.ts +1 -1
  242. package/dist/types/components/base/values/scalars.d.ts +30 -2
  243. package/dist/types/components/base-table/base-table-line.d.ts +21 -0
  244. package/dist/types/components/base-table/base-table.d.ts +19 -0
  245. package/dist/types/components/base-table/constants.d.ts +8 -0
  246. package/dist/types/components/base-table/index.d.ts +3 -0
  247. package/dist/types/components/base-table/types.d.ts +37 -0
  248. package/dist/types/components/collateral-allocation-tooltip/allocation-wheel.d.ts +10 -0
  249. package/dist/types/components/collateral-allocation-tooltip/collateral-allocation-tooltip.d.ts +23 -0
  250. package/dist/types/components/collateral-allocation-tooltip/constants.d.ts +8 -0
  251. package/dist/types/components/collateral-allocation-tooltip/index.d.ts +3 -0
  252. package/dist/types/components/composites/pool-assets-table/constants.d.ts +6 -0
  253. package/dist/types/components/composites/pool-assets-table/index.d.ts +1 -0
  254. package/dist/types/components/composites/pool-assets-table/pool-assets-table-head.d.ts +1 -2
  255. package/dist/types/components/composites/pool-assets-table/pool-assets-table-row.d.ts +8 -8
  256. package/dist/types/components/composites/pool-assets-table/pool-assets-table.d.ts +7 -20
  257. package/dist/types/components/composites/pool-assets-table/types.d.ts +4 -12
  258. package/dist/types/components/composites/tx-preview/confirm/amounts/TransactionConfirmAmountField.d.ts +47 -14
  259. package/dist/types/components/composites/tx-preview/confirm/amounts/index.d.ts +1 -1
  260. package/dist/types/components/composites/tx-preview/confirm/dialog/TransactionConfirmShell.d.ts +23 -19
  261. package/dist/types/components/composites/tx-preview/confirm/dialog/index.d.ts +2 -2
  262. package/dist/types/components/composites/tx-preview/confirm/dialog/transactionConfirmPhase.d.ts +0 -3
  263. package/dist/types/components/composites/tx-preview/confirm/dialog/transactionConfirmShellTypes.d.ts +98 -0
  264. package/dist/types/components/compound-apy/compound-apy.d.ts +12 -2
  265. package/dist/types/components/graph/formatters.d.ts +6 -1
  266. package/dist/types/components/graph/graph-view.d.ts +1 -1
  267. package/dist/types/components/graph/graph.d.ts +4 -0
  268. package/dist/types/components/hf-indicator/hf-indicator.d.ts +17 -0
  269. package/dist/types/components/hf-indicator/index.d.ts +1 -0
  270. package/dist/types/components/index.d.ts +6 -1
  271. package/dist/types/components/infinite-scroll/index.d.ts +1 -0
  272. package/dist/types/components/infinite-scroll/infinite-scroll-wrapper.d.ts +11 -0
  273. package/dist/types/components/layout/app-footer/app-footer.d.ts +9 -15
  274. package/dist/types/components/name-cell/index.d.ts +1 -0
  275. package/dist/types/components/name-cell/name-cell.d.ts +13 -0
  276. package/dist/types/components/network-icon/index.d.ts +1 -0
  277. package/dist/types/components/network-icon/network-indicator.d.ts +23 -0
  278. package/dist/types/components/sdk-status-pill/constants.d.ts +5 -0
  279. package/dist/types/components/sdk-status-pill/index.d.ts +3 -0
  280. package/dist/types/components/sdk-status-pill/sdk-status-pill.d.ts +27 -0
  281. package/dist/types/components/sdk-status-pill/sdk-status.d.ts +11 -0
  282. package/dist/types/components/trading-view/trading-view.d.ts +14 -7
  283. package/dist/types/components/yield-breakdown-tooltip/yield-breakdown-tooltip.d.ts +8 -10
  284. package/dist/types/configs/tailwind-preset.d.ts +12 -0
  285. package/dist/types/hooks/index.d.ts +1 -0
  286. package/dist/types/hooks/use-observed-width-key.d.ts +8 -0
  287. package/dist/types/index.d.ts +7 -3
  288. package/dist/types/locale/en.json.d.ts +28 -23
  289. package/dist/types/types/index.d.ts +0 -1
  290. package/dist/types/utils/format-leverage.d.ts +5 -0
  291. package/dist/types/utils/format-money.d.ts +11 -5
  292. package/dist/types/utils/index.d.ts +3 -1
  293. package/dist/types/utils/leverage-presets.d.ts +7 -0
  294. package/package.json +6 -6
  295. package/src/styles/base.css +30 -0
  296. package/src/styles/theme.css +16 -0
  297. package/dist/cjs/components/block-sync-pill/block-sync-pill.cjs +0 -1
  298. package/dist/cjs/components/block-sync-pill/block-sync-status.cjs +0 -1
  299. package/dist/cjs/components/block-sync-pill/index.cjs +0 -1
  300. package/dist/cjs/components/composites/tx-preview/confirm/dialog/TransactionConfirmModalView.cjs +0 -1
  301. package/dist/cjs/components/composites/tx-preview/confirm/dialog/TransactionConfirmPageView.cjs +0 -1
  302. package/dist/esm/components/block-sync-pill/block-sync-pill.js +0 -206
  303. package/dist/esm/components/block-sync-pill/block-sync-status.js +0 -12
  304. package/dist/esm/components/block-sync-pill/index.js +0 -4
  305. package/dist/esm/components/composites/tx-preview/confirm/dialog/TransactionConfirmModalView.js +0 -176
  306. package/dist/esm/components/composites/tx-preview/confirm/dialog/TransactionConfirmPageView.js +0 -54
  307. package/dist/types/components/block-sync-pill/block-sync-pill.d.ts +0 -35
  308. package/dist/types/components/block-sync-pill/block-sync-status.d.ts +0 -29
  309. package/dist/types/components/block-sync-pill/index.d.ts +0 -1
  310. package/dist/types/components/composites/tx-preview/confirm/dialog/TransactionConfirmModalView.d.ts +0 -17
  311. package/dist/types/components/composites/tx-preview/confirm/dialog/TransactionConfirmPageView.d.ts +0 -16
  312. package/dist/types/types/footer.d.ts +0 -51
  313. /package/dist/cjs/{types/footer.cjs → components/base-table/types.cjs} +0 -0
  314. /package/dist/esm/{types/footer.js → components/base-table/types.js} +0 -0
@@ -0,0 +1,96 @@
1
+ import { jsx as n, jsxs as m, Fragment as p } from "react/jsx-runtime";
2
+ import { Stack as h } from "../stack/stack.js";
3
+ import "react";
4
+ import "@gearbox-protocol/sdk";
5
+ import "clsx";
6
+ import "tailwind-merge";
7
+ import "sonner";
8
+ import "@gearbox-protocol/sdk/common-utils";
9
+ import "luxon";
10
+ import "../../../utils/z-index.js";
11
+ import "../../points-icon/points-icon.js";
12
+ import { TokenBigint as d } from "../values/scalars.js";
13
+ import "../../badge/badge.js";
14
+ import "../../badge/chip.js";
15
+ import "react-intl";
16
+ import { ShortString as f } from "../../short-string/short-string.js";
17
+ import { TokenSymbol as u } from "../../token-symbol/token-symbol.js";
18
+ import { Typography as k } from "../../typography/typography.js";
19
+ import { PositionAssetsTest as c } from "./constants.js";
20
+ const v = 1, g = 20;
21
+ function Y({
22
+ assets: s,
23
+ to: e,
24
+ empty: a,
25
+ testId: i
26
+ }) {
27
+ const t = y(s, e), r = e !== void 0;
28
+ return /* @__PURE__ */ n(h, { gap: "sm", align: "end", "data-testid": i ?? c.root, children: t.length === 0 ? a !== void 0 && /* @__PURE__ */ n(
29
+ k,
30
+ {
31
+ variant: "caption",
32
+ color: "secondary",
33
+ as: "div",
34
+ "data-testid": c.empty,
35
+ children: a
36
+ }
37
+ ) : t.map((o) => /* @__PURE__ */ m(
38
+ "span",
39
+ {
40
+ className: "flex items-center gap-2",
41
+ "data-testid": c.row,
42
+ children: [
43
+ /* @__PURE__ */ n(u, { size: 20, token: o.token }),
44
+ /* @__PURE__ */ m("span", { className: "flex items-center", children: [
45
+ r && /* @__PURE__ */ m(p, { children: [
46
+ /* @__PURE__ */ n("span", { className: "text-secondary-foreground line-through [&_*]:text-secondary-foreground [&_*]:line-through", children: /* @__PURE__ */ n(
47
+ d,
48
+ {
49
+ data: o.value,
50
+ token: o.token,
51
+ showSymbol: !1
52
+ }
53
+ ) }),
54
+ /* @__PURE__ */ n("span", { className: "px-1.5 text-gray-70", children: "→" })
55
+ ] }),
56
+ /* @__PURE__ */ n(
57
+ d,
58
+ {
59
+ data: r ? o.valueTo : o.value,
60
+ token: o.token,
61
+ showSymbol: !1
62
+ }
63
+ ),
64
+ /* @__PURE__ */ n(f, { className: "ml-1", maxLength: g, children: o.token.symbol })
65
+ ] })
66
+ ]
67
+ },
68
+ o.token.address
69
+ )) });
70
+ }
71
+ function y(s, e) {
72
+ const a = /* @__PURE__ */ new Map(), i = (t, r) => {
73
+ const o = t.token.address.toLowerCase(), l = a.get(o);
74
+ a.set(o, {
75
+ token: l?.token ?? t.token,
76
+ // a token only the other side holds is a zero here, not a gap
77
+ value: r === "from" ? t.value : l?.value ?? 0n,
78
+ valueTo: r === "to" ? t.value : l?.valueTo ?? 0n,
79
+ worth: x(l?.worth, t.valueUsd)
80
+ });
81
+ };
82
+ for (const t of s ?? []) i(t, "from");
83
+ for (const t of e ?? []) i(t, "to");
84
+ return [...a.values()].filter((t) => t.worth === null || t.worth >= v).sort(
85
+ (t, r) => (r.worth ?? 0) - (t.worth ?? 0) || // a tie has to break the same way every render, or the rows drift
86
+ t.token.address.localeCompare(r.token.address)
87
+ );
88
+ }
89
+ function x(s, e) {
90
+ return s === void 0 ? e : s === null || e === null ? null : Math.max(s, e);
91
+ }
92
+ export {
93
+ Y as PositionAssets,
94
+ c as PositionAssetsTest,
95
+ y as visibleAssets
96
+ };
@@ -1,7 +1,8 @@
1
- class r {
1
+ class e {
2
2
  static root = "review-button-root";
3
3
  static error = "review-button-error";
4
+ static tip = "review-button-tip";
4
5
  }
5
6
  export {
6
- r as ReviewButtonTest
7
+ e as ReviewButtonTest
7
8
  };
@@ -1,36 +1,49 @@
1
- import { jsxs as a, jsx as t } from "react/jsx-runtime";
2
- import { Stack as d } from "../stack/stack.js";
3
- import { Button as n } from "../../buttons/button/button.js";
4
- import { FormattedMessageTyped as o } from "../../typed-intl/index.js";
5
- import { Typography as p } from "../../typography/typography.js";
6
- import { ReviewButtonTest as r } from "./constants.js";
7
- function h({
1
+ import { jsxs as p, jsx as t } from "react/jsx-runtime";
2
+ import { Stack as n } from "../stack/stack.js";
3
+ import { Button as d } from "../../buttons/button/button.js";
4
+ import { TipCard as l } from "../../tip-card/tip-card.js";
5
+ import { FormattedMessageTyped as r } from "../../typed-intl/index.js";
6
+ import "react";
7
+ import "@gearbox-protocol/sdk";
8
+ import { cn as c } from "../../../utils/cn.js";
9
+ import "sonner";
10
+ import "@gearbox-protocol/sdk/common-utils";
11
+ import "luxon";
12
+ import "../../../utils/z-index.js";
13
+ import { ReviewButtonTest as e } from "./constants.js";
14
+ function R({
8
15
  disabled: m,
9
- error: e,
10
- onClick: s,
11
- label: i = "dialogs.common.review"
16
+ error: o,
17
+ tip: i,
18
+ onClick: a,
19
+ label: s = "dialogs.common.review"
12
20
  }) {
13
- return /* @__PURE__ */ a(d, { gap: "xs", children: [
14
- e ? /* @__PURE__ */ t(
15
- p,
21
+ return /* @__PURE__ */ p(n, { gap: "sm", children: [
22
+ i ? /* @__PURE__ */ t(
23
+ l,
16
24
  {
17
- className: "text-destructive text-sm",
18
- "data-testid": r.error,
19
- children: /* @__PURE__ */ t(o, { messageId: e })
25
+ textColor: "light",
26
+ attributeColor: "alert",
27
+ className: "w-full",
28
+ "data-testid": e.tip,
29
+ children: /* @__PURE__ */ t(r, { ...i })
20
30
  }
21
31
  ) : null,
22
32
  /* @__PURE__ */ t(
23
- n,
33
+ d,
24
34
  {
25
35
  disabled: m,
26
- onClick: s,
27
- "data-testid": r.root,
28
- children: /* @__PURE__ */ t(o, { messageId: i })
36
+ onClick: a,
37
+ "data-testid": e.root,
38
+ className: c(
39
+ o && "h-auto min-h-[40px] whitespace-normal text-center"
40
+ ),
41
+ children: o ? /* @__PURE__ */ t("span", { "data-testid": e.error, children: /* @__PURE__ */ t(r, { messageId: o }) }) : /* @__PURE__ */ t(r, { messageId: s })
29
42
  }
30
43
  )
31
44
  ] });
32
45
  }
33
46
  export {
34
- h as ReviewButton,
35
- r as ReviewButtonTest
47
+ R as ReviewButton,
48
+ e as ReviewButtonTest
36
49
  };
@@ -2,6 +2,7 @@ class a {
2
2
  static root = "stat-badge-root";
3
3
  static grid = "stat-badge-grid-root";
4
4
  static action = "stat-badge-action";
5
+ static delta = "stat-badge-delta";
5
6
  }
6
7
  export {
7
8
  a as StatBadgeTest
@@ -1,115 +1,159 @@
1
- import { jsxs as a, jsx as e } from "react/jsx-runtime";
2
- import { Stack as g } from "../stack/stack.js";
3
- import { useTitleText as f } from "../text/use-title-text.js";
4
- import { Skeleton as u } from "../../skeleton/skeleton.js";
1
+ import { jsxs as a, jsx as r } from "react/jsx-runtime";
2
+ import { Stack as p } from "../stack/stack.js";
3
+ import { useTitleText as x } from "../text/use-title-text.js";
4
+ import { faCaretDown as h, faCaretUp as S } from "@fortawesome/free-solid-svg-icons";
5
+ import { FaIcon as v } from "../../icons/fa-icon.js";
6
+ import { Skeleton as N } from "../../skeleton/skeleton.js";
5
7
  import "react";
6
8
  import "@gearbox-protocol/sdk";
7
- import { cn as d } from "../../../utils/cn.js";
9
+ import { cn as o } from "../../../utils/cn.js";
8
10
  import "sonner";
9
11
  import "@gearbox-protocol/sdk/common-utils";
10
12
  import "luxon";
11
13
  import "../../../utils/z-index.js";
14
+ import { SimpleTooltip as b } from "../../tooltip/simple-tooltip.js";
15
+ import "../../tooltip/tooltip.js";
12
16
  import { StatBadgeTest as m } from "./constants.js";
13
- const p = {
17
+ const I = {
14
18
  sm: "p-4",
15
19
  md: "p-5",
16
20
  default: "p-6"
17
- }, x = {
21
+ }, T = {
18
22
  sm: "mb-2.5",
19
23
  md: "mb-2",
20
24
  default: "mb-3"
21
- }, S = {
25
+ }, d = {
22
26
  sm: "text-xs leading-[0.8125rem]",
23
27
  md: "text-xs leading-[0.9rem]",
24
28
  default: "text-sm leading-[1.0625rem]"
25
- }, h = {
29
+ }, _ = {
26
30
  sm: "text-sm leading-[1.0625rem]",
27
31
  md: "text-base leading-[1.25rem]",
28
32
  default: "text-xl leading-[1.5625rem]"
29
33
  };
30
- function A({
31
- title: i,
32
- value: r,
33
- isLoading: o = !1,
34
- size: t = "default",
35
- action: l,
36
- className: s,
37
- testId: n
34
+ function w({
35
+ delta: t,
36
+ size: i
38
37
  }) {
39
- const c = f();
38
+ const l = t.value > 0 ? "text-success" : t.value < 0 ? "text-destructive" : "text-muted-foreground", e = /* @__PURE__ */ a(
39
+ "span",
40
+ {
41
+ className: o(
42
+ "inline-flex items-center gap-0.5 font-medium",
43
+ d[i],
44
+ l
45
+ ),
46
+ "data-testid": m.delta,
47
+ children: [
48
+ /* @__PURE__ */ r(
49
+ v,
50
+ {
51
+ icon: t.value < 0 ? h : S,
52
+ className: "size-3"
53
+ }
54
+ ),
55
+ t.label
56
+ ]
57
+ }
58
+ );
59
+ return t.tooltip == null ? e : /* @__PURE__ */ r(b, { title: e, triggerClassName: "shrink-0", children: t.tooltip });
60
+ }
61
+ function J({
62
+ title: t,
63
+ value: i,
64
+ isLoading: l = !1,
65
+ size: e = "default",
66
+ delta: s,
67
+ action: n,
68
+ className: c,
69
+ testId: u
70
+ }) {
71
+ const f = x(), g = s != null && !l;
40
72
  return /* @__PURE__ */ a(
41
73
  "div",
42
74
  {
43
- className: d(
75
+ className: o(
44
76
  "h-full w-full rounded-lg border border-border bg-card",
45
- p[t],
46
- s
77
+ I[e],
78
+ c
47
79
  ),
48
- "data-testid": n ?? m.root,
80
+ "data-testid": u ?? m.root,
49
81
  children: [
50
82
  /* @__PURE__ */ a(
51
83
  "div",
52
84
  {
53
- className: d(
85
+ className: o(
54
86
  "flex items-center justify-between gap-2",
55
- x[t]
87
+ T[e]
56
88
  ),
57
89
  children: [
58
- /* @__PURE__ */ e(
90
+ /* @__PURE__ */ r(
59
91
  "div",
60
92
  {
61
- className: d("font-medium text-muted-foreground", S[t]),
62
- children: c(i)
93
+ className: o("font-medium text-muted-foreground", d[e]),
94
+ children: f(t)
63
95
  }
64
96
  ),
65
- l != null ? /* @__PURE__ */ e("div", { className: "shrink-0", "data-testid": m.action, children: l }) : null
97
+ g || n != null ? /* @__PURE__ */ a("div", { className: "flex shrink-0 items-center gap-2", children: [
98
+ s != null && !l ? /* @__PURE__ */ r(w, { delta: s, size: e }) : null,
99
+ n != null ? /* @__PURE__ */ r("div", { className: "shrink-0", "data-testid": m.action, children: n }) : null
100
+ ] }) : null
66
101
  ]
67
102
  }
68
103
  ),
69
- /* @__PURE__ */ e("div", { className: d("font-medium text-foreground", h[t]), children: /* @__PURE__ */ e(u, { width: 80, loading: o, children: /* @__PURE__ */ e(g, { gap: "xs", align: "start", children: r }) }) })
104
+ /* @__PURE__ */ r(
105
+ "div",
106
+ {
107
+ className: o(
108
+ "text-left font-medium text-foreground",
109
+ _[e]
110
+ ),
111
+ children: /* @__PURE__ */ r(N, { width: 80, loading: l, children: /* @__PURE__ */ r(p, { gap: "xs", align: "start", className: "w-full items-start", children: i }) })
112
+ }
113
+ )
70
114
  ]
71
115
  }
72
116
  );
73
117
  }
74
- const b = {
118
+ const E = {
75
119
  1: "grid-cols-1",
76
120
  2: "grid-cols-2",
77
121
  3: "grid-cols-3",
78
122
  4: "grid-cols-4"
79
- }, I = {
123
+ }, G = {
80
124
  1: "lg:grid-cols-1",
81
125
  2: "lg:grid-cols-2",
82
126
  3: "lg:grid-cols-3",
83
127
  4: "lg:grid-cols-4"
84
- }, _ = {
128
+ }, D = {
85
129
  sm: "gap-2",
86
130
  default: "gap-4",
87
131
  lg: "gap-6"
88
132
  };
89
- function B({
90
- cols: i = 1,
91
- colsLg: r,
92
- gap: o = "default",
93
- children: t,
94
- className: l
133
+ function K({
134
+ cols: t = 1,
135
+ colsLg: i,
136
+ gap: l = "default",
137
+ children: e,
138
+ className: s
95
139
  }) {
96
- return /* @__PURE__ */ e(
140
+ return /* @__PURE__ */ r(
97
141
  "div",
98
142
  {
99
- className: d(
143
+ className: o(
100
144
  "grid w-full",
101
- b[i],
102
- r ? I[r] : void 0,
103
- _[o],
104
- l
145
+ E[t],
146
+ i ? G[i] : void 0,
147
+ D[l],
148
+ s
105
149
  ),
106
150
  "data-testid": m.grid,
107
- children: t
151
+ children: e
108
152
  }
109
153
  );
110
154
  }
111
155
  export {
112
- A as StatBadge,
113
- B as StatBadgeGrid,
156
+ J as StatBadge,
157
+ K as StatBadgeGrid,
114
158
  m as StatBadgeTest
115
159
  };
@@ -1,7 +1,12 @@
1
- class r {
1
+ class t {
2
2
  static root = "strategy-apy-breakdown-card-root";
3
- static row = "strategy-apy-breakdown-card-row";
3
+ static net = "strategy-apy-breakdown-card-net";
4
+ static collateral = "strategy-apy-breakdown-card-collateral";
5
+ static borrow = "strategy-apy-breakdown-card-borrow";
6
+ static value = "strategy-apy-breakdown-card-value";
7
+ static points = "strategy-apy-breakdown-card-points";
8
+ static caption = "strategy-apy-breakdown-card-caption";
4
9
  }
5
10
  export {
6
- r as StrategyApyBreakdownCardTest
11
+ t as StrategyApyBreakdownCardTest
7
12
  };
@@ -1,51 +1,213 @@
1
- import { jsxs as d, jsx as r } from "react/jsx-runtime";
2
- import { HelpTip as m } from "../../help-tip/help-tip.js";
3
- import { FormattedMessageTyped as a } from "../../typed-intl/index.js";
4
- import { VerticalIndicator as n } from "../../vertical-indicator/vertical-indicator.js";
5
- import { SideCard as l } from "../side-card/side-card.js";
1
+ import { jsxs as n, jsx as e, Fragment as k } from "react/jsx-runtime";
2
+ import { PointsIcon as w } from "../../points-icon/points-icon.js";
3
+ import { TokenIcon as N } from "../../token-icon/token-icon.js";
4
+ import { FormattedMessageTyped as l } from "../../typed-intl/index.js";
6
5
  import "react";
6
+ import { totalApyOf as A, positiveTokenRewardsOf as I, pointProgramsOf as B } from "../../../utils/apy-breakdown.js";
7
7
  import "@gearbox-protocol/sdk";
8
- import "clsx";
9
- import "tailwind-merge";
8
+ import { bpsToPercent as C } from "../../../utils/bps.js";
9
+ import { cn as g } from "../../../utils/cn.js";
10
10
  import "sonner";
11
+ import { formatLeverage as d } from "../../../utils/format-leverage.js";
11
12
  import "@gearbox-protocol/sdk/common-utils";
12
13
  import "luxon";
13
14
  import "../../../utils/z-index.js";
14
- import { ApyValue as o } from "../values/scalars.js";
15
- import "../../badge/badge.js";
16
15
  import { StrategyApyBreakdownCardTest as i } from "./constants.js";
17
- function e({
18
- title: t,
19
- children: p
16
+ const T = "—";
17
+ function G({
18
+ data: s,
19
+ showFormula: o = !1
20
20
  }) {
21
- return /* @__PURE__ */ r(
22
- n,
21
+ const { leverage: a, collateralApy: r } = s, c = A(s.netApy), u = c + s.borrowCost, h = r ? I(r) : [], b = r ? B(r) : [], v = h.map((t) => ({
22
+ reward: t,
23
+ value: Math.round(a * (t.supplyApr ?? 0))
24
+ })), x = u - v.reduce((t, f) => t + f.value, 0), y = a > 0 ? x / a : void 0;
25
+ return /* @__PURE__ */ n(
26
+ "div",
23
27
  {
24
- size: "sm",
25
- "data-testid": i.row,
26
- label: /* @__PURE__ */ r(a, { messageId: t }),
27
- value: p
28
+ className: "flex w-full min-w-0 flex-col gap-4 rounded-xl border border-border bg-card p-4",
29
+ "data-testid": i.root,
30
+ children: [
31
+ /* @__PURE__ */ n("div", { className: "flex h-6 items-center justify-between gap-3", children: [
32
+ /* @__PURE__ */ e("span", { className: "text-base font-semibold leading-4 text-foreground", children: /* @__PURE__ */ e(
33
+ l,
34
+ {
35
+ messageId: "components.yieldBreakdown.titleNetAtLeverage",
36
+ values: { leverage: d(a) }
37
+ }
38
+ ) }),
39
+ /* @__PURE__ */ e(
40
+ "span",
41
+ {
42
+ className: g(
43
+ "rounded-md px-2 py-0.5 text-sm font-semibold tabular-nums",
44
+ c > 0 ? "bg-success/20 text-success" : "bg-muted text-muted-foreground"
45
+ ),
46
+ "data-testid": i.net,
47
+ children: m(c)
48
+ }
49
+ )
50
+ ] }),
51
+ /* @__PURE__ */ n("div", { className: "flex flex-col gap-3", children: [
52
+ /* @__PURE__ */ e(
53
+ p,
54
+ {
55
+ testId: i.collateral,
56
+ label: /* @__PURE__ */ e(l, { messageId: "components.yieldBreakdown.collateralApy" }),
57
+ value: m(x),
58
+ subtext: o && y !== void 0 ? /* @__PURE__ */ e(
59
+ l,
60
+ {
61
+ messageId: "components.strategyApyBreakdownCard.formula",
62
+ values: {
63
+ leverage: d(a),
64
+ base: m(y)
65
+ }
66
+ }
67
+ ) : void 0
68
+ }
69
+ ),
70
+ v.map(({ reward: t, value: f }) => /* @__PURE__ */ e(
71
+ p,
72
+ {
73
+ label: /* @__PURE__ */ n("span", { className: "inline-flex items-center gap-1.5", children: [
74
+ /* @__PURE__ */ e("span", { children: /* @__PURE__ */ e(
75
+ l,
76
+ {
77
+ messageId: "components.apyParts.extraAPY",
78
+ values: { symbol: t.token.symbol }
79
+ }
80
+ ) }),
81
+ /* @__PURE__ */ e(
82
+ N,
83
+ {
84
+ token: t.token,
85
+ symbol: t.token.symbol,
86
+ size: 16,
87
+ className: "shrink-0"
88
+ }
89
+ )
90
+ ] }),
91
+ value: m(f),
92
+ subtext: o ? /* @__PURE__ */ e(
93
+ l,
94
+ {
95
+ messageId: "components.strategyApyBreakdownCard.formula",
96
+ values: {
97
+ leverage: d(a),
98
+ base: m(t.supplyApr ?? 0)
99
+ }
100
+ }
101
+ ) : void 0
102
+ },
103
+ `incentive-${t.token.address}-${t.supplyApr ?? 0}`
104
+ )),
105
+ /* @__PURE__ */ e(
106
+ p,
107
+ {
108
+ muted: !0,
109
+ testId: i.borrow,
110
+ label: /* @__PURE__ */ e(l, { messageId: "components.yieldBreakdown.borrowRate" }),
111
+ value: m(-s.borrowCost)
112
+ }
113
+ ),
114
+ b.length > 0 ? /* @__PURE__ */ n(k, { children: [
115
+ /* @__PURE__ */ e("div", { className: "h-px w-full bg-divider" }),
116
+ b.map((t) => /* @__PURE__ */ e(
117
+ p,
118
+ {
119
+ valueTestId: i.points,
120
+ label: /* @__PURE__ */ n("span", { className: "inline-flex items-center gap-1.5", children: [
121
+ /* @__PURE__ */ e("span", { children: /* @__PURE__ */ e(
122
+ l,
123
+ {
124
+ messageId: "components.yieldBreakdown.programPoints",
125
+ values: { name: t.name }
126
+ }
127
+ ) }),
128
+ /* @__PURE__ */ e(
129
+ w,
130
+ {
131
+ reward: { name: t.name, type: t.id },
132
+ size: 16,
133
+ className: "shrink-0"
134
+ }
135
+ )
136
+ ] }),
137
+ value: t.multiplier != null ? `${d(t.multiplier * a)}×` : T,
138
+ subtext: o && t.multiplier != null ? /* @__PURE__ */ e(
139
+ l,
140
+ {
141
+ messageId: "components.strategyApyBreakdownCard.formula",
142
+ values: {
143
+ leverage: d(a),
144
+ base: d(t.multiplier)
145
+ }
146
+ }
147
+ ) : void 0
148
+ },
149
+ t.id
150
+ ))
151
+ ] }) : null
152
+ ] })
153
+ ]
28
154
  }
29
155
  );
30
156
  }
31
- function R({
32
- data: t
157
+ function m(s) {
158
+ const o = C(s), a = `${Math.abs(o).toFixed(2)}%`;
159
+ return o < 0 ? `−${a}` : a;
160
+ }
161
+ function p({
162
+ label: s,
163
+ value: o,
164
+ subtext: a,
165
+ muted: r = !1,
166
+ testId: c,
167
+ valueTestId: u = i.value
33
168
  }) {
34
- return /* @__PURE__ */ d(
35
- l,
169
+ return /* @__PURE__ */ n(
170
+ "div",
36
171
  {
37
- title: "components.strategyApyBreakdownCard.title",
38
- testId: i.root,
39
- tip: /* @__PURE__ */ r(m, { iconSize: 14, placement: "top", children: /* @__PURE__ */ r(a, { messageId: "components.strategyApyBreakdownCard.formula" }) }),
172
+ className: "flex items-start justify-between gap-3",
173
+ "data-testid": c,
40
174
  children: [
41
- /* @__PURE__ */ r(e, { title: "components.strategyApyBreakdownCard.collateralApy", children: /* @__PURE__ */ r(o, { data: t.collateralApy }) }),
42
- /* @__PURE__ */ r(e, { title: "components.strategyApyBreakdownCard.baseBorrowRate", children: /* @__PURE__ */ r(o, { data: t.borrowApy }) }),
43
- /* @__PURE__ */ r(e, { title: "components.strategyApyBreakdownCard.additionalBorrowRate", children: /* @__PURE__ */ r(o, { data: t.additionalBorrowApy }) })
175
+ /* @__PURE__ */ e(
176
+ "span",
177
+ {
178
+ className: g(
179
+ "min-w-0 text-sm font-semibold leading-5",
180
+ r ? "text-muted-foreground" : "text-foreground"
181
+ ),
182
+ children: s
183
+ }
184
+ ),
185
+ /* @__PURE__ */ n("span", { className: "flex shrink-0 flex-col items-end", children: [
186
+ /* @__PURE__ */ e(
187
+ "span",
188
+ {
189
+ className: g(
190
+ "text-sm font-semibold leading-5 tabular-nums",
191
+ r ? "text-muted-foreground" : "text-foreground"
192
+ ),
193
+ "data-testid": u,
194
+ children: o
195
+ }
196
+ ),
197
+ a != null ? /* @__PURE__ */ e(
198
+ "span",
199
+ {
200
+ className: "text-xs leading-4 text-muted-foreground",
201
+ "data-testid": i.caption,
202
+ children: a
203
+ }
204
+ ) : null
205
+ ] })
44
206
  ]
45
207
  }
46
208
  );
47
209
  }
48
210
  export {
49
- R as StrategyApyBreakdownCard,
211
+ G as StrategyApyBreakdownCard,
50
212
  i as StrategyApyBreakdownCardTest
51
213
  };