@cfxjs/sirius-next-common 0.2.20 → 0.2.22

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.
Files changed (160) hide show
  1. package/dist/{chunk-XUKHHB5L.js → chunk-2KBVDLVC.js} +5 -5
  2. package/dist/{chunk-7VQL3G7K.js → chunk-2TO4UOX3.js} +8 -8
  3. package/dist/chunk-2TO4UOX3.js.map +1 -0
  4. package/dist/chunk-5AM5HM3B.js +10 -0
  5. package/dist/chunk-5AM5HM3B.js.map +1 -0
  6. package/dist/{chunk-ELF2EOGF.js → chunk-6KG65RIO.js} +2 -2
  7. package/dist/{chunk-6L4ZEJQI.js → chunk-6TKFGXSA.js} +2 -2
  8. package/dist/{chunk-2WEBXRNL.js → chunk-6XLSWPR3.js} +28 -32
  9. package/dist/chunk-6XLSWPR3.js.map +1 -0
  10. package/dist/{chunk-W64AF7LA.js → chunk-7IGZGPFM.js} +9 -9
  11. package/dist/chunk-7IGZGPFM.js.map +1 -0
  12. package/dist/{chunk-BEI5TWJL.js → chunk-7P6KYI3Z.js} +2 -2
  13. package/dist/{chunk-RUU22F7R.js → chunk-7PQ6YKBC.js} +2 -2
  14. package/dist/{chunk-H5ZJBRIK.js → chunk-ABO5SDB4.js} +10 -10
  15. package/dist/chunk-ABO5SDB4.js.map +1 -0
  16. package/dist/{chunk-XZL5CZFT.js → chunk-CRTD2R3I.js} +6 -6
  17. package/dist/chunk-CRTD2R3I.js.map +1 -0
  18. package/dist/{chunk-CMOP3BKX.js → chunk-DEZ6AV62.js} +3 -3
  19. package/dist/{chunk-LCIBOT5P.js → chunk-DV3GFG5Q.js} +2 -2
  20. package/dist/{chunk-4LSM4TMM.js → chunk-E7ZFE6KT.js} +3 -3
  21. package/dist/{chunk-C6CGZ6KN.js → chunk-EQWC4NEP.js} +3 -3
  22. package/dist/{chunk-C6CGZ6KN.js.map → chunk-EQWC4NEP.js.map} +1 -1
  23. package/dist/{chunk-YEAWH772.js → chunk-FTRICVXA.js} +2 -2
  24. package/dist/{chunk-YVV32ON3.js → chunk-FUKVDD7K.js} +2 -2
  25. package/dist/{chunk-NM3BMITL.js → chunk-G246NFI4.js} +19 -3
  26. package/dist/{chunk-NM3BMITL.js.map → chunk-G246NFI4.js.map} +1 -1
  27. package/dist/{chunk-UZALXR3J.js → chunk-KHUI4JLS.js} +7 -7
  28. package/dist/chunk-KHUI4JLS.js.map +1 -0
  29. package/dist/{chunk-OT7NZ4PK.js → chunk-KZ2KYINT.js} +3 -3
  30. package/dist/{chunk-HF7RD7UD.js → chunk-LQCS5PT5.js} +3 -3
  31. package/dist/chunk-LQCS5PT5.js.map +1 -0
  32. package/dist/{chunk-GHHUAWSG.js → chunk-MF6LAIGP.js} +3 -3
  33. package/dist/{chunk-AYCHKB2Y.js → chunk-N5X4DZS3.js} +2 -2
  34. package/dist/{chunk-DYNSSHD5.js → chunk-OMU7JQ6Y.js} +11 -38
  35. package/dist/chunk-OMU7JQ6Y.js.map +1 -0
  36. package/dist/{chunk-UF5BN4QN.js → chunk-P7M7B7ER.js} +2 -2
  37. package/dist/{chunk-DCQANK66.js → chunk-RJOY6FMD.js} +2 -2
  38. package/dist/{chunk-WZIT54AU.js → chunk-SQI2F34Q.js} +2 -2
  39. package/dist/{chunk-LCV3NUFR.js → chunk-TJZKPAAH.js} +5 -5
  40. package/dist/{chunk-BHAXBHVC.js → chunk-TTNJMHOJ.js} +4 -4
  41. package/dist/{chunk-C7OIVXE3.js → chunk-VVEA44KS.js} +3 -3
  42. package/dist/{chunk-GQRCW7WX.js → chunk-VXHLESK7.js} +2 -2
  43. package/dist/{chunk-7AVQOIDM.js → chunk-XF2CMO2A.js} +7 -5
  44. package/dist/chunk-XF2CMO2A.js.map +1 -0
  45. package/dist/{chunk-J6ZC77OY.js → chunk-YXREYDKU.js} +6 -6
  46. package/dist/{chunk-VGYNHJFT.js → chunk-ZSOMTVP5.js} +2 -2
  47. package/dist/chunk-ZSOMTVP5.js.map +1 -0
  48. package/dist/components/AAFailedReason/index.d.ts +11 -0
  49. package/dist/components/AAFailedReason/index.js +41 -0
  50. package/dist/components/AAFailedReason/index.js.map +1 -0
  51. package/dist/components/AceEditor/index.js +4 -4
  52. package/dist/components/AddressContainer/CoreAddressContainer.js +10 -10
  53. package/dist/components/AddressContainer/EVMAddressContainer.js +9 -9
  54. package/dist/components/AddressContainer/addressSwitcher.js +7 -7
  55. package/dist/components/AddressContainer/addressView.js +6 -6
  56. package/dist/components/AddressContainer/label.js +3 -3
  57. package/dist/components/AddressContainer/utils.js +3 -3
  58. package/dist/components/Age/index.js +4 -4
  59. package/dist/components/AutoComplete/index.js +3 -3
  60. package/dist/components/Charts/PreviewChartTemplate.js +3 -3
  61. package/dist/components/Charts/StockChartTemplate.js +6 -6
  62. package/dist/components/CopyButton/index.js +3 -3
  63. package/dist/components/DecimalsSelect/index.js +3 -3
  64. package/dist/components/DownloadCSV/index.js +4 -4
  65. package/dist/components/GasPriceDropdown/index.js +2 -2
  66. package/dist/components/IncreasePercent/index.js +2 -2
  67. package/dist/components/InfoIconWithTooltip/index.js +4 -4
  68. package/dist/components/InputData/AddressLabel.js +8 -8
  69. package/dist/components/InputData/ContractDetail.d.ts +3 -16
  70. package/dist/components/InputData/ContractDetail.js +7 -7
  71. package/dist/components/InputData/JsonDecode.js +5 -5
  72. package/dist/components/InputData/OptimizationDecode.js +12 -10
  73. package/dist/components/InputData/Original.js +1 -1
  74. package/dist/components/InputData/UTF8.js +3 -3
  75. package/dist/components/InputData/index.d.ts +1 -1
  76. package/dist/components/InputData/index.js +17 -15
  77. package/dist/components/List/index.js +3 -3
  78. package/dist/components/Modal/index.js +3 -3
  79. package/dist/components/NetworkIcon/index.js +2 -2
  80. package/dist/components/OutputData/ErrorDecode.d.ts +3 -6
  81. package/dist/components/OutputData/ErrorDecode.js +19 -17
  82. package/dist/components/OutputData/index.d.ts +2 -5
  83. package/dist/components/OutputData/index.js +21 -19
  84. package/dist/components/PhishingAddressContainer/index.js +4 -4
  85. package/dist/components/Popover/index.js +3 -3
  86. package/dist/components/Price/index.js +3 -3
  87. package/dist/components/ProxyContractAddress/index.js +7 -7
  88. package/dist/components/ProxyContractAddress/index.js.map +1 -1
  89. package/dist/components/Radio/index.js +2 -2
  90. package/dist/components/SearchInput/index.js +4 -4
  91. package/dist/components/Select/index.js +4 -4
  92. package/dist/components/Select/select.js +3 -3
  93. package/dist/components/SmartAccountAddress/index.d.ts +11 -0
  94. package/dist/components/SmartAccountAddress/index.js +94 -0
  95. package/dist/components/SmartAccountAddress/index.js.map +1 -0
  96. package/dist/components/Text/index.js +4 -4
  97. package/dist/components/Tooltip/index.js +3 -3
  98. package/dist/components/TransactionAction/coreTransactionAction.js +23 -18
  99. package/dist/components/TransactionAction/coreTransactionAction.js.map +1 -1
  100. package/dist/components/TransactionAction/evmTransactionAction.js +22 -17
  101. package/dist/components/TransactionAction/evmTransactionAction.js.map +1 -1
  102. package/dist/components/TransactionTrace/TraceDetail.d.ts +1 -4
  103. package/dist/components/TransactionTrace/TraceDetail.js +29 -27
  104. package/dist/components/TransactionTrace/TreeTraceTable.js +30 -28
  105. package/dist/components/TransactionTrace/index.js +30 -28
  106. package/dist/uno.css +1 -0
  107. package/dist/utils/address.js +2 -2
  108. package/dist/utils/contractManagerTool.js +2 -2
  109. package/dist/utils/hooks/useAddressLabel.js +3 -3
  110. package/dist/utils/hooks/useAddressNameMap.js +2 -2
  111. package/dist/utils/hooks/useAutoSetHolderFilterParams.js +2 -2
  112. package/dist/utils/hooks/useContractDetail.js +2 -2
  113. package/dist/utils/hooks/useDecodeFunctionData.js +5 -5
  114. package/dist/utils/hooks/useDecodeFunctionError.d.ts +1 -1
  115. package/dist/utils/hooks/useDecodeFunctionError.js +3 -3
  116. package/dist/utils/hooks/useENS.js +3 -3
  117. package/dist/utils/hooks/useEnhanceDataWithNameMap.js +2 -2
  118. package/dist/utils/hooks/useMethodAbi.js +2 -2
  119. package/dist/utils/hooks/useTableData.js +1 -1
  120. package/dist/utils/hooks/useTxTrace.d.ts +8 -10
  121. package/dist/utils/hooks/useTxTrace.js +11 -16
  122. package/dist/utils/hooks/useTxTrace.js.map +1 -1
  123. package/dist/utils/index.d.ts +7 -1
  124. package/dist/utils/index.js +4 -2
  125. package/dist/utils/request.d.ts +1 -1
  126. package/dist/utils/request.js +1 -1
  127. package/package.json +6 -5
  128. package/dist/chunk-2WEBXRNL.js.map +0 -1
  129. package/dist/chunk-7AVQOIDM.js.map +0 -1
  130. package/dist/chunk-7VQL3G7K.js.map +0 -1
  131. package/dist/chunk-DYNSSHD5.js.map +0 -1
  132. package/dist/chunk-H5ZJBRIK.js.map +0 -1
  133. package/dist/chunk-HF7RD7UD.js.map +0 -1
  134. package/dist/chunk-UZALXR3J.js.map +0 -1
  135. package/dist/chunk-VGYNHJFT.js.map +0 -1
  136. package/dist/chunk-W64AF7LA.js.map +0 -1
  137. package/dist/chunk-XZL5CZFT.js.map +0 -1
  138. package/dist/chunk-YBQQ72FQ.js +0 -10
  139. package/dist/chunk-YBQQ72FQ.js.map +0 -1
  140. /package/dist/{chunk-XUKHHB5L.js.map → chunk-2KBVDLVC.js.map} +0 -0
  141. /package/dist/{chunk-ELF2EOGF.js.map → chunk-6KG65RIO.js.map} +0 -0
  142. /package/dist/{chunk-6L4ZEJQI.js.map → chunk-6TKFGXSA.js.map} +0 -0
  143. /package/dist/{chunk-BEI5TWJL.js.map → chunk-7P6KYI3Z.js.map} +0 -0
  144. /package/dist/{chunk-RUU22F7R.js.map → chunk-7PQ6YKBC.js.map} +0 -0
  145. /package/dist/{chunk-CMOP3BKX.js.map → chunk-DEZ6AV62.js.map} +0 -0
  146. /package/dist/{chunk-LCIBOT5P.js.map → chunk-DV3GFG5Q.js.map} +0 -0
  147. /package/dist/{chunk-4LSM4TMM.js.map → chunk-E7ZFE6KT.js.map} +0 -0
  148. /package/dist/{chunk-YEAWH772.js.map → chunk-FTRICVXA.js.map} +0 -0
  149. /package/dist/{chunk-YVV32ON3.js.map → chunk-FUKVDD7K.js.map} +0 -0
  150. /package/dist/{chunk-OT7NZ4PK.js.map → chunk-KZ2KYINT.js.map} +0 -0
  151. /package/dist/{chunk-GHHUAWSG.js.map → chunk-MF6LAIGP.js.map} +0 -0
  152. /package/dist/{chunk-AYCHKB2Y.js.map → chunk-N5X4DZS3.js.map} +0 -0
  153. /package/dist/{chunk-UF5BN4QN.js.map → chunk-P7M7B7ER.js.map} +0 -0
  154. /package/dist/{chunk-DCQANK66.js.map → chunk-RJOY6FMD.js.map} +0 -0
  155. /package/dist/{chunk-WZIT54AU.js.map → chunk-SQI2F34Q.js.map} +0 -0
  156. /package/dist/{chunk-LCV3NUFR.js.map → chunk-TJZKPAAH.js.map} +0 -0
  157. /package/dist/{chunk-BHAXBHVC.js.map → chunk-TTNJMHOJ.js.map} +0 -0
  158. /package/dist/{chunk-C7OIVXE3.js.map → chunk-VVEA44KS.js.map} +0 -0
  159. /package/dist/{chunk-GQRCW7WX.js.map → chunk-VXHLESK7.js.map} +0 -0
  160. /package/dist/{chunk-J6ZC77OY.js.map → chunk-YXREYDKU.js.map} +0 -0
