@huma-finance/shared 0.0.36 → 0.0.37
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/BaseCreditPool.json +1179 -1179
- package/dist/abis/BaseCreditPoolReceivable.json +764 -0
- package/dist/abis/BaseFeeManager.json +480 -480
- package/dist/abis/BasePoolConfig.json +1364 -1364
- package/dist/abis/ERC20TransferableReceivable.json +648 -648
- package/dist/abis/ERC20TransferrableReceivable.json +648 -0
- package/dist/abis/HDT.json +512 -512
- package/dist/abis/IConstantFlowAgreementV1.json +890 -890
- package/dist/abis/ISuperfluid.json +1122 -1122
- package/dist/abis/InvoiceNFT.json +625 -625
- package/dist/abis/Multisend.json +26 -26
- package/dist/abis/RealWorldReceivable.json +823 -823
- package/dist/abis/ReceivableFactoringPool.json +1529 -1529
- package/dist/abis/StreamFactoringPool.json +1523 -1523
- package/dist/abis/StreamFeeManager.json +522 -522
- package/dist/abis/SuperfluidPoolProcessor.json +692 -692
- package/dist/abis/TestERC20.json +358 -358
- package/dist/abis/TradableStream.json +850 -850
- package/dist/abis/Transfer.json +24 -24
- package/dist/abis/TransferNFT.json +27 -27
- package/dist/abis/erc20.json +127 -127
- package/dist/abis/erc2612.json +132 -132
- package/dist/abis/erc721.json +673 -673
- package/dist/abis/index.js +3 -3
- package/dist/abis/types/BaseCreditPool.js +1 -1
- 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/BaseFeeManager.js +1 -1
- package/dist/abis/types/BasePoolConfig.js +1 -1
- package/dist/abis/types/ERC20TransferableReceivable.js +1 -1
- 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/Erc20.d.ts +184 -184
- package/dist/abis/types/Erc20.js +1 -1
- package/dist/abis/types/Erc2612.js +1 -1
- package/dist/abis/types/Erc721.js +1 -1
- package/dist/abis/types/HDT.js +1 -1
- package/dist/abis/types/IConstantFlowAgreementV1.js +1 -1
- package/dist/abis/types/ISuperfluid.js +1 -1
- package/dist/abis/types/InvoiceNFT.js +1 -1
- package/dist/abis/types/Multisend.js +1 -1
- package/dist/abis/types/RealWorldReceivable.js +1 -1
- package/dist/abis/types/ReceivableFactoringPool.js +1 -1
- package/dist/abis/types/StreamFactoringPool.js +1 -1
- package/dist/abis/types/StreamFeeManager.js +1 -1
- package/dist/abis/types/SuperfluidPoolProcessor.js +1 -1
- package/dist/abis/types/TestERC20.js +1 -1
- package/dist/abis/types/TradableStream.js +1 -1
- package/dist/abis/types/Transfer.js +1 -1
- package/dist/abis/types/TransferNFT.js +1 -1
- package/dist/abis/types/common.js +1 -1
- 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 +1192 -1192
- package/dist/abis/types/factories/BaseFeeManager__factory.js +493 -493
- package/dist/abis/types/factories/BasePoolConfig__factory.js +1377 -1377
- package/dist/abis/types/factories/ERC20TransferableReceivable__factory.js +661 -661
- 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.d.ts +193 -193
- package/dist/abis/types/factories/Erc20__factory.js +259 -259
- package/dist/abis/types/factories/Erc2612__factory.js +278 -278
- package/dist/abis/types/factories/Erc721__factory.js +686 -686
- package/dist/abis/types/factories/HDT__factory.js +525 -525
- package/dist/abis/types/factories/IConstantFlowAgreementV1__factory.js +903 -903
- package/dist/abis/types/factories/ISuperfluid__factory.js +1135 -1135
- package/dist/abis/types/factories/InvoiceNFT__factory.js +638 -638
- package/dist/abis/types/factories/Multisend__factory.js +39 -39
- package/dist/abis/types/factories/RealWorldReceivable__factory.js +836 -836
- package/dist/abis/types/factories/ReceivableFactoringPool__factory.js +1542 -1542
- package/dist/abis/types/factories/StreamFactoringPool__factory.js +1536 -1536
- package/dist/abis/types/factories/StreamFeeManager__factory.js +535 -535
- package/dist/abis/types/factories/SuperfluidPoolProcessor__factory.js +705 -705
- package/dist/abis/types/factories/TestERC20__factory.js +371 -371
- package/dist/abis/types/factories/TradableStream__factory.js +863 -863
- package/dist/abis/types/factories/TransferNFT__factory.js +40 -40
- package/dist/abis/types/factories/Transfer__factory.js +37 -37
- package/dist/abis/types/factories/index.js +24 -24
- package/dist/abis/types/index.js +22 -22
- 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 +127 -127
- 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 +184 -184
- 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 +193 -193
- package/dist/cjs/abis/types/factories/Erc20__factory.js +263 -263
- 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 +28 -28
- 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 +74 -74
- package/dist/cjs/hooks/usePoolContract.js +310 -310
- package/dist/cjs/hooks/useRFPoolContract.d.ts +23 -23
- 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 +11 -11
- package/dist/cjs/hooks/web3/index.js +146 -146
- 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 +64 -64
- 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 -52
- package/dist/cjs/services/IdentityService.js +83 -83
- 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 +39 -39
- package/dist/cjs/utils/chain.js +126 -126
- 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 +45 -45
- 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 +41 -41
- 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 +21 -21
- package/dist/cjs/utils/notifi.d.ts +4 -4
- package/dist/cjs/utils/notifi.js +42 -42
- package/dist/cjs/utils/number.d.ts +6 -6
- package/dist/cjs/utils/number.js +74 -74
- package/dist/cjs/utils/pool.d.ts +97 -96
- package/dist/cjs/utils/pool.js +402 -371
- 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/index.js +18 -18
- package/dist/hooks/useActiveRoute.js +7 -7
- package/dist/hooks/useAsyncError.js +22 -22
- package/dist/hooks/useCLPoolContract.d.ts +28 -28
- package/dist/hooks/useCLPoolContract.js +38 -38
- package/dist/hooks/useContract.js +40 -40
- package/dist/hooks/useContractFunction.js +54 -54
- package/dist/hooks/useERC2612Permit/ethPermit/index.js +139 -139
- package/dist/hooks/useERC2612Permit/ethPermit/lib.js +21 -21
- package/dist/hooks/useERC2612Permit/ethPermit/rpc.js +96 -96
- package/dist/hooks/useERC2612Permit/index.js +31 -31
- package/dist/hooks/useFactoring.js +90 -90
- package/dist/hooks/useForceRefresh.js +8 -8
- package/dist/hooks/useGetSizes.js +19 -19
- package/dist/hooks/useInvoiceNFTContract.js +64 -64
- package/dist/hooks/useMQ.js +14 -14
- package/dist/hooks/useMount.js +8 -8
- package/dist/hooks/useParamsSearch.js +6 -6
- package/dist/hooks/usePool.js +39 -39
- package/dist/hooks/usePoolContract.d.ts +74 -74
- package/dist/hooks/usePoolContract.js +287 -287
- package/dist/hooks/useRFPoolContract.d.ts +23 -23
- package/dist/hooks/useRFPoolContract.js +29 -29
- package/dist/hooks/useRefresh.js +47 -47
- package/dist/hooks/web3/index.d.ts +11 -11
- package/dist/hooks/web3/index.js +141 -141
- package/dist/hooks/web3/useConnectors.js +24 -24
- package/dist/hooks/web3/useJsonRpcUrlsMap.js +55 -55
- package/dist/index.js +5 -5
- package/dist/services/EAService.js +77 -77
- package/dist/services/IdentityService.d.ts +52 -52
- package/dist/services/IdentityService.js +80 -80
- 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/JsonRpcConnector.js +38 -38
- package/dist/utils/WalletConnect.js +49 -49
- package/dist/utils/chain.d.ts +39 -39
- package/dist/utils/chain.js +118 -118
- package/dist/utils/common.js +10 -10
- package/dist/utils/config.d.ts +8 -8
- package/dist/utils/config.js +42 -42
- package/dist/utils/const.js +2 -2
- package/dist/utils/contractError.json +73 -73
- package/dist/utils/contractconfig.json +19 -19
- package/dist/utils/credit.js +37 -37
- 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/errors.js +39 -39
- package/dist/utils/index.d.ts +20 -20
- package/dist/utils/index.js +20 -20
- package/dist/utils/jsonRpcEndpoints.js +18 -18
- package/dist/utils/notifi.d.ts +4 -4
- package/dist/utils/notifi.js +36 -36
- package/dist/utils/number.d.ts +6 -6
- package/dist/utils/number.js +66 -66
- package/dist/utils/pool.d.ts +97 -96
- package/dist/utils/pool.js +395 -364
- 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/request.js +38 -38
- package/dist/utils/scientificToDecimal.js +57 -57
- 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/dist/utils/string.js +1 -1
- package/dist/utils/style.js +12 -12
- package/dist/utils/time.js +50 -50
- package/dist/utils/transaction.js +87 -87
- package/dist/utils/web3.js +34 -34
- package/package.json +2 -2
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { useMemo } from 'react';
|
|
2
|
-
import { matchPath, useLocation } from 'react-router-dom';
|
|
3
|
-
export const useActiveRoute = (routes) => {
|
|
4
|
-
const location = useLocation();
|
|
5
|
-
const activeRoute = useMemo(() => Object.values(routes).find((route) => !!matchPath(location.pathname, { path: route.path, exact: true })), [location.pathname, routes]);
|
|
6
|
-
return activeRoute !== null && activeRoute !== void 0 ? activeRoute : {};
|
|
7
|
-
};
|
|
1
|
+
import { useMemo } from 'react';
|
|
2
|
+
import { matchPath, useLocation } from 'react-router-dom';
|
|
3
|
+
export const useActiveRoute = (routes) => {
|
|
4
|
+
const location = useLocation();
|
|
5
|
+
const activeRoute = useMemo(() => Object.values(routes).find((route) => !!matchPath(location.pathname, { path: route.path, exact: true })), [location.pathname, routes]);
|
|
6
|
+
return activeRoute !== null && activeRoute !== void 0 ? activeRoute : {};
|
|
7
|
+
};
|
|
8
8
|
//# sourceMappingURL=useActiveRoute.js.map
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import { useCallback, useState } from 'react';
|
|
2
|
-
/**
|
|
3
|
-
* Throws an error from outside of the React lifecycle.
|
|
4
|
-
* Errors thrown through this method will correctly trigger the ErrorBoundary.
|
|
5
|
-
*
|
|
6
|
-
* @example
|
|
7
|
-
* const throwError = useAsyncError()
|
|
8
|
-
* useEffect(() => {
|
|
9
|
-
* fetch('http://example.com')
|
|
10
|
-
* .catch((e: Error) => {
|
|
11
|
-
* throwError(toWidgetError(e))
|
|
12
|
-
* })
|
|
13
|
-
* }, [throwError])
|
|
14
|
-
*/
|
|
15
|
-
export function useAsyncError() {
|
|
16
|
-
const [, setError] = useState();
|
|
17
|
-
return useCallback((error) => setError(() => {
|
|
18
|
-
if (error instanceof Error)
|
|
19
|
-
throw error;
|
|
20
|
-
throw new Error(error);
|
|
21
|
-
}), []);
|
|
22
|
-
}
|
|
1
|
+
import { useCallback, useState } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Throws an error from outside of the React lifecycle.
|
|
4
|
+
* Errors thrown through this method will correctly trigger the ErrorBoundary.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* const throwError = useAsyncError()
|
|
8
|
+
* useEffect(() => {
|
|
9
|
+
* fetch('http://example.com')
|
|
10
|
+
* .catch((e: Error) => {
|
|
11
|
+
* throwError(toWidgetError(e))
|
|
12
|
+
* })
|
|
13
|
+
* }, [throwError])
|
|
14
|
+
*/
|
|
15
|
+
export function useAsyncError() {
|
|
16
|
+
const [, setError] = useState();
|
|
17
|
+
return useCallback((error) => setError(() => {
|
|
18
|
+
if (error instanceof Error)
|
|
19
|
+
throw error;
|
|
20
|
+
throw new Error(error);
|
|
21
|
+
}), []);
|
|
22
|
+
}
|
|
23
23
|
//# sourceMappingURL=useAsyncError.js.map
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
import { BaseCreditPool } from '../abis/types/BaseCreditPool';
|
|
2
|
-
import { POOL_NAME } from '../utils/pool';
|
|
3
|
-
export declare function useCLPoolContract(poolName: POOL_NAME): BaseCreditPool | null;
|
|
4
|
-
export declare function useCLBaseConfigPoolContract(poolName: POOL_NAME): BaseCreditPool | null;
|
|
5
|
-
export declare function useCLPoolUnderlyingTokenContract(poolName: POOL_NAME): import("..").Erc20 | null;
|
|
6
|
-
export declare function useCLPoolUnderlyingToken(poolName: POOL_NAME): Partial<{
|
|
7
|
-
address: string;
|
|
8
|
-
symbol: string;
|
|
9
|
-
decimals: number;
|
|
10
|
-
}>;
|
|
11
|
-
export declare function useCLPoolUnderlyingTokenBalance(poolName: POOL_NAME, account?: string): import("ethers").BigNumber;
|
|
12
|
-
export declare function useCLPoolBalance(poolName: POOL_NAME): [import("ethers").BigNumber | undefined, () => void];
|
|
13
|
-
export declare function useCLStats(poolName: POOL_NAME, account?: string): [import("./usePoolContract").AccountStats, () => void];
|
|
14
|
-
export declare function useCLCreditRecord(poolName: POOL_NAME, account?: string): {
|
|
15
|
-
checkIsApproved: () => Promise<boolean>;
|
|
16
|
-
};
|
|
17
|
-
export declare function useCLFeeManager(poolName: POOL_NAME): {
|
|
18
|
-
fees: import("./usePoolContract").FeesType | undefined;
|
|
19
|
-
getFeesCharged: (requestedLoan: number) => number;
|
|
20
|
-
};
|
|
21
|
-
export declare function useCLPoolAllowance(poolName: POOL_NAME, account?: string): {
|
|
22
|
-
approved: boolean;
|
|
23
|
-
allowance: import("ethers").BigNumber;
|
|
24
|
-
loaded: boolean;
|
|
25
|
-
refresh: () => void;
|
|
26
|
-
};
|
|
27
|
-
export declare function useCLLenderPosition(poolName: POOL_NAME, account?: string): [import("ethers").BigNumber | undefined, () => void];
|
|
28
|
-
export declare function useCLLenderApproved(poolName: POOL_NAME, account?: string): [boolean | undefined, () => void];
|
|
1
|
+
import { BaseCreditPool } from '../abis/types/BaseCreditPool';
|
|
2
|
+
import { POOL_NAME } from '../utils/pool';
|
|
3
|
+
export declare function useCLPoolContract(poolName: POOL_NAME): BaseCreditPool | null;
|
|
4
|
+
export declare function useCLBaseConfigPoolContract(poolName: POOL_NAME): BaseCreditPool | null;
|
|
5
|
+
export declare function useCLPoolUnderlyingTokenContract(poolName: POOL_NAME): import("..").Erc20 | null;
|
|
6
|
+
export declare function useCLPoolUnderlyingToken(poolName: POOL_NAME): Partial<{
|
|
7
|
+
address: string;
|
|
8
|
+
symbol: string;
|
|
9
|
+
decimals: number;
|
|
10
|
+
}>;
|
|
11
|
+
export declare function useCLPoolUnderlyingTokenBalance(poolName: POOL_NAME, account?: string): import("ethers").BigNumber;
|
|
12
|
+
export declare function useCLPoolBalance(poolName: POOL_NAME): [import("ethers").BigNumber | undefined, () => void];
|
|
13
|
+
export declare function useCLStats(poolName: POOL_NAME, account?: string): [import("./usePoolContract").AccountStats, () => void];
|
|
14
|
+
export declare function useCLCreditRecord(poolName: POOL_NAME, account?: string): {
|
|
15
|
+
checkIsApproved: () => Promise<boolean>;
|
|
16
|
+
};
|
|
17
|
+
export declare function useCLFeeManager(poolName: POOL_NAME): {
|
|
18
|
+
fees: import("./usePoolContract").FeesType | undefined;
|
|
19
|
+
getFeesCharged: (requestedLoan: number) => number;
|
|
20
|
+
};
|
|
21
|
+
export declare function useCLPoolAllowance(poolName: POOL_NAME, account?: string): {
|
|
22
|
+
approved: boolean;
|
|
23
|
+
allowance: import("ethers").BigNumber;
|
|
24
|
+
loaded: boolean;
|
|
25
|
+
refresh: () => void;
|
|
26
|
+
};
|
|
27
|
+
export declare function useCLLenderPosition(poolName: POOL_NAME, account?: string): [import("ethers").BigNumber | undefined, () => void];
|
|
28
|
+
export declare function useCLLenderApproved(poolName: POOL_NAME, account?: string): [boolean | undefined, () => void];
|
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
import { POOL_TYPE } from '../utils/pool';
|
|
2
|
-
import { useAccountStats, useBaseConfigPoolContract, useCreditRecord, useFeeManager, useLenderApproved, useLenderPosition, usePoolAllowance, usePoolBalance, usePoolContract, usePoolUnderlyingToken, usePoolUnderlyingTokenBalance, usePoolUnderlyingTokenContract, } from './usePoolContract';
|
|
3
|
-
export function useCLPoolContract(poolName) {
|
|
4
|
-
return usePoolContract(poolName, POOL_TYPE.CreditLine);
|
|
5
|
-
}
|
|
6
|
-
export function useCLBaseConfigPoolContract(poolName) {
|
|
7
|
-
return useBaseConfigPoolContract(poolName, POOL_TYPE.CreditLine);
|
|
8
|
-
}
|
|
9
|
-
export function useCLPoolUnderlyingTokenContract(poolName) {
|
|
10
|
-
return usePoolUnderlyingTokenContract(poolName, POOL_TYPE.CreditLine);
|
|
11
|
-
}
|
|
12
|
-
export function useCLPoolUnderlyingToken(poolName) {
|
|
13
|
-
return usePoolUnderlyingToken(poolName, POOL_TYPE.CreditLine);
|
|
14
|
-
}
|
|
15
|
-
export function useCLPoolUnderlyingTokenBalance(poolName, account) {
|
|
16
|
-
return usePoolUnderlyingTokenBalance(poolName, POOL_TYPE.CreditLine, account);
|
|
17
|
-
}
|
|
18
|
-
export function useCLPoolBalance(poolName) {
|
|
19
|
-
return usePoolBalance(poolName, POOL_TYPE.CreditLine);
|
|
20
|
-
}
|
|
21
|
-
export function useCLStats(poolName, account) {
|
|
22
|
-
return useAccountStats(poolName, POOL_TYPE.CreditLine, account);
|
|
23
|
-
}
|
|
24
|
-
export function useCLCreditRecord(poolName, account) {
|
|
25
|
-
return useCreditRecord(poolName, POOL_TYPE.CreditLine, account);
|
|
26
|
-
}
|
|
27
|
-
export function useCLFeeManager(poolName) {
|
|
28
|
-
return useFeeManager(poolName, POOL_TYPE.CreditLine);
|
|
29
|
-
}
|
|
30
|
-
export function useCLPoolAllowance(poolName, account) {
|
|
31
|
-
return usePoolAllowance(poolName, POOL_TYPE.CreditLine, account);
|
|
32
|
-
}
|
|
33
|
-
export function useCLLenderPosition(poolName, account) {
|
|
34
|
-
return useLenderPosition(poolName, POOL_TYPE.CreditLine, account);
|
|
35
|
-
}
|
|
36
|
-
export function useCLLenderApproved(poolName, account) {
|
|
37
|
-
return useLenderApproved(poolName, POOL_TYPE.CreditLine, account);
|
|
38
|
-
}
|
|
1
|
+
import { POOL_TYPE } from '../utils/pool';
|
|
2
|
+
import { useAccountStats, useBaseConfigPoolContract, useCreditRecord, useFeeManager, useLenderApproved, useLenderPosition, usePoolAllowance, usePoolBalance, usePoolContract, usePoolUnderlyingToken, usePoolUnderlyingTokenBalance, usePoolUnderlyingTokenContract, } from './usePoolContract';
|
|
3
|
+
export function useCLPoolContract(poolName) {
|
|
4
|
+
return usePoolContract(poolName, POOL_TYPE.CreditLine);
|
|
5
|
+
}
|
|
6
|
+
export function useCLBaseConfigPoolContract(poolName) {
|
|
7
|
+
return useBaseConfigPoolContract(poolName, POOL_TYPE.CreditLine);
|
|
8
|
+
}
|
|
9
|
+
export function useCLPoolUnderlyingTokenContract(poolName) {
|
|
10
|
+
return usePoolUnderlyingTokenContract(poolName, POOL_TYPE.CreditLine);
|
|
11
|
+
}
|
|
12
|
+
export function useCLPoolUnderlyingToken(poolName) {
|
|
13
|
+
return usePoolUnderlyingToken(poolName, POOL_TYPE.CreditLine);
|
|
14
|
+
}
|
|
15
|
+
export function useCLPoolUnderlyingTokenBalance(poolName, account) {
|
|
16
|
+
return usePoolUnderlyingTokenBalance(poolName, POOL_TYPE.CreditLine, account);
|
|
17
|
+
}
|
|
18
|
+
export function useCLPoolBalance(poolName) {
|
|
19
|
+
return usePoolBalance(poolName, POOL_TYPE.CreditLine);
|
|
20
|
+
}
|
|
21
|
+
export function useCLStats(poolName, account) {
|
|
22
|
+
return useAccountStats(poolName, POOL_TYPE.CreditLine, account);
|
|
23
|
+
}
|
|
24
|
+
export function useCLCreditRecord(poolName, account) {
|
|
25
|
+
return useCreditRecord(poolName, POOL_TYPE.CreditLine, account);
|
|
26
|
+
}
|
|
27
|
+
export function useCLFeeManager(poolName) {
|
|
28
|
+
return useFeeManager(poolName, POOL_TYPE.CreditLine);
|
|
29
|
+
}
|
|
30
|
+
export function useCLPoolAllowance(poolName, account) {
|
|
31
|
+
return usePoolAllowance(poolName, POOL_TYPE.CreditLine, account);
|
|
32
|
+
}
|
|
33
|
+
export function useCLLenderPosition(poolName, account) {
|
|
34
|
+
return useLenderPosition(poolName, POOL_TYPE.CreditLine, account);
|
|
35
|
+
}
|
|
36
|
+
export function useCLLenderApproved(poolName, account) {
|
|
37
|
+
return useLenderApproved(poolName, POOL_TYPE.CreditLine, account);
|
|
38
|
+
}
|
|
39
39
|
//# sourceMappingURL=useCLPoolContract.js.map
|
|
@@ -1,41 +1,41 @@
|
|
|
1
|
-
import { useWeb3React } from '@web3-react/core';
|
|
2
|
-
import { useMemo } from 'react';
|
|
3
|
-
import ERC20_ABI from '../abis/erc20.json';
|
|
4
|
-
import ERC721_ABI from '../abis/erc721.json';
|
|
5
|
-
import MULTISEND_ABI from '../abis/Multisend.json';
|
|
6
|
-
import TEST_ERC20_ABI from '../abis/TestERC20.json';
|
|
7
|
-
import { SupplementaryContracts, SupplementaryContractsMap, } from '../utils/pool';
|
|
8
|
-
import { getContract } from '../utils/web3';
|
|
9
|
-
// returns null on errors
|
|
10
|
-
export function useContract(address,
|
|
11
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
12
|
-
ABI, withSignerIfPossible = true) {
|
|
13
|
-
const { provider, account, chainId } = useWeb3React();
|
|
14
|
-
return useMemo(() => {
|
|
15
|
-
if (!address || !ABI || !provider || !chainId)
|
|
16
|
-
return null;
|
|
17
|
-
try {
|
|
18
|
-
return getContract(address, ABI, provider, withSignerIfPossible && account ? account : undefined);
|
|
19
|
-
}
|
|
20
|
-
catch (error) {
|
|
21
|
-
return null;
|
|
22
|
-
}
|
|
23
|
-
}, [address, ABI, provider, chainId, withSignerIfPossible, account]);
|
|
24
|
-
}
|
|
25
|
-
export function useERC20Contract(tokenAddress, withSignerIfPossible) {
|
|
26
|
-
return useContract(tokenAddress, ERC20_ABI, withSignerIfPossible);
|
|
27
|
-
}
|
|
28
|
-
export function useTestERC20Contract(tokenAddress, withSignerIfPossible) {
|
|
29
|
-
return useContract(tokenAddress, TEST_ERC20_ABI, withSignerIfPossible);
|
|
30
|
-
}
|
|
31
|
-
export function useERC721Contract(NFTAddress) {
|
|
32
|
-
return useContract(NFTAddress, ERC721_ABI, false);
|
|
33
|
-
}
|
|
34
|
-
export function useMultiSendContract() {
|
|
35
|
-
var _a;
|
|
36
|
-
const { chainId } = useWeb3React();
|
|
37
|
-
return useContract(chainId
|
|
38
|
-
? (_a = SupplementaryContractsMap[chainId]) === null || _a === void 0 ? void 0 : _a[SupplementaryContracts.MultiSend]
|
|
39
|
-
: undefined, MULTISEND_ABI, true);
|
|
40
|
-
}
|
|
1
|
+
import { useWeb3React } from '@web3-react/core';
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
import ERC20_ABI from '../abis/erc20.json';
|
|
4
|
+
import ERC721_ABI from '../abis/erc721.json';
|
|
5
|
+
import MULTISEND_ABI from '../abis/Multisend.json';
|
|
6
|
+
import TEST_ERC20_ABI from '../abis/TestERC20.json';
|
|
7
|
+
import { SupplementaryContracts, SupplementaryContractsMap, } from '../utils/pool';
|
|
8
|
+
import { getContract } from '../utils/web3';
|
|
9
|
+
// returns null on errors
|
|
10
|
+
export function useContract(address,
|
|
11
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
12
|
+
ABI, withSignerIfPossible = true) {
|
|
13
|
+
const { provider, account, chainId } = useWeb3React();
|
|
14
|
+
return useMemo(() => {
|
|
15
|
+
if (!address || !ABI || !provider || !chainId)
|
|
16
|
+
return null;
|
|
17
|
+
try {
|
|
18
|
+
return getContract(address, ABI, provider, withSignerIfPossible && account ? account : undefined);
|
|
19
|
+
}
|
|
20
|
+
catch (error) {
|
|
21
|
+
return null;
|
|
22
|
+
}
|
|
23
|
+
}, [address, ABI, provider, chainId, withSignerIfPossible, account]);
|
|
24
|
+
}
|
|
25
|
+
export function useERC20Contract(tokenAddress, withSignerIfPossible) {
|
|
26
|
+
return useContract(tokenAddress, ERC20_ABI, withSignerIfPossible);
|
|
27
|
+
}
|
|
28
|
+
export function useTestERC20Contract(tokenAddress, withSignerIfPossible) {
|
|
29
|
+
return useContract(tokenAddress, TEST_ERC20_ABI, withSignerIfPossible);
|
|
30
|
+
}
|
|
31
|
+
export function useERC721Contract(NFTAddress) {
|
|
32
|
+
return useContract(NFTAddress, ERC721_ABI, false);
|
|
33
|
+
}
|
|
34
|
+
export function useMultiSendContract() {
|
|
35
|
+
var _a;
|
|
36
|
+
const { chainId } = useWeb3React();
|
|
37
|
+
return useContract(chainId
|
|
38
|
+
? (_a = SupplementaryContractsMap[chainId]) === null || _a === void 0 ? void 0 : _a[SupplementaryContracts.MultiSend]
|
|
39
|
+
: undefined, MULTISEND_ABI, true);
|
|
40
|
+
}
|
|
41
41
|
//# sourceMappingURL=useContract.js.map
|
|
@@ -1,55 +1,55 @@
|
|
|
1
|
-
import { atom } from 'jotai';
|
|
2
|
-
import { atomWithReset } from 'jotai/utils';
|
|
3
|
-
import { getTransactionErrorFromError, getTransactionErrorFromHash, increaseGasLimit, TxStateType, } from '../utils/transaction';
|
|
4
|
-
const txInitManagement = {
|
|
5
|
-
state: TxStateType.New,
|
|
6
|
-
txHash: '',
|
|
7
|
-
txReceipt: undefined,
|
|
8
|
-
loading: false,
|
|
9
|
-
failReason: '',
|
|
10
|
-
};
|
|
11
|
-
export const txAtom = atomWithReset(txInitManagement);
|
|
12
|
-
export const sendTxAtom = atom((get) => get(txAtom),
|
|
13
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
14
|
-
async (get, set, payload) => {
|
|
15
|
-
const { contract, method, params, provider } = payload;
|
|
16
|
-
try {
|
|
17
|
-
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { loading: true }));
|
|
18
|
-
const gasLimit = await contract.estimateGas[method](...params);
|
|
19
|
-
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Signing }));
|
|
20
|
-
const tx = await contract[method](...params, {
|
|
21
|
-
gasLimit: increaseGasLimit(gasLimit),
|
|
22
|
-
});
|
|
23
|
-
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Confirming, txHash: tx.hash }));
|
|
24
|
-
const txReceipt = await tx.wait();
|
|
25
|
-
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { txReceipt }));
|
|
26
|
-
// tx was mined successfully
|
|
27
|
-
if (txReceipt.status === 1) {
|
|
28
|
-
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Success, loading: false }));
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
let failReason = 'Send transaction failed';
|
|
32
|
-
if (provider) {
|
|
33
|
-
const failReasonReturned = await getTransactionErrorFromHash(provider, tx.hash);
|
|
34
|
-
if (failReasonReturned) {
|
|
35
|
-
failReason = failReasonReturned;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Failed, loading: false, failReason }));
|
|
39
|
-
}
|
|
40
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
41
|
-
}
|
|
42
|
-
catch (e) {
|
|
43
|
-
const contractErrorMessage = getTransactionErrorFromError(e);
|
|
44
|
-
if (contractErrorMessage) {
|
|
45
|
-
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Failed, loading: false, failReason: contractErrorMessage }));
|
|
46
|
-
return;
|
|
47
|
-
}
|
|
48
|
-
if (e.code === 4001 || e.code === 'ACTION_REJECTED') {
|
|
49
|
-
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Denied, loading: false, failReason: 'User has rejected the transaction' }));
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Invalid, loading: false, failReason: e.reason || `Send transaction failed` }));
|
|
53
|
-
}
|
|
54
|
-
});
|
|
1
|
+
import { atom } from 'jotai';
|
|
2
|
+
import { atomWithReset } from 'jotai/utils';
|
|
3
|
+
import { getTransactionErrorFromError, getTransactionErrorFromHash, increaseGasLimit, TxStateType, } from '../utils/transaction';
|
|
4
|
+
const txInitManagement = {
|
|
5
|
+
state: TxStateType.New,
|
|
6
|
+
txHash: '',
|
|
7
|
+
txReceipt: undefined,
|
|
8
|
+
loading: false,
|
|
9
|
+
failReason: '',
|
|
10
|
+
};
|
|
11
|
+
export const txAtom = atomWithReset(txInitManagement);
|
|
12
|
+
export const sendTxAtom = atom((get) => get(txAtom),
|
|
13
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
14
|
+
async (get, set, payload) => {
|
|
15
|
+
const { contract, method, params, provider } = payload;
|
|
16
|
+
try {
|
|
17
|
+
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { loading: true }));
|
|
18
|
+
const gasLimit = await contract.estimateGas[method](...params);
|
|
19
|
+
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Signing }));
|
|
20
|
+
const tx = await contract[method](...params, {
|
|
21
|
+
gasLimit: increaseGasLimit(gasLimit),
|
|
22
|
+
});
|
|
23
|
+
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Confirming, txHash: tx.hash }));
|
|
24
|
+
const txReceipt = await tx.wait();
|
|
25
|
+
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { txReceipt }));
|
|
26
|
+
// tx was mined successfully
|
|
27
|
+
if (txReceipt.status === 1) {
|
|
28
|
+
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Success, loading: false }));
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
let failReason = 'Send transaction failed';
|
|
32
|
+
if (provider) {
|
|
33
|
+
const failReasonReturned = await getTransactionErrorFromHash(provider, tx.hash);
|
|
34
|
+
if (failReasonReturned) {
|
|
35
|
+
failReason = failReasonReturned;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Failed, loading: false, failReason }));
|
|
39
|
+
}
|
|
40
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
41
|
+
}
|
|
42
|
+
catch (e) {
|
|
43
|
+
const contractErrorMessage = getTransactionErrorFromError(e);
|
|
44
|
+
if (contractErrorMessage) {
|
|
45
|
+
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Failed, loading: false, failReason: contractErrorMessage }));
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if (e.code === 4001 || e.code === 'ACTION_REJECTED') {
|
|
49
|
+
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Denied, loading: false, failReason: 'User has rejected the transaction' }));
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
set(txAtom, Object.assign(Object.assign({}, get(txAtom)), { state: TxStateType.Invalid, loading: false, failReason: e.reason || `Send transaction failed` }));
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
55
|
//# sourceMappingURL=useContractFunction.js.map
|