@cfxjs/sirius-next-common 0.2.9 → 0.2.11
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/dist/_esm-TZ4WSCGM.js +4035 -0
- package/dist/_esm-TZ4WSCGM.js.map +1 -0
- package/dist/abis/CommonError.d.ts +10 -0
- package/dist/abis/CommonError.js +8 -0
- package/dist/abis/CommonError.js.map +1 -0
- package/dist/abis/CommonPanic.d.ts +10 -0
- package/dist/abis/CommonPanic.js +8 -0
- package/dist/abis/CommonPanic.js.map +1 -0
- package/dist/ccip-DBSI27GO.js +15 -0
- package/dist/ccip-DBSI27GO.js.map +1 -0
- package/dist/chunk-3PXUIH3S.js +17 -0
- package/dist/chunk-3PXUIH3S.js.map +1 -0
- package/dist/chunk-4B6ASBYQ.js +408 -0
- package/dist/chunk-4B6ASBYQ.js.map +1 -0
- package/dist/{chunk-Z6EYKGBH.js → chunk-5EDEEGZK.js} +42 -66
- package/dist/chunk-5EDEEGZK.js.map +1 -0
- package/dist/chunk-5TGK2EA2.js +18 -0
- package/dist/chunk-5TGK2EA2.js.map +1 -0
- package/dist/chunk-5Y7I6VYA.js +145 -0
- package/dist/chunk-5Y7I6VYA.js.map +1 -0
- package/dist/chunk-6H5A42YS.js +23 -0
- package/dist/chunk-6H5A42YS.js.map +1 -0
- package/dist/chunk-6SXAFSBF.js +1032 -0
- package/dist/chunk-6SXAFSBF.js.map +1 -0
- package/dist/chunk-735VMABS.js +82 -0
- package/dist/chunk-735VMABS.js.map +1 -0
- package/dist/chunk-7CBOXGGA.js +78 -0
- package/dist/chunk-7CBOXGGA.js.map +1 -0
- package/dist/chunk-ADNS57X5.js +18 -0
- package/dist/chunk-ADNS57X5.js.map +1 -0
- package/dist/{chunk-CY4XPEK5.js → chunk-ADULNBMD.js} +5 -5
- package/dist/chunk-AKMGJWIM.js +79 -0
- package/dist/chunk-AKMGJWIM.js.map +1 -0
- package/dist/{chunk-EYT54RGS.js → chunk-BUSBM33B.js} +4 -4
- package/dist/chunk-CKVDFS45.js +56 -0
- package/dist/chunk-CKVDFS45.js.map +1 -0
- package/dist/{chunk-KKR2JERD.js → chunk-CNF26YY7.js} +3 -3
- package/dist/{chunk-H7V2CGOB.js → chunk-CPPQCJEV.js} +3 -3
- package/dist/chunk-CPR4QZT6.js +21 -0
- package/dist/chunk-CPR4QZT6.js.map +1 -0
- package/dist/chunk-CPSXYQJ7.js +13 -0
- package/dist/chunk-CPSXYQJ7.js.map +1 -0
- package/dist/{chunk-JXKHN73X.js → chunk-DF3PVTB5.js} +2 -2
- package/dist/chunk-E3ZD2GGG.js +17 -0
- package/dist/chunk-E3ZD2GGG.js.map +1 -0
- package/dist/chunk-EERNUGUK.js +198 -0
- package/dist/chunk-EERNUGUK.js.map +1 -0
- package/dist/{chunk-BVED57CI.js → chunk-EMPFZFBS.js} +6 -19
- package/dist/chunk-EMPFZFBS.js.map +1 -0
- package/dist/chunk-FYLAXC3R.js +82 -0
- package/dist/chunk-FYLAXC3R.js.map +1 -0
- package/dist/{chunk-52R454XN.js → chunk-GKZK26DZ.js} +3 -3
- package/dist/{chunk-OQCPL2OI.js → chunk-GSWIFV2B.js} +2 -2
- package/dist/chunk-JFFTHCNE.js +344 -0
- package/dist/chunk-JFFTHCNE.js.map +1 -0
- package/dist/chunk-JIRLY7OG.js +4357 -0
- package/dist/chunk-JIRLY7OG.js.map +1 -0
- package/dist/chunk-K6FHTS3F.js +115 -0
- package/dist/chunk-K6FHTS3F.js.map +1 -0
- package/dist/chunk-L62OTV7F.js +71 -0
- package/dist/chunk-L62OTV7F.js.map +1 -0
- package/dist/{chunk-WOX3LUVT.js → chunk-LVFMTP5H.js} +2 -2
- package/dist/chunk-NWVSTRCG.js +20 -0
- package/dist/chunk-NWVSTRCG.js.map +1 -0
- package/dist/chunk-NXCZ5PMI.js +64 -0
- package/dist/chunk-NXCZ5PMI.js.map +1 -0
- package/dist/{chunk-XZQWPTKA.js → chunk-NZY53U2H.js} +9 -13
- package/dist/chunk-NZY53U2H.js.map +1 -0
- package/dist/{chunk-FXGL77DI.js → chunk-OCQIWTDC.js} +2 -2
- package/dist/{chunk-3CHXTO52.js → chunk-ODJ4QBD5.js} +6 -6
- package/dist/chunk-OYESIV3F.js +47 -0
- package/dist/chunk-OYESIV3F.js.map +1 -0
- package/dist/{chunk-W7ZK4OQA.js → chunk-P4EE3QGM.js} +3 -3
- package/dist/{chunk-CKOT4CK7.js → chunk-Q2DX6IDH.js} +2 -2
- package/dist/chunk-SFCNLOQ5.js +37 -0
- package/dist/chunk-SFCNLOQ5.js.map +1 -0
- package/dist/chunk-SUCQASD3.js +84 -0
- package/dist/chunk-SUCQASD3.js.map +1 -0
- package/dist/chunk-U6ZN2ABK.js +184 -0
- package/dist/chunk-U6ZN2ABK.js.map +1 -0
- package/dist/chunk-UM5J477V.js +69 -0
- package/dist/chunk-UM5J477V.js.map +1 -0
- package/dist/{chunk-7RH7LJYB.js → chunk-WIB76E7O.js} +6 -2
- package/dist/{chunk-7RH7LJYB.js.map → chunk-WIB76E7O.js.map} +1 -1
- package/dist/chunk-WQG2LZMB.js +50 -0
- package/dist/chunk-WQG2LZMB.js.map +1 -0
- package/dist/chunk-XZ7IV2FF.js +5947 -0
- package/dist/chunk-XZ7IV2FF.js.map +1 -0
- package/dist/chunk-Y7OVL5US.js +46 -0
- package/dist/chunk-Y7OVL5US.js.map +1 -0
- package/dist/chunk-YBQQ72FQ.js +10 -0
- package/dist/chunk-YBQQ72FQ.js.map +1 -0
- package/dist/chunk-YDA7DDMQ.js +186 -0
- package/dist/chunk-YDA7DDMQ.js.map +1 -0
- package/dist/{chunk-YEUH2K6Z.js → chunk-YEINMVAR.js} +8 -2
- package/dist/chunk-YEINMVAR.js.map +1 -0
- package/dist/chunk-YIZCD4WG.js +107 -0
- package/dist/chunk-YIZCD4WG.js.map +1 -0
- package/dist/components/AceEditor/index.js +9 -143
- package/dist/components/AceEditor/index.js.map +1 -1
- package/dist/components/AddressContainer/CoreAddressContainer.js +14 -12
- package/dist/components/AddressContainer/EVMAddressContainer.js +13 -11
- package/dist/components/AddressContainer/addressSwitcher.js +11 -9
- package/dist/components/AddressContainer/addressView.js +9 -8
- package/dist/components/AddressContainer/label.js +7 -6
- package/dist/components/AddressContainer/utils.d.ts +9 -0
- package/dist/components/AddressContainer/utils.js +30 -0
- package/dist/components/AddressContainer/utils.js.map +1 -0
- package/dist/components/Age/index.js +7 -6
- package/dist/components/Age/index.js.map +1 -1
- package/dist/components/AutoComplete/index.js +6 -5
- package/dist/components/AutoComplete/index.js.map +1 -1
- package/dist/components/Button/ActionButton/index.js +1 -0
- package/dist/components/Button/BaseButton/index.js +1 -0
- package/dist/components/Button/IconButton/index.js +1 -0
- package/dist/components/Button/index.js +1 -0
- package/dist/components/Card/index.js +1 -0
- package/dist/components/Charts/BreadcrumbNav.js +1 -0
- package/dist/components/Charts/ChartOptions.js +1 -0
- package/dist/components/Charts/PreviewChartTemplate.js +3 -2
- package/dist/components/Charts/PreviewChartTemplate.js.map +1 -1
- package/dist/components/Charts/PreviewTitle.js +1 -0
- package/dist/components/Charts/StockChartTemplate.js +10 -9
- package/dist/components/Charts/StockChartTemplate.js.map +1 -1
- package/dist/components/Charts/StockTitle.js +1 -0
- package/dist/components/Charts/config.js +1 -0
- package/dist/components/Charts/constants.js +1 -0
- package/dist/components/Charts/useHighCharts.js +1 -0
- package/dist/components/CookieTip/CookieIcon.js +1 -0
- package/dist/components/CookieTip/index.js +2 -1
- package/dist/components/CookieTip/index.js.map +1 -1
- package/dist/components/CopyButton/index.js +6 -5
- package/dist/components/CopyButton/index.js.map +1 -1
- package/dist/components/DecimalsSelect/index.js +6 -5
- package/dist/components/DecimalsSelect/index.js.map +1 -1
- package/dist/components/DeleteIcon/index.js +2 -0
- package/dist/components/DeleteIcon/index.js.map +1 -1
- package/dist/components/Description/index.js +1 -0
- package/dist/components/Divider/index.js +1 -0
- package/dist/components/DownloadCSV/index.js +7 -6
- package/dist/components/DownloadCSV/index.js.map +1 -1
- package/dist/components/Dropdown/index.js +1 -0
- package/dist/components/Dropdown/index.js.map +1 -1
- package/dist/components/Empty/index.js +4 -40
- package/dist/components/Empty/index.js.map +1 -1
- package/dist/components/FileUpload/index.js +2 -0
- package/dist/components/FileUpload/index.js.map +1 -1
- package/dist/components/Footer/index.js +1 -0
- package/dist/components/Footer/index.js.map +1 -1
- package/dist/components/GasPriceDropdown/index.js +5 -4
- package/dist/components/GasPriceDropdown/index.js.map +1 -1
- package/dist/components/Highlight/index.js +1 -0
- package/dist/components/Highlight/index.js.map +1 -1
- package/dist/components/Icons/index.d.ts +8 -1
- package/dist/components/Icons/index.js +20 -64
- package/dist/components/Icons/index.js.map +1 -1
- package/dist/components/ImageSkeleton/index.js +2 -0
- package/dist/components/ImageSkeleton/index.js.map +1 -1
- package/dist/components/IncreasePercent/Icons.js +1 -0
- package/dist/components/IncreasePercent/index.js +5 -4
- package/dist/components/IncreasePercent/index.js.map +1 -1
- package/dist/components/InfoIconWithTooltip/InfoIcon.js +1 -0
- package/dist/components/InfoIconWithTooltip/index.js +7 -6
- package/dist/components/InputData/AddressLabel.d.ts +8 -0
- package/dist/components/InputData/AddressLabel.js +23 -0
- package/dist/components/InputData/AddressLabel.js.map +1 -0
- package/dist/components/InputData/ContractDetail.d.ts +22 -0
- package/dist/components/InputData/ContractDetail.js +19 -0
- package/dist/components/InputData/ContractDetail.js.map +1 -0
- package/dist/components/InputData/FunctionName.d.ts +10 -0
- package/dist/components/InputData/FunctionName.js +10 -0
- package/dist/components/InputData/FunctionName.js.map +1 -0
- package/dist/components/InputData/GeneralDecode.d.ts +9 -0
- package/dist/components/InputData/GeneralDecode.js +8 -0
- package/dist/components/InputData/GeneralDecode.js.map +1 -0
- package/dist/components/InputData/JsonDecode.d.ts +18 -0
- package/dist/components/InputData/JsonDecode.js +19 -0
- package/dist/components/InputData/JsonDecode.js.map +1 -0
- package/dist/components/InputData/OptimizationDecode.d.ts +23 -0
- package/dist/components/InputData/OptimizationDecode.js +32 -0
- package/dist/components/InputData/OptimizationDecode.js.map +1 -0
- package/dist/components/InputData/Original.d.ts +8 -0
- package/dist/components/InputData/Original.js +8 -0
- package/dist/components/InputData/Original.js.map +1 -0
- package/dist/components/InputData/UTF8.d.ts +8 -0
- package/dist/components/InputData/UTF8.js +14 -0
- package/dist/components/InputData/UTF8.js.map +1 -0
- package/dist/components/InputData/index.d.ts +15 -0
- package/dist/components/InputData/index.js +36 -0
- package/dist/components/InputData/index.js.map +1 -0
- package/dist/components/InputData/utils.d.ts +5 -0
- package/dist/components/InputData/utils.js +8 -0
- package/dist/components/InputData/utils.js.map +1 -0
- package/dist/components/Link/index.js +1 -0
- package/dist/components/List/index.js +1 -0
- package/dist/components/List/index.js.map +1 -1
- package/dist/components/Loading/index.js +1 -0
- package/dist/components/Loading/index.js.map +1 -1
- package/dist/components/Loading/loading.js +1 -0
- package/dist/components/Modal/index.js +6 -5
- package/dist/components/NetworkIcon/index.js +5 -4
- package/dist/components/NetworkIcon/index.js.map +1 -1
- package/dist/components/OutputData/ErrorDecode.d.ts +14 -0
- package/dist/components/OutputData/ErrorDecode.js +39 -0
- package/dist/components/OutputData/ErrorDecode.js.map +1 -0
- package/dist/components/OutputData/index.d.ts +21 -0
- package/dist/components/OutputData/index.js +42 -0
- package/dist/components/OutputData/index.js.map +1 -0
- package/dist/components/PageHeader/index.js +2 -0
- package/dist/components/PageHeader/index.js.map +1 -1
- package/dist/components/PhishingAddressContainer/PhishingWarningIcon.js +1 -0
- package/dist/components/PhishingAddressContainer/index.js +7 -6
- package/dist/components/PhishingAddressContainer/index.js.map +1 -1
- package/dist/components/Popover/index.js +6 -5
- package/dist/components/Price/index.js +6 -5
- package/dist/components/Price/index.js.map +1 -1
- package/dist/components/ProxyContractAddress/index.d.ts +24 -0
- package/dist/components/ProxyContractAddress/index.js +120 -0
- package/dist/components/ProxyContractAddress/index.js.map +1 -0
- package/dist/components/Radio/index.js +5 -4
- package/dist/components/Radio/index.js.map +1 -1
- package/dist/components/Remark/index.js +1 -0
- package/dist/components/Remark/index.js.map +1 -1
- package/dist/components/SearchIcon/index.js +2 -0
- package/dist/components/SearchIcon/index.js.map +1 -1
- package/dist/components/SearchInput/index.js +7 -6
- package/dist/components/SearchInput/index.js.map +1 -1
- package/dist/components/Select/index.d.ts +5 -4
- package/dist/components/Select/index.js +10 -105
- package/dist/components/Select/index.js.map +1 -1
- package/dist/components/Select/select.js +7 -5
- package/dist/components/Skeleton/index.js +1 -0
- package/dist/components/SkeletonContainer/index.js +1 -0
- package/dist/components/Spin/index.js +1 -0
- package/dist/components/Switch/index.d.ts +10 -0
- package/dist/components/Switch/index.js +81 -0
- package/dist/components/Switch/index.js.map +1 -0
- package/dist/components/Table/index.d.ts +9 -0
- package/dist/components/Table/index.js +12 -0
- package/dist/components/Table/index.js.map +1 -0
- package/dist/components/Text/index.js +7 -6
- package/dist/components/TextLogo/index.js +2 -0
- package/dist/components/TextLogo/index.js.map +1 -1
- package/dist/components/Tooltip/index.js +6 -5
- package/dist/components/TransactionAction/constants.js +1 -0
- package/dist/components/TransactionAction/coreTransactionAction.js +15 -13
- package/dist/components/TransactionAction/coreTransactionAction.js.map +1 -1
- package/dist/components/TransactionAction/evmTransactionAction.js +14 -12
- package/dist/components/TransactionAction/evmTransactionAction.js.map +1 -1
- package/dist/components/TransactionTrace/TraceDetail.d.ts +20 -0
- package/dist/components/TransactionTrace/TraceDetail.js +54 -0
- package/dist/components/TransactionTrace/TraceDetail.js.map +1 -0
- package/dist/components/TransactionTrace/TreeTraceTable.d.ts +20 -0
- package/dist/components/TransactionTrace/TreeTraceTable.js +57 -0
- package/dist/components/TransactionTrace/TreeTraceTable.js.map +1 -0
- package/dist/components/TransactionTrace/index.d.ts +9 -0
- package/dist/components/TransactionTrace/index.js +60 -0
- package/dist/components/TransactionTrace/index.js.map +1 -0
- package/dist/secp256k1-WGKMGTUQ.js +2255 -0
- package/dist/secp256k1-WGKMGTUQ.js.map +1 -0
- package/dist/store/index.js +1 -0
- package/dist/uno.css +103 -5
- package/dist/utils/address.js +5 -4
- package/dist/utils/cache.js +2 -1
- package/dist/utils/constants.d.ts +3 -1
- package/dist/utils/constants.js +6 -1
- package/dist/utils/contractManagerTool.js +5 -4
- package/dist/utils/contractManagerTool.js.map +1 -1
- package/dist/utils/cookie.js +1 -0
- package/dist/utils/ga.js +1 -0
- package/dist/utils/hooks/useAddressLabel.d.ts +3 -0
- package/dist/utils/hooks/useAddressLabel.js +14 -0
- package/dist/utils/hooks/useAddressLabel.js.map +1 -0
- package/dist/utils/hooks/useAge.js +2 -1
- package/dist/utils/hooks/useAge.js.map +1 -1
- package/dist/utils/hooks/useAutoSetHolderFilterParams.d.ts +3 -0
- package/dist/utils/hooks/useAutoSetHolderFilterParams.js +72 -0
- package/dist/utils/hooks/useAutoSetHolderFilterParams.js.map +1 -0
- package/dist/utils/hooks/useChartQueryParams.js +2 -0
- package/dist/utils/hooks/useChartQueryParams.js.map +1 -1
- package/dist/utils/hooks/useContractDetail.d.ts +6 -0
- package/dist/utils/hooks/useContractDetail.js +12 -0
- package/dist/utils/hooks/useContractDetail.js.map +1 -0
- package/dist/utils/hooks/useDecodeFunctionData.d.ts +29 -0
- package/dist/utils/hooks/useDecodeFunctionData.js +19 -0
- package/dist/utils/hooks/useDecodeFunctionData.js.map +1 -0
- package/dist/utils/hooks/useDecodeFunctionError.d.ts +17 -0
- package/dist/utils/hooks/useDecodeFunctionError.js +19 -0
- package/dist/utils/hooks/useDecodeFunctionError.js.map +1 -0
- package/dist/utils/hooks/useDecodedDataType.d.ts +18 -0
- package/dist/utils/hooks/useDecodedDataType.js +8 -0
- package/dist/utils/hooks/useDecodedDataType.js.map +1 -0
- package/dist/utils/hooks/useENS.js +6 -5
- package/dist/utils/hooks/useGetTxnStatus.js +2 -0
- package/dist/utils/hooks/useGetTxnStatus.js.map +1 -1
- package/dist/utils/hooks/useMethodAbi.d.ts +8 -0
- package/dist/utils/hooks/useMethodAbi.js +12 -0
- package/dist/utils/hooks/useMethodAbi.js.map +1 -0
- package/dist/utils/hooks/useMultiAceSearch.js +2 -0
- package/dist/utils/hooks/useMultiAceSearch.js.map +1 -1
- package/dist/utils/hooks/useSearchParams.d.ts +5 -0
- package/dist/utils/hooks/useSearchParams.js +8 -0
- package/dist/utils/hooks/useSearchParams.js.map +1 -0
- package/dist/utils/hooks/useTxTrace.d.ts +124 -0
- package/dist/utils/hooks/useTxTrace.js +170 -0
- package/dist/utils/hooks/useTxTrace.js.map +1 -0
- package/dist/utils/index.js +5 -4
- package/dist/utils/media.js +1 -0
- package/dist/utils/pubsub.js +1 -0
- package/dist/utils/request.d.ts +5 -7
- package/dist/utils/request.js +7 -6
- package/dist/utils/request.types.d.ts +18 -3
- package/dist/utils/rpcRequest.js +1 -0
- package/dist/utils/rpcRequest.js.map +1 -1
- package/dist/utils/sdk.d.ts +35 -0
- package/dist/utils/sdk.js +19 -0
- package/dist/utils/sdk.js.map +1 -0
- package/package.json +8 -5
- package/dist/chunk-BVED57CI.js.map +0 -1
- package/dist/chunk-XZQWPTKA.js.map +0 -1
- package/dist/chunk-YEUH2K6Z.js.map +0 -1
- package/dist/chunk-Z6EYKGBH.js.map +0 -1
- /package/dist/{chunk-CY4XPEK5.js.map → chunk-ADULNBMD.js.map} +0 -0
- /package/dist/{chunk-EYT54RGS.js.map → chunk-BUSBM33B.js.map} +0 -0
- /package/dist/{chunk-KKR2JERD.js.map → chunk-CNF26YY7.js.map} +0 -0
- /package/dist/{chunk-H7V2CGOB.js.map → chunk-CPPQCJEV.js.map} +0 -0
- /package/dist/{chunk-JXKHN73X.js.map → chunk-DF3PVTB5.js.map} +0 -0
- /package/dist/{chunk-52R454XN.js.map → chunk-GKZK26DZ.js.map} +0 -0
- /package/dist/{chunk-OQCPL2OI.js.map → chunk-GSWIFV2B.js.map} +0 -0
- /package/dist/{chunk-WOX3LUVT.js.map → chunk-LVFMTP5H.js.map} +0 -0
- /package/dist/{chunk-FXGL77DI.js.map → chunk-OCQIWTDC.js.map} +0 -0
- /package/dist/{chunk-3CHXTO52.js.map → chunk-ODJ4QBD5.js.map} +0 -0
- /package/dist/{chunk-W7ZK4OQA.js.map → chunk-P4EE3QGM.js.map} +0 -0
- /package/dist/{chunk-CKOT4CK7.js.map → chunk-Q2DX6IDH.js.map} +0 -0
|
@@ -3,14 +3,13 @@ import {
|
|
|
3
3
|
} from "./chunk-J2I22Q2M.js";
|
|
4
4
|
import {
|
|
5
5
|
fetchWithCache
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-YEINMVAR.js";
|
|
7
7
|
import {
|
|
8
8
|
getEnvConfig
|
|
9
9
|
} from "./chunk-DQGLZCIG.js";
|
|
10
10
|
|
|
11
11
|
// src/utils/request.ts
|
|
12
12
|
import qs from "query-string";
|
|
13
|
-
import useSWR from "swr";
|
|
14
13
|
var TIMEOUT_TIMESTAMP = 6e4;
|
|
15
14
|
var checkStatus = (response) => {
|
|
16
15
|
if (response.status >= 200 && response.status < 300 || response.status === 600) {
|
|
@@ -137,51 +136,6 @@ var simpleGetFetcher = async (...args) => {
|
|
|
137
136
|
method: "get"
|
|
138
137
|
});
|
|
139
138
|
};
|
|
140
|
-
var useSWRWithGetFetcher = (key, swrOpts = {}) => {
|
|
141
|
-
const isTransferReq = typeof key === "string" && key.startsWith("/transfer") || Array.isArray(key) && typeof key[0] === "string" && key[0].startsWith("/transfer");
|
|
142
|
-
const { data, error, mutate } = useSWR(key, simpleGetFetcher, {
|
|
143
|
-
...swrOpts
|
|
144
|
-
});
|
|
145
|
-
let tokenAddress = "";
|
|
146
|
-
if (isTransferReq && data && data.list) {
|
|
147
|
-
tokenAddress = data.list.reduce(
|
|
148
|
-
(acc, trans) => {
|
|
149
|
-
if (trans.address && !acc.includes(trans.address))
|
|
150
|
-
acc.push(trans.address);
|
|
151
|
-
return acc;
|
|
152
|
-
},
|
|
153
|
-
[]
|
|
154
|
-
);
|
|
155
|
-
}
|
|
156
|
-
const { data: tokenData } = useSWR(
|
|
157
|
-
tokenAddress ? qs.stringifyUrl({
|
|
158
|
-
url: "/token",
|
|
159
|
-
query: { addressArray: tokenAddress, fields: "iconUrl" }
|
|
160
|
-
}) : null,
|
|
161
|
-
simpleGetFetcher
|
|
162
|
-
);
|
|
163
|
-
if (tokenData && tokenData.list) {
|
|
164
|
-
const newTransferList = data.list.map((trans) => {
|
|
165
|
-
if (tokenAddress.includes(trans.address)) {
|
|
166
|
-
const tokenInfo = tokenData.list.find(
|
|
167
|
-
(t) => t.address === trans.address
|
|
168
|
-
);
|
|
169
|
-
if (tokenInfo)
|
|
170
|
-
return { ...trans, token: { ...tokenInfo } };
|
|
171
|
-
}
|
|
172
|
-
return trans;
|
|
173
|
-
});
|
|
174
|
-
return {
|
|
175
|
-
data: {
|
|
176
|
-
...data,
|
|
177
|
-
list: newTransferList
|
|
178
|
-
},
|
|
179
|
-
error,
|
|
180
|
-
mutate
|
|
181
|
-
};
|
|
182
|
-
}
|
|
183
|
-
return { data, error, mutate };
|
|
184
|
-
};
|
|
185
139
|
var queryAddress = (address) => {
|
|
186
140
|
return address.reduce((prev, curr, index) => {
|
|
187
141
|
return !index ? `address=${curr}` : `${prev}&address=${curr}`;
|
|
@@ -237,22 +191,34 @@ var reqNametag = async (address) => {
|
|
|
237
191
|
});
|
|
238
192
|
return res?.map;
|
|
239
193
|
};
|
|
240
|
-
var reqContractAndToken =
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
}
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
194
|
+
var reqContractAndToken = fetchWithCache(
|
|
195
|
+
async (address) => {
|
|
196
|
+
const query = queryAddress(address);
|
|
197
|
+
const res = await fetch(`/v1/contract-and-token?${query}`, {
|
|
198
|
+
method: "GET"
|
|
199
|
+
});
|
|
200
|
+
return res;
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
key: "contract-and-token",
|
|
204
|
+
maxAge: 1e3 * 60 * 60
|
|
205
|
+
}
|
|
206
|
+
);
|
|
207
|
+
var getContractDetail = fetchWithCache(
|
|
208
|
+
(contractAddress, fields = []) => {
|
|
209
|
+
const url = qs.stringifyUrl({
|
|
210
|
+
url: `/v1/contract/${contractAddress}`,
|
|
211
|
+
query: { fields }
|
|
212
|
+
});
|
|
213
|
+
return fetch(url, {
|
|
214
|
+
method: "GET"
|
|
215
|
+
});
|
|
216
|
+
},
|
|
217
|
+
{
|
|
218
|
+
key: "contract-detail",
|
|
219
|
+
maxAge: 1e3 * 60 * 60
|
|
220
|
+
}
|
|
221
|
+
);
|
|
256
222
|
var detectAccountType = fetchWithCache(
|
|
257
223
|
(address) => {
|
|
258
224
|
return fetchWithOpenApi(
|
|
@@ -267,6 +233,16 @@ var detectAccountType = fetchWithCache(
|
|
|
267
233
|
maxAge: 1e3 * 10
|
|
268
234
|
}
|
|
269
235
|
);
|
|
236
|
+
var reqAbiByMethodId = (methodId) => {
|
|
237
|
+
return fetchWithPrefix(
|
|
238
|
+
qs.stringifyUrl({
|
|
239
|
+
url: "/stat/list-abi-method",
|
|
240
|
+
query: {
|
|
241
|
+
id: methodId
|
|
242
|
+
}
|
|
243
|
+
})
|
|
244
|
+
);
|
|
245
|
+
};
|
|
270
246
|
|
|
271
247
|
export {
|
|
272
248
|
fetch,
|
|
@@ -274,13 +250,13 @@ export {
|
|
|
274
250
|
fetchWithPrefix,
|
|
275
251
|
fetchWithOpenApi,
|
|
276
252
|
simpleGetFetcher,
|
|
277
|
-
useSWRWithGetFetcher,
|
|
278
253
|
sendRequestChart,
|
|
279
254
|
sendRequestENSInfo,
|
|
280
255
|
sendRequestGasPrice,
|
|
281
256
|
reqNametag,
|
|
282
257
|
reqContractAndToken,
|
|
283
258
|
getContractDetail,
|
|
284
|
-
detectAccountType
|
|
259
|
+
detectAccountType,
|
|
260
|
+
reqAbiByMethodId
|
|
285
261
|
};
|
|
286
|
-
//# sourceMappingURL=chunk-
|
|
262
|
+
//# sourceMappingURL=chunk-5EDEEGZK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils/request.ts"],"sourcesContent":["import qs from 'query-string';\nimport { publishRequestError } from './pubsub';\nimport {\n BaseContractInfo,\n DetectAccountTypeResponse,\n MethodAbiItemResponse,\n} from './request.types';\nimport { getEnvConfig } from '../store';\nimport { fetchWithCache } from './cache';\ninterface FetchWithAbortType<T> {\n promise: Promise<T>;\n abort: () => void;\n}\n\ninterface FetchOptions extends RequestInit {\n timeout?: number;\n}\n\nconst TIMEOUT_TIMESTAMP = 60000;\n\nconst checkStatus = (response: Response) => {\n if (\n (response.status >= 200 && response.status < 300) ||\n response.status === 600\n ) {\n return response;\n } else {\n const error = new Error(response.statusText);\n error.name = 'HttpError';\n (error as any).status = response.status;\n (error as any).response = response;\n throw error;\n }\n};\n\n// 格式化 response data\nconst parseJSON = async (response: Response) => {\n const contentType = response.headers.get('content-type');\n try {\n if (contentType?.includes('application/json')) {\n return { data: await response.json(), response };\n } else if (contentType?.includes('text/html')) {\n return { data: await response.text(), response };\n } else {\n // contentType 还有其他类型,目前项目中用不到\n // 不能简单的报错,比如 image/x-icon 是 favicon 请求\n // 此处直接返回 response,由业务代码处理其他类型的数据\n return { data: response, response };\n }\n } catch (error) {\n if ((error as any).name === 'AbortError') {\n return { data: response, response };\n }\n publishRequestError({ url: response.url, code: 20001 }, 'http');\n (error as any).response = response;\n throw error;\n }\n};\n\n// 检查返回值中是否包含错误\nconst checkResponse = function (\n url: string,\n {\n data,\n response,\n }: {\n data: any;\n response: Response;\n },\n opts: any,\n) {\n // 兼容 data.code 和 data.data, 是关于 core space 的数据结构\n if (response.status === 200 && (data.status === '1' || data.code === 0)) {\n return data.result || data.data;\n } else if (/HEAD/i.test(opts?.method || '')) {\n // handle of HEAD method\n return response;\n } else {\n const code = Number(data.status ?? data.code);\n publishRequestError({ url, code, message: data.message }, 'http');\n const error: Partial<ErrorEvent> & {\n response?: ResponseType;\n } = new Error(data.message);\n error.response = data;\n throw error;\n }\n};\n\nconst fetchWithAbort = <T>(\n url: string,\n options: FetchOptions = {},\n): FetchWithAbortType<T> => {\n const controller = new AbortController();\n const opts: FetchOptions = { ...options, signal: controller.signal };\n const timeout = options.timeout || TIMEOUT_TIMESTAMP;\n\n let timeoutId: ReturnType<typeof setTimeout>;\n const promise: Promise<T> = new Promise((resolve, reject) => {\n timeoutId = setTimeout(() => {\n controller.abort();\n publishRequestError(\n { url, code: 20002, message: 'Request timeout' },\n 'http',\n );\n reject(new Error('Request timeout'));\n }, timeout);\n\n window\n .fetch(url, opts)\n .then(checkStatus)\n .then(parseJSON)\n .then((...args) => checkResponse(url, ...args, opts))\n .then(data => resolve(data as T))\n .catch(error => {\n if (/HEAD/i.test(opts?.method || '')) {\n return {};\n }\n\n // A fetch() promise will reject with a TypeError when a network error is encountered or CORS is misconfigured on the server-side,\n // although this usually means permission issues or similar — a 404 does not constitute a network error, for example.\n // For detail: https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch\n if (error.name === 'TypeError') {\n publishRequestError({ url, code: 20004 }, 'http');\n reject(new Error('Network error'));\n } else if (error.name === 'AbortError') {\n publishRequestError(\n { url, code: 20003, message: 'Fetch aborted' },\n 'http',\n );\n reject(new Error('Fetch aborted'));\n } else {\n publishRequestError(\n { url, code: (error as any).status, message: error.message },\n 'http',\n );\n reject(error);\n }\n })\n .finally(() => clearTimeout(timeoutId));\n });\n\n return {\n promise,\n abort: () => {\n clearTimeout(timeoutId);\n controller.abort();\n },\n };\n};\n\nexport const fetch = <T>(\n url: string,\n options: FetchOptions = {},\n): Promise<T> => {\n const { promise } = fetchWithAbort<T>(url, options);\n return promise;\n};\n\nexport const appendApiPrefix = (url: string) => {\n // for cfx top N\n if (url.startsWith('/stat/')) {\n return url;\n }\n if (url.startsWith('http')) {\n return url;\n }\n return `/v1${url.startsWith('/') ? url : '/' + url}`;\n};\n\nexport const fetchWithPrefix = <T>(url: string, opts?: FetchOptions) => {\n return fetch<T>(appendApiPrefix(url), opts);\n};\n\nexport const fetchWithOpenApi = <T>(url: string, opts?: FetchOptions) => {\n const ENV_CONFIG = getEnvConfig();\n if (!ENV_CONFIG.ENV_OPEN_API_HOST) {\n throw new Error('ENV_OPEN_API_HOST is not set');\n }\n return fetch<T>(\n `${ENV_CONFIG.ENV_OPEN_API_HOST}${url.startsWith('/') ? url : '/' + url}`,\n opts,\n );\n};\n\nexport const simpleGetFetcher = async <T>(...args: any[]) => {\n let [url, query] = args;\n if (query) {\n url = qs.stringifyUrl({ url, query });\n }\n return await fetchWithPrefix<T>(url, {\n method: 'get',\n });\n};\n\ntype RequestMethod = 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'HEAD';\ninterface QueryParams {\n [key: string]: string | undefined;\n}\ninterface Config {\n url: string;\n query: QueryParams;\n type?: RequestMethod;\n body?: any;\n headers?: Headers;\n signal?: AbortSignal;\n}\n\nconst queryAddress = (address: string[]) => {\n return address.reduce((prev, curr, index) => {\n return !index ? `address=${curr}` : `${prev}&address=${curr}`;\n }, '');\n};\n\nexport const sendRequestChart = async (config: Config) => {\n try {\n const res: any = await fetch(\n qs.stringifyUrl({ url: config.url, query: config.query }),\n {\n method: config.type || 'GET',\n body: config.body,\n headers: config.headers,\n signal: config.signal,\n },\n );\n const data = res;\n data.list = [...(data.list || [])].reverse();\n return data;\n } catch (error) {\n console.error('Request failed', error);\n throw error;\n }\n};\n\nexport const sendRequestENSInfo = async (url?: string | null) => {\n if (!url) return {};\n try {\n const res: any = await fetch(url, {\n method: 'GET',\n });\n\n return res?.map;\n } catch (error) {\n console.error('Request failed', error);\n throw error;\n }\n};\n\nexport const sendRequestGasPrice = async () => {\n try {\n const res: any = await fetch(`/stat/gasprice/tracker`, {\n method: 'GET',\n });\n return res;\n } catch (error) {\n console.error('Request failed', error);\n throw error;\n }\n};\n\nexport const reqNametag = async (address: string[]) => {\n const query = queryAddress(address);\n\n const res: any = await fetch(`/v1/nametag?${query}`, {\n method: 'GET',\n });\n return res?.map;\n};\n\nexport const reqContractAndToken = fetchWithCache(\n async (address: string[]) => {\n const query = queryAddress(address);\n\n const res: any = await fetch(`/v1/contract-and-token?${query}`, {\n method: 'GET',\n });\n return res;\n },\n {\n key: 'contract-and-token',\n maxAge: 1000 * 60 * 60,\n },\n);\n\nexport const getContractDetail = fetchWithCache(\n <T extends string>(contractAddress?: string, fields: T[] = []) => {\n const url = qs.stringifyUrl({\n url: `/v1/contract/${contractAddress}`,\n query: { fields },\n });\n\n return fetch<BaseContractInfo & Record<T, unknown>>(url, {\n method: 'GET',\n });\n },\n {\n key: 'contract-detail',\n maxAge: 1000 * 60 * 60,\n },\n);\n\nexport const detectAccountType = fetchWithCache(\n (address: string) => {\n return fetchWithOpenApi<DetectAccountTypeResponse>(\n `/util/detectAccountType?hex=${address}`,\n {\n method: 'GET',\n },\n );\n },\n {\n // 10 seconds\n maxAge: 1000 * 10,\n },\n);\n\nexport const reqAbiByMethodId = (methodId: string) => {\n return fetchWithPrefix<{\n list: MethodAbiItemResponse[];\n }>(\n qs.stringifyUrl({\n url: '/stat/list-abi-method',\n query: {\n id: methodId,\n },\n }),\n );\n};\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// src/abis/CommonError.ts
|
|
2
|
+
var CommonError_default = [
|
|
3
|
+
{
|
|
4
|
+
inputs: [
|
|
5
|
+
{
|
|
6
|
+
name: "message",
|
|
7
|
+
type: "string"
|
|
8
|
+
}
|
|
9
|
+
],
|
|
10
|
+
name: "Error",
|
|
11
|
+
type: "error"
|
|
12
|
+
}
|
|
13
|
+
];
|
|
14
|
+
|
|
15
|
+
export {
|
|
16
|
+
CommonError_default
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=chunk-5TGK2EA2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/abis/CommonError.ts"],"sourcesContent":["export default [\n {\n inputs: [\n {\n name: 'message',\n type: 'string',\n },\n ],\n name: 'Error',\n type: 'error',\n },\n] as const;\n"],"mappings":";AAAA,IAAO,sBAAQ;AAAA,EACb;AAAA,IACE,QAAQ;AAAA,MACN;AAAA,QACE,MAAM;AAAA,QACN,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AACF;","names":[]}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Tooltip
|
|
3
|
+
} from "./chunk-DF3PVTB5.js";
|
|
4
|
+
import {
|
|
5
|
+
useI18n
|
|
6
|
+
} from "./chunk-DQGLZCIG.js";
|
|
7
|
+
|
|
8
|
+
// src/components/AceEditor/index.tsx
|
|
9
|
+
import AceEditorComponent from "react-ace";
|
|
10
|
+
import {
|
|
11
|
+
forwardRef,
|
|
12
|
+
useEffect,
|
|
13
|
+
useMemo,
|
|
14
|
+
useRef,
|
|
15
|
+
useState
|
|
16
|
+
} from "react";
|
|
17
|
+
import { mergeRefs } from "react-merge-refs";
|
|
18
|
+
import clsx from "clsx";
|
|
19
|
+
import { Minimize, Maximize } from "lucide-react";
|
|
20
|
+
import { useMeasure } from "react-use";
|
|
21
|
+
import { useTranslation } from "react-i18next";
|
|
22
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
23
|
+
var AceEditor = forwardRef(
|
|
24
|
+
({
|
|
25
|
+
onSearchTrigged,
|
|
26
|
+
onReplaceTrigged,
|
|
27
|
+
theme = "tomorrow",
|
|
28
|
+
width = "100%",
|
|
29
|
+
fontSize = "1rem",
|
|
30
|
+
resize = true,
|
|
31
|
+
height: _height,
|
|
32
|
+
commands: _commands,
|
|
33
|
+
title,
|
|
34
|
+
headerClassName,
|
|
35
|
+
supportFullScreen = false,
|
|
36
|
+
maxLines: _maxLines,
|
|
37
|
+
className,
|
|
38
|
+
...props
|
|
39
|
+
}, ref) => {
|
|
40
|
+
const { translations } = useI18n();
|
|
41
|
+
const { t } = useTranslation();
|
|
42
|
+
const showHeader = supportFullScreen || !!title;
|
|
43
|
+
const fullScreenLockRef = useRef(false);
|
|
44
|
+
const [isFullScreen, setIsFullScreen] = useState(false);
|
|
45
|
+
const [height, setHeight] = useState(_height);
|
|
46
|
+
const innerEditorRef = useRef(null);
|
|
47
|
+
const [measureRef, bounds] = useMeasure();
|
|
48
|
+
useEffect(() => {
|
|
49
|
+
if (!resize || !bounds.height)
|
|
50
|
+
return;
|
|
51
|
+
if (!fullScreenLockRef.current) {
|
|
52
|
+
setIsFullScreen(false);
|
|
53
|
+
setHeight(`${bounds.height}px`);
|
|
54
|
+
} else {
|
|
55
|
+
fullScreenLockRef.current = false;
|
|
56
|
+
}
|
|
57
|
+
}, [bounds.height, resize]);
|
|
58
|
+
const commands = useMemo(() => {
|
|
59
|
+
return [
|
|
60
|
+
{
|
|
61
|
+
bindKey: { win: "Ctrl-F", mac: "Command-F" },
|
|
62
|
+
name: "Search",
|
|
63
|
+
exec: (e) => {
|
|
64
|
+
onSearchTrigged?.();
|
|
65
|
+
e.execCommand("find");
|
|
66
|
+
},
|
|
67
|
+
// 在 readonly 模式下也可用
|
|
68
|
+
readOnly: true
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
bindKey: { win: "Ctrl-H", mac: "Command-Option-F" },
|
|
72
|
+
name: "Search+Replace",
|
|
73
|
+
exec: (e) => {
|
|
74
|
+
onReplaceTrigged?.();
|
|
75
|
+
e.execCommand("replace");
|
|
76
|
+
},
|
|
77
|
+
// 在 readonly 模式下也可用
|
|
78
|
+
readOnly: true
|
|
79
|
+
},
|
|
80
|
+
..._commands || []
|
|
81
|
+
];
|
|
82
|
+
}, [_commands, onSearchTrigged, onReplaceTrigged]);
|
|
83
|
+
const maxLines = isFullScreen ? Infinity : _maxLines;
|
|
84
|
+
return /* @__PURE__ */ jsxs("div", { children: [
|
|
85
|
+
showHeader && /* @__PURE__ */ jsxs("div", { className: clsx("flex items-center mb-10px", headerClassName), children: [
|
|
86
|
+
/* @__PURE__ */ jsx("div", { className: "flex-1", children: title }),
|
|
87
|
+
/* @__PURE__ */ jsx("div", { className: "shrink-0 flex items-center gap-5px", children: supportFullScreen && /* @__PURE__ */ jsx(
|
|
88
|
+
Tooltip,
|
|
89
|
+
{
|
|
90
|
+
title: t(translations.toolTip.contract.toggleFullscreen),
|
|
91
|
+
children: /* @__PURE__ */ jsx(
|
|
92
|
+
"div",
|
|
93
|
+
{
|
|
94
|
+
className: "bg-#F8F9FB hover:bg-#E9ECEF flex-center w-30px h-30px rounded-4px cursor-pointer",
|
|
95
|
+
onClick: () => {
|
|
96
|
+
if (!isFullScreen) {
|
|
97
|
+
fullScreenLockRef.current = true;
|
|
98
|
+
setHeight(void 0);
|
|
99
|
+
setIsFullScreen(true);
|
|
100
|
+
} else {
|
|
101
|
+
setHeight(_height);
|
|
102
|
+
setIsFullScreen(false);
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
children: isFullScreen ? /* @__PURE__ */ jsx(Minimize, { className: "w-15px h-15px" }) : /* @__PURE__ */ jsx(Maximize, { className: "w-15px h-15px" })
|
|
106
|
+
}
|
|
107
|
+
)
|
|
108
|
+
}
|
|
109
|
+
) })
|
|
110
|
+
] }),
|
|
111
|
+
/* @__PURE__ */ jsx(
|
|
112
|
+
AceEditorComponent,
|
|
113
|
+
{
|
|
114
|
+
ref: mergeRefs([
|
|
115
|
+
resize ? (editor) => {
|
|
116
|
+
if (editor) {
|
|
117
|
+
measureRef(editor.editor.container);
|
|
118
|
+
}
|
|
119
|
+
} : void 0,
|
|
120
|
+
innerEditorRef,
|
|
121
|
+
ref
|
|
122
|
+
]),
|
|
123
|
+
theme,
|
|
124
|
+
className: clsx(
|
|
125
|
+
"bg-#F8F9FB",
|
|
126
|
+
isFullScreen && "min-h-5rem",
|
|
127
|
+
resize && "resize-y",
|
|
128
|
+
className
|
|
129
|
+
),
|
|
130
|
+
width,
|
|
131
|
+
height,
|
|
132
|
+
fontSize,
|
|
133
|
+
commands,
|
|
134
|
+
maxLines,
|
|
135
|
+
...props
|
|
136
|
+
}
|
|
137
|
+
)
|
|
138
|
+
] });
|
|
139
|
+
}
|
|
140
|
+
);
|
|
141
|
+
|
|
142
|
+
export {
|
|
143
|
+
AceEditor
|
|
144
|
+
};
|
|
145
|
+
//# sourceMappingURL=chunk-5Y7I6VYA.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/AceEditor/index.tsx"],"sourcesContent":["import AceEditorComponent, { ICommand } from 'react-ace';\nimport React, {\n ComponentProps,\n forwardRef,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { mergeRefs } from 'react-merge-refs';\nimport clsx from 'clsx';\nimport { Minimize, Maximize } from 'lucide-react';\nimport { useMeasure } from 'react-use';\nimport { useI18n } from 'src/store';\nimport { useTranslation } from 'react-i18next';\nimport { Tooltip } from '../Tooltip';\n\nexport const AceEditor = forwardRef<\n AceEditorComponent | null,\n ComponentProps<typeof AceEditorComponent> & {\n onSearchTrigged?: () => void;\n onReplaceTrigged?: () => void;\n resize?: boolean;\n title?: React.ReactNode;\n supportFullScreen?: boolean;\n headerClassName?: string;\n }\n>(\n (\n {\n onSearchTrigged,\n onReplaceTrigged,\n theme = 'tomorrow',\n width = '100%',\n fontSize = '1rem',\n resize = true,\n height: _height,\n commands: _commands,\n title,\n headerClassName,\n supportFullScreen = false,\n maxLines: _maxLines,\n className,\n ...props\n },\n ref,\n ) => {\n const { translations } = useI18n();\n const { t } = useTranslation();\n const showHeader = supportFullScreen || !!title;\n const fullScreenLockRef = useRef(false);\n const [isFullScreen, setIsFullScreen] = useState(false);\n const [height, setHeight] = useState(_height);\n const innerEditorRef = useRef<AceEditorComponent>(null);\n const [measureRef, bounds] = useMeasure();\n\n // 当窗口大小改变时,自动退出全屏模式\n useEffect(() => {\n if (!resize || !bounds.height) return;\n // 通过 fullScreenLockRef 避免打开全屏模式时自动退出全屏\n if (!fullScreenLockRef.current) {\n setIsFullScreen(false);\n setHeight(`${bounds.height}px`);\n } else {\n fullScreenLockRef.current = false;\n }\n }, [bounds.height, resize]);\n\n const commands = useMemo(() => {\n return [\n {\n bindKey: { win: 'Ctrl-F', mac: 'Command-F' },\n name: 'Search',\n exec: e => {\n // 触发外部的搜索弹窗事件\n onSearchTrigged?.();\n // 触发当前编辑器的搜索事件\n e.execCommand('find');\n },\n // 在 readonly 模式下也可用\n readOnly: true,\n },\n {\n bindKey: { win: 'Ctrl-H', mac: 'Command-Option-F' },\n name: 'Search+Replace',\n exec: e => {\n // 触发外部的替换弹窗事件\n onReplaceTrigged?.();\n // 触发当前编辑器的替换事件\n e.execCommand('replace');\n },\n // 在 readonly 模式下也可用\n readOnly: true,\n },\n ...(_commands || []),\n ] as ICommand[];\n }, [_commands, onSearchTrigged, onReplaceTrigged]);\n\n const maxLines = isFullScreen ? Infinity : _maxLines;\n\n return (\n <div>\n {showHeader && (\n <div className={clsx('flex items-center mb-10px', headerClassName)}>\n <div className=\"flex-1\">{title}</div>\n <div className=\"shrink-0 flex items-center gap-5px\">\n {supportFullScreen && (\n <Tooltip\n title={t(translations.toolTip.contract.toggleFullscreen)}\n >\n <div\n className=\"bg-#F8F9FB hover:bg-#E9ECEF flex-center w-30px h-30px rounded-4px cursor-pointer\"\n onClick={() => {\n if (!isFullScreen) {\n fullScreenLockRef.current = true;\n setHeight(undefined);\n setIsFullScreen(true);\n } else {\n setHeight(_height);\n setIsFullScreen(false);\n }\n }}\n >\n {isFullScreen ? (\n <Minimize className=\"w-15px h-15px\" />\n ) : (\n <Maximize className=\"w-15px h-15px\" />\n )}\n </div>\n </Tooltip>\n )}\n </div>\n </div>\n )}\n <AceEditorComponent\n ref={mergeRefs([\n resize\n ? editor => {\n if (editor) {\n measureRef(editor.editor.container);\n }\n }\n : undefined,\n innerEditorRef,\n ref,\n ])}\n theme={theme}\n className={clsx(\n 'bg-#F8F9FB',\n isFullScreen && 'min-h-5rem',\n resize && 'resize-y',\n className,\n )}\n width={width}\n height={height}\n fontSize={fontSize}\n commands={commands}\n maxLines={maxLines}\n {...props}\n />\n </div>\n );\n },\n);\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import {
|
|
2
|
+
convertCheckSum
|
|
3
|
+
} from "./chunk-CNF26YY7.js";
|
|
4
|
+
import {
|
|
5
|
+
useGlobalData
|
|
6
|
+
} from "./chunk-DQGLZCIG.js";
|
|
7
|
+
|
|
8
|
+
// src/utils/hooks/useAddressLabel.ts
|
|
9
|
+
import { useMemo } from "react";
|
|
10
|
+
var useAddressLabel = (address, showAddressLabel = true) => {
|
|
11
|
+
const { globalData } = useGlobalData();
|
|
12
|
+
return useMemo(() => {
|
|
13
|
+
if (!showAddressLabel || !address)
|
|
14
|
+
return;
|
|
15
|
+
const addressLabels = globalData?.["CONFLUX_SCAN_ADDRESS_LABELS" /* addressLabel */];
|
|
16
|
+
return addressLabels?.[convertCheckSum(address)] || addressLabels?.[address.toLowerCase()];
|
|
17
|
+
}, [showAddressLabel, globalData, address]);
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export {
|
|
21
|
+
useAddressLabel
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=chunk-6H5A42YS.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils/hooks/useAddressLabel.ts"],"sourcesContent":["import { useGlobalData } from 'src/store';\nimport { convertCheckSum } from 'src/utils/address';\nimport { useMemo } from 'react';\nimport { LOCALSTORAGE_KEYS_MAP } from 'src/utils/constants';\n\nexport const useAddressLabel = (address?: string, showAddressLabel = true) => {\n const { globalData } = useGlobalData();\n return useMemo(() => {\n if (!showAddressLabel || !address) return;\n const addressLabels = globalData?.[LOCALSTORAGE_KEYS_MAP.addressLabel];\n return (\n addressLabels?.[convertCheckSum(address)] ||\n addressLabels?.[address.toLowerCase()]\n );\n }, [showAddressLabel, globalData, address]);\n};\n"],"mappings":";;;;;;;;AAEA,SAAS,eAAe;AAGjB,IAAM,kBAAkB,CAAC,SAAkB,mBAAmB,SAAS;AAC5E,QAAM,EAAE,WAAW,IAAI,cAAc;AACrC,SAAO,QAAQ,MAAM;AACnB,QAAI,CAAC,oBAAoB,CAAC;AAAS;AACnC,UAAM,gBAAgB,6DAA+C;AACrE,WACE,gBAAgB,gBAAgB,OAAO,CAAC,KACxC,gBAAgB,QAAQ,YAAY,CAAC;AAAA,EAEzC,GAAG,CAAC,kBAAkB,YAAY,OAAO,CAAC;AAC5C;","names":[]}
|