@metamask-previews/earn-controller 13.0.2-preview-7fb08ad32 → 13.0.2-preview-cbae429b5

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.
package/CHANGELOG.md CHANGED
@@ -11,12 +11,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
11
11
 
12
12
  - Bump `@ethersproject/bignumber` from `^5.7.0` to `^5.8.0` ([#10479](https://github.com/MetaMask/core/pull/10479))
13
13
  - Bump `@ethersproject/providers` from `^5.7.0` to `^5.8.0` ([#10482](https://github.com/MetaMask/core/pull/10482))
14
- - Bump `@metamask/network-controller` from `^37.0.0` to `^37.1.0` ([#10658](https://github.com/MetaMask/core/pull/10658), [#10864](https://github.com/MetaMask/core/pull/10864))
14
+ - Bump `@metamask/network-controller` from `^37.0.0` to `^37.0.1` ([#10658](https://github.com/MetaMask/core/pull/10658))
15
15
  - Bump `@metamask/account-tree-controller` from `^11.0.0` to `^11.0.1` ([#10662](https://github.com/MetaMask/core/pull/10662))
16
- - Bump `reselect` from `^5.1.1` to `^5.3.0` ([#10532](https://github.com/MetaMask/core/pull/10532))
17
- - Bump `@metamask/stake-sdk` from `^3.2.1` to `^3.4.0` ([#10739](https://github.com/MetaMask/core/pull/10739))
18
- - Bump `@metamask/keyring-api` from `^24.0.0` to `^24.3.0` ([#10717](https://github.com/MetaMask/core/pull/10717), [#10792](https://github.com/MetaMask/core/pull/10792), [#10844](https://github.com/MetaMask/core/pull/10844))
19
- - Bump `@metamask/base-controller` from `^10.0.0` to `^10.1.0` ([#10864](https://github.com/MetaMask/core/pull/10864))
20
16
 
21
17
  ## [13.0.2]
22
18
 
@@ -269,18 +269,82 @@ export declare const selectLendingPositionsByProtocolChainIdMarketId: ((state: E
269
269
  memoize: typeof import("reselect").weakMapMemoize;
270
270
  argsMemoize: typeof import("reselect").weakMapMemoize;
271
271
  };
272
- export declare const selectLendingMarketsWithPosition: ((state: EarnControllerState) => LendingMarketWithPosition[]) & {
272
+ export declare const selectLendingMarketsWithPosition: ((state: EarnControllerState) => {
273
+ netSupplyRate: number;
274
+ totalSupplyRate: number;
275
+ id: string;
276
+ chainId: number;
277
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
278
+ name: string;
279
+ address: string;
280
+ tvlUnderlying: string;
281
+ underlying: import("@metamask/stake-sdk").TokenInfo;
282
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
283
+ rewards: {
284
+ token: import("@metamask/stake-sdk").TokenInfo;
285
+ rate: number;
286
+ }[];
287
+ position: LendingPositionWithMarket;
288
+ }[]) & {
273
289
  clearCache: () => void;
274
290
  resultsCount: () => number;
275
291
  resetResultsCount: () => void;
276
292
  } & {
277
- resultFunc: (resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => LendingMarketWithPosition[];
278
- memoizedResultFunc: ((resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => LendingMarketWithPosition[]) & {
293
+ resultFunc: (resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => {
294
+ netSupplyRate: number;
295
+ totalSupplyRate: number;
296
+ id: string;
297
+ chainId: number;
298
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
299
+ name: string;
300
+ address: string;
301
+ tvlUnderlying: string;
302
+ underlying: import("@metamask/stake-sdk").TokenInfo;
303
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
304
+ rewards: {
305
+ token: import("@metamask/stake-sdk").TokenInfo;
306
+ rate: number;
307
+ }[];
308
+ position: LendingPositionWithMarket;
309
+ }[];
310
+ memoizedResultFunc: ((resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => {
311
+ netSupplyRate: number;
312
+ totalSupplyRate: number;
313
+ id: string;
314
+ chainId: number;
315
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
316
+ name: string;
317
+ address: string;
318
+ tvlUnderlying: string;
319
+ underlying: import("@metamask/stake-sdk").TokenInfo;
320
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
321
+ rewards: {
322
+ token: import("@metamask/stake-sdk").TokenInfo;
323
+ rate: number;
324
+ }[];
325
+ position: LendingPositionWithMarket;
326
+ }[]) & {
279
327
  clearCache: () => void;
280
328
  resultsCount: () => number;
281
329
  resetResultsCount: () => void;
282
330
  };
283
- lastResult: () => LendingMarketWithPosition[];
331
+ lastResult: () => {
332
+ netSupplyRate: number;
333
+ totalSupplyRate: number;
334
+ id: string;
335
+ chainId: number;
336
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
337
+ name: string;
338
+ address: string;
339
+ tvlUnderlying: string;
340
+ underlying: import("@metamask/stake-sdk").TokenInfo;
341
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
342
+ rewards: {
343
+ token: import("@metamask/stake-sdk").TokenInfo;
344
+ rate: number;
345
+ }[];
346
+ position: LendingPositionWithMarket;
347
+ }[];
284
348
  dependencies: [((state: EarnControllerState) => Record<string, Record<string, Record<string, LendingPositionWithMarket>>>) & {
285
349
  clearCache: () => void;
286
350
  resultsCount: () => number;
@@ -355,25 +419,121 @@ export declare const selectLendingMarketsByTokenAddress: ((state: EarnController
355
419
  resultsCount: () => number;
356
420
  resetResultsCount: () => void;
357
421
  } & {
358
- resultFunc: (resultFuncArgs_0: LendingMarketWithPosition[]) => Record<string, LendingMarketWithPosition[]>;
359
- memoizedResultFunc: ((resultFuncArgs_0: LendingMarketWithPosition[]) => Record<string, LendingMarketWithPosition[]>) & {
422
+ resultFunc: (resultFuncArgs_0: {
423
+ netSupplyRate: number;
424
+ totalSupplyRate: number;
425
+ id: string;
426
+ chainId: number;
427
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
428
+ name: string;
429
+ address: string;
430
+ tvlUnderlying: string;
431
+ underlying: import("@metamask/stake-sdk").TokenInfo;
432
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
433
+ rewards: {
434
+ token: import("@metamask/stake-sdk").TokenInfo;
435
+ rate: number;
436
+ }[];
437
+ position: LendingPositionWithMarket;
438
+ }[]) => Record<string, LendingMarketWithPosition[]>;
439
+ memoizedResultFunc: ((resultFuncArgs_0: {
440
+ netSupplyRate: number;
441
+ totalSupplyRate: number;
442
+ id: string;
443
+ chainId: number;
444
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
445
+ name: string;
446
+ address: string;
447
+ tvlUnderlying: string;
448
+ underlying: import("@metamask/stake-sdk").TokenInfo;
449
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
450
+ rewards: {
451
+ token: import("@metamask/stake-sdk").TokenInfo;
452
+ rate: number;
453
+ }[];
454
+ position: LendingPositionWithMarket;
455
+ }[]) => Record<string, LendingMarketWithPosition[]>) & {
360
456
  clearCache: () => void;
361
457
  resultsCount: () => number;
362
458
  resetResultsCount: () => void;
363
459
  };
364
460
  lastResult: () => Record<string, LendingMarketWithPosition[]>;
365
- dependencies: [((state: EarnControllerState) => LendingMarketWithPosition[]) & {
461
+ dependencies: [((state: EarnControllerState) => {
462
+ netSupplyRate: number;
463
+ totalSupplyRate: number;
464
+ id: string;
465
+ chainId: number;
466
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
467
+ name: string;
468
+ address: string;
469
+ tvlUnderlying: string;
470
+ underlying: import("@metamask/stake-sdk").TokenInfo;
471
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
472
+ rewards: {
473
+ token: import("@metamask/stake-sdk").TokenInfo;
474
+ rate: number;
475
+ }[];
476
+ position: LendingPositionWithMarket;
477
+ }[]) & {
366
478
  clearCache: () => void;
367
479
  resultsCount: () => number;
368
480
  resetResultsCount: () => void;
369
481
  } & {
370
- resultFunc: (resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => LendingMarketWithPosition[];
371
- memoizedResultFunc: ((resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => LendingMarketWithPosition[]) & {
482
+ resultFunc: (resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => {
483
+ netSupplyRate: number;
484
+ totalSupplyRate: number;
485
+ id: string;
486
+ chainId: number;
487
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
488
+ name: string;
489
+ address: string;
490
+ tvlUnderlying: string;
491
+ underlying: import("@metamask/stake-sdk").TokenInfo;
492
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
493
+ rewards: {
494
+ token: import("@metamask/stake-sdk").TokenInfo;
495
+ rate: number;
496
+ }[];
497
+ position: LendingPositionWithMarket;
498
+ }[];
499
+ memoizedResultFunc: ((resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => {
500
+ netSupplyRate: number;
501
+ totalSupplyRate: number;
502
+ id: string;
503
+ chainId: number;
504
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
505
+ name: string;
506
+ address: string;
507
+ tvlUnderlying: string;
508
+ underlying: import("@metamask/stake-sdk").TokenInfo;
509
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
510
+ rewards: {
511
+ token: import("@metamask/stake-sdk").TokenInfo;
512
+ rate: number;
513
+ }[];
514
+ position: LendingPositionWithMarket;
515
+ }[]) & {
372
516
  clearCache: () => void;
373
517
  resultsCount: () => number;
374
518
  resetResultsCount: () => void;
375
519
  };
376
- lastResult: () => LendingMarketWithPosition[];
520
+ lastResult: () => {
521
+ netSupplyRate: number;
522
+ totalSupplyRate: number;
523
+ id: string;
524
+ chainId: number;
525
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
526
+ name: string;
527
+ address: string;
528
+ tvlUnderlying: string;
529
+ underlying: import("@metamask/stake-sdk").TokenInfo;
530
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
531
+ rewards: {
532
+ token: import("@metamask/stake-sdk").TokenInfo;
533
+ rate: number;
534
+ }[];
535
+ position: LendingPositionWithMarket;
536
+ }[];
377
537
  dependencies: [((state: EarnControllerState) => Record<string, Record<string, Record<string, LendingPositionWithMarket>>>) & {
378
538
  clearCache: () => void;
379
539
  resultsCount: () => number;
@@ -517,25 +677,121 @@ export declare const selectLendingMarketByProtocolAndTokenAddress: ((state: Earn
517
677
  resultsCount: () => number;
518
678
  resetResultsCount: () => void;
519
679
  } & {
520
- resultFunc: (resultFuncArgs_0: LendingMarketWithPosition[]) => Record<string, Record<string, LendingMarketWithPosition>>;
521
- memoizedResultFunc: ((resultFuncArgs_0: LendingMarketWithPosition[]) => Record<string, Record<string, LendingMarketWithPosition>>) & {
680
+ resultFunc: (resultFuncArgs_0: {
681
+ netSupplyRate: number;
682
+ totalSupplyRate: number;
683
+ id: string;
684
+ chainId: number;
685
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
686
+ name: string;
687
+ address: string;
688
+ tvlUnderlying: string;
689
+ underlying: import("@metamask/stake-sdk").TokenInfo;
690
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
691
+ rewards: {
692
+ token: import("@metamask/stake-sdk").TokenInfo;
693
+ rate: number;
694
+ }[];
695
+ position: LendingPositionWithMarket;
696
+ }[]) => Record<string, Record<string, LendingMarketWithPosition>>;
697
+ memoizedResultFunc: ((resultFuncArgs_0: {
698
+ netSupplyRate: number;
699
+ totalSupplyRate: number;
700
+ id: string;
701
+ chainId: number;
702
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
703
+ name: string;
704
+ address: string;
705
+ tvlUnderlying: string;
706
+ underlying: import("@metamask/stake-sdk").TokenInfo;
707
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
708
+ rewards: {
709
+ token: import("@metamask/stake-sdk").TokenInfo;
710
+ rate: number;
711
+ }[];
712
+ position: LendingPositionWithMarket;
713
+ }[]) => Record<string, Record<string, LendingMarketWithPosition>>) & {
522
714
  clearCache: () => void;
523
715
  resultsCount: () => number;
524
716
  resetResultsCount: () => void;
525
717
  };
526
718
  lastResult: () => Record<string, Record<string, LendingMarketWithPosition>>;
527
- dependencies: [((state: EarnControllerState) => LendingMarketWithPosition[]) & {
719
+ dependencies: [((state: EarnControllerState) => {
720
+ netSupplyRate: number;
721
+ totalSupplyRate: number;
722
+ id: string;
723
+ chainId: number;
724
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
725
+ name: string;
726
+ address: string;
727
+ tvlUnderlying: string;
728
+ underlying: import("@metamask/stake-sdk").TokenInfo;
729
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
730
+ rewards: {
731
+ token: import("@metamask/stake-sdk").TokenInfo;
732
+ rate: number;
733
+ }[];
734
+ position: LendingPositionWithMarket;
735
+ }[]) & {
528
736
  clearCache: () => void;
529
737
  resultsCount: () => number;
530
738
  resetResultsCount: () => void;
531
739
  } & {
532
- resultFunc: (resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => LendingMarketWithPosition[];
533
- memoizedResultFunc: ((resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => LendingMarketWithPosition[]) & {
740
+ resultFunc: (resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => {
741
+ netSupplyRate: number;
742
+ totalSupplyRate: number;
743
+ id: string;
744
+ chainId: number;
745
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
746
+ name: string;
747
+ address: string;
748
+ tvlUnderlying: string;
749
+ underlying: import("@metamask/stake-sdk").TokenInfo;
750
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
751
+ rewards: {
752
+ token: import("@metamask/stake-sdk").TokenInfo;
753
+ rate: number;
754
+ }[];
755
+ position: LendingPositionWithMarket;
756
+ }[];
757
+ memoizedResultFunc: ((resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => {
758
+ netSupplyRate: number;
759
+ totalSupplyRate: number;
760
+ id: string;
761
+ chainId: number;
762
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
763
+ name: string;
764
+ address: string;
765
+ tvlUnderlying: string;
766
+ underlying: import("@metamask/stake-sdk").TokenInfo;
767
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
768
+ rewards: {
769
+ token: import("@metamask/stake-sdk").TokenInfo;
770
+ rate: number;
771
+ }[];
772
+ position: LendingPositionWithMarket;
773
+ }[]) & {
534
774
  clearCache: () => void;
535
775
  resultsCount: () => number;
536
776
  resetResultsCount: () => void;
537
777
  };
538
- lastResult: () => LendingMarketWithPosition[];
778
+ lastResult: () => {
779
+ netSupplyRate: number;
780
+ totalSupplyRate: number;
781
+ id: string;
782
+ chainId: number;
783
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
784
+ name: string;
785
+ address: string;
786
+ tvlUnderlying: string;
787
+ underlying: import("@metamask/stake-sdk").TokenInfo;
788
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
789
+ rewards: {
790
+ token: import("@metamask/stake-sdk").TokenInfo;
791
+ rate: number;
792
+ }[];
793
+ position: LendingPositionWithMarket;
794
+ }[];
539
795
  dependencies: [((state: EarnControllerState) => Record<string, Record<string, Record<string, LendingPositionWithMarket>>>) & {
540
796
  clearCache: () => void;
541
797
  resultsCount: () => number;
@@ -630,25 +886,121 @@ export declare const selectLendingMarketForProtocolAndTokenAddress: (protocol: s
630
886
  resultsCount: () => number;
631
887
  resetResultsCount: () => void;
632
888
  } & {
633
- resultFunc: (resultFuncArgs_0: LendingMarketWithPosition[]) => Record<string, Record<string, LendingMarketWithPosition>>;
634
- memoizedResultFunc: ((resultFuncArgs_0: LendingMarketWithPosition[]) => Record<string, Record<string, LendingMarketWithPosition>>) & {
889
+ resultFunc: (resultFuncArgs_0: {
890
+ netSupplyRate: number;
891
+ totalSupplyRate: number;
892
+ id: string;
893
+ chainId: number;
894
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
895
+ name: string;
896
+ address: string;
897
+ tvlUnderlying: string;
898
+ underlying: import("@metamask/stake-sdk").TokenInfo;
899
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
900
+ rewards: {
901
+ token: import("@metamask/stake-sdk").TokenInfo;
902
+ rate: number;
903
+ }[];
904
+ position: LendingPositionWithMarket;
905
+ }[]) => Record<string, Record<string, LendingMarketWithPosition>>;
906
+ memoizedResultFunc: ((resultFuncArgs_0: {
907
+ netSupplyRate: number;
908
+ totalSupplyRate: number;
909
+ id: string;
910
+ chainId: number;
911
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
912
+ name: string;
913
+ address: string;
914
+ tvlUnderlying: string;
915
+ underlying: import("@metamask/stake-sdk").TokenInfo;
916
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
917
+ rewards: {
918
+ token: import("@metamask/stake-sdk").TokenInfo;
919
+ rate: number;
920
+ }[];
921
+ position: LendingPositionWithMarket;
922
+ }[]) => Record<string, Record<string, LendingMarketWithPosition>>) & {
635
923
  clearCache: () => void;
636
924
  resultsCount: () => number;
637
925
  resetResultsCount: () => void;
638
926
  };
639
927
  lastResult: () => Record<string, Record<string, LendingMarketWithPosition>>;
640
- dependencies: [((state: EarnControllerState) => LendingMarketWithPosition[]) & {
928
+ dependencies: [((state: EarnControllerState) => {
929
+ netSupplyRate: number;
930
+ totalSupplyRate: number;
931
+ id: string;
932
+ chainId: number;
933
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
934
+ name: string;
935
+ address: string;
936
+ tvlUnderlying: string;
937
+ underlying: import("@metamask/stake-sdk").TokenInfo;
938
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
939
+ rewards: {
940
+ token: import("@metamask/stake-sdk").TokenInfo;
941
+ rate: number;
942
+ }[];
943
+ position: LendingPositionWithMarket;
944
+ }[]) & {
641
945
  clearCache: () => void;
642
946
  resultsCount: () => number;
643
947
  resetResultsCount: () => void;
644
948
  } & {
645
- resultFunc: (resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => LendingMarketWithPosition[];
646
- memoizedResultFunc: ((resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => LendingMarketWithPosition[]) & {
949
+ resultFunc: (resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => {
950
+ netSupplyRate: number;
951
+ totalSupplyRate: number;
952
+ id: string;
953
+ chainId: number;
954
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
955
+ name: string;
956
+ address: string;
957
+ tvlUnderlying: string;
958
+ underlying: import("@metamask/stake-sdk").TokenInfo;
959
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
960
+ rewards: {
961
+ token: import("@metamask/stake-sdk").TokenInfo;
962
+ rate: number;
963
+ }[];
964
+ position: LendingPositionWithMarket;
965
+ }[];
966
+ memoizedResultFunc: ((resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => {
967
+ netSupplyRate: number;
968
+ totalSupplyRate: number;
969
+ id: string;
970
+ chainId: number;
971
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
972
+ name: string;
973
+ address: string;
974
+ tvlUnderlying: string;
975
+ underlying: import("@metamask/stake-sdk").TokenInfo;
976
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
977
+ rewards: {
978
+ token: import("@metamask/stake-sdk").TokenInfo;
979
+ rate: number;
980
+ }[];
981
+ position: LendingPositionWithMarket;
982
+ }[]) & {
647
983
  clearCache: () => void;
648
984
  resultsCount: () => number;
649
985
  resetResultsCount: () => void;
650
986
  };
651
- lastResult: () => LendingMarketWithPosition[];
987
+ lastResult: () => {
988
+ netSupplyRate: number;
989
+ totalSupplyRate: number;
990
+ id: string;
991
+ chainId: number;
992
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
993
+ name: string;
994
+ address: string;
995
+ tvlUnderlying: string;
996
+ underlying: import("@metamask/stake-sdk").TokenInfo;
997
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
998
+ rewards: {
999
+ token: import("@metamask/stake-sdk").TokenInfo;
1000
+ rate: number;
1001
+ }[];
1002
+ position: LendingPositionWithMarket;
1003
+ }[];
652
1004
  dependencies: [((state: EarnControllerState) => Record<string, Record<string, Record<string, LendingPositionWithMarket>>>) & {
653
1005
  clearCache: () => void;
654
1006
  resultsCount: () => number;
@@ -739,25 +1091,121 @@ export declare const selectLendingMarketsByChainIdAndOutputTokenAddress: ((state
739
1091
  resultsCount: () => number;
740
1092
  resetResultsCount: () => void;
741
1093
  } & {
742
- resultFunc: (resultFuncArgs_0: LendingMarketWithPosition[]) => Record<string, Record<string, LendingMarketWithPosition[]>>;
743
- memoizedResultFunc: ((resultFuncArgs_0: LendingMarketWithPosition[]) => Record<string, Record<string, LendingMarketWithPosition[]>>) & {
1094
+ resultFunc: (resultFuncArgs_0: {
1095
+ netSupplyRate: number;
1096
+ totalSupplyRate: number;
1097
+ id: string;
1098
+ chainId: number;
1099
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
1100
+ name: string;
1101
+ address: string;
1102
+ tvlUnderlying: string;
1103
+ underlying: import("@metamask/stake-sdk").TokenInfo;
1104
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
1105
+ rewards: {
1106
+ token: import("@metamask/stake-sdk").TokenInfo;
1107
+ rate: number;
1108
+ }[];
1109
+ position: LendingPositionWithMarket;
1110
+ }[]) => Record<string, Record<string, LendingMarketWithPosition[]>>;
1111
+ memoizedResultFunc: ((resultFuncArgs_0: {
1112
+ netSupplyRate: number;
1113
+ totalSupplyRate: number;
1114
+ id: string;
1115
+ chainId: number;
1116
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
1117
+ name: string;
1118
+ address: string;
1119
+ tvlUnderlying: string;
1120
+ underlying: import("@metamask/stake-sdk").TokenInfo;
1121
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
1122
+ rewards: {
1123
+ token: import("@metamask/stake-sdk").TokenInfo;
1124
+ rate: number;
1125
+ }[];
1126
+ position: LendingPositionWithMarket;
1127
+ }[]) => Record<string, Record<string, LendingMarketWithPosition[]>>) & {
744
1128
  clearCache: () => void;
745
1129
  resultsCount: () => number;
746
1130
  resetResultsCount: () => void;
747
1131
  };
748
1132
  lastResult: () => Record<string, Record<string, LendingMarketWithPosition[]>>;
749
- dependencies: [((state: EarnControllerState) => LendingMarketWithPosition[]) & {
1133
+ dependencies: [((state: EarnControllerState) => {
1134
+ netSupplyRate: number;
1135
+ totalSupplyRate: number;
1136
+ id: string;
1137
+ chainId: number;
1138
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
1139
+ name: string;
1140
+ address: string;
1141
+ tvlUnderlying: string;
1142
+ underlying: import("@metamask/stake-sdk").TokenInfo;
1143
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
1144
+ rewards: {
1145
+ token: import("@metamask/stake-sdk").TokenInfo;
1146
+ rate: number;
1147
+ }[];
1148
+ position: LendingPositionWithMarket;
1149
+ }[]) & {
750
1150
  clearCache: () => void;
751
1151
  resultsCount: () => number;
752
1152
  resetResultsCount: () => void;
753
1153
  } & {
754
- resultFunc: (resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => LendingMarketWithPosition[];
755
- memoizedResultFunc: ((resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => LendingMarketWithPosition[]) & {
1154
+ resultFunc: (resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => {
1155
+ netSupplyRate: number;
1156
+ totalSupplyRate: number;
1157
+ id: string;
1158
+ chainId: number;
1159
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
1160
+ name: string;
1161
+ address: string;
1162
+ tvlUnderlying: string;
1163
+ underlying: import("@metamask/stake-sdk").TokenInfo;
1164
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
1165
+ rewards: {
1166
+ token: import("@metamask/stake-sdk").TokenInfo;
1167
+ rate: number;
1168
+ }[];
1169
+ position: LendingPositionWithMarket;
1170
+ }[];
1171
+ memoizedResultFunc: ((resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => {
1172
+ netSupplyRate: number;
1173
+ totalSupplyRate: number;
1174
+ id: string;
1175
+ chainId: number;
1176
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
1177
+ name: string;
1178
+ address: string;
1179
+ tvlUnderlying: string;
1180
+ underlying: import("@metamask/stake-sdk").TokenInfo;
1181
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
1182
+ rewards: {
1183
+ token: import("@metamask/stake-sdk").TokenInfo;
1184
+ rate: number;
1185
+ }[];
1186
+ position: LendingPositionWithMarket;
1187
+ }[]) & {
756
1188
  clearCache: () => void;
757
1189
  resultsCount: () => number;
758
1190
  resetResultsCount: () => void;
759
1191
  };
760
- lastResult: () => LendingMarketWithPosition[];
1192
+ lastResult: () => {
1193
+ netSupplyRate: number;
1194
+ totalSupplyRate: number;
1195
+ id: string;
1196
+ chainId: number;
1197
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
1198
+ name: string;
1199
+ address: string;
1200
+ tvlUnderlying: string;
1201
+ underlying: import("@metamask/stake-sdk").TokenInfo;
1202
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
1203
+ rewards: {
1204
+ token: import("@metamask/stake-sdk").TokenInfo;
1205
+ rate: number;
1206
+ }[];
1207
+ position: LendingPositionWithMarket;
1208
+ }[];
761
1209
  dependencies: [((state: EarnControllerState) => Record<string, Record<string, Record<string, LendingPositionWithMarket>>>) & {
762
1210
  clearCache: () => void;
763
1211
  resultsCount: () => number;
@@ -840,25 +1288,121 @@ export declare const selectLendingMarketsByChainIdAndTokenAddress: ((state: Earn
840
1288
  resultsCount: () => number;
841
1289
  resetResultsCount: () => void;
842
1290
  } & {
843
- resultFunc: (resultFuncArgs_0: LendingMarketWithPosition[]) => Record<string, Record<string, LendingMarketWithPosition[]>>;
844
- memoizedResultFunc: ((resultFuncArgs_0: LendingMarketWithPosition[]) => Record<string, Record<string, LendingMarketWithPosition[]>>) & {
1291
+ resultFunc: (resultFuncArgs_0: {
1292
+ netSupplyRate: number;
1293
+ totalSupplyRate: number;
1294
+ id: string;
1295
+ chainId: number;
1296
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
1297
+ name: string;
1298
+ address: string;
1299
+ tvlUnderlying: string;
1300
+ underlying: import("@metamask/stake-sdk").TokenInfo;
1301
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
1302
+ rewards: {
1303
+ token: import("@metamask/stake-sdk").TokenInfo;
1304
+ rate: number;
1305
+ }[];
1306
+ position: LendingPositionWithMarket;
1307
+ }[]) => Record<string, Record<string, LendingMarketWithPosition[]>>;
1308
+ memoizedResultFunc: ((resultFuncArgs_0: {
1309
+ netSupplyRate: number;
1310
+ totalSupplyRate: number;
1311
+ id: string;
1312
+ chainId: number;
1313
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
1314
+ name: string;
1315
+ address: string;
1316
+ tvlUnderlying: string;
1317
+ underlying: import("@metamask/stake-sdk").TokenInfo;
1318
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
1319
+ rewards: {
1320
+ token: import("@metamask/stake-sdk").TokenInfo;
1321
+ rate: number;
1322
+ }[];
1323
+ position: LendingPositionWithMarket;
1324
+ }[]) => Record<string, Record<string, LendingMarketWithPosition[]>>) & {
845
1325
  clearCache: () => void;
846
1326
  resultsCount: () => number;
847
1327
  resetResultsCount: () => void;
848
1328
  };
849
1329
  lastResult: () => Record<string, Record<string, LendingMarketWithPosition[]>>;
850
- dependencies: [((state: EarnControllerState) => LendingMarketWithPosition[]) & {
1330
+ dependencies: [((state: EarnControllerState) => {
1331
+ netSupplyRate: number;
1332
+ totalSupplyRate: number;
1333
+ id: string;
1334
+ chainId: number;
1335
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
1336
+ name: string;
1337
+ address: string;
1338
+ tvlUnderlying: string;
1339
+ underlying: import("@metamask/stake-sdk").TokenInfo;
1340
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
1341
+ rewards: {
1342
+ token: import("@metamask/stake-sdk").TokenInfo;
1343
+ rate: number;
1344
+ }[];
1345
+ position: LendingPositionWithMarket;
1346
+ }[]) & {
851
1347
  clearCache: () => void;
852
1348
  resultsCount: () => number;
853
1349
  resetResultsCount: () => void;
854
1350
  } & {
855
- resultFunc: (resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => LendingMarketWithPosition[];
856
- memoizedResultFunc: ((resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => LendingMarketWithPosition[]) & {
1351
+ resultFunc: (resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => {
1352
+ netSupplyRate: number;
1353
+ totalSupplyRate: number;
1354
+ id: string;
1355
+ chainId: number;
1356
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
1357
+ name: string;
1358
+ address: string;
1359
+ tvlUnderlying: string;
1360
+ underlying: import("@metamask/stake-sdk").TokenInfo;
1361
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
1362
+ rewards: {
1363
+ token: import("@metamask/stake-sdk").TokenInfo;
1364
+ rate: number;
1365
+ }[];
1366
+ position: LendingPositionWithMarket;
1367
+ }[];
1368
+ memoizedResultFunc: ((resultFuncArgs_0: Record<string, Record<string, Record<string, LendingPositionWithMarket>>>, resultFuncArgs_1: LendingMarket[]) => {
1369
+ netSupplyRate: number;
1370
+ totalSupplyRate: number;
1371
+ id: string;
1372
+ chainId: number;
1373
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
1374
+ name: string;
1375
+ address: string;
1376
+ tvlUnderlying: string;
1377
+ underlying: import("@metamask/stake-sdk").TokenInfo;
1378
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
1379
+ rewards: {
1380
+ token: import("@metamask/stake-sdk").TokenInfo;
1381
+ rate: number;
1382
+ }[];
1383
+ position: LendingPositionWithMarket;
1384
+ }[]) & {
857
1385
  clearCache: () => void;
858
1386
  resultsCount: () => number;
859
1387
  resetResultsCount: () => void;
860
1388
  };
861
- lastResult: () => LendingMarketWithPosition[];
1389
+ lastResult: () => {
1390
+ netSupplyRate: number;
1391
+ totalSupplyRate: number;
1392
+ id: string;
1393
+ chainId: number;
1394
+ protocol: import("@metamask/stake-sdk").LendingProtocol;
1395
+ name: string;
1396
+ address: string;
1397
+ tvlUnderlying: string;
1398
+ underlying: import("@metamask/stake-sdk").TokenInfo;
1399
+ outputToken: import("@metamask/stake-sdk").TokenInfo;
1400
+ rewards: {
1401
+ token: import("@metamask/stake-sdk").TokenInfo;
1402
+ rate: number;
1403
+ }[];
1404
+ position: LendingPositionWithMarket;
1405
+ }[];
862
1406
  dependencies: [((state: EarnControllerState) => Record<string, Record<string, Record<string, LendingPositionWithMarket>>>) & {
863
1407
  clearCache: () => void;
864
1408
  resultsCount: () => number;
@@ -1 +1 @@
1
- {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../src/selectors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzD,OAAO,KAAK,EACV,mBAAmB,EACnB,yBAAyB,EACzB,yBAAyB,EACzB,kCAAkC,EACnC,MAAM,qBAAqB,CAAC;AAE7B,eAAO,MAAM,oBAAoB,UACxB,mBAAmB,KACzB,aAAa,EAA2B,CAAC;AAE5C,eAAO,MAAM,sBAAsB,UAC1B,mBAAmB,KACzB,kCAAkC,EAA6B,CAAC;AAEnE,eAAO,MAAM,8BAA8B,YAAa,MAAM;;;;;;;;;;;;;;;;;;;;CAG3D,CAAC;AAEJ,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;;;;;;;CAY/C,CAAC;AAEF,eAAO,MAAM,mCAAmC,aACpC,MAAM,MACZ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMT,CAAC;AAEJ,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;CASzC,CAAC;AAEF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAY5C,CAAC;AAEF,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAc3C,CAAC;AAEF,eAAO,MAAM,+CAA+C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAW3D,CAAC;AAEF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiB5C,CAAC;AAEF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAa9C,CAAC;AAEF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAW5C,CAAC;AAEF,eAAO,MAAM,4CAA4C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAaxD,CAAC;AAEF,eAAO,MAAM,6CAA6C,aAC9C,MAAM,gBACF,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMnB,CAAC;AAEJ,eAAO,MAAM,kDAAkD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAa5D,CAAC;AAEJ,eAAO,MAAM,4CAA4C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAcxD,CAAC;AAEF,eAAO,MAAM,uBAAuB,UAAW,mBAAmB,KAAG,OAC3C,CAAC;AAE3B;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,UACrB,mBAAmB,KACzB,mBAAmB,CAAC,cAAc,CAAuB,CAAC;AAE7D;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;CAGhC,CAAC"}
1
+ {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../src/selectors.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"selectors.js","sourceRoot":"","sources":["../src/selectors.ts"],"names":[],"mappings":"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","sourcesContent":["import type { LendingMarket } from '@metamask/stake-sdk';\nimport { createSelector } from 'reselect';\n\nimport type {\n EarnControllerState,\n LendingMarketWithPosition,\n LendingPositionWithMarket,\n LendingPositionWithMarketReference,\n} from './EarnController.js';\n\nexport const selectLendingMarkets = (\n state: EarnControllerState,\n): LendingMarket[] => state.lending.markets;\n\nexport const selectLendingPositions = (\n state: EarnControllerState,\n): LendingPositionWithMarketReference[] => state.lending.positions;\n\nexport const selectLendingMarketsForChainId = (chainId: number) =>\n createSelector(selectLendingMarkets, (markets): LendingMarket[] =>\n markets.filter((market) => market.chainId === chainId),\n );\n\nexport const selectLendingMarketsByProtocolAndId = createSelector(\n selectLendingMarkets,\n (markets) => {\n return markets.reduce<Record<string, Record<string, LendingMarket>>>(\n (acc, market) => {\n acc[market.protocol] = acc[market.protocol] || {};\n acc[market.protocol][market.id] = market;\n return acc;\n },\n {},\n );\n },\n);\n\nexport const selectLendingMarketForProtocolAndId = (\n protocol: string,\n id: string,\n) =>\n createSelector(\n selectLendingMarketsByProtocolAndId,\n (marketsByProtocolAndId): LendingMarket | undefined =>\n marketsByProtocolAndId?.[protocol]?.[id],\n );\n\nexport const selectLendingMarketsByChainId = createSelector(\n selectLendingMarkets,\n (markets) => {\n return markets.reduce<Record<number, LendingMarket[]>>((acc, market) => {\n acc[market.chainId] = acc[market.chainId] || [];\n acc[market.chainId].push(market);\n return acc;\n }, {});\n },\n);\n\nexport const selectLendingPositionsWithMarket = createSelector(\n selectLendingPositions,\n selectLendingMarketsByProtocolAndId,\n (positions, marketsByProtocolAndId): LendingPositionWithMarket[] => {\n return positions.map((position) => {\n return {\n ...position,\n market:\n marketsByProtocolAndId?.[position.protocol]?.[position.marketId],\n };\n });\n },\n);\n\nexport const selectLendingPositionsByChainId = createSelector(\n selectLendingPositionsWithMarket,\n (positionsWithMarket) => {\n return positionsWithMarket.reduce<\n Record<number, LendingPositionWithMarket[]>\n >((acc, position) => {\n const chainId = position.market?.chainId;\n if (chainId) {\n acc[chainId] = acc[chainId] || [];\n acc[chainId].push(position);\n }\n return acc;\n }, {});\n },\n);\n\nexport const selectLendingPositionsByProtocolChainIdMarketId = createSelector(\n selectLendingPositionsWithMarket,\n (positionsWithMarket) =>\n positionsWithMarket.reduce<\n Record<string, Record<string, Record<string, LendingPositionWithMarket>>>\n >((acc, position) => {\n acc[position.protocol] ??= {};\n acc[position.protocol][position.chainId] ??= {};\n acc[position.protocol][position.chainId][position.marketId] = position;\n return acc;\n }, {}),\n);\n\nexport const selectLendingMarketsWithPosition = createSelector(\n selectLendingPositionsByProtocolChainIdMarketId,\n selectLendingMarkets,\n (\n positionsByProtocolChainIdMarketId,\n lendingMarkets,\n ): LendingMarketWithPosition[] =>\n lendingMarkets.map((market) => {\n const position =\n positionsByProtocolChainIdMarketId?.[market.protocol]?.[\n market.chainId\n ]?.[market.id];\n return {\n ...market,\n position: position || null,\n };\n }),\n);\n\nexport const selectLendingMarketsByTokenAddress = createSelector(\n selectLendingMarketsWithPosition,\n (marketsWithPosition) => {\n return marketsWithPosition.reduce<\n Record<string, LendingMarketWithPosition[]>\n >((acc, market) => {\n if (market.underlying?.address) {\n acc[market.underlying.address] = acc[market.underlying.address] || [];\n acc[market.underlying.address].push(market);\n }\n return acc;\n }, {});\n },\n);\n\nexport const selectLendingPositionsByProtocol = createSelector(\n selectLendingPositionsWithMarket,\n (positionsWithMarket) => {\n return positionsWithMarket.reduce<\n Record<string, LendingPositionWithMarket[]>\n >((acc, position) => {\n acc[position.protocol] = acc[position.protocol] || [];\n acc[position.protocol].push(position);\n return acc;\n }, {});\n },\n);\n\nexport const selectLendingMarketByProtocolAndTokenAddress = createSelector(\n selectLendingMarketsWithPosition,\n (marketsWithPosition) => {\n return marketsWithPosition.reduce<\n Record<string, Record<string, LendingMarketWithPosition>>\n >((acc, market) => {\n if (market.underlying?.address) {\n acc[market.protocol] = acc[market.protocol] || {};\n acc[market.protocol][market.underlying.address] = market;\n }\n return acc;\n }, {});\n },\n);\n\nexport const selectLendingMarketForProtocolAndTokenAddress = (\n protocol: string,\n tokenAddress: string,\n) =>\n createSelector(\n selectLendingMarketByProtocolAndTokenAddress,\n (marketsByProtocolAndTokenAddress): LendingMarketWithPosition | undefined =>\n marketsByProtocolAndTokenAddress?.[protocol]?.[tokenAddress],\n );\n\nexport const selectLendingMarketsByChainIdAndOutputTokenAddress =\n createSelector(selectLendingMarketsWithPosition, (marketsWithPosition) =>\n marketsWithPosition.reduce<\n Record<string, Record<string, LendingMarketWithPosition[]>>\n >((acc, market) => {\n if (market.outputToken?.address) {\n acc[market.chainId] = acc?.[market.chainId] || {};\n acc[market.chainId][market.outputToken.address] =\n acc?.[market.chainId]?.[market.outputToken.address] || [];\n acc[market.chainId][market.outputToken.address].push(market);\n }\n return acc;\n }, {}),\n );\n\nexport const selectLendingMarketsByChainIdAndTokenAddress = createSelector(\n selectLendingMarketsWithPosition,\n (marketsWithPosition) =>\n marketsWithPosition.reduce<\n Record<string, Record<string, LendingMarketWithPosition[]>>\n >((acc, market) => {\n if (market.underlying?.address) {\n acc[market.chainId] = acc?.[market.chainId] || {};\n acc[market.chainId][market.underlying.address] =\n acc?.[market.chainId]?.[market.underlying.address] || [];\n acc[market.chainId][market.underlying.address].push(market);\n }\n return acc;\n }, {}),\n);\n\nexport const selectIsLendingEligible = (state: EarnControllerState): boolean =>\n state.lending.isEligible;\n\n/**\n * Selects the TRON staking state.\n *\n * @param state - The EarnController state.\n * @returns The TRON staking state.\n */\nexport const selectTronStaking = (\n state: EarnControllerState,\n): EarnControllerState['tron_staking'] => state.tron_staking;\n\n/**\n * Selects the APY for TRON staking.\n *\n * @param state - The EarnController state.\n * @returns The APY for TRON staking, or undefined if not available.\n */\nexport const selectTronStakingApy = createSelector(\n selectTronStaking,\n (tronStaking): string | undefined => tronStaking?.apy,\n);\n"]}
1
+ {"version":3,"file":"selectors.js","sourceRoot":"","sources":["../src/selectors.ts"],"names":[],"mappings":"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","sourcesContent":["import type { LendingMarket } from '@metamask/stake-sdk';\nimport { createSelector } from 'reselect';\n\nimport type {\n EarnControllerState,\n LendingMarketWithPosition,\n LendingPositionWithMarket,\n LendingPositionWithMarketReference,\n} from './EarnController.js';\n\nexport const selectLendingMarkets = (\n state: EarnControllerState,\n): LendingMarket[] => state.lending.markets;\n\nexport const selectLendingPositions = (\n state: EarnControllerState,\n): LendingPositionWithMarketReference[] => state.lending.positions;\n\nexport const selectLendingMarketsForChainId = (chainId: number) =>\n createSelector(selectLendingMarkets, (markets): LendingMarket[] =>\n markets.filter((market) => market.chainId === chainId),\n );\n\nexport const selectLendingMarketsByProtocolAndId = createSelector(\n selectLendingMarkets,\n (markets) => {\n return markets.reduce<Record<string, Record<string, LendingMarket>>>(\n (acc, market) => {\n acc[market.protocol] = acc[market.protocol] || {};\n acc[market.protocol][market.id] = market;\n return acc;\n },\n {},\n );\n },\n);\n\nexport const selectLendingMarketForProtocolAndId = (\n protocol: string,\n id: string,\n) =>\n createSelector(\n selectLendingMarketsByProtocolAndId,\n (marketsByProtocolAndId): LendingMarket | undefined =>\n marketsByProtocolAndId?.[protocol]?.[id],\n );\n\nexport const selectLendingMarketsByChainId = createSelector(\n selectLendingMarkets,\n (markets) => {\n return markets.reduce<Record<number, LendingMarket[]>>((acc, market) => {\n acc[market.chainId] = acc[market.chainId] || [];\n acc[market.chainId].push(market);\n return acc;\n }, {});\n },\n);\n\nexport const selectLendingPositionsWithMarket = createSelector(\n selectLendingPositions,\n selectLendingMarketsByProtocolAndId,\n (positions, marketsByProtocolAndId): LendingPositionWithMarket[] => {\n return positions.map((position) => {\n return {\n ...position,\n market:\n marketsByProtocolAndId?.[position.protocol]?.[position.marketId],\n };\n });\n },\n);\n\nexport const selectLendingPositionsByChainId = createSelector(\n selectLendingPositionsWithMarket,\n (positionsWithMarket) => {\n return positionsWithMarket.reduce<\n Record<number, LendingPositionWithMarket[]>\n >((acc, position) => {\n const chainId = position.market?.chainId;\n if (chainId) {\n acc[chainId] = acc[chainId] || [];\n acc[chainId].push(position);\n }\n return acc;\n }, {});\n },\n);\n\nexport const selectLendingPositionsByProtocolChainIdMarketId = createSelector(\n selectLendingPositionsWithMarket,\n (positionsWithMarket) =>\n positionsWithMarket.reduce<\n Record<string, Record<string, Record<string, LendingPositionWithMarket>>>\n >((acc, position) => {\n acc[position.protocol] ??= {};\n acc[position.protocol][position.chainId] ??= {};\n acc[position.protocol][position.chainId][position.marketId] = position;\n return acc;\n }, {}),\n);\n\nexport const selectLendingMarketsWithPosition = createSelector(\n selectLendingPositionsByProtocolChainIdMarketId,\n selectLendingMarkets,\n (positionsByProtocolChainIdMarketId, lendingMarkets) =>\n lendingMarkets.map((market) => {\n const position =\n positionsByProtocolChainIdMarketId?.[market.protocol]?.[\n market.chainId\n ]?.[market.id];\n return {\n ...market,\n position: position || null,\n };\n }),\n);\n\nexport const selectLendingMarketsByTokenAddress = createSelector(\n selectLendingMarketsWithPosition,\n (marketsWithPosition) => {\n return marketsWithPosition.reduce<\n Record<string, LendingMarketWithPosition[]>\n >((acc, market) => {\n if (market.underlying?.address) {\n acc[market.underlying.address] = acc[market.underlying.address] || [];\n acc[market.underlying.address].push(market);\n }\n return acc;\n }, {});\n },\n);\n\nexport const selectLendingPositionsByProtocol = createSelector(\n selectLendingPositionsWithMarket,\n (positionsWithMarket) => {\n return positionsWithMarket.reduce<\n Record<string, LendingPositionWithMarket[]>\n >((acc, position) => {\n acc[position.protocol] = acc[position.protocol] || [];\n acc[position.protocol].push(position);\n return acc;\n }, {});\n },\n);\n\nexport const selectLendingMarketByProtocolAndTokenAddress = createSelector(\n selectLendingMarketsWithPosition,\n (marketsWithPosition) => {\n return marketsWithPosition.reduce<\n Record<string, Record<string, LendingMarketWithPosition>>\n >((acc, market) => {\n if (market.underlying?.address) {\n acc[market.protocol] = acc[market.protocol] || {};\n acc[market.protocol][market.underlying.address] = market;\n }\n return acc;\n }, {});\n },\n);\n\nexport const selectLendingMarketForProtocolAndTokenAddress = (\n protocol: string,\n tokenAddress: string,\n) =>\n createSelector(\n selectLendingMarketByProtocolAndTokenAddress,\n (marketsByProtocolAndTokenAddress): LendingMarketWithPosition | undefined =>\n marketsByProtocolAndTokenAddress?.[protocol]?.[tokenAddress],\n );\n\nexport const selectLendingMarketsByChainIdAndOutputTokenAddress =\n createSelector(selectLendingMarketsWithPosition, (marketsWithPosition) =>\n marketsWithPosition.reduce<\n Record<string, Record<string, LendingMarketWithPosition[]>>\n >((acc, market) => {\n if (market.outputToken?.address) {\n acc[market.chainId] = acc?.[market.chainId] || {};\n acc[market.chainId][market.outputToken.address] =\n acc?.[market.chainId]?.[market.outputToken.address] || [];\n acc[market.chainId][market.outputToken.address].push(market);\n }\n return acc;\n }, {}),\n );\n\nexport const selectLendingMarketsByChainIdAndTokenAddress = createSelector(\n selectLendingMarketsWithPosition,\n (marketsWithPosition) =>\n marketsWithPosition.reduce<\n Record<string, Record<string, LendingMarketWithPosition[]>>\n >((acc, market) => {\n if (market.underlying?.address) {\n acc[market.chainId] = acc?.[market.chainId] || {};\n acc[market.chainId][market.underlying.address] =\n acc?.[market.chainId]?.[market.underlying.address] || [];\n acc[market.chainId][market.underlying.address].push(market);\n }\n return acc;\n }, {}),\n);\n\nexport const selectIsLendingEligible = (state: EarnControllerState): boolean =>\n state.lending.isEligible;\n\n/**\n * Selects the TRON staking state.\n *\n * @param state - The EarnController state.\n * @returns The TRON staking state.\n */\nexport const selectTronStaking = (\n state: EarnControllerState,\n): EarnControllerState['tron_staking'] => state.tron_staking;\n\n/**\n * Selects the APY for TRON staking.\n *\n * @param state - The EarnController state.\n * @returns The APY for TRON staking, or undefined if not available.\n */\nexport const selectTronStakingApy = createSelector(\n selectTronStaking,\n (tronStaking): string | undefined => tronStaking?.apy,\n);\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metamask-previews/earn-controller",
3
- "version": "13.0.2-preview-7fb08ad32",
3
+ "version": "13.0.2-preview-cbae429b5",
4
4
  "description": "Manages state for earning features and coordinates interactions between staking services, SDK integrations, and other controllers to enable users to participate in various earning opportunities",
5
5
  "keywords": [
6
6
  "Ethereum",
@@ -53,25 +53,25 @@
53
53
  "@ethersproject/bignumber": "^5.8.0",
54
54
  "@ethersproject/providers": "^5.8.0",
55
55
  "@metamask/account-tree-controller": "^11.0.1",
56
- "@metamask/base-controller": "^10.1.0",
56
+ "@metamask/base-controller": "^10.0.0",
57
57
  "@metamask/controller-utils": "^13.0.0",
58
- "@metamask/keyring-api": "^24.3.0",
58
+ "@metamask/keyring-api": "^24.0.0",
59
59
  "@metamask/messenger": "^3.0.0",
60
- "@metamask/network-controller": "^37.1.0",
61
- "@metamask/stake-sdk": "^3.4.0",
62
- "reselect": "^5.3.0"
60
+ "@metamask/network-controller": "^37.0.1",
61
+ "@metamask/stake-sdk": "^3.2.1",
62
+ "reselect": "^5.1.1"
63
63
  },
64
64
  "devDependencies": {
65
65
  "@metamask/auto-changelog": "^6.2.1",
66
- "@metamask/transaction-controller": "^72.2.1",
66
+ "@metamask/transaction-controller": "^72.1.0",
67
67
  "@types/jest": "^30.0.0",
68
68
  "@typescript/native": "npm:typescript@^7.0.2",
69
69
  "deepmerge": "^4.3.1",
70
70
  "jest": "^30.5.2",
71
71
  "rimraf": "^6.1.3",
72
72
  "ts-jest": "^29.4.14",
73
- "typedoc": "^0.28.20",
74
- "typedoc-plugin-missing-exports": "^4.1.4",
73
+ "typedoc": "^0.25.13",
74
+ "typedoc-plugin-missing-exports": "^2.0.0",
75
75
  "typescript": "npm:@typescript/typescript6@^6.0.2"
76
76
  },
77
77
  "engines": {