@@ -1,21 +1,21 @@
1
1
  import {
2
2
  getAddressNameInfo
3
- } from "./chunk-WZIT54AU.js";
3
+ } from "./chunk-SQI2F34Q.js";
4
4
  import {
5
5
  ContractAddress,
6
6
  ContractCreatedAddress,
7
7
  InvalidAddress,
8
8
  MyAddress
9
- } from "./chunk-LCV3NUFR.js";
9
+ } from "./chunk-TJZKPAAH.js";
10
10
  import {
11
11
  RenderAddress
12
- } from "./chunk-4LSM4TMM.js";
12
+ } from "./chunk-E7ZFE6KT.js";
13
13
  import {
14
14
  convertCheckSum,
15
15
  formatAddress,
16
16
  isEvmAddress,
17
17
  isZeroAddress
18
- } from "./chunk-6L4ZEJQI.js";
18
+ } from "./chunk-6TKFGXSA.js";
19
19
  import {
20
20
  getTranslations,
21
21
  useGlobalData
@@ -109,4 +109,4 @@ var EVMAddressContainer = withTranslation()(
109
109
  export {
110
110
  EVMAddressContainer
111
111
  };
112
- //# sourceMappingURL=chunk-XUKHHB5L.js.map
112
+ //# sourceMappingURL=chunk-2KBVDLVC.js.map
@@ -3,16 +3,16 @@ import {
3
3
  } from "./chunk-OYESIV3F.js";
4
4
  import {
5
5
  JsonDecode
6
- } from "./chunk-OT7NZ4PK.js";
6
+ } from "./chunk-KZ2KYINT.js";
7
7
  import {
8
8
  OptimizationDecode
9
- } from "./chunk-DYNSSHD5.js";
9
+ } from "./chunk-OMU7JQ6Y.js";
10
10
  import {
11
11
  Original
12
- } from "./chunk-YBQQ72FQ.js";
12
+ } from "./chunk-5AM5HM3B.js";
13
13
  import {
14
14
  UTF8
15
- } from "./chunk-UF5BN4QN.js";
15
+ } from "./chunk-P7M7B7ER.js";
16
16
 
17
17
  // src/components/InputData/index.tsx
18
18
  import { jsx } from "react/jsx-runtime";
