Feat: migrate yearnx#1062
Draft
rossgalloway wants to merge 12 commits into
Draft
Conversation
* feat: dedupe reused code * chore: remove deadcode * chore: lock and loaded * chore: bump
* Fix: incorrect route error on factory vault deposit (#1055) * fix error with factory vault showing unavailable route on deposit * fix issue in review --------- Co-authored-by: Ross <ross@yearn.finance> * add automatic deposit pop-up --------- Co-authored-by: Ross <ross@yearn.finance>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
0xeye
previously approved these changes
Feb 13, 2026
0xeye
left a comment
Contributor
There was a problem hiding this comment.
LGTM.
2 things:
- do we want to link to partners page in the menu somewhere? I don't currently see it anywhere
- noticed you've started added tests in. Imo tests aren't that useful for UI and should just be done for breaking math changes / checks. I think we can assume at this point the AI is one shotting it, and if not the assumption, then it will likely adjust the test to fit. Might be worth a wider discussion
Collaborator
Author
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR migrates the Yearn X partner experiences into
yearn.fiand unifies them on the existing vaults UI. Itintroduces a typed partner registry/config system, reusable partner typemark components, partner-specific theming, and
partner-aware filtering behavior.
What Changed
src/routes.tsx./partnershub page (src/components/pages/partners/index.tsx) with branded tiles for each partnerplus “All Yearn Vaults”.
src/components/pages/landing/components/ sections/Partners.tsx).src/components/shared/partners/registry.ts.src/components/shared/partners/configs/*.src/components/shared/partners/resolvePartnerFromPath.tssrc/components/shared/partners/resolvePartnerFromPath.test.tssrc/components/shared/partners/is*VaultListItem.tssrc/components/shared/partners/partnerVaultFilters.test.tssrc/components/shared/partners/isKatanaVaultListItem.test.tssrc/components/shared/hooks/useFetchYearnVaults.ts.useCurrentAppnow resolves partner manifests and supports/partnersmetadata:src/components/shared/hooks/useCurrentApp.tsxsrc/components/shared/components/Meta.tsxdata-partner="<slug>"on<html>for partner theme scoping and canonical handling:src/App.tsx-
src/styles/partners.cssstyle.csssrc/components/pages/vaults/components/list/VaultsListRow.tsxsrc/components/pages/vaults/index.tsxAdded reusable typemark components:
src/components/shared/icons/TypeMarkYearnBadge.tsxsrc/components/shared/icons/TypeMarkAerodrome.tsxsrc/components/shared/icons/TypeMarkKatana.tsxsrc/components/shared/icons/TypeMarkMorpho.tsxsrc/components/shared/icons/TypeMarkPoolTogether.tsxsrc/components/shared/icons/TypeMarkVelodrome.tsxPartner branding element now renders
<yearnTypemark> x <partnerTypemark>(replacing text label).partnerTypemarkHeightPx,partnerTypemarkMaxWidthPxpartnerTypemarkOffsetXPx,partnerTypemarkOffsetYPxAsset files added/updated under
public/(typemarks, logos, textures).minTvl=0showLegacy=1showHidden=1showStrategies=1src/components/pages/vaults/hooks/useVaultsQueryState.tsReset behavior now returns to configured defaults (partner-aware).
URL serialization now writes boolean params only when non-default (
0/1), enabling clean default URLs.Chain options on partner pages are now constrained to chains that actually have matching vaults under the current
filter set.
Unsupported chain selections are sanitized before applying list/filter state.
Type selector visibility is partner-aware (hidden where appropriate), and partner badge occupies selector slot when
Automated Validation Run
bun run lint✅bun run tslint✅Manual Test Plan
/partners./curve,/morpho,/katana,/aerodrome,/ velodrome,/pooltogether.Yearn typemark x Partner typemark./curve(or any partner page) with no query params.showHidden=0.showHiddenparam is removed again.minTvl=<value>appears in URL./curve?chains=10&minTvl=0&showLegacy=1&showHidden=1&showStrategies=1