Commit f53f8d6
authored
chore: rewards add account require explicit internal account (MetaMask#23044)
## **Description**
- Small change in the `AddRewardsAccount`; this component shouldn't
deduce an account scope but always work with the one passed in as a
prop.
- Instead of using `getFirstSubscriptionId`, we are switching to
`getCandidateSubscriptionId` just like in the perps implementation & in
extension swap flow.
All flows were tested locally and still work.
## **Changelog**
CHANGELOG entry: null
<!-- CURSOR_SUMMARY -->
---
> [!NOTE]
> Require an explicit InternalAccount for AddRewardsAccount, update
rewards hooks to use getCandidateSubscriptionId and expose
rewardsAccountScope, and adjust UI/tests to conditionally render rewards
UI based on opt-in and scope.
>
> - **Rewards integration**:
> - **Hooks** (`useRewards`, `usePredictRewards`):
> - Replace `RewardsController:getFirstSubscriptionId` with
`getCandidateSubscriptionId`.
> - Return `rewardsAccountScope` and refine `shouldShowRewardsRow`
(requires opted-in or available account scope).
> - **UI**:
> - `AddRewardsAccount`: remove account auto-derivation; now requires
explicit `account` prop and hides when absent/successful.
> - `Bridge/QuoteDetailsCard`: when rewards row is shown, display
`RewardsAnimations` if `accountOptedIn`, otherwise render
`AddRewardsAccount` with `rewardsAccountScope`; add error tooltip
handling.
> - `Predict/PredictFeeSummary`: show rewards row only if
`accountOptedIn` or `rewardsAccountScope`; pass `rewardsAccountScope` to
`AddRewardsAccount`.
> - `PredictBuyPreview`: plumbs `rewardsAccountScope` into
`PredictFeeSummary`.
> - **Tests**:
> - Update tests to mock `useRewards`, expect `rewardsAccountScope`, new
rendering conditions, and `getCandidateSubscriptionId` calls.
> - Remove Engine-based rewards mocks; add cases for
loading/error/zero-points and price impact warning flag.
>
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
2400cb8. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->1 parent 50dbb45 commit f53f8d6
11 files changed
Lines changed: 339 additions & 443 deletions
File tree
- app/components/UI
- Bridge
- components/QuoteDetailsCard
- hooks/useRewards
- Predict
- components/PredictFeeSummary
- hooks
- views/PredictBuyPreview
- Rewards/components/AddRewardsAccount
Lines changed: 173 additions & 209 deletions
Large diffs are not rendered by default.
Lines changed: 7 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
| 74 | + | |
74 | 75 | | |
75 | 76 | | |
76 | 77 | | |
| |||
323 | 324 | | |
324 | 325 | | |
325 | 326 | | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
326 | 332 | | |
327 | | - | |
| 333 | + | |
328 | 334 | | |
329 | 335 | | |
330 | 336 | | |
| |||
Lines changed: 30 additions & 12 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
171 | 171 | | |
172 | 172 | | |
173 | 173 | | |
| 174 | + | |
| 175 | + | |
174 | 176 | | |
175 | 177 | | |
176 | 178 | | |
| |||
190 | 192 | | |
191 | 193 | | |
192 | 194 | | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
193 | 198 | | |
194 | 199 | | |
195 | 200 | | |
| |||
225 | 230 | | |
226 | 231 | | |
227 | 232 | | |
| 233 | + | |
228 | 234 | | |
229 | 235 | | |
230 | 236 | | |
| |||
240 | 246 | | |
241 | 247 | | |
242 | 248 | | |
243 | | - | |
| 249 | + | |
244 | 250 | | |
245 | 251 | | |
246 | 252 | | |
| |||
276 | 282 | | |
277 | 283 | | |
278 | 284 | | |
| 285 | + | |
279 | 286 | | |
280 | 287 | | |
281 | 288 | | |
282 | 289 | | |
283 | | - | |
| 290 | + | |
284 | 291 | | |
285 | 292 | | |
286 | 293 | | |
| |||
297 | 304 | | |
298 | 305 | | |
299 | 306 | | |
300 | | - | |
| 307 | + | |
301 | 308 | | |
302 | 309 | | |
303 | 310 | | |
| |||
333 | 340 | | |
334 | 341 | | |
335 | 342 | | |
| 343 | + | |
336 | 344 | | |
337 | 345 | | |
338 | 346 | | |
339 | 347 | | |
340 | | - | |
| 348 | + | |
341 | 349 | | |
342 | 350 | | |
343 | 351 | | |
| |||
356 | 364 | | |
357 | 365 | | |
358 | 366 | | |
359 | | - | |
| 367 | + | |
360 | 368 | | |
361 | 369 | | |
362 | 370 | | |
| |||
392 | 400 | | |
393 | 401 | | |
394 | 402 | | |
| 403 | + | |
395 | 404 | | |
396 | 405 | | |
397 | 406 | | |
| |||
426 | 435 | | |
427 | 436 | | |
428 | 437 | | |
429 | | - | |
| 438 | + | |
430 | 439 | | |
431 | 440 | | |
432 | 441 | | |
| |||
499 | 508 | | |
500 | 509 | | |
501 | 510 | | |
| 511 | + | |
502 | 512 | | |
503 | 513 | | |
504 | 514 | | |
| |||
529 | 539 | | |
530 | 540 | | |
531 | 541 | | |
| 542 | + | |
532 | 543 | | |
533 | 544 | | |
534 | 545 | | |
| |||
556 | 567 | | |
557 | 568 | | |
558 | 569 | | |
| 570 | + | |
559 | 571 | | |
560 | 572 | | |
561 | 573 | | |
| |||
583 | 595 | | |
584 | 596 | | |
585 | 597 | | |
| 598 | + | |
586 | 599 | | |
587 | 600 | | |
588 | 601 | | |
| |||
593 | 606 | | |
594 | 607 | | |
595 | 608 | | |
596 | | - | |
| 609 | + | |
597 | 610 | | |
598 | 611 | | |
599 | 612 | | |
| |||
623 | 636 | | |
624 | 637 | | |
625 | 638 | | |
| 639 | + | |
626 | 640 | | |
627 | 641 | | |
628 | 642 | | |
629 | 643 | | |
630 | 644 | | |
631 | 645 | | |
632 | 646 | | |
633 | | - | |
| 647 | + | |
634 | 648 | | |
635 | 649 | | |
636 | 650 | | |
| |||
645 | 659 | | |
646 | 660 | | |
647 | 661 | | |
648 | | - | |
| 662 | + | |
649 | 663 | | |
650 | 664 | | |
651 | 665 | | |
| |||
681 | 695 | | |
682 | 696 | | |
683 | 697 | | |
| 698 | + | |
684 | 699 | | |
685 | 700 | | |
686 | 701 | | |
| |||
717 | 732 | | |
718 | 733 | | |
719 | 734 | | |
| 735 | + | |
720 | 736 | | |
721 | 737 | | |
722 | 738 | | |
| |||
726 | 742 | | |
727 | 743 | | |
728 | 744 | | |
729 | | - | |
| 745 | + | |
730 | 746 | | |
731 | 747 | | |
732 | 748 | | |
| |||
759 | 775 | | |
760 | 776 | | |
761 | 777 | | |
| 778 | + | |
762 | 779 | | |
763 | 780 | | |
764 | 781 | | |
| |||
769 | 786 | | |
770 | 787 | | |
771 | 788 | | |
772 | | - | |
| 789 | + | |
773 | 790 | | |
774 | 791 | | |
775 | 792 | | |
| |||
808 | 825 | | |
809 | 826 | | |
810 | 827 | | |
811 | | - | |
| 828 | + | |
812 | 829 | | |
813 | 830 | | |
814 | 831 | | |
| |||
840 | 857 | | |
841 | 858 | | |
842 | 859 | | |
| 860 | + | |
843 | 861 | | |
844 | 862 | | |
845 | 863 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| 26 | + | |
26 | 27 | | |
27 | 28 | | |
28 | 29 | | |
| |||
69 | 70 | | |
70 | 71 | | |
71 | 72 | | |
| 73 | + | |
72 | 74 | | |
73 | 75 | | |
74 | 76 | | |
| |||
152 | 154 | | |
153 | 155 | | |
154 | 156 | | |
155 | | - | |
156 | | - | |
| 157 | + | |
| 158 | + | |
157 | 159 | | |
158 | 160 | | |
159 | | - | |
| 161 | + | |
160 | 162 | | |
161 | 163 | | |
162 | 164 | | |
| |||
312 | 314 | | |
313 | 315 | | |
314 | 316 | | |
315 | | - | |
| 317 | + | |
| 318 | + | |
316 | 319 | | |
317 | 320 | | |
318 | 321 | | |
319 | 322 | | |
| 323 | + | |
320 | 324 | | |
321 | 325 | | |
Lines changed: 67 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
4 | 5 | | |
5 | 6 | | |
6 | 7 | | |
| |||
271 | 272 | | |
272 | 273 | | |
273 | 274 | | |
274 | | - | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
275 | 284 | | |
276 | 285 | | |
277 | 286 | | |
278 | 287 | | |
| 288 | + | |
| 289 | + | |
279 | 290 | | |
280 | 291 | | |
281 | 292 | | |
| |||
287 | 298 | | |
288 | 299 | | |
289 | 300 | | |
290 | | - | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
291 | 310 | | |
292 | 311 | | |
293 | 312 | | |
294 | 313 | | |
| 314 | + | |
| 315 | + | |
295 | 316 | | |
296 | 317 | | |
297 | 318 | | |
| |||
303 | 324 | | |
304 | 325 | | |
305 | 326 | | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
| 338 | + | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
| 344 | + | |
| 345 | + | |
| 346 | + | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
| 350 | + | |
| 351 | + | |
| 352 | + | |
| 353 | + | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
306 | 371 | | |
307 | 372 | | |
308 | 373 | | |
| |||
0 commit comments