@@ -26,7 +26,7 @@ var InputData = ({
26
26
  }) => {
27
27
  if (dataType === "utf8") {
28
28
  return /* @__PURE__ */ jsx(UTF8, { data: input });
29
- } else if (dataType === "json" && decodedData.decodedParams && decodedData.abiItem) {
29
+ } else if (dataType === "json" && decodedData?.decodedParams && decodedData?.abiItem) {
30
30
  return /* @__PURE__ */ jsx(
31
31
  JsonDecode,
32
32
  {
@@ -42,10 +42,10 @@ var InputData = ({
42
42
  GeneralDecode,
43
43
  {
44
44
  data: input,
45
- fullName: decodedData.fullName
45
+ fullName: decodedData?.fullName
46
46
  }
47
47
  );
48
- } else if (dataType === "optimizationDecode" && decodedData.decodedParams && decodedData.abiItem) {
48
+ } else if (dataType === "optimizationDecode" && decodedData?.decodedParams && decodedData?.abiItem) {
49
49
  return /* @__PURE__ */ jsx(
50
50
  OptimizationDecode,
51
51
  {
@@ -63,4 +63,4 @@ var InputData = ({
63
63
  export {
64
64
  InputData
65
65
  };
66
- //# sourceMappingURL=chunk-7VQL3G7K.js.map
66
+ //# sourceMappingURL=chunk-2TO4UOX3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/InputData/index.tsx"],"sourcesContent":["import { DataType } from 'src/utils/hooks/useDecodedDataType';\nimport { Original } from './Original';\nimport { UTF8 } from './UTF8';\nimport { JsonDecode } from './JsonDecode';\nimport { OptimizationDecode } from './OptimizationDecode';\nimport { GeneralDecode } from './GeneralDecode';\nimport { DecodedFunctionData } from 'src/utils/hooks/useDecodeFunctionData';\n\nexport const InputData = ({\n decodedData,\n dataType,\n input,\n space,\n labelClassName,\n success,\n}: {\n decodedData?: DecodedFunctionData;\n dataType: DataType;\n input: `0x${string}`;\n space: 'evm' | 'core';\n labelClassName?: string;\n success?: boolean;\n}) => {\n if (dataType === 'utf8') {\n return <UTF8 data={input}></UTF8>;\n } else if (\n dataType === 'json' &&\n decodedData?.decodedParams &&\n decodedData?.abiItem\n ) {\n return (\n <JsonDecode\n decodedParams={decodedData.decodedParams}\n decodedResults={decodedData.decodedResults}\n abiItem={decodedData.abiItem}\n input={input}\n success={success}\n ></JsonDecode>\n );\n } else if (dataType === 'generalDecode') {\n return (\n <GeneralDecode\n data={input}\n fullName={decodedData?.fullName}\n ></GeneralDecode>\n );\n } else if (\n dataType === 'optimizationDecode' &&\n decodedData?.decodedParams &&\n decodedData?.abiItem\n ) {\n return (\n <OptimizationDecode\n decodedParams={decodedData.decodedParams}\n abiItem={decodedData.abiItem}\n input={input}\n labelClassName={labelClassName}\n space={space}\n ></OptimizationDecode>\n );\n }\n return <Original data={input}></Original>;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;AAwBW;AAhBJ,IAAM,YAAY,CAAC;AAAA,EACxB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAOM;AACJ,MAAI,aAAa,QAAQ;AACvB,WAAO,oBAAC,QAAK,MAAM,OAAO;AAAA,EAC5B,WACE,aAAa,UACb,aAAa,iBACb,aAAa,SACb;AACA,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAe,YAAY;AAAA,QAC3B,gBAAgB,YAAY;AAAA,QAC5B,SAAS,YAAY;AAAA,QACrB;AAAA,QACA;AAAA;AAAA,IACD;AAAA,EAEL,WAAW,aAAa,iBAAiB;AACvC,WACE;AAAA,MAAC;AAAA;AAAA,QACC,MAAM;AAAA,QACN,UAAU,aAAa;AAAA;AAAA,IACxB;AAAA,EAEL,WACE,aAAa,wBACb,aAAa,iBACb,aAAa,SACb;AACA,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAe,YAAY;AAAA,QAC3B,SAAS,YAAY;AAAA,QACrB;AAAA,QACA;AAAA,QACA;AAAA;AAAA,IACD;AAAA,EAEL;AACA,SAAO,oBAAC,YAAS,MAAM,OAAO;AAChC;","names":[]}
@@ -0,0 +1,10 @@
1
+ // src/components/InputData/Original.tsx
2
+ import { jsx } from "react/jsx-runtime";
3
+ var Original = ({ data }) => {
4
+ return /* @__PURE__ */ jsx("div", { className: "m-initial max-h-13.2857rem overflow-y-auto text-#97a3b4 bg-#fafbfc px-0.7143rem font-[var(--theme-monospace-font)]", children: /* @__PURE__ */ jsx("p", { children: data }) });
5
+ };
6
+
7
+ export {
8
+ Original
9
+ };
10
+ //# sourceMappingURL=chunk-5AM5HM3B.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/InputData/Original.tsx"],"sourcesContent":["interface Props {\n data: string;\n}\n\nexport const Original = ({ data }: Props) => {\n return (\n <div className=\"m-initial max-h-13.2857rem overflow-y-auto text-#97a3b4 bg-#fafbfc px-0.7143rem font-[var(--theme-monospace-font)]\">\n <p>{data}</p>\n </div>\n );\n};\n"],"mappings":";AAOM;AAHC,IAAM,WAAW,CAAC,EAAE,KAAK,MAAa;AAC3C,SACE,oBAAC,SAAI,WAAU,sHACb,8BAAC,OAAG,gBAAK,GACX;AAEJ;","names":[]}
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-65X53DMW.js";
4
4
  import {
5
5
  Tooltip
6
- } from "./chunk-GQRCW7WX.js";
6
+ } from "./chunk-VXHLESK7.js";
7
7
 
8
8
  // src/components/InfoIconWithTooltip/index.tsx
9
9
  import clsx from "clsx";
@@ -23,4 +23,4 @@ var InfoIconWithTooltip = ({
23
23
  export {
24
24
  InfoIconWithTooltip
25
25
  };
26
- //# sourceMappingURL=chunk-ELF2EOGF.js.map
26
+ //# sourceMappingURL=chunk-6KG65RIO.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-WIB76E7O.js";
4
4
  import {
5
5
  detectAccountType
6
- } from "./chunk-VGYNHJFT.js";
6
+ } from "./chunk-ZSOMTVP5.js";
7
7
 
8
8
  // src/utils/address.ts
9
9
  import SDK from "js-conflux-sdk";
@@ -281,4 +281,4 @@ export {
281
281
  formatAddressHexToBase32,
282
282
  isAddressEqual
283
283
  };
284
- //# sourceMappingURL=chunk-6L4ZEJQI.js.map
284
+ //# sourceMappingURL=chunk-6TKFGXSA.js.map
@@ -1,26 +1,22 @@
1
+ import {
2
+ useAddressNameMap
3
+ } from "./chunk-LQCS5PT5.js";
1
4
  import {
2
5
  Link
3
6
  } from "./chunk-2Y57U43P.js";
7
+ import {
8
+ getAddressNameInfo
9
+ } from "./chunk-SQI2F34Q.js";
4
10
  import {
5
11
  DefaultTokenIcon
6
12
  } from "./chunk-MWAD4CIG.js";
7
13
  import {
8
14
  formatAddress
9
- } from "./chunk-6L4ZEJQI.js";
15
+ } from "./chunk-6TKFGXSA.js";
10
16
 
11
17
  // src/components/InputData/ContractDetail.tsx
12
18
  import clsx from "clsx";
13
19
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
14
- var formatContractAndTokenInfoMap = (m, addressType) => {
15
- try {
16
- return Object.entries(m).map((a) => ({
17
- [formatAddress(a[0], addressType)]: a[1],
18
- [a[0]]: a[1]
19
- })).reduce((prev, curr) => Object.assign(prev, curr), {});
20
- } catch (error) {
21
- return {};
22
- }
23
- };
24
20
  var Icon = ({ icon, className }) => {
25
21
  return icon ? /* @__PURE__ */ jsx(
26
22
  "img",
@@ -36,36 +32,37 @@ var Icon = ({ icon, className }) => {
36
32
  }
37
33
  );
38
34
  };
39
- var ContractDetail = ({ info, addressType }) => {
40
- if (info) {
41
- const { contract, token } = info;
35
+ var ContractDetail = ({ address, addressType }) => {
36
+ const { data: nameMap } = useAddressNameMap([address]);
37
+ const nameInfo = getAddressNameInfo(address, nameMap);
38
+ if (nameInfo) {
39
+ const {
40
+ tokenName,
41
+ tokenSymbol,
42
+ tokenIconUrl,
43
+ contractName,
44
+ verificationName
45
+ } = nameInfo;
42
46
  let child = null;
43
- if (token && (token.name || token.symbol)) {
44
- const name = token["name"] || "--";
45
- let symbol = token["symbol"];
46
- symbol = `(${symbol ? symbol : "--"})`;
47
- const icon = token["iconUrl"];
47
+ if (tokenName || tokenSymbol) {
48
+ const name = tokenName || "--";
49
+ const symbol = `(${tokenSymbol ? tokenSymbol : "--"})`;
50
+ const icon = tokenIconUrl;
48
51
  child = /* @__PURE__ */ jsxs(Fragment, { children: [
49
52
  /* @__PURE__ */ jsx(Icon, { icon }),
50
- /* @__PURE__ */ jsxs(Link, { href: `/token/${formatAddress(token.address, addressType)}`, children: [
53
+ /* @__PURE__ */ jsxs(Link, { href: `/token/${formatAddress(address, addressType)}`, children: [
51
54
  name,
52
55
  " ",
53
56
  symbol
54
57
  ] }),
55
58
  " "
56
59
  ] });
57
- } else if (contract && contract.name) {
58
- const name = contract["name"];
59
- const icon = token && token["iconUrl"];
60
+ } else if (contractName || verificationName) {
61
+ const name = contractName || verificationName;
62
+ const icon = tokenIconUrl;
60
63
  child = /* @__PURE__ */ jsxs(Fragment, { children: [
61
64
  /* @__PURE__ */ jsx(Icon, { icon }),
62
- /* @__PURE__ */ jsx(
63
- Link,
64
- {
65
- href: `/address/${formatAddress(contract.address, addressType)}`,
66
- children: name
67
- }
68
- ),
65
+ /* @__PURE__ */ jsx(Link, { href: `/address/${formatAddress(address, addressType)}`, children: name }),
69
66
  " "
70
67
  ] });
71
68
  }
@@ -78,7 +75,6 @@ var ContractDetail = ({ info, addressType }) => {
78
75
  };
79
76
 
80
77
  export {
81
- formatContractAndTokenInfoMap,
82
78
  ContractDetail
83
79
  };
84
- //# sourceMappingURL=chunk-2WEBXRNL.js.map
80
+ //# sourceMappingURL=chunk-6XLSWPR3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/InputData/ContractDetail.tsx"],"sourcesContent":["import React from 'react';\nimport { formatAddress } from '../../utils/address';\nimport { Link } from '../Link';\nimport { DefaultTokenIcon } from '../Icons';\nimport clsx from 'clsx';\nimport { useAddressNameMap } from 'src/utils/hooks/useAddressNameMap';\nimport { getAddressNameInfo } from '../AddressContainer/utils';\n\nconst Icon = ({ icon, className }: { icon?: string; className?: string }) => {\n return icon ? (\n <img\n src={icon}\n alt=\"icon\"\n className={clsx('w-1.1429rem mr-2px mb-3px', className)}\n />\n ) : (\n <DefaultTokenIcon\n className={clsx('w-1.1429rem mr-2px mb-3px', className)}\n />\n );\n};\n\ninterface Props {\n address: string;\n addressType: 'hex' | 'base32';\n}\n\nexport const ContractDetail = ({ address, addressType }: Props) => {\n const { data: nameMap } = useAddressNameMap([address]);\n const nameInfo = getAddressNameInfo(address, nameMap);\n if (nameInfo) {\n const {\n tokenName,\n tokenSymbol,\n tokenIconUrl,\n contractName,\n verificationName,\n } = nameInfo;\n let child: React.ReactNode = null;\n\n if (tokenName || tokenSymbol) {\n const name = tokenName || '--';\n const symbol = `(${tokenSymbol ? tokenSymbol : '--'})`;\n const icon = tokenIconUrl;\n\n child = (\n <>\n <Icon icon={icon} />\n <Link href={`/token/${formatAddress(address, addressType)}`}>\n {name} {symbol}\n </Link>{' '}\n </>\n );\n } else if (contractName || verificationName) {\n const name = contractName || verificationName;\n const icon = tokenIconUrl;\n\n child = (\n <>\n <Icon icon={icon} />\n <Link href={`/address/${formatAddress(address, addressType)}`}>\n {name}\n </Link>{' '}\n </>\n );\n }\n\n return <> {child}</>;\n }\n return null;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;AAIA,OAAO,UAAU;AAMb,SAoCI,UApCJ,KAsCM,YAtCN;AAFJ,IAAM,OAAO,CAAC,EAAE,MAAM,UAAU,MAA6C;AAC3E,SAAO,OACL;AAAA,IAAC;AAAA;AAAA,MACC,KAAK;AAAA,MACL,KAAI;AAAA,MACJ,WAAW,KAAK,6BAA6B,SAAS;AAAA;AAAA,EACxD,IAEA;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,KAAK,6BAA6B,SAAS;AAAA;AAAA,EACxD;AAEJ;AAOO,IAAM,iBAAiB,CAAC,EAAE,SAAS,YAAY,MAAa;AACjE,QAAM,EAAE,MAAM,QAAQ,IAAI,kBAAkB,CAAC,OAAO,CAAC;AACrD,QAAM,WAAW,mBAAmB,SAAS,OAAO;AACpD,MAAI,UAAU;AACZ,UAAM;AAAA,MACJ;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,IAAI;AACJ,QAAI,QAAyB;AAE7B,QAAI,aAAa,aAAa;AAC5B,YAAM,OAAO,aAAa;AAC1B,YAAM,SAAS,IAAI,cAAc,cAAc;AAC/C,YAAM,OAAO;AAEb,cACE,iCACE;AAAA,4BAAC,QAAK,MAAY;AAAA,QAClB,qBAAC,QAAK,MAAM,UAAU,cAAc,SAAS,WAAW,KACrD;AAAA;AAAA,UAAK;AAAA,UAAE;AAAA,WACV;AAAA,QAAQ;AAAA,SACV;AAAA,IAEJ,WAAW,gBAAgB,kBAAkB;AAC3C,YAAM,OAAO,gBAAgB;AAC7B,YAAM,OAAO;AAEb,cACE,iCACE;AAAA,4BAAC,QAAK,MAAY;AAAA,QAClB,oBAAC,QAAK,MAAM,YAAY,cAAc,SAAS,WAAW,KACvD,gBACH;AAAA,QAAQ;AAAA,SACV;AAAA,IAEJ;AAEA,WAAO,iCAAE;AAAA;AAAA,MAAE;AAAA,OAAM;AAAA,EACnB;AACA,SAAO;AACT;","names":[]}
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  useDecodeFunctionData
3
- } from "./chunk-XZL5CZFT.js";
3
+ } from "./chunk-CRTD2R3I.js";
4
4
  import {
5
5
  useDecodedDataType
6
6
  } from "./chunk-UM5J477V.js";
7
7
  import {
8
8
  Select
9
- } from "./chunk-GHHUAWSG.js";
9
+ } from "./chunk-MF6LAIGP.js";
10
10
  import {
11
11
  OutputData
12
- } from "./chunk-UZALXR3J.js";
12
+ } from "./chunk-KHUI4JLS.js";
13
13
  import {
14
14
  InputData
15
- } from "./chunk-7VQL3G7K.js";
15
+ } from "./chunk-2TO4UOX3.js";
16
16
  import {
17
17
  AbiWarning
18
18
  } from "./chunk-XBEBAU77.js";
@@ -36,7 +36,7 @@ var CommonTraceDetail = ({
36
36
  abi,
37
37
  isContractCreated,
38
38
  space,
39
- proxy
39
+ implementation
40
40
  }) => {
41
41
  const success = outcome === "success";
42
42
  const { t } = useTranslation();
@@ -111,7 +111,7 @@ var CommonTraceDetail = ({
111
111
  output,
112
112
  decodedData,
113
113
  space,
114
- proxy,
114
+ implementation,
115
115
  success,
116
116
  to,
117
117
  labelClassName: clsx(
@@ -128,7 +128,7 @@ var CreateContractFailedTraceDetail = ({
128
128
  to,
129
129
  output,
130
130
  space,
131
- proxy,
131
+ implementation,
132
132
  outcome
133
133
  }) => {
134
134
  const [dataType, setDataType] = useState("utf8");
@@ -170,7 +170,7 @@ var CreateContractFailedTraceDetail = ({
170
170
  dataType,
171
171
  output,
172
172
  space,
173
- proxy,
173
+ implementation,
174
174
  success: false,
175
175
  to,
176
176
  labelClassName: "w-150px text-red"
@@ -189,4 +189,4 @@ var TraceDetail = (props) => {
189
189
  export {
190
190
  TraceDetail
191
191
  };
192
- //# sourceMappingURL=chunk-W64AF7LA.js.map
192
+ //# sourceMappingURL=chunk-7IGZGPFM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/TransactionTrace/TraceDetail.tsx"],"sourcesContent":["import { Card } from '../Card';\nimport { Select } from '../Select';\nimport { useTranslation } from 'react-i18next';\nimport { getTranslations } from 'src/store';\nimport clsx from 'clsx';\nimport { useDecodeFunctionData } from 'src/utils/hooks/useDecodeFunctionData';\nimport {\n DataType,\n useDecodedDataType,\n} from 'src/utils/hooks/useDecodedDataType';\nimport { InputData } from '../InputData';\nimport { OutputData } from '../OutputData';\nimport { AbiFunctionWithoutGas } from 'src/utils/sdk';\nimport { useState } from 'react';\nimport { AbiWarning } from '../InputData/AbiWarning';\n\ninterface Props {\n to?: string;\n isContractCreated?: boolean;\n input?: `0x${string}`;\n output?: `0x${string}`;\n abi?: AbiFunctionWithoutGas[];\n outcome?: 'success' | 'fail' | 'reverted';\n space: 'evm' | 'core';\n implementation?: string;\n}\n\nconst CommonTraceDetail = ({\n to,\n input = '0x',\n output,\n outcome = 'success',\n abi,\n isContractCreated,\n space,\n implementation,\n}: Props) => {\n const success = outcome === 'success';\n const { t } = useTranslation();\n const translations = getTranslations();\n const [decodedData, isLoading] = useDecodeFunctionData({\n to,\n input,\n output,\n success,\n space,\n abi,\n withOutput: true,\n });\n const { dataType, setDataType, dataTypeList, tip } = useDecodedDataType({\n to,\n input,\n isContractCreated,\n decodedData,\n });\n const isReturnDataEmpty = !output || output === '0x';\n let outputDataType = dataType;\n // when the transaction failed, the output is the error message, use utf8 as decode type\n if (\n (outputDataType === 'optimizationDecode' ||\n outputDataType === 'generalDecode') &&\n outcome === 'fail'\n ) {\n outputDataType = 'utf8';\n }\n\n return (\n <Card className=\"!border-1 !border-#E8E9EA py-10px\">\n <div className=\"flex gap-5px\">\n <div className=\"w-150px shrink-0\"></div>\n <Select\n value={dataType}\n onChange={setDataType}\n disableMatchWidth\n size=\"medium\"\n className=\"mb-16px mt-0 bg-#fff border border-solid border-#ccc\"\n disabled={dataTypeList.length === 1}\n width={180}\n >\n {dataTypeList.map(dataTypeItem => {\n return (\n <Select.Option\n className=\"data-[highlighted]:bg-[var(--theme-color-green2)] data-[highlighted]:text-#fff\"\n key={dataTypeItem}\n value={dataTypeItem}\n >\n {t(translations.transaction.select[dataTypeItem])}\n </Select.Option>\n );\n })}\n </Select>\n </div>\n <div className=\"flex gap-5px\">\n {dataType !== 'optimizationDecode' && (\n <div className=\"w-150px shrink-0\">\n {dataType === 'json' ? 'In and Out Data' : 'Input Data'}\n </div>\n )}\n <div className=\"flex-1\">\n <InputData\n dataType={dataType}\n input={input}\n decodedData={decodedData}\n space={space}\n labelClassName=\"text-#002257 w-150px\"\n success={success}\n />\n </div>\n </div>\n {dataType !== 'json' && !isReturnDataEmpty && (\n <div className=\"flex gap-5px mt-16px\">\n {outputDataType !== 'optimizationDecode' && (\n <div className={clsx('w-150px shrink-0', !success && 'text-red')}>\n {outcome === 'success'\n ? 'Output Data'\n : outcome === 'fail'\n ? 'Failed'\n : 'Error'}\n </div>\n )}\n <div className=\"flex-1\">\n <OutputData\n dataType={outputDataType}\n output={output}\n decodedData={decodedData}\n space={space}\n implementation={implementation}\n success={success}\n to={to}\n labelClassName={clsx(\n 'w-150px',\n !success ? 'text-red' : 'text-#002257',\n )}\n />\n </div>\n </div>\n )}\n {!isLoading && <AbiWarning tip={tip} className=\"ml-150px\" />}\n </Card>\n );\n};\n\n// create contract failed may return error data, but it's not standard, so we only show error info for it\nconst CreateContractFailedTraceDetail = ({\n to,\n output,\n space,\n implementation,\n outcome,\n}: Props) => {\n const [dataType, setDataType] = useState<DataType>('utf8');\n const { t } = useTranslation();\n const translations = getTranslations();\n const dataTypeList = ['original', 'utf8'] as DataType[];\n\n return (\n <Card className=\"!border-1 !border-#E8E9EA py-10px\">\n <div className=\"flex gap-5px\">\n <div className=\"w-150px shrink-0\"></div>\n <Select\n value={dataType}\n onChange={setDataType}\n disableMatchWidth\n size=\"medium\"\n className=\"mb-16px mt-0 bg-#fff border border-solid border-#ccc\"\n disabled={dataTypeList.length === 1}\n width={180}\n >\n {dataTypeList.map(dataTypeItem => {\n return (\n <Select.Option\n className=\"data-[highlighted]:bg-[var(--theme-color-green2)] data-[highlighted]:text-#fff\"\n key={dataTypeItem}\n value={dataTypeItem}\n >\n {t(translations.transaction.select[dataTypeItem])}\n </Select.Option>\n );\n })}\n </Select>\n </div>\n <div className=\"flex gap-5px mt-16px\">\n <div className={clsx('w-150px shrink-0 text-red')}>\n {outcome === 'fail' ? 'Failed' : 'Error'}\n </div>\n <div className=\"flex-1\">\n <OutputData\n dataType={dataType}\n output={output}\n space={space}\n implementation={implementation}\n success={false}\n to={to}\n labelClassName=\"w-150px text-red\"\n />\n </div>\n </div>\n </Card>\n );\n};\n\nexport const TraceDetail = (props: Props) => {\n const { outcome = 'success', isContractCreated } = props;\n if (isContractCreated && outcome !== 'success')\n return <CreateContractFailedTraceDetail {...props} />;\n return <CommonTraceDetail {...props} />;\n};\n"],"mappings":"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","names":[]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  reqAbiByMethodId
3
- } from "./chunk-VGYNHJFT.js";
3
+ } from "./chunk-ZSOMTVP5.js";
4
4
 
5
5
  // src/utils/hooks/useMethodAbi.ts
6
6
  import useSWRImmutable from "swr/immutable";
@@ -14,4 +14,4 @@ var useMethodAbi = (methodId, shouldFetch = true) => {
14
14
  export {
15
15
  useMethodAbi
16
16
  };
17
- //# sourceMappingURL=chunk-BEI5TWJL.js.map
17
+ //# sourceMappingURL=chunk-7P6KYI3Z.js.map
@@ -14,7 +14,7 @@ import {
14
14
  } from "./chunk-LRCAKRPK.js";
15
15
  import {
16
16
  cn
17
- } from "./chunk-NM3BMITL.js";
17
+ } from "./chunk-G246NFI4.js";
18
18
 
19
19
  // src/components/Select/select.tsx
20
20
  import * as React9 from "react";
@@ -3613,4 +3613,4 @@ export {
3613
3613
  SelectItem,
3614
3614
  SelectSeparator
3615
3615
  };
3616
- //# sourceMappingURL=chunk-RUU22F7R.js.map
3616
+ //# sourceMappingURL=chunk-7PQ6YKBC.js.map
@@ -1,21 +1,21 @@
1
- import {
2
- useDecodeFunctionError
3
- } from "./chunk-7AVQOIDM.js";
4
1
  import {
5
2
  DecodedParameters
6
- } from "./chunk-DYNSSHD5.js";
3
+ } from "./chunk-OMU7JQ6Y.js";
7
4
  import {
8
5
  FunctionName
9
6
  } from "./chunk-FYLAXC3R.js";
10
7
  import {
11
8
  Original
12
- } from "./chunk-YBQQ72FQ.js";
9
+ } from "./chunk-5AM5HM3B.js";
13
10
  import {
14
11
  AbiWarning
15
12
  } from "./chunk-XBEBAU77.js";
13
+ import {
14
+ useDecodeFunctionError
15
+ } from "./chunk-XF2CMO2A.js";
16
16
  import {
17
17
  cn
18
- } from "./chunk-NM3BMITL.js";
18
+ } from "./chunk-G246NFI4.js";
19
19
 
20
20
  // src/components/OutputData/ErrorDecode.tsx
21
21
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
@@ -24,11 +24,11 @@ var ErrorDecode = ({
24
24
  errorData,
25
25
  space,
26
26
  labelClassName,
27
- proxy
27
+ implementation
28
28
  }) => {
29
29
  const [decodedError, isLoading] = useDecodeFunctionError({
30
30
  to,
31
- implementation: proxy?.implAddress,
31
+ implementation,
32
32
  errorData,
33
33
  space
34
34
  });
@@ -45,7 +45,7 @@ var ErrorDecode = ({
45
45
  }
46
46
  ),
47
47
  /* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
48
- /* @__PURE__ */ jsx(Original, { data: errorData }),
48
+ /* @__PURE__ */ jsx(Original, { data: errorData ?? "" }),
49
49
  !isLoading && /* @__PURE__ */ jsx(
50
50
  AbiWarning,
51
51
  {
@@ -87,4 +87,4 @@ var ErrorDecode = ({
87
87
  export {
88
88
  ErrorDecode
89
89
  };
90
- //# sourceMappingURL=chunk-H5ZJBRIK.js.map
90
+ //# sourceMappingURL=chunk-ABO5SDB4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/OutputData/ErrorDecode.tsx"],"sourcesContent":["import { cn } from 'src/utils';\nimport { useDecodeFunctionError } from 'src/utils/hooks/useDecodeFunctionError';\nimport { Original } from '../InputData/Original';\nimport { DecodedParameters } from '../InputData/OptimizationDecode';\nimport { FunctionName } from '../InputData/FunctionName';\nimport { AbiWarning } from '../InputData/AbiWarning';\n\nexport const ErrorDecode = ({\n to,\n errorData,\n space,\n labelClassName,\n implementation,\n}: {\n errorData?: `0x${string}`;\n to?: string;\n space: 'evm' | 'core';\n labelClassName?: string;\n implementation?: string;\n}) => {\n const [decodedError, isLoading] = useDecodeFunctionError({\n to,\n implementation,\n errorData,\n space,\n });\n\n if (\n isLoading ||\n !decodedError ||\n !decodedError.abiItem ||\n decodedError.abiItem.type !== 'error'\n )\n return (\n <div className=\"flex min-h-32px\">\n <div\n className={cn(\n 'w-100px shrink-0 grow-0 text-14px lh-18px pt-6px text-#6a737d',\n labelClassName,\n )}\n >\n Error:\n </div>\n <div className=\"flex-1\">\n <Original data={errorData ?? ''} />\n {!isLoading && (\n <AbiWarning\n tip={\n decodedError?.failed\n ? 'contract.abiError'\n : decodedError?.noAbi\n ? 'contract.abiNotUploaded'\n : undefined\n }\n />\n )}\n </div>\n </div>\n );\n return (\n <>\n <div className=\"flex min-h-32px\">\n <div\n className={cn(\n 'w-100px shrink-0 grow-0 text-14px lh-18px text-#6a737d pt-1px',\n labelClassName,\n )}\n >\n Error:{' '}\n </div>\n <div>\n <FunctionName abiItem={decodedError.abiItem}></FunctionName>\n </div>\n </div>\n {decodedError.args && decodedError.args.length > 0 && (\n <DecodedParameters\n args={decodedError.args}\n params={decodedError.abiItem.inputs}\n label=\"Parameters:\"\n labelClassName={labelClassName}\n space={space}\n />\n )}\n </>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAmCQ,SAyBJ,UAzBI,KAQA,YARA;AA5BD,IAAM,cAAc,CAAC;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAMM;AACJ,QAAM,CAAC,cAAc,SAAS,IAAI,uBAAuB;AAAA,IACvD;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,CAAC;AAED,MACE,aACA,CAAC,gBACD,CAAC,aAAa,WACd,aAAa,QAAQ,SAAS;AAE9B,WACE,qBAAC,SAAI,WAAU,mBACb;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,WAAW;AAAA,YACT;AAAA,YACA;AAAA,UACF;AAAA,UACD;AAAA;AAAA,MAED;AAAA,MACA,qBAAC,SAAI,WAAU,UACb;AAAA,4BAAC,YAAS,MAAM,aAAa,IAAI;AAAA,QAChC,CAAC,aACA;AAAA,UAAC;AAAA;AAAA,YACC,KACE,cAAc,SACV,sBACA,cAAc,QACZ,4BACA;AAAA;AAAA,QAEV;AAAA,SAEJ;AAAA,OACF;AAEJ,SACE,iCACE;AAAA,yBAAC,SAAI,WAAU,mBACb;AAAA;AAAA,QAAC;AAAA;AAAA,UACC,WAAW;AAAA,YACT;AAAA,YACA;AAAA,UACF;AAAA,UACD;AAAA;AAAA,YACQ;AAAA;AAAA;AAAA,MACT;AAAA,MACA,oBAAC,SACC,8BAAC,gBAAa,SAAS,aAAa,SAAS,GAC/C;AAAA,OACF;AAAA,IACC,aAAa,QAAQ,aAAa,KAAK,SAAS,KAC/C;AAAA,MAAC;AAAA;AAAA,QACC,MAAM,aAAa;AAAA,QACnB,QAAQ,aAAa,QAAQ;AAAA,QAC7B,OAAM;AAAA,QACN;AAAA,QACA;AAAA;AAAA,IACF;AAAA,KAEJ;AAEJ;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  useMethodAbi
3
- } from "./chunk-BEI5TWJL.js";
3
+ } from "./chunk-7P6KYI3Z.js";
4
4
  import {
5
5
  decodeFunctionData,
6
6
  decodeFunctionResult
@@ -10,10 +10,10 @@ import {
10
10
  } from "./chunk-JIRLY7OG.js";
11
11
  import {
12
12
  useContractDetail
13
- } from "./chunk-LCIBOT5P.js";
13
+ } from "./chunk-DV3GFG5Q.js";
14
14
  import {
15
15
  formatABI
16
- } from "./chunk-NM3BMITL.js";
16
+ } from "./chunk-G246NFI4.js";
17
17
 
18
18
  // src/utils/hooks/useDecodeFunctionData.ts
19
19
  import { useMemo } from "react";
@@ -78,7 +78,7 @@ var useDecodeFunctionData = ({
78
78
  output,
79
79
  space,
80
80
  success,
81
- supportMethodAbi,
81
+ supportMethodAbi = false,
82
82
  withOutput
83
83
  }) => {
84
84
  const hasOuterAbi = outerAbi && outerAbi.length > 0;
@@ -124,7 +124,7 @@ var useDecodeFunctionData = ({
124
124
  withOutput
125
125
  });
126
126
  }, [input, output, implementationData?.abi, success, space, withOutput]);
127
- const needMethodAbi = !!supportMethodAbi && needContractAbi && // contract abi decoded failed
127
+ const needMethodAbi = supportMethodAbi && needContractAbi && // contract abi decoded failed
128
128
  !contractLoading && (!decodedByContractAbi || decodedByContractAbi.failed) && // implementation contract abi decoded failed
129
129
  !implementationLoading && (!decodedByImplementationAbi || decodedByImplementationAbi.failed);
130
130
  const { data: methodAbi, isLoading: methodAbiLoading } = useMethodAbi(
@@ -199,4 +199,4 @@ var useDecodeFunctionData = ({
199
199
  export {
200
200
  useDecodeFunctionData
201
201
  };
202
- //# sourceMappingURL=chunk-XZL5CZFT.js.map
202
+ //# sourceMappingURL=chunk-CRTD2R3I.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/hooks/useDecodeFunctionData.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport {\n decodeFunctionData,\n decodeFunctionResult,\n getAbiItem,\n AbiFunctionWithoutGas,\n} from 'src/utils/sdk';\nimport { useContractDetail } from './useContractDetail';\nimport { formatABI } from '..';\nimport { useMethodAbi } from './useMethodAbi';\n\nconst fields = ['abi' as const];\n\nexport type Hex = `0x${string}`;\n\nconst decodeFunctionDataByAbi = ({\n abi: _abi,\n input,\n output,\n space,\n success,\n withOutput = false,\n similarWarning,\n}: {\n input: Hex;\n output?: Hex;\n abi?: AbiFunctionWithoutGas[] | string;\n space: 'evm' | 'core';\n success?: boolean;\n withOutput?: boolean;\n similarWarning?: boolean;\n}) => {\n try {\n const abi = typeof _abi === 'string' ? JSON.parse(_abi) : _abi;\n const hasAbi = abi && abi.length > 0;\n if (!hasAbi) return null;\n const isReturnDataEmpty = !output || output === '0x';\n const methodID = input.slice(0, 10);\n const decodedParams = decodeFunctionData({\n abi: abi,\n data: input,\n space,\n });\n let decodedResults = success\n ? !isReturnDataEmpty\n ? decodeFunctionResult({\n abi: abi,\n functionName: methodID,\n data: output,\n space,\n })\n : undefined\n : output;\n const abiItem = getAbiItem({\n abi: abi,\n name: methodID,\n }) as AbiFunctionWithoutGas;\n // if the output has only one value, decodeFunctionResult will return the value directly, otherwise it will return an array,\n // so we need to check the length of abiItem.outputs to determine whether to wrap decodedResults in an array\n const results =\n decodedResults === undefined\n ? undefined\n : abiItem.outputs.length === 1\n ? [decodedResults]\n : (decodedResults as unknown[]);\n if (!withOutput) {\n abiItem.outputs = [];\n }\n const fullName = formatABI([abiItem])[0];\n return {\n decodedParams,\n decodedResults: results,\n abiItem,\n fullName: fullName,\n failed: false,\n similarWarning,\n };\n } catch (error) {\n console.log('decode function data and result error', error);\n return {\n failed: true,\n similarWarning,\n };\n }\n};\n\nexport interface DecodedFunctionData {\n decodedParams?: {\n args: readonly unknown[] | undefined;\n functionName: string;\n };\n decodedResults?: unknown[];\n abiItem?: AbiFunctionWithoutGas;\n fullName?: string;\n // no abi for decoded\n noAbi?: boolean;\n // decoded failed\n failed?: boolean;\n // decoded by method abi, not contract abi\n similarWarning?: boolean;\n}\n\nexport const useDecodeFunctionData = ({\n to,\n abi: outerAbi,\n implementation: _implementation,\n input,\n output,\n space,\n success,\n supportMethodAbi = false,\n withOutput,\n}: {\n input: Hex;\n output?: Hex;\n to?: string;\n implementation?: string;\n abi?: AbiFunctionWithoutGas[];\n space: 'evm' | 'core';\n success?: boolean;\n supportMethodAbi?: boolean;\n withOutput?: boolean;\n}): [DecodedFunctionData, boolean] => {\n const hasOuterAbi = outerAbi && outerAbi.length > 0;\n const needContractAbi = !hasOuterAbi && !!input;\n const { data: contractData, isLoading: contractLoading } = useContractDetail(\n to,\n fields,\n needContractAbi,\n );\n const implementation =\n _implementation ?? contractData?.implementation?.address;\n const { data: implementationData, isLoading: implementationLoading } =\n useContractDetail(implementation, fields, needContractAbi);\n const decodedByOuterAbi = useMemo(() => {\n return decodeFunctionDataByAbi({\n abi: outerAbi,\n input,\n output,\n space,\n success,\n withOutput,\n });\n }, [input, output, outerAbi, success, space, withOutput]);\n const decodedByContractAbi = useMemo(() => {\n if (!contractData?.abi) return null;\n return decodeFunctionDataByAbi({\n abi: contractData.abi as string,\n input,\n output,\n space,\n success,\n withOutput,\n });\n }, [input, output, contractData?.abi, success, space, withOutput]);\n const decodedByImplementationAbi = useMemo(() => {\n if (!implementationData?.abi) return null;\n return decodeFunctionDataByAbi({\n abi: implementationData.abi as string,\n input,\n output,\n space,\n success,\n withOutput,\n });\n }, [input, output, implementationData?.abi, success, space, withOutput]);\n const needMethodAbi =\n supportMethodAbi &&\n needContractAbi &&\n // contract abi decoded failed\n !contractLoading &&\n (!decodedByContractAbi || decodedByContractAbi.failed) &&\n // implementation contract abi decoded failed\n !implementationLoading &&\n (!decodedByImplementationAbi || decodedByImplementationAbi.failed);\n const { data: methodAbi, isLoading: methodAbiLoading } = useMethodAbi(\n input.slice(0, 10),\n needMethodAbi,\n );\n const decodedByMethodAbi = useMemo(() => {\n // decode tx data with function abi only if there is only one function\n if (!methodAbi || methodAbi.list.length !== 1) return null;\n try {\n // e.g. transfer(address,uint256)\n const fullName = methodAbi.list[0]!.fullName;\n // e.g. function transfer(address recipient, uint256 amount) returns (bool)\n const formatWithArg = methodAbi.list[0]!.formatWithArg;\n const abi = formatABI([formatWithArg || `function ${fullName}`], {\n json: true,\n });\n return decodeFunctionDataByAbi({\n abi: abi,\n input,\n output,\n space,\n success,\n withOutput,\n similarWarning: true,\n });\n } catch (error) {\n console.log('decode function data and result error', error);\n return {\n failed: true,\n };\n }\n }, [input, output, methodAbi, success, space, withOutput]);\n\n return useMemo(() => {\n if (!input) return [{}, false];\n if (decodedByOuterAbi && !decodedByOuterAbi.failed)\n return [decodedByOuterAbi, false];\n if (decodedByImplementationAbi && !decodedByImplementationAbi.failed)\n return [decodedByImplementationAbi, implementationLoading];\n if (decodedByContractAbi && !decodedByContractAbi.failed)\n return [decodedByContractAbi, contractLoading];\n if (decodedByMethodAbi && !decodedByMethodAbi.failed)\n return [decodedByMethodAbi, methodAbiLoading];\n if (implementationLoading || contractLoading || methodAbiLoading) {\n return [{}, true];\n }\n if (\n (decodedByOuterAbi && decodedByOuterAbi.failed) ||\n (decodedByImplementationAbi && decodedByImplementationAbi.failed) ||\n (decodedByContractAbi && decodedByContractAbi.failed) ||\n (decodedByMethodAbi && decodedByMethodAbi.failed)\n ) {\n return [\n {\n failed: true,\n },\n false,\n ];\n }\n return [\n {\n noAbi: true,\n },\n false,\n ];\n }, [\n input,\n decodedByOuterAbi,\n decodedByContractAbi,\n decodedByImplementationAbi,\n decodedByMethodAbi,\n contractLoading,\n implementationLoading,\n methodAbiLoading,\n ]);\n};\n"],"mappings":"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","names":[]}
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  isCoreMainOrTestAddress
3
- } from "./chunk-6L4ZEJQI.js";
3
+ } from "./chunk-6TKFGXSA.js";
4
4
  import {
5
5
  apiPrefix
6
6
  } from "./chunk-WIB76E7O.js";
7
7
  import {
8
8
  sendRequestENSInfo
9
- } from "./chunk-VGYNHJFT.js";
9
+ } from "./chunk-ZSOMTVP5.js";
10
10
  import {
11
11
  useENSStore
12
12
  } from "./chunk-DQGLZCIG.js";
@@ -60,4 +60,4 @@ var useENS = (address) => {
60
60
  export {
61
61
  useENS
62
62
  };
63
- //# sourceMappingURL=chunk-CMOP3BKX.js.map
63
+ //# sourceMappingURL=chunk-DEZ6AV62.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getContractDetail
3
- } from "./chunk-VGYNHJFT.js";
3
+ } from "./chunk-ZSOMTVP5.js";
4
4
 
5
5
  // src/utils/hooks/useContractDetail.ts
6
6
  import useSWRImmutable from "swr/immutable";
@@ -14,4 +14,4 @@ var useContractDetail = (contractAddress, fields = [], shouldFetch = true) => {
14
14
  export {
15
15
  useContractDetail
16
16
  };
17
- //# sourceMappingURL=chunk-LCIBOT5P.js.map
17
+ //# sourceMappingURL=chunk-DV3GFG5Q.js.map
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  convertCheckSum
3
- } from "./chunk-6L4ZEJQI.js";
3
+ } from "./chunk-6TKFGXSA.js";
4
4
  import {
5
5
  Text
6
- } from "./chunk-C7OIVXE3.js";
6
+ } from "./chunk-VVEA44KS.js";
7
7
  import {
8
8
  getTranslations
9
9
  } from "./chunk-DQGLZCIG.js";
@@ -143,4 +143,4 @@ var RenderAddress = ({
143
143
  export {
144
144
  RenderAddress
145
145
  };
146
- //# sourceMappingURL=chunk-4LSM4TMM.js.map
146
+ //# sourceMappingURL=chunk-E7ZFE6KT.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TraceDetail
3
- } from "./chunk-W64AF7LA.js";
3
+ } from "./chunk-7IGZGPFM.js";
4
4
  import {
5
5
  Table
6
6
  } from "./chunk-XZ7IV2FF.js";
@@ -54,7 +54,7 @@ var TreeTraceTable = ({
54
54
  outcome: record.result?.outcome,
55
55
  isContractCreated: !!record.contractCreated,
56
56
  space,
57
- proxy: record.proxy
57
+ implementation: record.delegatedTo ?? record.proxy?.implAddress
58
58
  }
59
59
  ),
60
60
  isTreeExpanded && /* @__PURE__ */ jsx(
@@ -79,4 +79,4 @@ var TreeTraceTable = ({
79
79
  export {
80
80
  TreeTraceTable
81
81
  };
82
- //# sourceMappingURL=chunk-C6CGZ6KN.js.map
82
+ //# sourceMappingURL=chunk-EQWC4NEP.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/components/TransactionTrace/TreeTraceTable.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { Table, TableProps } from '../Table';\nimport { concat, uniq } from 'lodash';\nimport { TraceDetail } from './TraceDetail';\nimport { TreeTraceForUI } from 'src/utils/hooks/useTxTrace';\n\nexport const TreeTraceTable = ({\n data,\n columns,\n loading = false,\n showHeader = true,\n colorReverse,\n treeExpandedKeys,\n detailExpandedKeys,\n space,\n}: {\n data?: TreeTraceForUI[];\n columns: TableProps<TreeTraceForUI>['columns'];\n loading?: boolean;\n showHeader?: boolean;\n colorReverse?: boolean;\n treeExpandedKeys: string[];\n detailExpandedKeys: string[];\n space: 'evm' | 'core';\n}) => {\n const expandedRowKeys = useMemo(() => {\n return uniq(concat(treeExpandedKeys, detailExpandedKeys));\n }, [treeExpandedKeys, detailExpandedKeys]);\n\n return (\n <Table\n columns={columns}\n rowKey=\"index\"\n data={data}\n loading={loading}\n showHeader={showHeader}\n rowClassName={(record, index) => {\n if (detailExpandedKeys.includes(record.index)) return '!bg-#f0f5ff';\n return colorReverse\n ? index % 2 !== 0\n ? '!bg-#f9fafb'\n : '!bg-transparent'\n : index % 2 !== 0\n ? '!bg-transparent'\n : '!bg-#f9fafb';\n }}\n expandable={{\n showExpandColumn: false,\n expandedRowKeys,\n expandedRowRender: (\n record: TreeTraceForUI,\n index,\n indent,\n expanded,\n ) => {\n if (!expanded) return null;\n const isDetailedExpanded = detailExpandedKeys.includes(record.index);\n const isTreeExpanded = treeExpandedKeys.includes(record.index);\n return (\n <div>\n {isDetailedExpanded && (\n <TraceDetail\n abi={record.abi}\n input={record.input}\n output={record.result?.returnData}\n to={record.to}\n outcome={record.result?.outcome}\n isContractCreated={!!record.contractCreated}\n space={space}\n proxy={record.proxy}\n />\n )}\n {isTreeExpanded && (\n <TreeTraceTable\n data={record.calls}\n columns={columns}\n showHeader={false}\n colorReverse={\n colorReverse ? index % 2 !== 0 : index % 2 === 0\n }\n treeExpandedKeys={treeExpandedKeys}\n detailExpandedKeys={detailExpandedKeys}\n space={space}\n />\n )}\n </div>\n );\n },\n }}\n />\n );\n};\n"],"mappings":";;;;;;;;AAAA,SAAS,eAAe;AAExB,SAAS,QAAQ,YAAY;AAyDjB,SAEI,KAFJ;AArDL,IAAM,iBAAiB,CAAC;AAAA,EAC7B;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV,aAAa;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MASM;AACJ,QAAM,kBAAkB,QAAQ,MAAM;AACpC,WAAO,KAAK,OAAO,kBAAkB,kBAAkB,CAAC;AAAA,EAC1D,GAAG,CAAC,kBAAkB,kBAAkB,CAAC;AAEzC,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,QAAO;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA,cAAc,CAAC,QAAQ,UAAU;AAC/B,YAAI,mBAAmB,SAAS,OAAO,KAAK;AAAG,iBAAO;AACtD,eAAO,eACH,QAAQ,MAAM,IACZ,gBACA,oBACF,QAAQ,MAAM,IACZ,oBACA;AAAA,MACR;AAAA,MACA,YAAY;AAAA,QACV,kBAAkB;AAAA,QAClB;AAAA,QACA,mBAAmB,CACjB,QACA,OACA,QACA,aACG;AACH,cAAI,CAAC;AAAU,mBAAO;AACtB,gBAAM,qBAAqB,mBAAmB,SAAS,OAAO,KAAK;AACnE,gBAAM,iBAAiB,iBAAiB,SAAS,OAAO,KAAK;AAC7D,iBACE,qBAAC,SACE;AAAA,kCACC;AAAA,cAAC;AAAA;AAAA,gBACC,KAAK,OAAO;AAAA,gBACZ,OAAO,OAAO;AAAA,gBACd,QAAQ,OAAO,QAAQ;AAAA,gBACvB,IAAI,OAAO;AAAA,gBACX,SAAS,OAAO,QAAQ;AAAA,gBACxB,mBAAmB,CAAC,CAAC,OAAO;AAAA,gBAC5B;AAAA,gBACA,OAAO,OAAO;AAAA;AAAA,YAChB;AAAA,YAED,kBACC;AAAA,cAAC;AAAA;AAAA,gBACC,MAAM,OAAO;AAAA,gBACb;AAAA,gBACA,YAAY;AAAA,gBACZ,cACE,eAAe,QAAQ,MAAM,IAAI,QAAQ,MAAM;AAAA,gBAEjD;AAAA,gBACA;AAAA,gBACA;AAAA;AAAA,YACF;AAAA,aAEJ;AAAA,QAEJ;AAAA,MACF;AAAA;AAAA,EACF;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../src/components/TransactionTrace/TreeTraceTable.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { Table, TableProps } from '../Table';\nimport { concat, uniq } from 'lodash';\nimport { TraceDetail } from './TraceDetail';\nimport { TreeTraceForUI } from 'src/utils/hooks/useTxTrace';\n\nexport const TreeTraceTable = ({\n data,\n columns,\n loading = false,\n showHeader = true,\n colorReverse,\n treeExpandedKeys,\n detailExpandedKeys,\n space,\n}: {\n data?: TreeTraceForUI[];\n columns: TableProps<TreeTraceForUI>['columns'];\n loading?: boolean;\n showHeader?: boolean;\n colorReverse?: boolean;\n treeExpandedKeys: string[];\n detailExpandedKeys: string[];\n space: 'evm' | 'core';\n}) => {\n const expandedRowKeys = useMemo(() => {\n return uniq(concat(treeExpandedKeys, detailExpandedKeys));\n }, [treeExpandedKeys, detailExpandedKeys]);\n\n return (\n <Table\n columns={columns}\n rowKey=\"index\"\n data={data}\n loading={loading}\n showHeader={showHeader}\n rowClassName={(record, index) => {\n if (detailExpandedKeys.includes(record.index)) return '!bg-#f0f5ff';\n return colorReverse\n ? index % 2 !== 0\n ? '!bg-#f9fafb'\n : '!bg-transparent'\n : index % 2 !== 0\n ? '!bg-transparent'\n : '!bg-#f9fafb';\n }}\n expandable={{\n showExpandColumn: false,\n expandedRowKeys,\n expandedRowRender: (\n record: TreeTraceForUI,\n index,\n indent,\n expanded,\n ) => {\n if (!expanded) return null;\n const isDetailedExpanded = detailExpandedKeys.includes(record.index);\n const isTreeExpanded = treeExpandedKeys.includes(record.index);\n return (\n <div>\n {isDetailedExpanded && (\n <TraceDetail\n abi={record.abi}\n input={record.input}\n output={record.result?.returnData}\n to={record.to}\n outcome={record.result?.outcome}\n isContractCreated={!!record.contractCreated}\n space={space}\n implementation={\n record.delegatedTo ?? record.proxy?.implAddress\n }\n />\n )}\n {isTreeExpanded && (\n <TreeTraceTable\n data={record.calls}\n columns={columns}\n showHeader={false}\n colorReverse={\n colorReverse ? index % 2 !== 0 : index % 2 === 0\n }\n treeExpandedKeys={treeExpandedKeys}\n detailExpandedKeys={detailExpandedKeys}\n space={space}\n />\n )}\n </div>\n );\n },\n }}\n />\n );\n};\n"],"mappings":";;;;;;;;AAAA,SAAS,eAAe;AAExB,SAAS,QAAQ,YAAY;AAyDjB,SAEI,KAFJ;AArDL,IAAM,iBAAiB,CAAC;AAAA,EAC7B;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV,aAAa;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MASM;AACJ,QAAM,kBAAkB,QAAQ,MAAM;AACpC,WAAO,KAAK,OAAO,kBAAkB,kBAAkB,CAAC;AAAA,EAC1D,GAAG,CAAC,kBAAkB,kBAAkB,CAAC;AAEzC,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,QAAO;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA,cAAc,CAAC,QAAQ,UAAU;AAC/B,YAAI,mBAAmB,SAAS,OAAO,KAAK;AAAG,iBAAO;AACtD,eAAO,eACH,QAAQ,MAAM,IACZ,gBACA,oBACF,QAAQ,MAAM,IACZ,oBACA;AAAA,MACR;AAAA,MACA,YAAY;AAAA,QACV,kBAAkB;AAAA,QAClB;AAAA,QACA,mBAAmB,CACjB,QACA,OACA,QACA,aACG;AACH,cAAI,CAAC;AAAU,mBAAO;AACtB,gBAAM,qBAAqB,mBAAmB,SAAS,OAAO,KAAK;AACnE,gBAAM,iBAAiB,iBAAiB,SAAS,OAAO,KAAK;AAC7D,iBACE,qBAAC,SACE;AAAA,kCACC;AAAA,cAAC;AAAA;AAAA,gBACC,KAAK,OAAO;AAAA,gBACZ,OAAO,OAAO;AAAA,gBACd,QAAQ,OAAO,QAAQ;AAAA,gBACvB,IAAI,OAAO;AAAA,gBACX,SAAS,OAAO,QAAQ;AAAA,gBACxB,mBAAmB,CAAC,CAAC,OAAO;AAAA,gBAC5B;AAAA,gBACA,gBACE,OAAO,eAAe,OAAO,OAAO;AAAA;AAAA,YAExC;AAAA,YAED,kBACC;AAAA,cAAC;AAAA;AAAA,gBACC,MAAM,OAAO;AAAA,gBACb;AAAA,gBACA,YAAY;AAAA,gBACZ,cACE,eAAe,QAAQ,MAAM,IAAI,QAAQ,MAAM;AAAA,gBAEjD;AAAA,gBACA;AAAA,gBACA;AAAA;AAAA,YACF;AAAA,aAEJ;AAAA,QAEJ;AAAA,MACF;AAAA;AAAA,EACF;AAEJ;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Tooltip
3
- } from "./chunk-GQRCW7WX.js";
3
+ } from "./chunk-VXHLESK7.js";
4
4
  import {
5
5
  useI18n
6
6
  } from "./chunk-DQGLZCIG.js";
@@ -142,4 +142,4 @@ var AceEditor = forwardRef(
142
142
  export {
143
143
  AceEditor
144
144
  };
145
- //# sourceMappingURL=chunk-YEAWH772.js.map
145
+ //# sourceMappingURL=chunk-FTRICVXA.js.map
@@ -29,7 +29,7 @@ import {
29
29
  } from "./chunk-BMO4IZHV.js";
30
30
  import {
31
31
  cn
32
- } from "./chunk-NM3BMITL.js";
32
+ } from "./chunk-G246NFI4.js";
33
33
 
34
34
  // src/components/Popover/index.tsx
35
35
  import { useRef } from "react";
@@ -2146,4 +2146,4 @@ focus-trap/dist/focus-trap.esm.js:
2146
2146
  * @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE
2147
2147
  *)
2148
2148
  */
2149
- //# sourceMappingURL=chunk-YVV32ON3.js.map
2149
+ //# sourceMappingURL=chunk-FUKVDD7K.js.map