@huma-finance/shared 0.0.31 → 0.0.32
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/LICENSE +660 -660
- package/README.md +28 -28
- package/dist/abis/BaseCreditPoolReceivable.json +764 -0
- package/dist/abis/ERC20TransferrableReceivable.json +648 -0
- package/dist/abis/types/BaseCreditPoolReceivable.d.ts +518 -0
- package/dist/abis/types/BaseCreditPoolReceivable.js +2 -0
- package/dist/abis/types/BaseCreditPoolReceivable.js.map +1 -0
- package/dist/abis/types/ERC20TransferrableReceivable.d.ts +407 -0
- package/dist/abis/types/ERC20TransferrableReceivable.js +2 -0
- package/dist/abis/types/ERC20TransferrableReceivable.js.map +1 -0
- package/dist/abis/types/factories/BaseCreditPoolReceivable__factory.d.ts +597 -0
- package/dist/abis/types/factories/BaseCreditPoolReceivable__factory.js +778 -0
- package/dist/abis/types/factories/BaseCreditPoolReceivable__factory.js.map +1 -0
- package/dist/abis/types/factories/BaseCreditPool__factory.js +2 -1
- package/dist/abis/types/factories/BaseCreditPool__factory.js.map +1 -1
- package/dist/abis/types/factories/BaseFeeManager__factory.js +2 -1
- package/dist/abis/types/factories/BaseFeeManager__factory.js.map +1 -1
- package/dist/abis/types/factories/BasePoolConfig__factory.js +2 -1
- package/dist/abis/types/factories/BasePoolConfig__factory.js.map +1 -1
- package/dist/abis/types/factories/ERC20TransferableReceivable__factory.js +2 -1
- package/dist/abis/types/factories/ERC20TransferableReceivable__factory.js.map +1 -1
- package/dist/abis/types/factories/ERC20TransferrableReceivable__factory.d.ts +508 -0
- package/dist/abis/types/factories/ERC20TransferrableReceivable__factory.js +663 -0
- package/dist/abis/types/factories/ERC20TransferrableReceivable__factory.js.map +1 -0
- package/dist/abis/types/factories/Erc20__factory.js +2 -1
- package/dist/abis/types/factories/Erc20__factory.js.map +1 -1
- package/dist/abis/types/factories/Erc2612__factory.js +2 -1
- package/dist/abis/types/factories/Erc2612__factory.js.map +1 -1
- package/dist/abis/types/factories/Erc721__factory.js +2 -1
- package/dist/abis/types/factories/Erc721__factory.js.map +1 -1
- package/dist/abis/types/factories/HDT__factory.js +2 -1
- package/dist/abis/types/factories/HDT__factory.js.map +1 -1
- package/dist/abis/types/factories/IConstantFlowAgreementV1__factory.js +2 -1
- package/dist/abis/types/factories/IConstantFlowAgreementV1__factory.js.map +1 -1
- package/dist/abis/types/factories/ISuperfluid__factory.js +2 -1
- package/dist/abis/types/factories/ISuperfluid__factory.js.map +1 -1
- package/dist/abis/types/factories/InvoiceNFT__factory.js +2 -1
- package/dist/abis/types/factories/InvoiceNFT__factory.js.map +1 -1
- package/dist/abis/types/factories/Multisend__factory.js +2 -1
- package/dist/abis/types/factories/Multisend__factory.js.map +1 -1
- package/dist/abis/types/factories/RealWorldReceivable__factory.js +2 -1
- package/dist/abis/types/factories/RealWorldReceivable__factory.js.map +1 -1
- package/dist/abis/types/factories/ReceivableFactoringPool__factory.js +2 -1
- package/dist/abis/types/factories/ReceivableFactoringPool__factory.js.map +1 -1
- package/dist/abis/types/factories/StreamFactoringPool__factory.js +2 -1
- package/dist/abis/types/factories/StreamFactoringPool__factory.js.map +1 -1
- package/dist/abis/types/factories/StreamFeeManager__factory.js +2 -1
- package/dist/abis/types/factories/StreamFeeManager__factory.js.map +1 -1
- package/dist/abis/types/factories/SuperfluidPoolProcessor__factory.js +2 -1
- package/dist/abis/types/factories/SuperfluidPoolProcessor__factory.js.map +1 -1
- package/dist/abis/types/factories/TestERC20__factory.js +2 -1
- package/dist/abis/types/factories/TestERC20__factory.js.map +1 -1
- package/dist/abis/types/factories/TradableStream__factory.js +2 -1
- package/dist/abis/types/factories/TradableStream__factory.js.map +1 -1
- package/dist/abis/types/factories/TransferNFT__factory.js +2 -1
- package/dist/abis/types/factories/TransferNFT__factory.js.map +1 -1
- package/dist/abis/types/factories/Transfer__factory.js +2 -1
- package/dist/abis/types/factories/Transfer__factory.js.map +1 -1
- package/dist/cjs/abis/BaseCreditPool.json +1179 -1179
- package/dist/cjs/abis/BaseCreditPoolReceivable.json +764 -0
- package/dist/cjs/abis/BaseFeeManager.json +480 -480
- package/dist/cjs/abis/BasePoolConfig.json +1364 -1364
- package/dist/cjs/abis/ERC20TransferableReceivable.json +648 -648
- package/dist/cjs/abis/HDT.json +512 -512
- package/dist/cjs/abis/IConstantFlowAgreementV1.json +890 -890
- package/dist/cjs/abis/ISuperfluid.json +1122 -1122
- package/dist/cjs/abis/InvoiceNFT.json +625 -625
- package/dist/cjs/abis/Multisend.json +26 -26
- package/dist/cjs/abis/RealWorldReceivable.json +823 -823
- package/dist/cjs/abis/ReceivableFactoringPool.json +1529 -1529
- package/dist/cjs/abis/StreamFactoringPool.json +1523 -1523
- package/dist/cjs/abis/StreamFeeManager.json +522 -522
- package/dist/cjs/abis/SuperfluidPoolProcessor.json +692 -692
- package/dist/cjs/abis/TestERC20.json +358 -358
- package/dist/cjs/abis/TradableStream.json +850 -850
- package/dist/cjs/abis/Transfer.json +24 -24
- package/dist/cjs/abis/TransferNFT.json +27 -27
- package/dist/cjs/abis/erc20.json +117 -117
- package/dist/cjs/abis/erc2612.json +132 -132
- package/dist/cjs/abis/erc721.json +673 -673
- package/dist/cjs/abis/index.d.ts +3 -3
- package/dist/cjs/abis/index.js +12 -12
- package/dist/cjs/abis/types/BaseCreditPool.d.ts +803 -803
- package/dist/cjs/abis/types/BaseCreditPool.js +2 -2
- package/dist/cjs/abis/types/BaseCreditPoolReceivable.d.ts +518 -0
- package/dist/cjs/abis/types/BaseCreditPoolReceivable.js +3 -0
- package/dist/cjs/abis/types/BaseCreditPoolReceivable.js.map +1 -0
- package/dist/cjs/abis/types/BaseFeeManager.d.ts +408 -408
- package/dist/cjs/abis/types/BaseFeeManager.js +2 -2
- package/dist/cjs/abis/types/BasePoolConfig.d.ts +1097 -1097
- package/dist/cjs/abis/types/BasePoolConfig.js +2 -2
- package/dist/cjs/abis/types/ERC20TransferableReceivable.d.ts +407 -407
- package/dist/cjs/abis/types/ERC20TransferableReceivable.js +2 -2
- package/dist/cjs/abis/types/Erc20.d.ts +168 -168
- package/dist/cjs/abis/types/Erc20.js +2 -2
- package/dist/cjs/abis/types/Erc2612.d.ts +192 -192
- package/dist/cjs/abis/types/Erc2612.js +2 -2
- package/dist/cjs/abis/types/Erc721.d.ts +474 -474
- package/dist/cjs/abis/types/Erc721.js +2 -2
- package/dist/cjs/abis/types/HDT.d.ts +369 -369
- package/dist/cjs/abis/types/HDT.js +2 -2
- package/dist/cjs/abis/types/IConstantFlowAgreementV1.d.ts +573 -573
- package/dist/cjs/abis/types/IConstantFlowAgreementV1.js +2 -2
- package/dist/cjs/abis/types/ISuperfluid.d.ts +728 -728
- package/dist/cjs/abis/types/ISuperfluid.js +2 -2
- package/dist/cjs/abis/types/InvoiceNFT.d.ts +425 -425
- package/dist/cjs/abis/types/InvoiceNFT.js +2 -2
- package/dist/cjs/abis/types/Multisend.d.ts +50 -50
- package/dist/cjs/abis/types/Multisend.js +2 -2
- package/dist/cjs/abis/types/RealWorldReceivable.d.ts +564 -564
- package/dist/cjs/abis/types/RealWorldReceivable.js +2 -2
- package/dist/cjs/abis/types/ReceivableFactoringPool.d.ts +999 -999
- package/dist/cjs/abis/types/ReceivableFactoringPool.js +2 -2
- package/dist/cjs/abis/types/StreamFactoringPool.d.ts +985 -985
- package/dist/cjs/abis/types/StreamFactoringPool.js +2 -2
- package/dist/cjs/abis/types/StreamFeeManager.d.ts +440 -440
- package/dist/cjs/abis/types/StreamFeeManager.js +2 -2
- package/dist/cjs/abis/types/SuperfluidPoolProcessor.d.ts +398 -398
- package/dist/cjs/abis/types/SuperfluidPoolProcessor.js +2 -2
- package/dist/cjs/abis/types/TestERC20.d.ts +270 -270
- package/dist/cjs/abis/types/TestERC20.js +2 -2
- package/dist/cjs/abis/types/TradableStream.d.ts +607 -607
- package/dist/cjs/abis/types/TradableStream.js +2 -2
- package/dist/cjs/abis/types/Transfer.d.ts +45 -45
- package/dist/cjs/abis/types/Transfer.js +2 -2
- package/dist/cjs/abis/types/TransferNFT.d.ts +45 -45
- package/dist/cjs/abis/types/TransferNFT.js +2 -2
- package/dist/cjs/abis/types/common.d.ts +22 -22
- package/dist/cjs/abis/types/common.js +2 -2
- package/dist/cjs/abis/types/factories/BaseCreditPoolReceivable__factory.d.ts +597 -0
- package/dist/cjs/abis/types/factories/BaseCreditPoolReceivable__factory.js +782 -0
- package/dist/cjs/abis/types/factories/BaseCreditPoolReceivable__factory.js.map +1 -0
- package/dist/cjs/abis/types/factories/BaseCreditPool__factory.d.ts +931 -931
- package/dist/cjs/abis/types/factories/BaseCreditPool__factory.js +1196 -1196
- package/dist/cjs/abis/types/factories/BaseFeeManager__factory.d.ts +379 -379
- package/dist/cjs/abis/types/factories/BaseFeeManager__factory.js +497 -497
- package/dist/cjs/abis/types/factories/BasePoolConfig__factory.d.ts +1074 -1074
- package/dist/cjs/abis/types/factories/BasePoolConfig__factory.js +1381 -1381
- package/dist/cjs/abis/types/factories/ERC20TransferableReceivable__factory.d.ts +508 -508
- package/dist/cjs/abis/types/factories/ERC20TransferableReceivable__factory.js +665 -665
- package/dist/cjs/abis/types/factories/Erc20__factory.d.ts +175 -175
- package/dist/cjs/abis/types/factories/Erc20__factory.js +239 -239
- package/dist/cjs/abis/types/factories/Erc2612__factory.d.ts +209 -209
- package/dist/cjs/abis/types/factories/Erc2612__factory.js +282 -282
- package/dist/cjs/abis/types/factories/Erc721__factory.d.ts +539 -539
- package/dist/cjs/abis/types/factories/Erc721__factory.js +690 -690
- package/dist/cjs/abis/types/factories/HDT__factory.d.ts +399 -399
- package/dist/cjs/abis/types/factories/HDT__factory.js +529 -529
- package/dist/cjs/abis/types/factories/IConstantFlowAgreementV1__factory.d.ts +695 -695
- package/dist/cjs/abis/types/factories/IConstantFlowAgreementV1__factory.js +907 -907
- package/dist/cjs/abis/types/factories/ISuperfluid__factory.d.ts +866 -866
- package/dist/cjs/abis/types/factories/ISuperfluid__factory.js +1139 -1139
- package/dist/cjs/abis/types/factories/InvoiceNFT__factory.d.ts +489 -489
- package/dist/cjs/abis/types/factories/InvoiceNFT__factory.js +642 -642
- package/dist/cjs/abis/types/factories/Multisend__factory.d.ts +26 -26
- package/dist/cjs/abis/types/factories/Multisend__factory.js +43 -43
- package/dist/cjs/abis/types/factories/RealWorldReceivable__factory.d.ts +645 -645
- package/dist/cjs/abis/types/factories/RealWorldReceivable__factory.js +840 -840
- package/dist/cjs/abis/types/factories/ReceivableFactoringPool__factory.d.ts +1204 -1204
- package/dist/cjs/abis/types/factories/ReceivableFactoringPool__factory.js +1546 -1546
- package/dist/cjs/abis/types/factories/StreamFactoringPool__factory.d.ts +1200 -1200
- package/dist/cjs/abis/types/factories/StreamFactoringPool__factory.js +1540 -1540
- package/dist/cjs/abis/types/factories/StreamFeeManager__factory.d.ts +412 -412
- package/dist/cjs/abis/types/factories/StreamFeeManager__factory.js +539 -539
- package/dist/cjs/abis/types/factories/SuperfluidPoolProcessor__factory.d.ts +546 -546
- package/dist/cjs/abis/types/factories/SuperfluidPoolProcessor__factory.js +709 -709
- package/dist/cjs/abis/types/factories/TestERC20__factory.d.ts +280 -280
- package/dist/cjs/abis/types/factories/TestERC20__factory.js +375 -375
- package/dist/cjs/abis/types/factories/TradableStream__factory.d.ts +663 -663
- package/dist/cjs/abis/types/factories/TradableStream__factory.js +867 -867
- package/dist/cjs/abis/types/factories/TransferNFT__factory.d.ts +28 -28
- package/dist/cjs/abis/types/factories/TransferNFT__factory.js +44 -44
- package/dist/cjs/abis/types/factories/Transfer__factory.d.ts +25 -25
- package/dist/cjs/abis/types/factories/Transfer__factory.js +41 -41
- package/dist/cjs/abis/types/factories/index.d.ts +21 -21
- package/dist/cjs/abis/types/factories/index.js +48 -48
- package/dist/cjs/abis/types/index.d.ts +43 -43
- package/dist/cjs/abis/types/index.js +47 -47
- package/dist/cjs/hooks/index.d.ts +18 -18
- package/dist/cjs/hooks/index.js +21 -21
- package/dist/cjs/hooks/useActiveRoute.d.ts +8 -8
- package/dist/cjs/hooks/useActiveRoute.js +11 -11
- package/dist/cjs/hooks/useAsyncError.d.ts +14 -14
- package/dist/cjs/hooks/useAsyncError.js +26 -26
- package/dist/cjs/hooks/useCLPoolContract.d.ts +27 -27
- package/dist/cjs/hooks/useCLPoolContract.js +53 -53
- package/dist/cjs/hooks/useContract.d.ts +7 -7
- package/dist/cjs/hooks/useContract.js +49 -49
- package/dist/cjs/hooks/useContractFunction.d.ts +18 -18
- package/dist/cjs/hooks/useContractFunction.js +57 -57
- package/dist/cjs/hooks/useERC2612Permit/ethPermit/index.d.ts +35 -35
- package/dist/cjs/hooks/useERC2612Permit/ethPermit/index.js +145 -145
- package/dist/cjs/hooks/useERC2612Permit/ethPermit/lib.d.ts +1 -1
- package/dist/cjs/hooks/useERC2612Permit/ethPermit/lib.js +26 -26
- package/dist/cjs/hooks/useERC2612Permit/ethPermit/rpc.d.ts +10 -10
- package/dist/cjs/hooks/useERC2612Permit/ethPermit/rpc.js +104 -104
- package/dist/cjs/hooks/useERC2612Permit/index.d.ts +6 -6
- package/dist/cjs/hooks/useERC2612Permit/index.js +35 -35
- package/dist/cjs/hooks/useFactoring.d.ts +19 -19
- package/dist/cjs/hooks/useFactoring.js +94 -94
- package/dist/cjs/hooks/useForceRefresh.d.ts +1 -1
- package/dist/cjs/hooks/useForceRefresh.js +12 -12
- package/dist/cjs/hooks/useGetSizes.d.ts +12 -12
- package/dist/cjs/hooks/useGetSizes.js +23 -23
- package/dist/cjs/hooks/useInvoiceNFTContract.d.ts +11 -11
- package/dist/cjs/hooks/useInvoiceNFTContract.js +72 -72
- package/dist/cjs/hooks/useMQ.d.ts +6 -6
- package/dist/cjs/hooks/useMQ.js +18 -18
- package/dist/cjs/hooks/useMount.d.ts +2 -2
- package/dist/cjs/hooks/useMount.js +13 -13
- package/dist/cjs/hooks/useParamsSearch.d.ts +2 -2
- package/dist/cjs/hooks/useParamsSearch.js +11 -11
- package/dist/cjs/hooks/usePool.d.ts +4 -4
- package/dist/cjs/hooks/usePool.js +45 -45
- package/dist/cjs/hooks/usePoolContract.d.ts +73 -73
- package/dist/cjs/hooks/usePoolContract.js +309 -309
- package/dist/cjs/hooks/useRFPoolContract.d.ts +22 -22
- package/dist/cjs/hooks/useRFPoolContract.js +41 -41
- package/dist/cjs/hooks/useRefresh.d.ts +1 -1
- package/dist/cjs/hooks/useRefresh.js +51 -51
- package/dist/cjs/hooks/web3/index.d.ts +15 -15
- package/dist/cjs/hooks/web3/index.js +147 -147
- package/dist/cjs/hooks/web3/useConnectors.d.ts +17 -17
- package/dist/cjs/hooks/web3/useConnectors.js +30 -30
- package/dist/cjs/hooks/web3/useJsonRpcUrlsMap.d.ts +13 -13
- package/dist/cjs/hooks/web3/useJsonRpcUrlsMap.js +62 -62
- package/dist/cjs/index.d.ts +5 -5
- package/dist/cjs/index.js +8 -8
- package/dist/cjs/services/EAService.d.ts +153 -153
- package/dist/cjs/services/EAService.js +80 -80
- package/dist/cjs/services/IdentityService.d.ts +52 -35
- package/dist/cjs/services/IdentityService.js +83 -56
- package/dist/cjs/services/IdentityService.js.map +1 -1
- package/dist/cjs/services/RNService.d.ts +14 -14
- package/dist/cjs/services/RNService.js +13 -13
- package/dist/cjs/services/index.d.ts +3 -3
- package/dist/cjs/services/index.js +6 -6
- package/dist/cjs/utils/JsonRpcConnector.d.ts +11 -11
- package/dist/cjs/utils/JsonRpcConnector.js +42 -42
- package/dist/cjs/utils/WalletConnect.d.ts +10 -10
- package/dist/cjs/utils/WalletConnect.js +55 -55
- package/dist/cjs/utils/chain.d.ts +36 -35
- package/dist/cjs/utils/chain.js +116 -113
- package/dist/cjs/utils/chain.js.map +1 -1
- package/dist/cjs/utils/common.d.ts +4 -4
- package/dist/cjs/utils/common.js +17 -17
- package/dist/cjs/utils/config.d.ts +8 -8
- package/dist/cjs/utils/config.js +44 -44
- package/dist/cjs/utils/const.d.ts +2 -2
- package/dist/cjs/utils/const.js +5 -5
- package/dist/cjs/utils/contractError.json +73 -73
- package/dist/cjs/utils/contractconfig.json +19 -19
- package/dist/cjs/utils/credit.d.ts +21 -21
- package/dist/cjs/utils/credit.js +39 -39
- package/dist/cjs/utils/errors.d.ts +26 -26
- package/dist/cjs/utils/errors.js +46 -46
- package/dist/cjs/utils/index.d.ts +20 -20
- package/dist/cjs/utils/index.js +23 -23
- package/dist/cjs/utils/jsonRpcEndpoints.d.ts +12 -12
- package/dist/cjs/utils/jsonRpcEndpoints.js +28 -28
- package/dist/cjs/utils/notifi.d.ts +3 -3
- package/dist/cjs/utils/notifi.js +39 -28
- package/dist/cjs/utils/notifi.js.map +1 -1
- package/dist/cjs/utils/number.d.ts +5 -5
- package/dist/cjs/utils/number.js +61 -55
- package/dist/cjs/utils/number.js.map +1 -1
- package/dist/cjs/utils/pool.d.ts +95 -96
- package/dist/cjs/utils/pool.js +416 -416
- package/dist/cjs/utils/pool.js.map +1 -1
- package/dist/cjs/utils/realWorldReceivable.d.ts +12 -12
- package/dist/cjs/utils/realWorldReceivable.js +2 -2
- package/dist/cjs/utils/request.d.ts +3 -3
- package/dist/cjs/utils/request.js +45 -45
- package/dist/cjs/utils/scientificToDecimal.d.ts +1 -1
- package/dist/cjs/utils/scientificToDecimal.js +61 -61
- package/dist/cjs/utils/string.d.ts +1 -1
- package/dist/cjs/utils/string.js +5 -5
- package/dist/cjs/utils/style.d.ts +1 -1
- package/dist/cjs/utils/style.js +16 -16
- package/dist/cjs/utils/time.d.ts +26 -26
- package/dist/cjs/utils/time.js +58 -58
- package/dist/cjs/utils/transaction.d.ts +32 -32
- package/dist/cjs/utils/transaction.js +96 -96
- package/dist/cjs/utils/web3.d.ts +4 -4
- package/dist/cjs/utils/web3.js +39 -39
- package/dist/components/icons/approve-lender.svg +30 -0
- package/dist/components/icons/auto-payback.svg +40 -0
- package/dist/components/icons/check-circle.svg +3 -0
- package/dist/components/icons/check-green.svg +3 -0
- package/dist/components/icons/check.svg +10 -0
- package/dist/components/icons/donut.svg +904 -0
- package/dist/components/icons/ellipse.svg +3 -0
- package/dist/components/icons/ethereum.svg +1 -0
- package/dist/components/icons/huma-full.svg +22 -0
- package/dist/components/icons/huma.svg +15 -0
- package/dist/components/icons/index.d.ts +19 -0
- package/dist/components/icons/index.js +70 -0
- package/dist/components/icons/index.js.map +1 -0
- package/dist/components/icons/loader.svg +229 -0
- package/dist/components/icons/metamask.svg +31 -0
- package/dist/components/icons/polygon.svg +16 -0
- package/dist/components/icons/receipt.svg +3 -0
- package/dist/components/icons/separator.svg +3 -0
- package/dist/components/icons/sorry.svg +31 -0
- package/dist/components/icons/usdc.svg +5 -0
- package/dist/components/icons/wallet-connect.svg +12 -0
- package/dist/hooks/useCLPoolContract.js +38 -38
- package/dist/hooks/useContract.js +40 -40
- package/dist/hooks/useFactoring.js +90 -90
- package/dist/hooks/useInvoiceNFTContract.js +64 -64
- package/dist/hooks/usePool.js +39 -39
- package/dist/hooks/usePoolContract.js +286 -286
- package/dist/hooks/useRFPoolContract.js +29 -29
- package/dist/hooks/web3/index.js +142 -142
- package/dist/hooks/web3/useJsonRpcUrlsMap.js +53 -53
- package/dist/index.js +5 -5
- package/dist/services/EAService.js +77 -77
- package/dist/services/IdentityService.d.ts +52 -35
- package/dist/services/IdentityService.js +80 -53
- package/dist/services/IdentityService.js.map +1 -1
- package/dist/services/RNService.js +10 -10
- package/dist/services/index.js +3 -3
- package/dist/theme/breakpoints.d.ts +5 -0
- package/dist/theme/breakpoints.js +4 -0
- package/dist/theme/breakpoints.js.map +1 -0
- package/dist/theme/components.d.ts +6 -0
- package/dist/theme/components.js +62 -0
- package/dist/theme/components.js.map +1 -0
- package/dist/theme/coreThemeConstants.d.ts +18 -0
- package/dist/theme/coreThemeConstants.js +30 -0
- package/dist/theme/coreThemeConstants.js.map +1 -0
- package/dist/theme/cssMixins.d.ts +20 -0
- package/dist/theme/cssMixins.js +90 -0
- package/dist/theme/cssMixins.js.map +1 -0
- package/dist/theme/index.d.ts +8 -0
- package/dist/theme/index.js +27 -0
- package/dist/theme/index.js.map +1 -0
- package/dist/theme/palette.d.ts +53 -0
- package/dist/theme/palette.js +137 -0
- package/dist/theme/palette.js.map +1 -0
- package/dist/theme/shape.d.ts +2 -0
- package/dist/theme/shape.js +5 -0
- package/dist/theme/shape.js.map +1 -0
- package/dist/theme/theme.types.d.ts +72 -0
- package/dist/theme/theme.types.js +2 -0
- package/dist/theme/theme.types.js.map +1 -0
- package/dist/theme/typography.d.ts +2 -0
- package/dist/theme/typography.js +116 -0
- package/dist/theme/typography.js.map +1 -0
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/utils/WalletConnect.js +2 -1
- package/dist/utils/WalletConnect.js.map +1 -1
- package/dist/utils/chain.d.ts +36 -35
- package/dist/utils/chain.js +109 -106
- package/dist/utils/chain.js.map +1 -1
- package/dist/utils/config.d.ts +8 -8
- package/dist/utils/config.js +41 -41
- package/dist/utils/contractconfig.json +19 -19
- package/dist/utils/ddLogger.d.ts +4 -0
- package/dist/utils/ddLogger.js +48 -0
- package/dist/utils/ddLogger.js.map +1 -0
- package/dist/utils/index.d.ts +20 -20
- package/dist/utils/index.js +20 -20
- package/dist/utils/jsonRpcEndpoints.js +25 -25
- package/dist/utils/notifi.d.ts +3 -3
- package/dist/utils/notifi.js +34 -23
- package/dist/utils/notifi.js.map +1 -1
- package/dist/utils/number.js +54 -48
- package/dist/utils/number.js.map +1 -1
- package/dist/utils/pool.d.ts +95 -96
- package/dist/utils/pool.js +409 -409
- package/dist/utils/pool.js.map +1 -1
- package/dist/utils/realWorldReceivable.d.ts +12 -12
- package/dist/utils/realWorldReceivable.js +1 -1
- package/dist/utils/sentry.d.ts +1 -0
- package/dist/utils/sentry.js +19 -0
- package/dist/utils/sentry.js.map +1 -0
- package/dist/utils/storage.d.ts +12 -0
- package/dist/utils/storage.js +32 -0
- package/dist/utils/storage.js.map +1 -0
- package/package.json +2 -2
package/dist/hooks/web3/index.js
CHANGED
|
@@ -1,143 +1,143 @@
|
|
|
1
|
-
import React, { useEffect, useMemo, useRef } from 'react';
|
|
2
|
-
import { JsonRpcProvider } from '@ethersproject/providers';
|
|
3
|
-
import { initializeConnector, Web3ReactProvider, } from '@web3-react/core';
|
|
4
|
-
import { EIP1193 } from '@web3-react/eip1193';
|
|
5
|
-
import { MetaMask } from '@web3-react/metamask';
|
|
6
|
-
import { Network } from '@web3-react/network';
|
|
7
|
-
import { ChainEnum, supportedChainId } from '../../utils/chain';
|
|
8
|
-
import { MetaMaskConnectionError } from '../../utils/errors';
|
|
9
|
-
import { JsonRpcConnector } from '../../utils/JsonRpcConnector';
|
|
10
|
-
import { WalletConnectPopup, WalletConnectQR } from '../../utils/WalletConnect';
|
|
11
|
-
import { useAsyncError } from '../useAsyncError';
|
|
12
|
-
import { Provider as ConnectorsProvider } from './useConnectors';
|
|
13
|
-
import { Provider as JsonRpcUrlMapProvider, toJsonRpcConnectionMap, toJsonRpcUrlMap, } from './useJsonRpcUrlsMap';
|
|
14
|
-
const DEFAULT_CHAIN_ID = ChainEnum.Polygon;
|
|
15
|
-
export function Provider({ defaultChainId: chainId = ChainEnum.Polygon, jsonRpcUrlMap, provider, children, }) {
|
|
16
|
-
const defaultChainId = useMemo(() => {
|
|
17
|
-
if (!supportedChainId(chainId)) {
|
|
18
|
-
console.warn(`Unsupported chainId: ${chainId}. Falling back to ${DEFAULT_CHAIN_ID} (${ChainEnum[DEFAULT_CHAIN_ID]}).`);
|
|
19
|
-
return DEFAULT_CHAIN_ID;
|
|
20
|
-
}
|
|
21
|
-
return chainId;
|
|
22
|
-
}, [chainId]);
|
|
23
|
-
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
24
|
-
const web3ReactConnectors = useWeb3ReactConnectors({
|
|
25
|
-
provider,
|
|
26
|
-
jsonRpcUrlMap,
|
|
27
|
-
defaultChainId,
|
|
28
|
-
});
|
|
29
|
-
const key = useRef(0);
|
|
30
|
-
const prioritizedConnectors = useMemo(() => {
|
|
31
|
-
// Re-key Web3ReactProvider before rendering new connectors, as it expects connectors to be
|
|
32
|
-
// referentially static.
|
|
33
|
-
key.current += 1;
|
|
34
|
-
const prioritizedConnectors = [
|
|
35
|
-
web3ReactConnectors.user,
|
|
36
|
-
web3ReactConnectors.metaMask,
|
|
37
|
-
web3ReactConnectors.walletConnect,
|
|
38
|
-
web3ReactConnectors.walletConnectQR,
|
|
39
|
-
web3ReactConnectors.network,
|
|
40
|
-
];
|
|
41
|
-
return prioritizedConnectors.filter((connector) => Boolean(connector));
|
|
42
|
-
}, [web3ReactConnectors]);
|
|
43
|
-
const connectors = useMemo(() => {
|
|
44
|
-
var _a;
|
|
45
|
-
return ({
|
|
46
|
-
user: (_a = web3ReactConnectors.user) === null || _a === void 0 ? void 0 : _a[0],
|
|
47
|
-
metaMask: web3ReactConnectors.metaMask[0],
|
|
48
|
-
walletConnect: web3ReactConnectors.walletConnect[0],
|
|
49
|
-
walletConnectQR: web3ReactConnectors.walletConnectQR[0],
|
|
50
|
-
network: web3ReactConnectors.network[0],
|
|
51
|
-
});
|
|
52
|
-
}, [web3ReactConnectors]);
|
|
53
|
-
const shouldEagerlyConnect = provider === undefined; // !== null
|
|
54
|
-
useEffect(() => {
|
|
55
|
-
// Ignore any errors during connection so they do not propagate to the widget.
|
|
56
|
-
if (connectors.user) {
|
|
57
|
-
connectors.user.activate().catch(() => undefined);
|
|
58
|
-
return;
|
|
59
|
-
}
|
|
60
|
-
if (shouldEagerlyConnect) {
|
|
61
|
-
const eagerConnectors = [connectors.metaMask, connectors.walletConnect];
|
|
62
|
-
eagerConnectors.forEach((connector) => connector.connectEagerly().catch(() => undefined));
|
|
63
|
-
}
|
|
64
|
-
connectors.network.activate().catch(() => undefined);
|
|
65
|
-
}, [
|
|
66
|
-
connectors.metaMask,
|
|
67
|
-
connectors.network,
|
|
68
|
-
connectors.user,
|
|
69
|
-
connectors.walletConnect,
|
|
70
|
-
shouldEagerlyConnect,
|
|
71
|
-
]);
|
|
72
|
-
return (React.createElement(Web3ReactProvider, { connectors: prioritizedConnectors, key: key.current },
|
|
73
|
-
React.createElement(JsonRpcUrlMapProvider, { jsonRpcMap: jsonRpcUrlMap },
|
|
74
|
-
React.createElement(ConnectorsProvider, { connectors: connectors }, children))));
|
|
75
|
-
}
|
|
76
|
-
function initializeWeb3ReactConnector(Constructor, options) {
|
|
77
|
-
const [connector, hooks] = initializeConnector(
|
|
78
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
79
|
-
(actions) => new Constructor(Object.assign({ actions }, options)));
|
|
80
|
-
if (options && 'provider' in options) {
|
|
81
|
-
// Short-circuit provider selection to improve performance and testability.
|
|
82
|
-
// Without doing so, provider will be unavailable for a frame.
|
|
83
|
-
hooks.useProvider = (() => options
|
|
84
|
-
.provider);
|
|
85
|
-
}
|
|
86
|
-
return [connector, hooks];
|
|
87
|
-
}
|
|
88
|
-
function useWeb3ReactConnectors({ defaultChainId, provider, jsonRpcUrlMap, }) {
|
|
89
|
-
const [urlMap, connectionMap] = useMemo(() => [
|
|
90
|
-
toJsonRpcUrlMap(jsonRpcUrlMap),
|
|
91
|
-
toJsonRpcConnectionMap(jsonRpcUrlMap),
|
|
92
|
-
], [jsonRpcUrlMap]);
|
|
93
|
-
const throwAsync = useAsyncError();
|
|
94
|
-
const user = useMemo(() => {
|
|
95
|
-
if (!provider)
|
|
96
|
-
return;
|
|
97
|
-
if (JsonRpcProvider.isProvider(provider)) {
|
|
98
|
-
// eslint-disable-next-line consistent-return
|
|
99
|
-
return initializeWeb3ReactConnector(JsonRpcConnector, {
|
|
100
|
-
provider,
|
|
101
|
-
onError: console.error,
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
105
|
-
if (JsonRpcProvider.isProvider(provider.provider)) {
|
|
106
|
-
throw new Error('Eip1193Bridge is experimental: pass your ethers Provider directly');
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
// eslint-disable-next-line consistent-return
|
|
110
|
-
return initializeWeb3ReactConnector(EIP1193, {
|
|
111
|
-
provider,
|
|
112
|
-
onError: console.error,
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
}, [provider]);
|
|
116
|
-
const metaMask = useMemo(() => initializeWeb3ReactConnector(MetaMask, {
|
|
117
|
-
onError: () => {
|
|
118
|
-
throwAsync(new MetaMaskConnectionError());
|
|
119
|
-
},
|
|
120
|
-
}), [throwAsync]);
|
|
121
|
-
const walletConnect = useMemo(() => initializeWeb3ReactConnector(WalletConnectPopup, {
|
|
122
|
-
options: { rpc: urlMap },
|
|
123
|
-
defaultChainId,
|
|
124
|
-
onError: console.error,
|
|
125
|
-
}), [defaultChainId, urlMap]);
|
|
126
|
-
const walletConnectQR = useMemo(() => initializeWeb3ReactConnector(WalletConnectQR, {
|
|
127
|
-
options: { rpc: urlMap },
|
|
128
|
-
defaultChainId,
|
|
129
|
-
onError: console.error,
|
|
130
|
-
}), [defaultChainId, urlMap]);
|
|
131
|
-
const network = useMemo(() => initializeWeb3ReactConnector(Network, {
|
|
132
|
-
urlMap: connectionMap,
|
|
133
|
-
defaultChainId,
|
|
134
|
-
}), [connectionMap, defaultChainId]);
|
|
135
|
-
return useMemo(() => ({
|
|
136
|
-
user,
|
|
137
|
-
metaMask,
|
|
138
|
-
walletConnect,
|
|
139
|
-
walletConnectQR,
|
|
140
|
-
network,
|
|
141
|
-
}), [metaMask, network, user, walletConnect, walletConnectQR]);
|
|
142
|
-
}
|
|
1
|
+
import React, { useEffect, useMemo, useRef } from 'react';
|
|
2
|
+
import { JsonRpcProvider } from '@ethersproject/providers';
|
|
3
|
+
import { initializeConnector, Web3ReactProvider, } from '@web3-react/core';
|
|
4
|
+
import { EIP1193 } from '@web3-react/eip1193';
|
|
5
|
+
import { MetaMask } from '@web3-react/metamask';
|
|
6
|
+
import { Network } from '@web3-react/network';
|
|
7
|
+
import { ChainEnum, supportedChainId } from '../../utils/chain';
|
|
8
|
+
import { MetaMaskConnectionError } from '../../utils/errors';
|
|
9
|
+
import { JsonRpcConnector } from '../../utils/JsonRpcConnector';
|
|
10
|
+
import { WalletConnectPopup, WalletConnectQR } from '../../utils/WalletConnect';
|
|
11
|
+
import { useAsyncError } from '../useAsyncError';
|
|
12
|
+
import { Provider as ConnectorsProvider } from './useConnectors';
|
|
13
|
+
import { Provider as JsonRpcUrlMapProvider, toJsonRpcConnectionMap, toJsonRpcUrlMap, } from './useJsonRpcUrlsMap';
|
|
14
|
+
const DEFAULT_CHAIN_ID = ChainEnum.Polygon;
|
|
15
|
+
export function Provider({ defaultChainId: chainId = ChainEnum.Polygon, jsonRpcUrlMap, provider, children, }) {
|
|
16
|
+
const defaultChainId = useMemo(() => {
|
|
17
|
+
if (!supportedChainId(chainId)) {
|
|
18
|
+
console.warn(`Unsupported chainId: ${chainId}. Falling back to ${DEFAULT_CHAIN_ID} (${ChainEnum[DEFAULT_CHAIN_ID]}).`);
|
|
19
|
+
return DEFAULT_CHAIN_ID;
|
|
20
|
+
}
|
|
21
|
+
return chainId;
|
|
22
|
+
}, [chainId]);
|
|
23
|
+
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
24
|
+
const web3ReactConnectors = useWeb3ReactConnectors({
|
|
25
|
+
provider,
|
|
26
|
+
jsonRpcUrlMap,
|
|
27
|
+
defaultChainId,
|
|
28
|
+
});
|
|
29
|
+
const key = useRef(0);
|
|
30
|
+
const prioritizedConnectors = useMemo(() => {
|
|
31
|
+
// Re-key Web3ReactProvider before rendering new connectors, as it expects connectors to be
|
|
32
|
+
// referentially static.
|
|
33
|
+
key.current += 1;
|
|
34
|
+
const prioritizedConnectors = [
|
|
35
|
+
web3ReactConnectors.user,
|
|
36
|
+
web3ReactConnectors.metaMask,
|
|
37
|
+
web3ReactConnectors.walletConnect,
|
|
38
|
+
web3ReactConnectors.walletConnectQR,
|
|
39
|
+
web3ReactConnectors.network,
|
|
40
|
+
];
|
|
41
|
+
return prioritizedConnectors.filter((connector) => Boolean(connector));
|
|
42
|
+
}, [web3ReactConnectors]);
|
|
43
|
+
const connectors = useMemo(() => {
|
|
44
|
+
var _a;
|
|
45
|
+
return ({
|
|
46
|
+
user: (_a = web3ReactConnectors.user) === null || _a === void 0 ? void 0 : _a[0],
|
|
47
|
+
metaMask: web3ReactConnectors.metaMask[0],
|
|
48
|
+
walletConnect: web3ReactConnectors.walletConnect[0],
|
|
49
|
+
walletConnectQR: web3ReactConnectors.walletConnectQR[0],
|
|
50
|
+
network: web3ReactConnectors.network[0],
|
|
51
|
+
});
|
|
52
|
+
}, [web3ReactConnectors]);
|
|
53
|
+
const shouldEagerlyConnect = provider === undefined; // !== null
|
|
54
|
+
useEffect(() => {
|
|
55
|
+
// Ignore any errors during connection so they do not propagate to the widget.
|
|
56
|
+
if (connectors.user) {
|
|
57
|
+
connectors.user.activate().catch(() => undefined);
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
if (shouldEagerlyConnect) {
|
|
61
|
+
const eagerConnectors = [connectors.metaMask, connectors.walletConnect];
|
|
62
|
+
eagerConnectors.forEach((connector) => connector.connectEagerly().catch(() => undefined));
|
|
63
|
+
}
|
|
64
|
+
connectors.network.activate().catch(() => undefined);
|
|
65
|
+
}, [
|
|
66
|
+
connectors.metaMask,
|
|
67
|
+
connectors.network,
|
|
68
|
+
connectors.user,
|
|
69
|
+
connectors.walletConnect,
|
|
70
|
+
shouldEagerlyConnect,
|
|
71
|
+
]);
|
|
72
|
+
return (React.createElement(Web3ReactProvider, { connectors: prioritizedConnectors, key: key.current },
|
|
73
|
+
React.createElement(JsonRpcUrlMapProvider, { jsonRpcMap: jsonRpcUrlMap },
|
|
74
|
+
React.createElement(ConnectorsProvider, { connectors: connectors }, children))));
|
|
75
|
+
}
|
|
76
|
+
function initializeWeb3ReactConnector(Constructor, options) {
|
|
77
|
+
const [connector, hooks] = initializeConnector(
|
|
78
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
79
|
+
(actions) => new Constructor(Object.assign({ actions }, options)));
|
|
80
|
+
if (options && 'provider' in options) {
|
|
81
|
+
// Short-circuit provider selection to improve performance and testability.
|
|
82
|
+
// Without doing so, provider will be unavailable for a frame.
|
|
83
|
+
hooks.useProvider = (() => options
|
|
84
|
+
.provider);
|
|
85
|
+
}
|
|
86
|
+
return [connector, hooks];
|
|
87
|
+
}
|
|
88
|
+
function useWeb3ReactConnectors({ defaultChainId, provider, jsonRpcUrlMap, }) {
|
|
89
|
+
const [urlMap, connectionMap] = useMemo(() => [
|
|
90
|
+
toJsonRpcUrlMap(jsonRpcUrlMap),
|
|
91
|
+
toJsonRpcConnectionMap(jsonRpcUrlMap),
|
|
92
|
+
], [jsonRpcUrlMap]);
|
|
93
|
+
const throwAsync = useAsyncError();
|
|
94
|
+
const user = useMemo(() => {
|
|
95
|
+
if (!provider)
|
|
96
|
+
return;
|
|
97
|
+
if (JsonRpcProvider.isProvider(provider)) {
|
|
98
|
+
// eslint-disable-next-line consistent-return
|
|
99
|
+
return initializeWeb3ReactConnector(JsonRpcConnector, {
|
|
100
|
+
provider,
|
|
101
|
+
onError: console.error,
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
105
|
+
if (JsonRpcProvider.isProvider(provider.provider)) {
|
|
106
|
+
throw new Error('Eip1193Bridge is experimental: pass your ethers Provider directly');
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
// eslint-disable-next-line consistent-return
|
|
110
|
+
return initializeWeb3ReactConnector(EIP1193, {
|
|
111
|
+
provider,
|
|
112
|
+
onError: console.error,
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
}, [provider]);
|
|
116
|
+
const metaMask = useMemo(() => initializeWeb3ReactConnector(MetaMask, {
|
|
117
|
+
onError: () => {
|
|
118
|
+
throwAsync(new MetaMaskConnectionError());
|
|
119
|
+
},
|
|
120
|
+
}), [throwAsync]);
|
|
121
|
+
const walletConnect = useMemo(() => initializeWeb3ReactConnector(WalletConnectPopup, {
|
|
122
|
+
options: { rpc: urlMap },
|
|
123
|
+
defaultChainId,
|
|
124
|
+
onError: console.error,
|
|
125
|
+
}), [defaultChainId, urlMap]);
|
|
126
|
+
const walletConnectQR = useMemo(() => initializeWeb3ReactConnector(WalletConnectQR, {
|
|
127
|
+
options: { rpc: urlMap },
|
|
128
|
+
defaultChainId,
|
|
129
|
+
onError: console.error,
|
|
130
|
+
}), [defaultChainId, urlMap]);
|
|
131
|
+
const network = useMemo(() => initializeWeb3ReactConnector(Network, {
|
|
132
|
+
urlMap: connectionMap,
|
|
133
|
+
defaultChainId,
|
|
134
|
+
}), [connectionMap, defaultChainId]);
|
|
135
|
+
return useMemo(() => ({
|
|
136
|
+
user,
|
|
137
|
+
metaMask,
|
|
138
|
+
walletConnect,
|
|
139
|
+
walletConnectQR,
|
|
140
|
+
network,
|
|
141
|
+
}), [metaMask, network, user, walletConnect, walletConnectQR]);
|
|
142
|
+
}
|
|
143
143
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,54 +1,54 @@
|
|
|
1
|
-
import React, { createContext, useContext, useMemo, } from 'react';
|
|
2
|
-
import { JsonRpcProvider, StaticJsonRpcProvider, } from '@ethersproject/providers';
|
|
3
|
-
import { ChainEnum } from '../../utils/chain';
|
|
4
|
-
import { JSON_RPC_FALLBACK_ENDPOINTS } from '../../utils/jsonRpcEndpoints';
|
|
5
|
-
const JsonRpcUrlMapContext = createContext(undefined);
|
|
6
|
-
export function Provider({ jsonRpcMap, children, }) {
|
|
7
|
-
return (React.createElement(JsonRpcUrlMapContext.Provider, { value: jsonRpcMap }, children));
|
|
8
|
-
}
|
|
9
|
-
export default function useJsonRpcUrlsMap() {
|
|
10
|
-
const jsonRpcMap = useContext(JsonRpcUrlMapContext);
|
|
11
|
-
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
12
|
-
return useMemo(() => toJsonRpcUrlsMap(jsonRpcMap), [jsonRpcMap]);
|
|
13
|
-
}
|
|
14
|
-
function toJsonRpcMap(getChainConnections) {
|
|
15
|
-
return {
|
|
16
|
-
[ChainEnum.Goerli]: getChainConnections(ChainEnum.Goerli),
|
|
17
|
-
[ChainEnum.Polygon]: getChainConnections(ChainEnum.Polygon),
|
|
18
|
-
[ChainEnum.Mumbai]: getChainConnections(ChainEnum.Mumbai),
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
function getChainConnections(connectionMap, chainId) {
|
|
22
|
-
const value = connectionMap === null || connectionMap === void 0 ? void 0 : connectionMap[chainId];
|
|
23
|
-
return (Array.isArray(value) ? value : [value])
|
|
24
|
-
.filter((value) => Boolean(value))
|
|
25
|
-
.concat(...JSON_RPC_FALLBACK_ENDPOINTS[chainId]);
|
|
26
|
-
}
|
|
27
|
-
export function toJsonRpcConnectionMap(connectionMap) {
|
|
28
|
-
function getJsonRpcProvider(chainId) {
|
|
29
|
-
const [connection] = getChainConnections(connectionMap, chainId);
|
|
30
|
-
return JsonRpcProvider.isProvider(connection)
|
|
31
|
-
? connection
|
|
32
|
-
: new StaticJsonRpcProvider(connection, Number(chainId));
|
|
33
|
-
}
|
|
34
|
-
return toJsonRpcMap(getJsonRpcProvider);
|
|
35
|
-
}
|
|
36
|
-
export function toJsonRpcUrlMap(connectionMap) {
|
|
37
|
-
function getJsonRpcUrl(chainId) {
|
|
38
|
-
const [connection] = getChainConnections(connectionMap, chainId);
|
|
39
|
-
return JsonRpcProvider.isProvider(connection)
|
|
40
|
-
? connection.connection.url
|
|
41
|
-
: connection;
|
|
42
|
-
}
|
|
43
|
-
return toJsonRpcMap(getJsonRpcUrl);
|
|
44
|
-
}
|
|
45
|
-
export function toJsonRpcUrlsMap(connectionMap) {
|
|
46
|
-
function getJsonRpcUrls(chainId) {
|
|
47
|
-
const connections = getChainConnections(connectionMap, chainId);
|
|
48
|
-
return connections.map((connection) => JsonRpcProvider.isProvider(connection)
|
|
49
|
-
? connection.connection.url
|
|
50
|
-
: connection);
|
|
51
|
-
}
|
|
52
|
-
return toJsonRpcMap(getJsonRpcUrls);
|
|
53
|
-
}
|
|
1
|
+
import React, { createContext, useContext, useMemo, } from 'react';
|
|
2
|
+
import { JsonRpcProvider, StaticJsonRpcProvider, } from '@ethersproject/providers';
|
|
3
|
+
import { ChainEnum } from '../../utils/chain';
|
|
4
|
+
import { JSON_RPC_FALLBACK_ENDPOINTS } from '../../utils/jsonRpcEndpoints';
|
|
5
|
+
const JsonRpcUrlMapContext = createContext(undefined);
|
|
6
|
+
export function Provider({ jsonRpcMap, children, }) {
|
|
7
|
+
return (React.createElement(JsonRpcUrlMapContext.Provider, { value: jsonRpcMap }, children));
|
|
8
|
+
}
|
|
9
|
+
export default function useJsonRpcUrlsMap() {
|
|
10
|
+
const jsonRpcMap = useContext(JsonRpcUrlMapContext);
|
|
11
|
+
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
12
|
+
return useMemo(() => toJsonRpcUrlsMap(jsonRpcMap), [jsonRpcMap]);
|
|
13
|
+
}
|
|
14
|
+
function toJsonRpcMap(getChainConnections) {
|
|
15
|
+
return {
|
|
16
|
+
[ChainEnum.Goerli]: getChainConnections(ChainEnum.Goerli),
|
|
17
|
+
[ChainEnum.Polygon]: getChainConnections(ChainEnum.Polygon),
|
|
18
|
+
[ChainEnum.Mumbai]: getChainConnections(ChainEnum.Mumbai),
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
function getChainConnections(connectionMap, chainId) {
|
|
22
|
+
const value = connectionMap === null || connectionMap === void 0 ? void 0 : connectionMap[chainId];
|
|
23
|
+
return (Array.isArray(value) ? value : [value])
|
|
24
|
+
.filter((value) => Boolean(value))
|
|
25
|
+
.concat(...JSON_RPC_FALLBACK_ENDPOINTS[chainId]);
|
|
26
|
+
}
|
|
27
|
+
export function toJsonRpcConnectionMap(connectionMap) {
|
|
28
|
+
function getJsonRpcProvider(chainId) {
|
|
29
|
+
const [connection] = getChainConnections(connectionMap, chainId);
|
|
30
|
+
return JsonRpcProvider.isProvider(connection)
|
|
31
|
+
? connection
|
|
32
|
+
: new StaticJsonRpcProvider(connection, Number(chainId));
|
|
33
|
+
}
|
|
34
|
+
return toJsonRpcMap(getJsonRpcProvider);
|
|
35
|
+
}
|
|
36
|
+
export function toJsonRpcUrlMap(connectionMap) {
|
|
37
|
+
function getJsonRpcUrl(chainId) {
|
|
38
|
+
const [connection] = getChainConnections(connectionMap, chainId);
|
|
39
|
+
return JsonRpcProvider.isProvider(connection)
|
|
40
|
+
? connection.connection.url
|
|
41
|
+
: connection;
|
|
42
|
+
}
|
|
43
|
+
return toJsonRpcMap(getJsonRpcUrl);
|
|
44
|
+
}
|
|
45
|
+
export function toJsonRpcUrlsMap(connectionMap) {
|
|
46
|
+
function getJsonRpcUrls(chainId) {
|
|
47
|
+
const connections = getChainConnections(connectionMap, chainId);
|
|
48
|
+
return connections.map((connection) => JsonRpcProvider.isProvider(connection)
|
|
49
|
+
? connection.connection.url
|
|
50
|
+
: connection);
|
|
51
|
+
}
|
|
52
|
+
return toJsonRpcMap(getJsonRpcUrls);
|
|
53
|
+
}
|
|
54
54
|
//# sourceMappingURL=useJsonRpcUrlsMap.js.map
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export * from './abis';
|
|
2
|
-
export * from './abis/types';
|
|
3
|
-
export * from './hooks';
|
|
4
|
-
export * from './services';
|
|
5
|
-
export * from './utils';
|
|
1
|
+
export * from './abis';
|
|
2
|
+
export * from './abis/types';
|
|
3
|
+
export * from './hooks';
|
|
4
|
+
export * from './services';
|
|
5
|
+
export * from './utils';
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,78 +1,78 @@
|
|
|
1
|
-
import { configUtil } from '../utils/config';
|
|
2
|
-
import { EARejectionError } from '../utils/errors';
|
|
3
|
-
import { downScale } from '../utils/number';
|
|
4
|
-
import { requestPost } from '../utils/request';
|
|
5
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
6
|
-
const isRejection = (obj) => obj !== null && typeof obj === 'object' && Array.isArray(obj.reasons);
|
|
7
|
-
/**
|
|
8
|
-
* Submits a credit underwriting request to Huma's EAVerse. This approves a creditline
|
|
9
|
-
* in Huma's pools that can be drawn down by the borrower.
|
|
10
|
-
*
|
|
11
|
-
* @param {EAPayload} payload The payload for the underwrite approval.
|
|
12
|
-
* @param {number} chainId The chain ID.
|
|
13
|
-
* @param {boolean} isDev Is dev environment or not.
|
|
14
|
-
* @returns {Promise<Approval>} Promise that returns the approval on success.
|
|
15
|
-
* @throws {EARejectionError} If the underwrite approval is rejected.
|
|
16
|
-
*/
|
|
17
|
-
const approve = async (payload, chainId, isDev = false) => {
|
|
18
|
-
const approvalResult = await requestPost(`${configUtil.getEAVerseUrl(chainId, isDev)}/underwriter/underwrite`, payload);
|
|
19
|
-
const { result } = approvalResult;
|
|
20
|
-
if (isRejection(result)) {
|
|
21
|
-
throw new EARejectionError();
|
|
22
|
-
}
|
|
23
|
-
if (!result) {
|
|
24
|
-
throw new Error('Sorry, there was an error approving your wallet', {
|
|
25
|
-
cause: 'server error',
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
const { terms, receivable, token } = result;
|
|
29
|
-
if (terms === null || terms === void 0 ? void 0 : terms.creditLimit) {
|
|
30
|
-
terms.creditLimit = String(result.terms.creditLimit);
|
|
31
|
-
terms.creditLimitFormatted = downScale(String(result.terms.creditLimit), token.decimal);
|
|
32
|
-
}
|
|
33
|
-
if (receivable === null || receivable === void 0 ? void 0 : receivable.amount) {
|
|
34
|
-
receivable.amount = String(receivable.amount);
|
|
35
|
-
receivable.amountFormatted = downScale(String(receivable.amount), token.decimal);
|
|
36
|
-
}
|
|
37
|
-
return result;
|
|
38
|
-
};
|
|
39
|
-
/**
|
|
40
|
-
* Checks whether or not a credit underwriting request to Huma's EAVerse would be approved.
|
|
41
|
-
* Note that this does not approve a creditline in Huma's pools and an approve call is still required.
|
|
42
|
-
*
|
|
43
|
-
* @param {EAPreapprovalPayload} payload The payload for the underwrite approval.
|
|
44
|
-
* @param {number} chainId The chain ID.
|
|
45
|
-
* @param {boolean} isDev Is dev environment or not.
|
|
46
|
-
* @returns {Promise<Approval>} Promise that returns the approval on success.
|
|
47
|
-
*/
|
|
48
|
-
const preapprove = async (payload, chainId, isDev = false) => requestPost(`${configUtil.getEAVerseUrl(chainId, isDev)}/underwriter/pre-approve`, payload);
|
|
49
|
-
const approveLender = async (payload, chainId) => {
|
|
50
|
-
var _a, _b;
|
|
51
|
-
const generalErrorMessage = 'Sorry, there was an error approving your wallet as a lender.';
|
|
52
|
-
try {
|
|
53
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
54
|
-
const data = await requestPost(`${configUtil.getEABaseUrlV1(chainId)}/addApprovedLender`, payload);
|
|
55
|
-
if (data.statusCode >= 500) {
|
|
56
|
-
throw new Error(data.errorMessage ? data.errorMessage[0] : generalErrorMessage);
|
|
57
|
-
}
|
|
58
|
-
else if (data.status) {
|
|
59
|
-
throw new Error(data.reason[0]);
|
|
60
|
-
}
|
|
61
|
-
else if ((_a = data.rejectionReason) === null || _a === void 0 ? void 0 : _a.length) {
|
|
62
|
-
throw new Error(data.rejectionReason[0]);
|
|
63
|
-
}
|
|
64
|
-
return data;
|
|
65
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
66
|
-
}
|
|
67
|
-
catch (error) {
|
|
68
|
-
throw new Error((_b = error.message) !== null && _b !== void 0 ? _b : generalErrorMessage, {
|
|
69
|
-
cause: 'server error',
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
|
-
export const EAService = {
|
|
74
|
-
approve,
|
|
75
|
-
approveLender,
|
|
76
|
-
preapprove,
|
|
77
|
-
};
|
|
1
|
+
import { configUtil } from '../utils/config';
|
|
2
|
+
import { EARejectionError } from '../utils/errors';
|
|
3
|
+
import { downScale } from '../utils/number';
|
|
4
|
+
import { requestPost } from '../utils/request';
|
|
5
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
6
|
+
const isRejection = (obj) => obj !== null && typeof obj === 'object' && Array.isArray(obj.reasons);
|
|
7
|
+
/**
|
|
8
|
+
* Submits a credit underwriting request to Huma's EAVerse. This approves a creditline
|
|
9
|
+
* in Huma's pools that can be drawn down by the borrower.
|
|
10
|
+
*
|
|
11
|
+
* @param {EAPayload} payload The payload for the underwrite approval.
|
|
12
|
+
* @param {number} chainId The chain ID.
|
|
13
|
+
* @param {boolean} isDev Is dev environment or not.
|
|
14
|
+
* @returns {Promise<Approval>} Promise that returns the approval on success.
|
|
15
|
+
* @throws {EARejectionError} If the underwrite approval is rejected.
|
|
16
|
+
*/
|
|
17
|
+
const approve = async (payload, chainId, isDev = false) => {
|
|
18
|
+
const approvalResult = await requestPost(`${configUtil.getEAVerseUrl(chainId, isDev)}/underwriter/underwrite`, payload);
|
|
19
|
+
const { result } = approvalResult;
|
|
20
|
+
if (isRejection(result)) {
|
|
21
|
+
throw new EARejectionError();
|
|
22
|
+
}
|
|
23
|
+
if (!result) {
|
|
24
|
+
throw new Error('Sorry, there was an error approving your wallet', {
|
|
25
|
+
cause: 'server error',
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
const { terms, receivable, token } = result;
|
|
29
|
+
if (terms === null || terms === void 0 ? void 0 : terms.creditLimit) {
|
|
30
|
+
terms.creditLimit = String(result.terms.creditLimit);
|
|
31
|
+
terms.creditLimitFormatted = downScale(String(result.terms.creditLimit), token.decimal);
|
|
32
|
+
}
|
|
33
|
+
if (receivable === null || receivable === void 0 ? void 0 : receivable.amount) {
|
|
34
|
+
receivable.amount = String(receivable.amount);
|
|
35
|
+
receivable.amountFormatted = downScale(String(receivable.amount), token.decimal);
|
|
36
|
+
}
|
|
37
|
+
return result;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Checks whether or not a credit underwriting request to Huma's EAVerse would be approved.
|
|
41
|
+
* Note that this does not approve a creditline in Huma's pools and an approve call is still required.
|
|
42
|
+
*
|
|
43
|
+
* @param {EAPreapprovalPayload} payload The payload for the underwrite approval.
|
|
44
|
+
* @param {number} chainId The chain ID.
|
|
45
|
+
* @param {boolean} isDev Is dev environment or not.
|
|
46
|
+
* @returns {Promise<Approval>} Promise that returns the approval on success.
|
|
47
|
+
*/
|
|
48
|
+
const preapprove = async (payload, chainId, isDev = false) => requestPost(`${configUtil.getEAVerseUrl(chainId, isDev)}/underwriter/pre-approve`, payload);
|
|
49
|
+
const approveLender = async (payload, chainId) => {
|
|
50
|
+
var _a, _b;
|
|
51
|
+
const generalErrorMessage = 'Sorry, there was an error approving your wallet as a lender.';
|
|
52
|
+
try {
|
|
53
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
54
|
+
const data = await requestPost(`${configUtil.getEABaseUrlV1(chainId)}/addApprovedLender`, payload);
|
|
55
|
+
if (data.statusCode >= 500) {
|
|
56
|
+
throw new Error(data.errorMessage ? data.errorMessage[0] : generalErrorMessage);
|
|
57
|
+
}
|
|
58
|
+
else if (data.status) {
|
|
59
|
+
throw new Error(data.reason[0]);
|
|
60
|
+
}
|
|
61
|
+
else if ((_a = data.rejectionReason) === null || _a === void 0 ? void 0 : _a.length) {
|
|
62
|
+
throw new Error(data.rejectionReason[0]);
|
|
63
|
+
}
|
|
64
|
+
return data;
|
|
65
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
throw new Error((_b = error.message) !== null && _b !== void 0 ? _b : generalErrorMessage, {
|
|
69
|
+
cause: 'server error',
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
export const EAService = {
|
|
74
|
+
approve,
|
|
75
|
+
approveLender,
|
|
76
|
+
preapprove,
|
|
77
|
+
};
|
|
78
78
|
//# sourceMappingURL=EAService.js.map
|
|
@@ -1,35 +1,52 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Enum representing the identity status.
|
|
3
|
-
* @typedef {Enum} IdentityStatus
|
|
4
|
-
*/
|
|
5
|
-
declare enum IdentityVerificationStatus {
|
|
6
|
-
ACCREDITED = "ACCREDITED",
|
|
7
|
-
ACCREDITATION_NOT_APPLICABLE = "ACCREDITATION_NOT_APPLICABLE",
|
|
8
|
-
NOT_ACCREDITED = "NOT_ACCREDITED",
|
|
9
|
-
ACCREDITATION_PENDING = "ACCREDITATION_PENDING",
|
|
10
|
-
IDENTITY_VERIFICATION_COMPLETED = "IDENTITY_VERIFICATION_COMPLETED",
|
|
11
|
-
IDENTITY_VERIFICATION_FAILED = "IDENTITY_VERIFICATION_FAILED",
|
|
12
|
-
IDENTITY_VERIFICATION_PENDING = "IDENTITY_VERIFICATION_PENDING",
|
|
13
|
-
IDENTITY_VERIFICATION_UPDATES_REQUIRED = "IDENTITY_VERIFICATION_UPDATES_REQUIRED",
|
|
14
|
-
IDENTITY_VERIFICATION_NOT_STARTED = "IDENTITY_VERIFICATION_NOT_STARTED",
|
|
15
|
-
USER_NOT_ONBOARDED = "USER_NOT_ONBOARDED"
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Object representing the response to the identity verification status request.
|
|
19
|
-
* @typedef {Object} VerificationStatus
|
|
20
|
-
* @property {string} walletAddress the wallet address to get the verification status.
|
|
21
|
-
* @property {IdentityVerificationStatus} identityVerificationStatus The wallet's identity verification status.
|
|
22
|
-
* @property {boolean} isVerified the wallet address has been verified or not.
|
|
23
|
-
* @property {boolean} isNotOnboarded the wallet address has been not onboarded or not.
|
|
24
|
-
*/
|
|
25
|
-
export type VerificationStatusResult = {
|
|
26
|
-
walletAddress: string;
|
|
27
|
-
verificationStatus: IdentityVerificationStatus;
|
|
28
|
-
isVerified: boolean;
|
|
29
|
-
isNotOnboarded: boolean;
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}
|
|
35
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Enum representing the identity status.
|
|
3
|
+
* @typedef {Enum} IdentityStatus
|
|
4
|
+
*/
|
|
5
|
+
declare enum IdentityVerificationStatus {
|
|
6
|
+
ACCREDITED = "ACCREDITED",
|
|
7
|
+
ACCREDITATION_NOT_APPLICABLE = "ACCREDITATION_NOT_APPLICABLE",
|
|
8
|
+
NOT_ACCREDITED = "NOT_ACCREDITED",
|
|
9
|
+
ACCREDITATION_PENDING = "ACCREDITATION_PENDING",
|
|
10
|
+
IDENTITY_VERIFICATION_COMPLETED = "IDENTITY_VERIFICATION_COMPLETED",
|
|
11
|
+
IDENTITY_VERIFICATION_FAILED = "IDENTITY_VERIFICATION_FAILED",
|
|
12
|
+
IDENTITY_VERIFICATION_PENDING = "IDENTITY_VERIFICATION_PENDING",
|
|
13
|
+
IDENTITY_VERIFICATION_UPDATES_REQUIRED = "IDENTITY_VERIFICATION_UPDATES_REQUIRED",
|
|
14
|
+
IDENTITY_VERIFICATION_NOT_STARTED = "IDENTITY_VERIFICATION_NOT_STARTED",
|
|
15
|
+
USER_NOT_ONBOARDED = "USER_NOT_ONBOARDED"
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Object representing the response to the identity verification status request.
|
|
19
|
+
* @typedef {Object} VerificationStatus
|
|
20
|
+
* @property {string} walletAddress the wallet address to get the verification status.
|
|
21
|
+
* @property {IdentityVerificationStatus} identityVerificationStatus The wallet's identity verification status.
|
|
22
|
+
* @property {boolean} isVerified the wallet address has been verified or not.
|
|
23
|
+
* @property {boolean} isNotOnboarded the wallet address has been not onboarded or not.
|
|
24
|
+
*/
|
|
25
|
+
export type VerificationStatusResult = {
|
|
26
|
+
walletAddress: string;
|
|
27
|
+
verificationStatus: IdentityVerificationStatus;
|
|
28
|
+
isVerified: boolean;
|
|
29
|
+
isNotOnboarded: boolean;
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Object representing the response to the document signature status request.
|
|
33
|
+
* @typedef {Object} DocSignatureStatus
|
|
34
|
+
* @property {string} envelopeId the envelope id to get the document signature status.
|
|
35
|
+
* @property {string} status the document signature status.
|
|
36
|
+
*/
|
|
37
|
+
export type DocSignatureStatus = {
|
|
38
|
+
envelopeId: string;
|
|
39
|
+
status: 'completed' | 'created' | 'declined' | 'deleted' | 'delivered' | 'processing' | 'sent' | 'signed' | 'template' | 'voided';
|
|
40
|
+
};
|
|
41
|
+
export declare const IdentityService: {
|
|
42
|
+
getVerificationStatus: (walletAddress: string, pool: string, chainId: number, isDev?: boolean) => Promise<VerificationStatusResult>;
|
|
43
|
+
onboard: (walletAddress: string, code: string, pool: string, chainId: number, isDev?: boolean) => Promise<string>;
|
|
44
|
+
getDocSignatureStatus: (envelopeId: string, chainId: number, isDev?: boolean) => Promise<DocSignatureStatus>;
|
|
45
|
+
requestDocSignature: (walletAddress: string, chainId: number, isDev?: boolean) => Promise<{
|
|
46
|
+
envelopeId: string;
|
|
47
|
+
}>;
|
|
48
|
+
resendDocSignatureLink: (envelopeId: string, chainId: number, isDev?: boolean) => Promise<{
|
|
49
|
+
envelopeId: string;
|
|
50
|
+
}>;
|
|
51
|
+
};
|
|
52
|
+
export {};
|