Skip to content

Conversation

@feyyazcigim
Copy link

This pull request introduces several improvements and fixes to the Pod Market pages and components, focusing on enhancing user experience, clarifying navigation, and improving component flexibility. The most significant changes include a refactor of the market route and tab logic, improved balance/allowance handling, and the addition of a reusable smart approval button. There are also UI improvements for market descriptions and a more flexible accordion component.

Market route and tab logic improvements:

  • Refactored the Pod Market routes and tab logic to use explicit mode (buy/sell) and id (create/fill) parameters, ensuring consistent navigation and correct rendering of components like CreateOrder, FillListing, CreateListing, and FillOrder. This also updates navigation from charts and tables to use query parameters instead of path segments. [1] [2] [3] [4] [5] [6]

Balance and allowance handling:

  • Improved the logic in ComboInputField to correctly determine the maximum and displayable token amounts, especially when a customMaxAmount is provided, ensuring that UI reflects the user's true available balance and not just the allowed amount. [1] [2]

New reusable components:

  • Added a new SmartApprovalButton component that automatically determines if token approval is needed (including support for both ERC20 and protocol-specific allowances), manages approval state, and provides user feedback during the approval process.

UI/UX improvements:

  • Enhanced the Pod Market page with a more descriptive header and an inline "Read More" accordion explaining how the Pod Market works, improving onboarding and clarity for users.
  • Updated the ReadMoreAccordion component to support an inline mode, allowing for more flexible placement and styling of expandable content in the UI. [1] [2]

@netlify
Copy link

netlify bot commented Oct 31, 2025

👷 Deploy request for pintomoney pending review.

Visit the deploys page to approve it

Name Link
🔨 Latest commit 7ed7eea

Comment on lines 177 to 188
baseBalance = tokenAndBalanceMap.get(selectedToken) ?? TokenValue.ZERO;
} else if (farmerTokenBalance) {
switch (balanceFrom) {
case FarmFromMode.EXTERNAL:
baseBalance = farmerTokenBalance.external || TokenValue.ZERO;
break;
case FarmFromMode.INTERNAL:
baseBalance = farmerTokenBalance.internal || TokenValue.ZERO;
break;
default:
baseBalance = farmerTokenBalance.total || TokenValue.ZERO;
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does this and the change on lines 210-219 do and why was it necessary?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes. I added this because the buy/fill -> get quote flow was behaving incorrectly.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@burr-nim is this resolved?

@fr1jo fr1jo mentioned this pull request Nov 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants