@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.
- package/dist/{chunk-XUKHHB5L.js → chunk-2KBVDLVC.js} +5 -5
- package/dist/{chunk-7VQL3G7K.js → chunk-2TO4UOX3.js} +8 -8
- package/dist/chunk-2TO4UOX3.js.map +1 -0
- package/dist/chunk-5AM5HM3B.js +10 -0
- package/dist/chunk-5AM5HM3B.js.map +1 -0
- package/dist/{chunk-ELF2EOGF.js → chunk-6KG65RIO.js} +2 -2
- package/dist/{chunk-6L4ZEJQI.js → chunk-6TKFGXSA.js} +2 -2
- package/dist/{chunk-2WEBXRNL.js → chunk-6XLSWPR3.js} +28 -32
- package/dist/chunk-6XLSWPR3.js.map +1 -0
- package/dist/{chunk-W64AF7LA.js → chunk-7IGZGPFM.js} +9 -9
- package/dist/chunk-7IGZGPFM.js.map +1 -0
- package/dist/{chunk-BEI5TWJL.js → chunk-7P6KYI3Z.js} +2 -2
- package/dist/{chunk-RUU22F7R.js → chunk-7PQ6YKBC.js} +2 -2
- package/dist/{chunk-H5ZJBRIK.js → chunk-ABO5SDB4.js} +10 -10
- package/dist/chunk-ABO5SDB4.js.map +1 -0
- package/dist/{chunk-XZL5CZFT.js → chunk-CRTD2R3I.js} +6 -6
- package/dist/chunk-CRTD2R3I.js.map +1 -0
- package/dist/{chunk-CMOP3BKX.js → chunk-DEZ6AV62.js} +3 -3
- package/dist/{chunk-LCIBOT5P.js → chunk-DV3GFG5Q.js} +2 -2
- package/dist/{chunk-4LSM4TMM.js → chunk-E7ZFE6KT.js} +3 -3
- package/dist/{chunk-C6CGZ6KN.js → chunk-EQWC4NEP.js} +3 -3
- package/dist/{chunk-C6CGZ6KN.js.map → chunk-EQWC4NEP.js.map} +1 -1
- package/dist/{chunk-YEAWH772.js → chunk-FTRICVXA.js} +2 -2
- package/dist/{chunk-YVV32ON3.js → chunk-FUKVDD7K.js} +2 -2
- package/dist/{chunk-NM3BMITL.js → chunk-G246NFI4.js} +19 -3
- package/dist/{chunk-NM3BMITL.js.map → chunk-G246NFI4.js.map} +1 -1
- package/dist/{chunk-UZALXR3J.js → chunk-KHUI4JLS.js} +7 -7
- package/dist/chunk-KHUI4JLS.js.map +1 -0
- package/dist/{chunk-OT7NZ4PK.js → chunk-KZ2KYINT.js} +3 -3
- package/dist/{chunk-HF7RD7UD.js → chunk-LQCS5PT5.js} +3 -3
- package/dist/chunk-LQCS5PT5.js.map +1 -0
- package/dist/{chunk-GHHUAWSG.js → chunk-MF6LAIGP.js} +3 -3
- package/dist/{chunk-AYCHKB2Y.js → chunk-N5X4DZS3.js} +2 -2
- package/dist/{chunk-DYNSSHD5.js → chunk-OMU7JQ6Y.js} +11 -38
- package/dist/chunk-OMU7JQ6Y.js.map +1 -0
- package/dist/{chunk-UF5BN4QN.js → chunk-P7M7B7ER.js} +2 -2
- package/dist/{chunk-DCQANK66.js → chunk-RJOY6FMD.js} +2 -2
- package/dist/{chunk-WZIT54AU.js → chunk-SQI2F34Q.js} +2 -2
- package/dist/{chunk-LCV3NUFR.js → chunk-TJZKPAAH.js} +5 -5
- package/dist/{chunk-BHAXBHVC.js → chunk-TTNJMHOJ.js} +4 -4
- package/dist/{chunk-C7OIVXE3.js → chunk-VVEA44KS.js} +3 -3
- package/dist/{chunk-GQRCW7WX.js → chunk-VXHLESK7.js} +2 -2
- package/dist/{chunk-7AVQOIDM.js → chunk-XF2CMO2A.js} +7 -5
- package/dist/chunk-XF2CMO2A.js.map +1 -0
- package/dist/{chunk-J6ZC77OY.js → chunk-YXREYDKU.js} +6 -6
- package/dist/{chunk-VGYNHJFT.js → chunk-ZSOMTVP5.js} +2 -2
- package/dist/chunk-ZSOMTVP5.js.map +1 -0
- package/dist/components/AAFailedReason/index.d.ts +11 -0
- package/dist/components/AAFailedReason/index.js +41 -0
- package/dist/components/AAFailedReason/index.js.map +1 -0
- package/dist/components/AceEditor/index.js +4 -4
- package/dist/components/AddressContainer/CoreAddressContainer.js +10 -10
- package/dist/components/AddressContainer/EVMAddressContainer.js +9 -9
- package/dist/components/AddressContainer/addressSwitcher.js +7 -7
- package/dist/components/AddressContainer/addressView.js +6 -6
- package/dist/components/AddressContainer/label.js +3 -3
- package/dist/components/AddressContainer/utils.js +3 -3
- package/dist/components/Age/index.js +4 -4
- package/dist/components/AutoComplete/index.js +3 -3
- package/dist/components/Charts/PreviewChartTemplate.js +3 -3
- package/dist/components/Charts/StockChartTemplate.js +6 -6
- package/dist/components/CopyButton/index.js +3 -3
- package/dist/components/DecimalsSelect/index.js +3 -3
- package/dist/components/DownloadCSV/index.js +4 -4
- package/dist/components/GasPriceDropdown/index.js +2 -2
- package/dist/components/IncreasePercent/index.js +2 -2
- package/dist/components/InfoIconWithTooltip/index.js +4 -4
- package/dist/components/InputData/AddressLabel.js +8 -8
- package/dist/components/InputData/ContractDetail.d.ts +3 -16
- package/dist/components/InputData/ContractDetail.js +7 -7
- package/dist/components/InputData/JsonDecode.js +5 -5
- package/dist/components/InputData/OptimizationDecode.js +12 -10
- package/dist/components/InputData/Original.js +1 -1
- package/dist/components/InputData/UTF8.js +3 -3
- package/dist/components/InputData/index.d.ts +1 -1
- package/dist/components/InputData/index.js +17 -15
- package/dist/components/List/index.js +3 -3
- package/dist/components/Modal/index.js +3 -3
- package/dist/components/NetworkIcon/index.js +2 -2
- package/dist/components/OutputData/ErrorDecode.d.ts +3 -6
- package/dist/components/OutputData/ErrorDecode.js +19 -17
- package/dist/components/OutputData/index.d.ts +2 -5
- package/dist/components/OutputData/index.js +21 -19
- package/dist/components/PhishingAddressContainer/index.js +4 -4
- package/dist/components/Popover/index.js +3 -3
- package/dist/components/Price/index.js +3 -3
- package/dist/components/ProxyContractAddress/index.js +7 -7
- package/dist/components/ProxyContractAddress/index.js.map +1 -1
- package/dist/components/Radio/index.js +2 -2
- package/dist/components/SearchInput/index.js +4 -4
- package/dist/components/Select/index.js +4 -4
- package/dist/components/Select/select.js +3 -3
- package/dist/components/SmartAccountAddress/index.d.ts +11 -0
- package/dist/components/SmartAccountAddress/index.js +94 -0
- package/dist/components/SmartAccountAddress/index.js.map +1 -0
- package/dist/components/Text/index.js +4 -4
- package/dist/components/Tooltip/index.js +3 -3
- package/dist/components/TransactionAction/coreTransactionAction.js +23 -18
- package/dist/components/TransactionAction/coreTransactionAction.js.map +1 -1
- package/dist/components/TransactionAction/evmTransactionAction.js +22 -17
- package/dist/components/TransactionAction/evmTransactionAction.js.map +1 -1
- package/dist/components/TransactionTrace/TraceDetail.d.ts +1 -4
- package/dist/components/TransactionTrace/TraceDetail.js +29 -27
- package/dist/components/TransactionTrace/TreeTraceTable.js +30 -28
- package/dist/components/TransactionTrace/index.js +30 -28
- package/dist/uno.css +1 -0
- package/dist/utils/address.js +2 -2
- package/dist/utils/contractManagerTool.js +2 -2
- package/dist/utils/hooks/useAddressLabel.js +3 -3
- package/dist/utils/hooks/useAddressNameMap.js +2 -2
- package/dist/utils/hooks/useAutoSetHolderFilterParams.js +2 -2
- package/dist/utils/hooks/useContractDetail.js +2 -2
- package/dist/utils/hooks/useDecodeFunctionData.js +5 -5
- package/dist/utils/hooks/useDecodeFunctionError.d.ts +1 -1
- package/dist/utils/hooks/useDecodeFunctionError.js +3 -3
- package/dist/utils/hooks/useENS.js +3 -3
- package/dist/utils/hooks/useEnhanceDataWithNameMap.js +2 -2
- package/dist/utils/hooks/useMethodAbi.js +2 -2
- package/dist/utils/hooks/useTableData.js +1 -1
- package/dist/utils/hooks/useTxTrace.d.ts +8 -10
- package/dist/utils/hooks/useTxTrace.js +11 -16
- package/dist/utils/hooks/useTxTrace.js.map +1 -1
- package/dist/utils/index.d.ts +7 -1
- package/dist/utils/index.js +4 -2
- package/dist/utils/request.d.ts +1 -1
- package/dist/utils/request.js +1 -1
- package/package.json +6 -5
- package/dist/chunk-2WEBXRNL.js.map +0 -1
- package/dist/chunk-7AVQOIDM.js.map +0 -1
- package/dist/chunk-7VQL3G7K.js.map +0 -1
- package/dist/chunk-DYNSSHD5.js.map +0 -1
- package/dist/chunk-H5ZJBRIK.js.map +0 -1
- package/dist/chunk-HF7RD7UD.js.map +0 -1
- package/dist/chunk-UZALXR3J.js.map +0 -1
- package/dist/chunk-VGYNHJFT.js.map +0 -1
- package/dist/chunk-W64AF7LA.js.map +0 -1
- package/dist/chunk-XZL5CZFT.js.map +0 -1
- package/dist/chunk-YBQQ72FQ.js +0 -10
- package/dist/chunk-YBQQ72FQ.js.map +0 -1
- /package/dist/{chunk-XUKHHB5L.js.map → chunk-2KBVDLVC.js.map} +0 -0
- /package/dist/{chunk-ELF2EOGF.js.map → chunk-6KG65RIO.js.map} +0 -0
- /package/dist/{chunk-6L4ZEJQI.js.map → chunk-6TKFGXSA.js.map} +0 -0
- /package/dist/{chunk-BEI5TWJL.js.map → chunk-7P6KYI3Z.js.map} +0 -0
- /package/dist/{chunk-RUU22F7R.js.map → chunk-7PQ6YKBC.js.map} +0 -0
- /package/dist/{chunk-CMOP3BKX.js.map → chunk-DEZ6AV62.js.map} +0 -0
- /package/dist/{chunk-LCIBOT5P.js.map → chunk-DV3GFG5Q.js.map} +0 -0
- /package/dist/{chunk-4LSM4TMM.js.map → chunk-E7ZFE6KT.js.map} +0 -0
- /package/dist/{chunk-YEAWH772.js.map → chunk-FTRICVXA.js.map} +0 -0
- /package/dist/{chunk-YVV32ON3.js.map → chunk-FUKVDD7K.js.map} +0 -0
- /package/dist/{chunk-OT7NZ4PK.js.map → chunk-KZ2KYINT.js.map} +0 -0
- /package/dist/{chunk-GHHUAWSG.js.map → chunk-MF6LAIGP.js.map} +0 -0
- /package/dist/{chunk-AYCHKB2Y.js.map → chunk-N5X4DZS3.js.map} +0 -0
- /package/dist/{chunk-UF5BN4QN.js.map → chunk-P7M7B7ER.js.map} +0 -0
- /package/dist/{chunk-DCQANK66.js.map → chunk-RJOY6FMD.js.map} +0 -0
- /package/dist/{chunk-WZIT54AU.js.map → chunk-SQI2F34Q.js.map} +0 -0
- /package/dist/{chunk-LCV3NUFR.js.map → chunk-TJZKPAAH.js.map} +0 -0
- /package/dist/{chunk-BHAXBHVC.js.map → chunk-TTNJMHOJ.js.map} +0 -0
- /package/dist/{chunk-C7OIVXE3.js.map → chunk-VVEA44KS.js.map} +0 -0
- /package/dist/{chunk-GQRCW7WX.js.map → chunk-VXHLESK7.js.map} +0 -0
- /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-
|
|
3
|
+
} from "./chunk-SQI2F34Q.js";
|
|
4
4
|
import {
|
|
5
5
|
ContractAddress,
|
|
6
6
|
ContractCreatedAddress,
|
|
7
7
|
InvalidAddress,
|
|
8
8
|
MyAddress
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-TJZKPAAH.js";
|
|
10
10
|
import {
|
|
11
11
|
RenderAddress
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-E7ZFE6KT.js";
|
|
13
13
|
import {
|
|
14
14
|
convertCheckSum,
|
|
15
15
|
formatAddress,
|
|
16
16
|
isEvmAddress,
|
|
17
17
|
isZeroAddress
|
|
18
|
-
} from "./chunk-
|
|
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-
|
|
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-
|
|
6
|
+
} from "./chunk-KZ2KYINT.js";
|
|
7
7
|
import {
|
|
8
8
|
OptimizationDecode
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-OMU7JQ6Y.js";
|
|
10
10
|
import {
|
|
11
11
|
Original
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-5AM5HM3B.js";
|
|
13
13
|
import {
|
|
14
14
|
UTF8
|
|
15
|
-
} from "./chunk-
|
|
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
|
|
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
|
|
45
|
+
fullName: decodedData?.fullName
|
|
46
46
|
}
|
|
47
47
|
);
|
|
48
|
-
} else if (dataType === "optimizationDecode" && decodedData
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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 = ({
|
|
40
|
-
|
|
41
|
-
|
|
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 (
|
|
44
|
-
const name =
|
|
45
|
-
|
|
46
|
-
|
|
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(
|
|
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 (
|
|
58
|
-
const name =
|
|
59
|
-
const icon =
|
|
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-
|
|
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-
|
|
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-
|
|
9
|
+
} from "./chunk-MF6LAIGP.js";
|
|
10
10
|
import {
|
|
11
11
|
OutputData
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-KHUI4JLS.js";
|
|
13
13
|
import {
|
|
14
14
|
InputData
|
|
15
|
-
} from "./chunk-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
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
|
-
|
|
27
|
+
implementation
|
|
28
28
|
}) => {
|
|
29
29
|
const [decodedError, isLoading] = useDecodeFunctionError({
|
|
30
30
|
to,
|
|
31
|
-
implementation
|
|
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-
|
|
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-
|
|
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-
|
|
13
|
+
} from "./chunk-DV3GFG5Q.js";
|
|
14
14
|
import {
|
|
15
15
|
formatABI
|
|
16
|
-
} from "./chunk-
|
|
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 =
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
63
|
+
//# sourceMappingURL=chunk-DEZ6AV62.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getContractDetail
|
|
3
|
-
} from "./chunk-
|
|
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-
|
|
17
|
+
//# sourceMappingURL=chunk-DV3GFG5Q.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
convertCheckSum
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-6TKFGXSA.js";
|
|
4
4
|
import {
|
|
5
5
|
Text
|
|
6
|
-
} from "./chunk-
|
|
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-
|
|
146
|
+
//# sourceMappingURL=chunk-E7ZFE6KT.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
TraceDetail
|
|
3
|
-
} from "./chunk-
|
|
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
|
-
|
|
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-
|
|
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
|
|
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-
|
|
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-
|
|
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-
|
|
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-
|
|
2149
|
+
//# sourceMappingURL=chunk-FUKVDD7K.js.map
|