@cfxjs/sirius-next-common 0.1.26 → 0.1.28
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-24MUZRQJ.js +108 -0
- package/dist/chunk-24MUZRQJ.js.map +1 -0
- package/dist/chunk-24Z2NTKQ.js +43 -0
- package/dist/chunk-24Z2NTKQ.js.map +1 -0
- package/dist/chunk-26ABIFHL.js +127 -0
- package/dist/chunk-26ABIFHL.js.map +1 -0
- package/dist/chunk-27S75HVO.js +108 -0
- package/dist/chunk-27S75HVO.js.map +1 -0
- package/dist/chunk-2ATI4GSO.js +130 -0
- package/dist/chunk-2ATI4GSO.js.map +1 -0
- package/dist/chunk-2RR4CX3F.js +141 -0
- package/dist/chunk-2RR4CX3F.js.map +1 -0
- package/dist/chunk-2S6T3LVP.js +212 -0
- package/dist/chunk-2S6T3LVP.js.map +1 -0
- package/dist/chunk-3357K7AW.js +108 -0
- package/dist/chunk-3357K7AW.js.map +1 -0
- package/dist/chunk-3BLNV3M6.js +49 -0
- package/dist/chunk-3BLNV3M6.js.map +1 -0
- package/dist/chunk-3DOLNPRU.js +27 -0
- package/dist/chunk-3DOLNPRU.js.map +1 -0
- package/dist/chunk-3MYGXIHH.js +108 -0
- package/dist/chunk-3MYGXIHH.js.map +1 -0
- package/dist/chunk-3PCM3OLN.js +141 -0
- package/dist/chunk-3PCM3OLN.js.map +1 -0
- package/dist/chunk-3TBXOB3R.js +141 -0
- package/dist/chunk-3TBXOB3R.js.map +1 -0
- package/dist/chunk-3XY72AXV.js +49 -0
- package/dist/chunk-3XY72AXV.js.map +1 -0
- package/dist/chunk-3YBIEQO6.js +212 -0
- package/dist/chunk-3YBIEQO6.js.map +1 -0
- package/dist/chunk-4A4J7WSV.js +86 -0
- package/dist/chunk-4A4J7WSV.js.map +1 -0
- package/dist/chunk-4ESGRQGT.js +108 -0
- package/dist/chunk-4ESGRQGT.js.map +1 -0
- package/dist/chunk-5BIMFEMU.js +1478 -0
- package/dist/chunk-5BIMFEMU.js.map +1 -0
- package/dist/chunk-5SRYL5WC.js +212 -0
- package/dist/chunk-5SRYL5WC.js.map +1 -0
- package/dist/chunk-62YQFYHZ.js +3629 -0
- package/dist/chunk-62YQFYHZ.js.map +1 -0
- package/dist/chunk-6HKZB5HS.js +49 -0
- package/dist/chunk-6HKZB5HS.js.map +1 -0
- package/dist/chunk-6NC6XI6T.js +108 -0
- package/dist/chunk-6NC6XI6T.js.map +1 -0
- package/dist/chunk-6VGNSL3V.js +108 -0
- package/dist/chunk-6VGNSL3V.js.map +1 -0
- package/dist/chunk-74Z6QJ2V.js +108 -0
- package/dist/chunk-74Z6QJ2V.js.map +1 -0
- package/dist/chunk-77BWMAR2.js +105 -0
- package/dist/chunk-77BWMAR2.js.map +1 -0
- package/dist/chunk-7EX3S2AT.js +2324 -0
- package/dist/chunk-7EX3S2AT.js.map +1 -0
- package/dist/chunk-7LU43J6Y.js +2199 -0
- package/dist/chunk-7LU43J6Y.js.map +1 -0
- package/dist/chunk-7ONFLU6G.js +127 -0
- package/dist/chunk-7ONFLU6G.js.map +1 -0
- package/dist/chunk-7S7HFNGN.js +49 -0
- package/dist/chunk-7S7HFNGN.js.map +1 -0
- package/dist/chunk-7T3QFG4C.js +108 -0
- package/dist/chunk-7T3QFG4C.js.map +1 -0
- package/dist/chunk-ACI4CZ3N.js +141 -0
- package/dist/chunk-ACI4CZ3N.js.map +1 -0
- package/dist/chunk-AF3NCC5P.js +127 -0
- package/dist/chunk-AF3NCC5P.js.map +1 -0
- package/dist/chunk-AFTE3PC6.js +141 -0
- package/dist/chunk-AFTE3PC6.js.map +1 -0
- package/dist/chunk-ARSX76AK.js +49 -0
- package/dist/chunk-ARSX76AK.js.map +1 -0
- package/dist/chunk-AVOJOQXO.js +108 -0
- package/dist/chunk-AVOJOQXO.js.map +1 -0
- package/dist/chunk-AWLKSOKJ.js +49 -0
- package/dist/chunk-AWLKSOKJ.js.map +1 -0
- package/dist/chunk-B5CBBNRH.js +141 -0
- package/dist/chunk-B5CBBNRH.js.map +1 -0
- package/dist/chunk-BJAVQP5F.js +212 -0
- package/dist/chunk-BJAVQP5F.js.map +1 -0
- package/dist/chunk-C4DWCONF.js +212 -0
- package/dist/chunk-C4DWCONF.js.map +1 -0
- package/dist/chunk-CM2VKLWZ.js +127 -0
- package/dist/chunk-CM2VKLWZ.js.map +1 -0
- package/dist/chunk-CRPUM7SJ.js +212 -0
- package/dist/chunk-CRPUM7SJ.js.map +1 -0
- package/dist/chunk-CSBHWPRR.js +105 -0
- package/dist/chunk-CSBHWPRR.js.map +1 -0
- package/dist/chunk-CT7PENLL.js +105 -0
- package/dist/chunk-CT7PENLL.js.map +1 -0
- package/dist/chunk-DIAD272J.js +49 -0
- package/dist/chunk-DIAD272J.js.map +1 -0
- package/dist/chunk-DXONM5CJ.js +141 -0
- package/dist/chunk-DXONM5CJ.js.map +1 -0
- package/dist/chunk-E4LV6EXS.js +108 -0
- package/dist/chunk-E4LV6EXS.js.map +1 -0
- package/dist/chunk-E6E6MHRM.js +212 -0
- package/dist/chunk-E6E6MHRM.js.map +1 -0
- package/dist/chunk-E77PCJ2L.js +141 -0
- package/dist/chunk-E77PCJ2L.js.map +1 -0
- package/dist/chunk-E7F44FIR.js +105 -0
- package/dist/chunk-E7F44FIR.js.map +1 -0
- package/dist/chunk-EK2YUTFC.js +141 -0
- package/dist/chunk-EK2YUTFC.js.map +1 -0
- package/dist/chunk-EKQJYLLX.js +212 -0
- package/dist/chunk-EKQJYLLX.js.map +1 -0
- package/dist/chunk-FA77TXZD.js +127 -0
- package/dist/chunk-FA77TXZD.js.map +1 -0
- package/dist/chunk-FAFYYMFU.js +108 -0
- package/dist/chunk-FAFYYMFU.js.map +1 -0
- package/dist/chunk-FHTHKUN5.js +126 -0
- package/dist/chunk-FHTHKUN5.js.map +1 -0
- package/dist/chunk-GAWACXC2.js +127 -0
- package/dist/chunk-GAWACXC2.js.map +1 -0
- package/dist/chunk-GR3BLVJV.js +212 -0
- package/dist/chunk-GR3BLVJV.js.map +1 -0
- package/dist/chunk-GRCSAYBS.js +141 -0
- package/dist/chunk-GRCSAYBS.js.map +1 -0
- package/dist/chunk-GTRGNGUL.js +212 -0
- package/dist/chunk-GTRGNGUL.js.map +1 -0
- package/dist/chunk-H6EWZ7XZ.js +105 -0
- package/dist/chunk-H6EWZ7XZ.js.map +1 -0
- package/dist/chunk-HH3OPBBE.js +108 -0
- package/dist/chunk-HH3OPBBE.js.map +1 -0
- package/dist/chunk-HRVIZJEA.js +63 -0
- package/dist/chunk-HRVIZJEA.js.map +1 -0
- package/dist/chunk-I5GYABMO.js +141 -0
- package/dist/chunk-I5GYABMO.js.map +1 -0
- package/dist/chunk-I5J6GFME.js +141 -0
- package/dist/chunk-I5J6GFME.js.map +1 -0
- package/dist/chunk-IHFBGGHI.js +2297 -0
- package/dist/chunk-IHFBGGHI.js.map +1 -0
- package/dist/chunk-IHHNRYGC.js +108 -0
- package/dist/chunk-IHHNRYGC.js.map +1 -0
- package/dist/chunk-IPF6TU3K.js +212 -0
- package/dist/chunk-IPF6TU3K.js.map +1 -0
- package/dist/chunk-JNSJK2TR.js +2323 -0
- package/dist/chunk-JNSJK2TR.js.map +1 -0
- package/dist/chunk-JY62VTMC.js +49 -0
- package/dist/chunk-JY62VTMC.js.map +1 -0
- package/dist/chunk-KKC3SV7X.js +212 -0
- package/dist/chunk-KKC3SV7X.js.map +1 -0
- package/dist/chunk-KLKFSFIO.js +127 -0
- package/dist/chunk-KLKFSFIO.js.map +1 -0
- package/dist/chunk-KLXG7TWR.js +212 -0
- package/dist/chunk-KLXG7TWR.js.map +1 -0
- package/dist/chunk-KONLD7QH.js +108 -0
- package/dist/chunk-KONLD7QH.js.map +1 -0
- package/dist/chunk-KVZ4GBCQ.js +212 -0
- package/dist/chunk-KVZ4GBCQ.js.map +1 -0
- package/dist/chunk-LCX6G6UD.js +49 -0
- package/dist/chunk-LCX6G6UD.js.map +1 -0
- package/dist/chunk-LTJESAOY.js +49 -0
- package/dist/chunk-LTJESAOY.js.map +1 -0
- package/dist/chunk-LVOIDBQG.js +5083 -0
- package/dist/chunk-LVOIDBQG.js.map +1 -0
- package/dist/chunk-M7MZHGIW.js +141 -0
- package/dist/chunk-M7MZHGIW.js.map +1 -0
- package/dist/chunk-MFLND54Z.js +105 -0
- package/dist/chunk-MFLND54Z.js.map +1 -0
- package/dist/chunk-MU2VXMVI.js +105 -0
- package/dist/chunk-MU2VXMVI.js.map +1 -0
- package/dist/chunk-MYFQGX4G.js +130 -0
- package/dist/chunk-MYFQGX4G.js.map +1 -0
- package/dist/chunk-NIVSHXEJ.js +141 -0
- package/dist/chunk-NIVSHXEJ.js.map +1 -0
- package/dist/chunk-NJMWUDSI.js +2323 -0
- package/dist/chunk-NJMWUDSI.js.map +1 -0
- package/dist/chunk-NP4YOCMX.js +127 -0
- package/dist/chunk-NP4YOCMX.js.map +1 -0
- package/dist/chunk-NVIXO3FX.js +127 -0
- package/dist/chunk-NVIXO3FX.js.map +1 -0
- package/dist/chunk-OB5SKTJ7.js +2294 -0
- package/dist/chunk-OB5SKTJ7.js.map +1 -0
- package/dist/chunk-OWG3KRZJ.js +108 -0
- package/dist/chunk-OWG3KRZJ.js.map +1 -0
- package/dist/chunk-P3FVYMA6.js +127 -0
- package/dist/chunk-P3FVYMA6.js.map +1 -0
- package/dist/chunk-PJDWYUHP.js +3629 -0
- package/dist/chunk-PJDWYUHP.js.map +1 -0
- package/dist/chunk-PS6RUUUK.js +86 -0
- package/dist/chunk-PS6RUUUK.js.map +1 -0
- package/dist/chunk-QAFEK7IY.js +105 -0
- package/dist/chunk-QAFEK7IY.js.map +1 -0
- package/dist/chunk-QFPKRXR3.js +108 -0
- package/dist/chunk-QFPKRXR3.js.map +1 -0
- package/dist/chunk-R3N37XCV.js +212 -0
- package/dist/chunk-R3N37XCV.js.map +1 -0
- package/dist/chunk-R4E42CNE.js +2324 -0
- package/dist/chunk-R4E42CNE.js.map +1 -0
- package/dist/chunk-R4FMLRKR.js +105 -0
- package/dist/chunk-R4FMLRKR.js.map +1 -0
- package/dist/chunk-R4ISWFAU.js +2323 -0
- package/dist/chunk-R4ISWFAU.js.map +1 -0
- package/dist/chunk-R5KOPIFI.js +127 -0
- package/dist/chunk-R5KOPIFI.js.map +1 -0
- package/dist/chunk-RHM7WSYL.js +127 -0
- package/dist/chunk-RHM7WSYL.js.map +1 -0
- package/dist/chunk-RMOYI7RJ.js +212 -0
- package/dist/chunk-RMOYI7RJ.js.map +1 -0
- package/dist/chunk-RQB4FWW7.js +2296 -0
- package/dist/chunk-RQB4FWW7.js.map +1 -0
- package/dist/chunk-RRQLWLKC.js +127 -0
- package/dist/chunk-RRQLWLKC.js.map +1 -0
- package/dist/chunk-S7BWR5IZ.js +212 -0
- package/dist/chunk-S7BWR5IZ.js.map +1 -0
- package/dist/chunk-SUHRSNAI.js +63 -0
- package/dist/chunk-SUHRSNAI.js.map +1 -0
- package/dist/chunk-T5J4XBWF.js +127 -0
- package/dist/chunk-T5J4XBWF.js.map +1 -0
- package/dist/chunk-T5OKHLM7.js +86 -0
- package/dist/chunk-T5OKHLM7.js.map +1 -0
- package/dist/chunk-T6TINFBB.js +49 -0
- package/dist/chunk-T6TINFBB.js.map +1 -0
- package/dist/chunk-TK4FIUGX.js +105 -0
- package/dist/chunk-TK4FIUGX.js.map +1 -0
- package/dist/chunk-TSYM32RM.js +2218 -0
- package/dist/chunk-TSYM32RM.js.map +1 -0
- package/dist/chunk-TYLFHFBL.js +127 -0
- package/dist/chunk-TYLFHFBL.js.map +1 -0
- package/dist/chunk-TZ6FCCCJ.js +105 -0
- package/dist/chunk-TZ6FCCCJ.js.map +1 -0
- package/dist/chunk-UFO7XI55.js +212 -0
- package/dist/chunk-UFO7XI55.js.map +1 -0
- package/dist/chunk-UHGU5YPX.js +127 -0
- package/dist/chunk-UHGU5YPX.js.map +1 -0
- package/dist/chunk-UTXIA4ZA.js +105 -0
- package/dist/chunk-UTXIA4ZA.js.map +1 -0
- package/dist/chunk-UYI6WFT7.js +105 -0
- package/dist/chunk-UYI6WFT7.js.map +1 -0
- package/dist/chunk-VENIIRNN.js +49 -0
- package/dist/chunk-VENIIRNN.js.map +1 -0
- package/dist/chunk-VIX553CW.js +108 -0
- package/dist/chunk-VIX553CW.js.map +1 -0
- package/dist/chunk-VLYJFH7W.js +49 -0
- package/dist/chunk-VLYJFH7W.js.map +1 -0
- package/dist/chunk-VOXSIPTX.js +141 -0
- package/dist/chunk-VOXSIPTX.js.map +1 -0
- package/dist/chunk-VZNGE73T.js +105 -0
- package/dist/chunk-VZNGE73T.js.map +1 -0
- package/dist/chunk-W2J2VZEP.js +108 -0
- package/dist/chunk-W2J2VZEP.js.map +1 -0
- package/dist/chunk-X3QTCV4Q.js +212 -0
- package/dist/chunk-X3QTCV4Q.js.map +1 -0
- package/dist/chunk-X5ZOQIDW.js +108 -0
- package/dist/chunk-X5ZOQIDW.js.map +1 -0
- package/dist/chunk-XHG32AO6.js +141 -0
- package/dist/chunk-XHG32AO6.js.map +1 -0
- package/dist/chunk-XJSNK6B3.js +127 -0
- package/dist/chunk-XJSNK6B3.js.map +1 -0
- package/dist/chunk-XRKRGNVZ.js +141 -0
- package/dist/chunk-XRKRGNVZ.js.map +1 -0
- package/dist/chunk-XVA5MO4M.js +2324 -0
- package/dist/chunk-XVA5MO4M.js.map +1 -0
- package/dist/chunk-XXEJA3Q7.js +86 -0
- package/dist/chunk-XXEJA3Q7.js.map +1 -0
- package/dist/chunk-XZAEVXPG.js +108 -0
- package/dist/chunk-XZAEVXPG.js.map +1 -0
- package/dist/chunk-YCVZY6JX.js +141 -0
- package/dist/chunk-YCVZY6JX.js.map +1 -0
- package/dist/chunk-YQAMFHXE.js +212 -0
- package/dist/chunk-YQAMFHXE.js.map +1 -0
- package/dist/chunk-YRB4D655.js +141 -0
- package/dist/chunk-YRB4D655.js.map +1 -0
- package/dist/chunk-YVPSUVSB.js +141 -0
- package/dist/chunk-YVPSUVSB.js.map +1 -0
- package/dist/chunk-YWEJJEJY.js +105 -0
- package/dist/chunk-YWEJJEJY.js.map +1 -0
- package/dist/chunk-YXOEPMQS.js +127 -0
- package/dist/chunk-YXOEPMQS.js.map +1 -0
- package/dist/chunk-ZBNO57AP.js +141 -0
- package/dist/chunk-ZBNO57AP.js.map +1 -0
- package/dist/chunk-ZZDH4KPF.js +212 -0
- package/dist/chunk-ZZDH4KPF.js.map +1 -0
- package/dist/components/AddressContainer/CoreAddressContainer.js +6 -6
- package/dist/components/AddressContainer/EVMAddressContainer.js +6 -6
- package/dist/components/AddressContainer/addressSwitcher.js +4 -4
- package/dist/components/AddressContainer/addressView.js +3 -3
- package/dist/components/AddressContainer/label.js +2 -2
- package/dist/components/Age/index.js +2 -2
- package/dist/components/CopyButton/index.js +1 -1
- package/dist/components/DownloadCSV/index.js +1 -1
- package/dist/components/Highlight/index.js +12 -2
- package/dist/components/Highlight/index.js.map +1 -1
- package/dist/components/InfoIconWithTooltip/index.js +1 -1
- package/dist/components/PhishingAddressContainer/PhishingWarningIcon.d.ts +6 -0
- package/dist/components/PhishingAddressContainer/PhishingWarningIcon.js +7 -0
- package/dist/components/PhishingAddressContainer/PhishingWarningIcon.js.map +1 -0
- package/dist/components/PhishingAddressContainer/index.d.ts +15 -0
- package/dist/components/PhishingAddressContainer/index.js +124 -0
- package/dist/components/PhishingAddressContainer/index.js.map +1 -0
- package/dist/components/PhishingAddressContainer/phishing-warning.svg.svg +3 -0
- package/dist/components/Price/index.js +1 -1
- package/dist/components/Select/index.js +1 -1
- package/dist/components/Select/select.js +1 -1
- package/dist/components/Text/index.js +2 -2
- package/dist/components/Tooltip/index.d.ts +1 -1
- package/dist/components/Tooltip/index.js +1 -1
- package/dist/components/Tooltip/tt.d.ts +28 -0
- package/dist/components/Tooltip/tt.js +8 -0
- package/dist/components/Tooltip/tt.js.map +1 -0
- package/dist/components/TransactionAction/coreTransactionAction.js +6 -6
- package/dist/components/TransactionAction/evmTransactionAction.js +6 -6
- package/dist/contants/cssVariable.d.ts +20 -0
- package/dist/contants/cssVariable.js +41 -0
- package/dist/contants/cssVariable.js.map +1 -0
- package/dist/uno.css +6 -4
- package/dist/utils/contractManagerTool.d.ts +50 -0
- package/dist/utils/contractManagerTool.js +92 -0
- package/dist/utils/contractManagerTool.js.map +1 -0
- package/package.json +5 -5
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import {
|
|
2
|
+
useBreakpoint
|
|
3
|
+
} from "./chunk-TOKKKTFG.js";
|
|
4
|
+
import {
|
|
5
|
+
Tooltip
|
|
6
|
+
} from "./chunk-XVA5MO4M.js";
|
|
7
|
+
import {
|
|
8
|
+
selectText
|
|
9
|
+
} from "./chunk-4WJBUQY7.js";
|
|
10
|
+
|
|
11
|
+
// src/components/Text/index.tsx
|
|
12
|
+
import React from "react";
|
|
13
|
+
import clsx from "clsx";
|
|
14
|
+
import { jsx } from "react/jsx-runtime";
|
|
15
|
+
var getTypeColor = (type) => {
|
|
16
|
+
const colors = {
|
|
17
|
+
default: "inherit",
|
|
18
|
+
primary: "#7cd77b",
|
|
19
|
+
secondary: "#666",
|
|
20
|
+
success: "#7cd77b",
|
|
21
|
+
warning: "#ffc438",
|
|
22
|
+
error: "#e15c56"
|
|
23
|
+
};
|
|
24
|
+
return colors[type] || colors.default;
|
|
25
|
+
};
|
|
26
|
+
var Text = React.memo(
|
|
27
|
+
({
|
|
28
|
+
className,
|
|
29
|
+
children,
|
|
30
|
+
maxWidth: _maxWidth,
|
|
31
|
+
mobileMaxWidth = _maxWidth,
|
|
32
|
+
maxCount: _maxCount,
|
|
33
|
+
mobileMaxCount = _maxCount,
|
|
34
|
+
hoverValue,
|
|
35
|
+
hoverValueMaxCount: outerHoverValueMaxCount,
|
|
36
|
+
tag = "p",
|
|
37
|
+
type = "default",
|
|
38
|
+
hideTooltip = false,
|
|
39
|
+
...props
|
|
40
|
+
}) => {
|
|
41
|
+
const Component = tag;
|
|
42
|
+
const bp = useBreakpoint();
|
|
43
|
+
let child = children;
|
|
44
|
+
const maxCount = bp === "s" ? mobileMaxCount : _maxCount;
|
|
45
|
+
const maxWidth = bp === "s" ? mobileMaxWidth : _maxWidth;
|
|
46
|
+
if (maxWidth === void 0 && maxCount && typeof children === "string" && children.length > maxCount) {
|
|
47
|
+
child = String.prototype.substr.call(children, 0, maxCount) + "...";
|
|
48
|
+
}
|
|
49
|
+
let textContent = hoverValue || children;
|
|
50
|
+
if (bp === "s" && typeof textContent === "string") {
|
|
51
|
+
const hoverValueMaxCount = outerHoverValueMaxCount || 34;
|
|
52
|
+
let textContentCopy = textContent;
|
|
53
|
+
let newTextContent = [];
|
|
54
|
+
let count = 0;
|
|
55
|
+
while (textContentCopy.length > hoverValueMaxCount) {
|
|
56
|
+
newTextContent.push(
|
|
57
|
+
/* @__PURE__ */ jsx("span", { children: textContentCopy.substr(0, hoverValueMaxCount) }, count)
|
|
58
|
+
);
|
|
59
|
+
newTextContent.push(/* @__PURE__ */ jsx("br", {}, `br${count}`));
|
|
60
|
+
textContentCopy = textContentCopy.substr(hoverValueMaxCount);
|
|
61
|
+
if (count > 3) {
|
|
62
|
+
textContentCopy = textContentCopy.substr(0, hoverValueMaxCount - 3) + "...";
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
newTextContent.push(/* @__PURE__ */ jsx("span", { children: textContentCopy }, ++count));
|
|
66
|
+
textContent = newTextContent;
|
|
67
|
+
}
|
|
68
|
+
const tooltipText = !hideTooltip && React.createElement(
|
|
69
|
+
"div",
|
|
70
|
+
{
|
|
71
|
+
onClick: (e) => {
|
|
72
|
+
e.preventDefault();
|
|
73
|
+
e.stopPropagation();
|
|
74
|
+
selectText(e.currentTarget);
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
textContent
|
|
78
|
+
);
|
|
79
|
+
const p = { title: tooltipText };
|
|
80
|
+
return React.createElement(Tooltip, p, [
|
|
81
|
+
/* @__PURE__ */ jsx("span", { children: /* @__PURE__ */ jsx(
|
|
82
|
+
Component,
|
|
83
|
+
{
|
|
84
|
+
className: clsx(
|
|
85
|
+
"sirius-text truncate vertical-bottom",
|
|
86
|
+
"all-[a]:truncate all-[a]:vertical-bottom all-[a]:cursor-pointer all-[a:hover]:text-#0626ae",
|
|
87
|
+
className
|
|
88
|
+
),
|
|
89
|
+
style: {
|
|
90
|
+
maxWidth,
|
|
91
|
+
display: maxWidth === void 0 ? "inherit" : "inline-block",
|
|
92
|
+
color: getTypeColor(type)
|
|
93
|
+
},
|
|
94
|
+
...props,
|
|
95
|
+
children: child
|
|
96
|
+
}
|
|
97
|
+
) }, "text")
|
|
98
|
+
]);
|
|
99
|
+
}
|
|
100
|
+
);
|
|
101
|
+
|
|
102
|
+
export {
|
|
103
|
+
Text
|
|
104
|
+
};
|
|
105
|
+
//# sourceMappingURL=chunk-VZNGE73T.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/Text/index.tsx"],"sourcesContent":["import React from 'react';\nimport clsx from 'clsx';\nimport { Tooltip } from '../Tooltip';\nimport { selectText } from '../../utils';\nimport { useBreakpoint } from '../../utils/media';\n\ntype NormalTypes =\n | 'default'\n | 'secondary'\n | 'success'\n | 'warning'\n | 'error'\n | 'primary';\n\ntype TextProps = {\n children?: React.ReactNode;\n maxWidth?: string;\n mobileMaxWidth?: string;\n maxCount?: number;\n mobileMaxCount?: number;\n hoverValue?: React.ReactNode;\n hoverValueMaxCount?: number;\n tag?: 'p' | 'span';\n type?: NormalTypes;\n hideTooltip?: boolean;\n};\ntype NativeAttrs = Omit<React.HTMLAttributes<any>, keyof TextProps>;\n\nconst getTypeColor = (type: NormalTypes) => {\n const colors: { [key in NormalTypes]: string } = {\n default: 'inherit',\n primary: '#7cd77b',\n secondary: '#666',\n success: '#7cd77b',\n warning: '#ffc438',\n error: '#e15c56',\n };\n\n return colors[type] || colors.default;\n};\n\n// note:\n// 1. maxWidth priority is higher than maxCount\n// 2. maxCount only apply to string\n// 3. if hoverValue is provided, use hoverValue as Tooltip text, otherwise use children\n// if text of prop tooltip is provided, use as Tooltip text\nexport const Text = React.memo(\n ({\n className,\n children,\n maxWidth: _maxWidth,\n mobileMaxWidth = _maxWidth,\n maxCount: _maxCount,\n mobileMaxCount = _maxCount,\n hoverValue,\n hoverValueMaxCount: outerHoverValueMaxCount,\n tag = 'p',\n type = 'default',\n hideTooltip = false,\n ...props\n }: NativeAttrs & TextProps) => {\n const Component = tag;\n const bp = useBreakpoint();\n let child: React.ReactNode = children;\n const maxCount = bp === 's' ? mobileMaxCount : _maxCount;\n const maxWidth = bp === 's' ? mobileMaxWidth : _maxWidth;\n if (\n maxWidth === undefined &&\n maxCount &&\n typeof children === 'string' &&\n children.length > maxCount\n ) {\n child = String.prototype.substr.call(children, 0, maxCount) + '...';\n }\n\n let textContent = hoverValue || children;\n // 控制移动端字符串类型 tooltip 的长度\n // 这里有个问题,就是截断的位置可能是一个完整的单词,暂时没有办法处理,如果为了避免这种情况,需要由外面传入前对内容进行处理,比如设置固定宽度小于 24rem\n // @todo 后续可以试下读取文本长度,动态设置容器宽度值的方式,可以避免截断位置的问题\n if (bp === 's' && typeof textContent === 'string') {\n const hoverValueMaxCount = outerHoverValueMaxCount || 34; // default text count is 36\n let textContentCopy: string = textContent;\n let newTextContent: Array<React.ReactNode> = [];\n let count = 0;\n while (textContentCopy.length > hoverValueMaxCount) {\n newTextContent.push(\n <span key={count}>\n {textContentCopy.substr(0, hoverValueMaxCount)}\n </span>,\n );\n newTextContent.push(<br key={`br${count}`} />);\n textContentCopy = textContentCopy.substr(hoverValueMaxCount);\n // 防止文本过长的情况\n if (count > 3) {\n textContentCopy =\n textContentCopy.substr(0, hoverValueMaxCount - 3) + '...';\n }\n }\n newTextContent.push(<span key={++count}>{textContentCopy}</span>);\n textContent = newTextContent;\n }\n const tooltipText =\n !hideTooltip &&\n React.createElement(\n 'div',\n {\n onClick: e => {\n e.preventDefault();\n e.stopPropagation();\n selectText(e.currentTarget);\n },\n },\n textContent,\n );\n\n const p = { title: tooltipText };\n return React.createElement(Tooltip, p, [\n <span key=\"text\">\n <Component\n className={clsx(\n 'sirius-text truncate vertical-bottom',\n 'all-[a]:truncate all-[a]:vertical-bottom all-[a]:cursor-pointer all-[a:hover]:text-#0626ae',\n className,\n )}\n style={{\n maxWidth,\n display: maxWidth === undefined ? 'inherit' : 'inline-block',\n color: getTypeColor(type),\n }}\n {...props}\n >\n {child}\n </Component>\n </span>,\n ]);\n },\n);\n"],"mappings":";;;;;;;;;;;AAAA,OAAO,WAAW;AAClB,OAAO,UAAU;AAqFP;AA1DV,IAAM,eAAe,CAAC,SAAsB;AAC1C,QAAM,SAA2C;AAAA,IAC/C,SAAS;AAAA,IACT,SAAS;AAAA,IACT,WAAW;AAAA,IACX,SAAS;AAAA,IACT,SAAS;AAAA,IACT,OAAO;AAAA,EACT;AAEA,SAAO,OAAO,IAAI,KAAK,OAAO;AAChC;AAOO,IAAM,OAAO,MAAM;AAAA,EACxB,CAAC;AAAA,IACC;AAAA,IACA;AAAA,IACA,UAAU;AAAA,IACV,iBAAiB;AAAA,IACjB,UAAU;AAAA,IACV,iBAAiB;AAAA,IACjB;AAAA,IACA,oBAAoB;AAAA,IACpB,MAAM;AAAA,IACN,OAAO;AAAA,IACP,cAAc;AAAA,IACd,GAAG;AAAA,EACL,MAA+B;AAC7B,UAAM,YAAY;AAClB,UAAM,KAAK,cAAc;AACzB,QAAI,QAAyB;AAC7B,UAAM,WAAW,OAAO,MAAM,iBAAiB;AAC/C,UAAM,WAAW,OAAO,MAAM,iBAAiB;AAC/C,QACE,aAAa,UACb,YACA,OAAO,aAAa,YACpB,SAAS,SAAS,UAClB;AACA,cAAQ,OAAO,UAAU,OAAO,KAAK,UAAU,GAAG,QAAQ,IAAI;AAAA,IAChE;AAEA,QAAI,cAAc,cAAc;AAIhC,QAAI,OAAO,OAAO,OAAO,gBAAgB,UAAU;AACjD,YAAM,qBAAqB,2BAA2B;AACtD,UAAI,kBAA0B;AAC9B,UAAI,iBAAyC,CAAC;AAC9C,UAAI,QAAQ;AACZ,aAAO,gBAAgB,SAAS,oBAAoB;AAClD,uBAAe;AAAA,UACb,oBAAC,UACE,0BAAgB,OAAO,GAAG,kBAAkB,KADpC,KAEX;AAAA,QACF;AACA,uBAAe,KAAK,oBAAC,UAAQ,KAAK,OAAS,CAAE;AAC7C,0BAAkB,gBAAgB,OAAO,kBAAkB;AAE3D,YAAI,QAAQ,GAAG;AACb,4BACE,gBAAgB,OAAO,GAAG,qBAAqB,CAAC,IAAI;AAAA,QACxD;AAAA,MACF;AACA,qBAAe,KAAK,oBAAC,UAAoB,6BAAV,EAAE,KAAwB,CAAO;AAChE,oBAAc;AAAA,IAChB;AACA,UAAM,cACJ,CAAC,eACD,MAAM;AAAA,MACJ;AAAA,MACA;AAAA,QACE,SAAS,OAAK;AACZ,YAAE,eAAe;AACjB,YAAE,gBAAgB;AAClB,qBAAW,EAAE,aAAa;AAAA,QAC5B;AAAA,MACF;AAAA,MACA;AAAA,IACF;AAEF,UAAM,IAAI,EAAE,OAAO,YAAY;AAC/B,WAAO,MAAM,cAAc,SAAS,GAAG;AAAA,MACrC,oBAAC,UACC;AAAA,QAAC;AAAA;AAAA,UACC,WAAW;AAAA,YACT;AAAA,YACA;AAAA,YACA;AAAA,UACF;AAAA,UACA,OAAO;AAAA,YACL;AAAA,YACA,SAAS,aAAa,SAAY,YAAY;AAAA,YAC9C,OAAO,aAAa,IAAI;AAAA,UAC1B;AAAA,UACC,GAAG;AAAA,UAEH;AAAA;AAAA,MACH,KAfQ,MAgBV;AAAA,IACF,CAAC;AAAA,EACH;AACF;","names":[]}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ContractAddress,
|
|
3
|
+
ContractCreatedAddress,
|
|
4
|
+
InvalidAddress,
|
|
5
|
+
MyAddress
|
|
6
|
+
} from "./chunk-UFO7XI55.js";
|
|
7
|
+
import {
|
|
8
|
+
RenderAddress
|
|
9
|
+
} from "./chunk-YXOEPMQS.js";
|
|
10
|
+
import {
|
|
11
|
+
convertCheckSum,
|
|
12
|
+
formatAddress,
|
|
13
|
+
isEvmAddress,
|
|
14
|
+
isZeroAddress
|
|
15
|
+
} from "./chunk-RTFAJGPO.js";
|
|
16
|
+
import {
|
|
17
|
+
getLabelInfo
|
|
18
|
+
} from "./chunk-CRLSK4N6.js";
|
|
19
|
+
import {
|
|
20
|
+
getTranslations,
|
|
21
|
+
useGlobalData
|
|
22
|
+
} from "./chunk-DQGLZCIG.js";
|
|
23
|
+
|
|
24
|
+
// src/components/AddressContainer/EVMAddressContainer.tsx
|
|
25
|
+
import { memo } from "react";
|
|
26
|
+
import { withTranslation } from "react-i18next";
|
|
27
|
+
import _ from "lodash";
|
|
28
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
|
29
|
+
var parseProps = (props, globalData) => {
|
|
30
|
+
const { alias, t, showAddressLabel, showNametag, nametagInfo } = props;
|
|
31
|
+
const value = props.value || "";
|
|
32
|
+
const cfxAddress = formatAddress(value, "hex");
|
|
33
|
+
const translations = getTranslations();
|
|
34
|
+
let aliasLabel = alias;
|
|
35
|
+
if (!alias && isZeroAddress(cfxAddress)) {
|
|
36
|
+
aliasLabel = t(translations.general.zeroAddress);
|
|
37
|
+
}
|
|
38
|
+
let officalNametag = null;
|
|
39
|
+
let addressLabel = null;
|
|
40
|
+
if (cfxAddress && showAddressLabel) {
|
|
41
|
+
const addressLabels = globalData?.["CONFLUX_SCAN_ADDRESS_LABELS" /* addressLabel */];
|
|
42
|
+
const gAddressLabel = addressLabels?.[convertCheckSum(cfxAddress)] || addressLabels?.[cfxAddress.toLowerCase()];
|
|
43
|
+
if (gAddressLabel) {
|
|
44
|
+
const { label } = getLabelInfo(gAddressLabel, "tag");
|
|
45
|
+
addressLabel = label;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
if (cfxAddress && showNametag) {
|
|
49
|
+
const nametags = nametagInfo?.[convertCheckSum(cfxAddress)] || nametagInfo?.[cfxAddress.toLowerCase()];
|
|
50
|
+
if (nametags) {
|
|
51
|
+
const nametag = nametags?.nametag ?? "";
|
|
52
|
+
const { label } = getLabelInfo(nametag, "nametag");
|
|
53
|
+
officalNametag = label;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return {
|
|
57
|
+
alias: aliasLabel,
|
|
58
|
+
nametag: officalNametag,
|
|
59
|
+
addressLabel,
|
|
60
|
+
cfxAddress
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
var EVMAddressContainer = withTranslation()(
|
|
64
|
+
memo((props) => {
|
|
65
|
+
const { globalData } = useGlobalData();
|
|
66
|
+
if (!props.value && !props.contractCreated) {
|
|
67
|
+
return /* @__PURE__ */ jsx(Fragment, { children: "--" });
|
|
68
|
+
}
|
|
69
|
+
const defaultProps = {
|
|
70
|
+
isFull: false,
|
|
71
|
+
isFullNameTag: false,
|
|
72
|
+
link: true,
|
|
73
|
+
isMe: false,
|
|
74
|
+
showIcon: true,
|
|
75
|
+
verify: false,
|
|
76
|
+
showAddressLabel: true,
|
|
77
|
+
showENSLabel: true,
|
|
78
|
+
showNametag: true
|
|
79
|
+
};
|
|
80
|
+
const mergeDefaultProps = _.assign({}, defaultProps, props);
|
|
81
|
+
const mergeParseProps = _.merge(
|
|
82
|
+
{},
|
|
83
|
+
mergeDefaultProps,
|
|
84
|
+
parseProps(mergeDefaultProps, globalData)
|
|
85
|
+
);
|
|
86
|
+
if (!mergeParseProps.value && mergeParseProps.contractCreated) {
|
|
87
|
+
return ContractCreatedAddress({
|
|
88
|
+
...mergeParseProps,
|
|
89
|
+
outputType: "hex"
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
if (!isEvmAddress(mergeParseProps.value)) {
|
|
93
|
+
return InvalidAddress(mergeParseProps);
|
|
94
|
+
}
|
|
95
|
+
if (mergeParseProps.isContract) {
|
|
96
|
+
return ContractAddress(mergeParseProps);
|
|
97
|
+
}
|
|
98
|
+
if (mergeParseProps.isMe) {
|
|
99
|
+
return MyAddress(mergeParseProps);
|
|
100
|
+
}
|
|
101
|
+
return RenderAddress(mergeParseProps);
|
|
102
|
+
})
|
|
103
|
+
);
|
|
104
|
+
|
|
105
|
+
export {
|
|
106
|
+
EVMAddressContainer
|
|
107
|
+
};
|
|
108
|
+
//# sourceMappingURL=chunk-W2J2VZEP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/AddressContainer/EVMAddressContainer.tsx"],"sourcesContent":["import { memo } from 'react';\nimport { WithTranslation, withTranslation } from 'react-i18next';\nimport _ from 'lodash';\nimport {\n formatAddress,\n isEvmAddress,\n isZeroAddress,\n convertCheckSum,\n} from '../../utils/address';\nimport { useGlobalData, getTranslations } from '../../store';\nimport { LOCALSTORAGE_KEYS_MAP } from '../../utils/constants';\nimport { getLabelInfo } from './label';\n\nimport { RenderAddress } from './addressView';\nimport {\n ContractCreatedAddress,\n InvalidAddress,\n ContractAddress,\n MyAddress,\n} from './addressSwitcher';\nimport { GlobalDataType } from 'src/store/types';\nimport { EVMAddressContainerProps } from './types';\n\nconst parseProps = (\n props: EVMAddressContainerProps & WithTranslation,\n globalData: GlobalDataType,\n) => {\n const { alias, t, showAddressLabel, showNametag, nametagInfo } = props;\n const value: string = props.value || '';\n const cfxAddress = formatAddress(value, 'hex');\n\n const translations = getTranslations();\n\n let aliasLabel = alias;\n if (!alias && isZeroAddress(cfxAddress)) {\n aliasLabel = t(translations.general.zeroAddress);\n }\n\n // official name tag\n let officalNametag: React.ReactNode = null;\n // private name tag\n let addressLabel: React.ReactNode = null;\n\n if (cfxAddress && showAddressLabel) {\n // global private name tag\n const addressLabels = globalData?.[LOCALSTORAGE_KEYS_MAP.addressLabel];\n const gAddressLabel =\n addressLabels?.[convertCheckSum(cfxAddress)] ||\n addressLabels?.[cfxAddress.toLowerCase()];\n\n if (gAddressLabel) {\n const { label } = getLabelInfo(gAddressLabel, 'tag');\n addressLabel = label;\n }\n }\n\n if (cfxAddress && showNametag) {\n const nametags =\n nametagInfo?.[convertCheckSum(cfxAddress)] ||\n nametagInfo?.[cfxAddress.toLowerCase()];\n\n if (nametags) {\n const nametag = nametags?.nametag ?? '';\n const { label } = getLabelInfo(nametag, 'nametag');\n officalNametag = label;\n }\n }\n\n return {\n alias: aliasLabel,\n nametag: officalNametag,\n addressLabel,\n cfxAddress,\n };\n};\n\nexport const EVMAddressContainer = withTranslation()(\n memo((props: EVMAddressContainerProps & WithTranslation) => {\n const { globalData } = useGlobalData();\n\n // If a txn receipt has no 'to' address or 'contractCreated', show -- for temp\n if (!props.value && !props.contractCreated) {\n return <>--</>;\n }\n\n const defaultProps = {\n isFull: false,\n isFullNameTag: false,\n link: true,\n isMe: false,\n showIcon: true,\n verify: false,\n showAddressLabel: true,\n showENSLabel: true,\n showNametag: true,\n };\n\n const mergeDefaultProps = _.assign({}, defaultProps, props);\n\n const mergeParseProps = _.merge(\n {},\n mergeDefaultProps,\n parseProps(mergeDefaultProps, globalData),\n );\n\n if (!mergeParseProps.value && mergeParseProps.contractCreated) {\n return ContractCreatedAddress({\n ...mergeParseProps,\n outputType: 'hex',\n });\n }\n\n if (!isEvmAddress(mergeParseProps.value)) {\n return InvalidAddress(mergeParseProps);\n }\n\n if (mergeParseProps.isContract) {\n return ContractAddress(mergeParseProps);\n }\n\n if (mergeParseProps.isMe) {\n return MyAddress(mergeParseProps);\n }\n\n return RenderAddress(mergeParseProps);\n }),\n);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,YAAY;AACrB,SAA0B,uBAAuB;AACjD,OAAO,OAAO;AAgFD;AA3Db,IAAM,aAAa,CACjB,OACA,eACG;AACH,QAAM,EAAE,OAAO,GAAG,kBAAkB,aAAa,YAAY,IAAI;AACjE,QAAM,QAAgB,MAAM,SAAS;AACrC,QAAM,aAAa,cAAc,OAAO,KAAK;AAE7C,QAAM,eAAe,gBAAgB;AAErC,MAAI,aAAa;AACjB,MAAI,CAAC,SAAS,cAAc,UAAU,GAAG;AACvC,iBAAa,EAAE,aAAa,QAAQ,WAAW;AAAA,EACjD;AAGA,MAAI,iBAAkC;AAEtC,MAAI,eAAgC;AAEpC,MAAI,cAAc,kBAAkB;AAElC,UAAM,gBAAgB,6DAA+C;AACrE,UAAM,gBACJ,gBAAgB,gBAAgB,UAAU,CAAC,KAC3C,gBAAgB,WAAW,YAAY,CAAC;AAE1C,QAAI,eAAe;AACjB,YAAM,EAAE,MAAM,IAAI,aAAa,eAAe,KAAK;AACnD,qBAAe;AAAA,IACjB;AAAA,EACF;AAEA,MAAI,cAAc,aAAa;AAC7B,UAAM,WACJ,cAAc,gBAAgB,UAAU,CAAC,KACzC,cAAc,WAAW,YAAY,CAAC;AAExC,QAAI,UAAU;AACZ,YAAM,UAAU,UAAU,WAAW;AACrC,YAAM,EAAE,MAAM,IAAI,aAAa,SAAS,SAAS;AACjD,uBAAiB;AAAA,IACnB;AAAA,EACF;AAEA,SAAO;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT;AAAA,IACA;AAAA,EACF;AACF;AAEO,IAAM,sBAAsB,gBAAgB;AAAA,EACjD,KAAK,CAAC,UAAsD;AAC1D,UAAM,EAAE,WAAW,IAAI,cAAc;AAGrC,QAAI,CAAC,MAAM,SAAS,CAAC,MAAM,iBAAiB;AAC1C,aAAO,gCAAE,gBAAE;AAAA,IACb;AAEA,UAAM,eAAe;AAAA,MACnB,QAAQ;AAAA,MACR,eAAe;AAAA,MACf,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,kBAAkB;AAAA,MAClB,cAAc;AAAA,MACd,aAAa;AAAA,IACf;AAEA,UAAM,oBAAoB,EAAE,OAAO,CAAC,GAAG,cAAc,KAAK;AAE1D,UAAM,kBAAkB,EAAE;AAAA,MACxB,CAAC;AAAA,MACD;AAAA,MACA,WAAW,mBAAmB,UAAU;AAAA,IAC1C;AAEA,QAAI,CAAC,gBAAgB,SAAS,gBAAgB,iBAAiB;AAC7D,aAAO,uBAAuB;AAAA,QAC5B,GAAG;AAAA,QACH,YAAY;AAAA,MACd,CAAC;AAAA,IACH;AAEA,QAAI,CAAC,aAAa,gBAAgB,KAAK,GAAG;AACxC,aAAO,eAAe,eAAe;AAAA,IACvC;AAEA,QAAI,gBAAgB,YAAY;AAC9B,aAAO,gBAAgB,eAAe;AAAA,IACxC;AAEA,QAAI,gBAAgB,MAAM;AACxB,aAAO,UAAU,eAAe;AAAA,IAClC;AAEA,WAAO,cAAc,eAAe;AAAA,EACtC,CAAC;AACH;","names":[]}
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
import {
|
|
2
|
+
RenderAddress
|
|
3
|
+
} from "./chunk-FHTHKUN5.js";
|
|
4
|
+
import {
|
|
5
|
+
formatAddress,
|
|
6
|
+
isInnerContractAddress
|
|
7
|
+
} from "./chunk-RTFAJGPO.js";
|
|
8
|
+
import {
|
|
9
|
+
Tooltip
|
|
10
|
+
} from "./chunk-V2OO3EOG.js";
|
|
11
|
+
import {
|
|
12
|
+
coreCorrespondsToEspace,
|
|
13
|
+
formatString,
|
|
14
|
+
getNetwork
|
|
15
|
+
} from "./chunk-4WJBUQY7.js";
|
|
16
|
+
import {
|
|
17
|
+
getEnvConfig,
|
|
18
|
+
getTranslations,
|
|
19
|
+
useGlobalData
|
|
20
|
+
} from "./chunk-DQGLZCIG.js";
|
|
21
|
+
|
|
22
|
+
// src/components/AddressContainer/addressSwitcher.tsx
|
|
23
|
+
import { AlertTriangle, File } from "@zeit-ui/react-icons";
|
|
24
|
+
import InternalContractIcon from "./internal-contract-icon-ZH2RG3CU.png";
|
|
25
|
+
import ContractIcon from "./contract-icon-P3W2HUAA.png";
|
|
26
|
+
import VerifiedIcon from "./verified-VJRHZNN7.png";
|
|
27
|
+
import isMeIcon from "./me-SIV36SR7.png";
|
|
28
|
+
import { isPosAddress } from "@cfx-kit/dapp-utils/dist/address";
|
|
29
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
30
|
+
var ContractCreatedAddress = (props) => {
|
|
31
|
+
const { contractCreated = "", outputType, t, isFull } = props;
|
|
32
|
+
const translations = getTranslations();
|
|
33
|
+
const contractAddress = formatAddress(contractCreated, outputType);
|
|
34
|
+
const customProps = {
|
|
35
|
+
content: t(translations.transaction.contractCreation),
|
|
36
|
+
alias: t(translations.transaction.contractCreation),
|
|
37
|
+
hrefAddress: contractAddress,
|
|
38
|
+
cfxAddress: contractAddress,
|
|
39
|
+
maxWidth: 160
|
|
40
|
+
};
|
|
41
|
+
const mergedProps = { ...props, ...customProps };
|
|
42
|
+
return RenderAddress({
|
|
43
|
+
...mergedProps,
|
|
44
|
+
prefix: /* @__PURE__ */ jsx("div", { className: `mr-[2px] flex-shrink-0 ${isFull ? "icon" : ""}`, children: /* @__PURE__ */ jsx(Tooltip, { title: mergedProps.content, children: /* @__PURE__ */ jsx("div", { className: "relative w-[16px] h-[16px]", children: /* @__PURE__ */ jsx(
|
|
45
|
+
"img",
|
|
46
|
+
{
|
|
47
|
+
className: "w-[16px] h-[16px] align-bottom mb-[3px]",
|
|
48
|
+
src: ContractIcon,
|
|
49
|
+
alt: mergedProps.content
|
|
50
|
+
}
|
|
51
|
+
) }) }) })
|
|
52
|
+
});
|
|
53
|
+
};
|
|
54
|
+
var CoreHexAddress = (props) => {
|
|
55
|
+
const { value, t, isFull, maxWidth } = props;
|
|
56
|
+
const { globalData } = useGlobalData();
|
|
57
|
+
const ENV_CONFIG = getEnvConfig();
|
|
58
|
+
const translations = getTranslations();
|
|
59
|
+
const hexAddress = formatAddress(value, "hex");
|
|
60
|
+
const network = getNetwork(
|
|
61
|
+
globalData?.networks,
|
|
62
|
+
coreCorrespondsToEspace(ENV_CONFIG.ENV_NETWORK_ID)
|
|
63
|
+
);
|
|
64
|
+
const url = `${window.location.protocol}${network.url}/address/${hexAddress}`;
|
|
65
|
+
return RenderAddress({
|
|
66
|
+
cfxAddress: hexAddress,
|
|
67
|
+
hoverValue: hexAddress,
|
|
68
|
+
link: url,
|
|
69
|
+
isFull,
|
|
70
|
+
maxWidth,
|
|
71
|
+
suffixSize: 0,
|
|
72
|
+
prefix: /* @__PURE__ */ jsx("div", { className: "mr-[2px] flex-shrink-0", children: /* @__PURE__ */ jsx(Tooltip, { title: t(translations.general.eSpaceAddress), children: /* @__PURE__ */ jsx(File, { size: 16, color: "#17B38A" }) }) })
|
|
73
|
+
});
|
|
74
|
+
};
|
|
75
|
+
var InvalidAddress = (props) => {
|
|
76
|
+
const {
|
|
77
|
+
value,
|
|
78
|
+
alias,
|
|
79
|
+
t,
|
|
80
|
+
isFull,
|
|
81
|
+
maxWidth,
|
|
82
|
+
isFullNameTag,
|
|
83
|
+
hideAliasPrefixInHover
|
|
84
|
+
} = props;
|
|
85
|
+
const translations = getTranslations();
|
|
86
|
+
const tip = t(translations.general.invalidAddress);
|
|
87
|
+
return RenderAddress({
|
|
88
|
+
cfxAddress: value,
|
|
89
|
+
alias,
|
|
90
|
+
hoverValue: `${tip}: ${value}`,
|
|
91
|
+
content: alias ? formatString(alias, "tag") : value,
|
|
92
|
+
link: false,
|
|
93
|
+
isFull,
|
|
94
|
+
isFullNameTag,
|
|
95
|
+
maxWidth,
|
|
96
|
+
style: { color: "#e00909" },
|
|
97
|
+
prefix: /* @__PURE__ */ jsx("div", { className: "mr-[2px] flex-shrink-0", children: /* @__PURE__ */ jsx(Tooltip, { title: tip, children: /* @__PURE__ */ jsx(AlertTriangle, { size: 16, color: "#e00909" }) }) }),
|
|
98
|
+
hideAliasPrefixInHover
|
|
99
|
+
});
|
|
100
|
+
};
|
|
101
|
+
var ContractAddress = (props) => {
|
|
102
|
+
const { showIcon, verify, t, cfxAddress, isFull } = props;
|
|
103
|
+
const translations = getTranslations();
|
|
104
|
+
const isInnerContract = cfxAddress && isInnerContractAddress(cfxAddress);
|
|
105
|
+
const typeText = t(
|
|
106
|
+
isInnerContract ? translations.general.internalContract : verify ? translations.general.verifiedContract : translations.general.unverifiedContract
|
|
107
|
+
);
|
|
108
|
+
return RenderAddress({
|
|
109
|
+
...props,
|
|
110
|
+
prefix: showIcon ? /* @__PURE__ */ jsx("div", { className: `mr-[2px] flex-shrink-0 ${isFull ? "icon" : ""}`, children: /* @__PURE__ */ jsx(Tooltip, { title: typeText, children: /* @__PURE__ */ jsx("div", { className: "relative w-[16px] h-[16px]", children: isInnerContract ? /* @__PURE__ */ jsx(
|
|
111
|
+
"img",
|
|
112
|
+
{
|
|
113
|
+
className: "w-[16px] h-[16px] align-bottom mb-[5px]",
|
|
114
|
+
src: InternalContractIcon,
|
|
115
|
+
alt: typeText
|
|
116
|
+
}
|
|
117
|
+
) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
118
|
+
/* @__PURE__ */ jsx(
|
|
119
|
+
"img",
|
|
120
|
+
{
|
|
121
|
+
className: "w-[16px] h-[16px] align-bottom mb-[5px]",
|
|
122
|
+
src: ContractIcon,
|
|
123
|
+
alt: typeText
|
|
124
|
+
}
|
|
125
|
+
),
|
|
126
|
+
verify ? /* @__PURE__ */ jsx(
|
|
127
|
+
"img",
|
|
128
|
+
{
|
|
129
|
+
className: "w-[8px] h-[8px] absolute bottom-[-1px] right-[1px]",
|
|
130
|
+
src: VerifiedIcon,
|
|
131
|
+
alt: ""
|
|
132
|
+
}
|
|
133
|
+
) : /* @__PURE__ */ jsx(Fragment, {})
|
|
134
|
+
] }) }) }) }) : /* @__PURE__ */ jsx(Fragment, {})
|
|
135
|
+
});
|
|
136
|
+
};
|
|
137
|
+
var MyAddress = (props) => {
|
|
138
|
+
const { isFull } = props;
|
|
139
|
+
return RenderAddress({
|
|
140
|
+
...props,
|
|
141
|
+
suffix: /* @__PURE__ */ jsx("div", { className: "mr-[2px] flex-shrink-0", children: /* @__PURE__ */ jsx(
|
|
142
|
+
"img",
|
|
143
|
+
{
|
|
144
|
+
className: "w-[38.5px] h-[16px] ml-[3px] align-bottom",
|
|
145
|
+
src: isMeIcon,
|
|
146
|
+
alt: "is me",
|
|
147
|
+
style: {
|
|
148
|
+
marginBottom: isFull ? "6px" : "4px"
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
) })
|
|
152
|
+
});
|
|
153
|
+
};
|
|
154
|
+
var PosAddress = (props) => {
|
|
155
|
+
const {
|
|
156
|
+
alias,
|
|
157
|
+
isFull,
|
|
158
|
+
isFullNameTag,
|
|
159
|
+
maxWidth,
|
|
160
|
+
t,
|
|
161
|
+
link,
|
|
162
|
+
isMe,
|
|
163
|
+
hideAliasPrefixInHover
|
|
164
|
+
} = props;
|
|
165
|
+
const value = props.value;
|
|
166
|
+
if (!value) {
|
|
167
|
+
return /* @__PURE__ */ jsx(Fragment, { children: "--" });
|
|
168
|
+
}
|
|
169
|
+
if (isMe) {
|
|
170
|
+
return MyAddress(props);
|
|
171
|
+
}
|
|
172
|
+
const translations = getTranslations();
|
|
173
|
+
const content = alias ? formatString(alias, "tag") : formatString(value, "posAddress");
|
|
174
|
+
if (!isPosAddress(value)) {
|
|
175
|
+
const tip = t(translations.general.invalidPosAddress);
|
|
176
|
+
return RenderAddress({
|
|
177
|
+
cfxAddress: value,
|
|
178
|
+
alias,
|
|
179
|
+
hoverValue: `${tip}: ${value}`,
|
|
180
|
+
content,
|
|
181
|
+
link: false,
|
|
182
|
+
isFull,
|
|
183
|
+
isFullNameTag,
|
|
184
|
+
maxWidth,
|
|
185
|
+
style: { color: "#e00909" },
|
|
186
|
+
prefix: /* @__PURE__ */ jsx("div", { className: "mr-[2px] flex-shrink-0", children: /* @__PURE__ */ jsx(Tooltip, { title: tip, children: /* @__PURE__ */ jsx(AlertTriangle, { size: 16, color: "#e00909" }) }) }),
|
|
187
|
+
type: "pos",
|
|
188
|
+
hideAliasPrefixInHover
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
return RenderAddress({
|
|
192
|
+
cfxAddress: value,
|
|
193
|
+
alias,
|
|
194
|
+
link,
|
|
195
|
+
isFull,
|
|
196
|
+
isFullNameTag,
|
|
197
|
+
maxWidth,
|
|
198
|
+
type: "pos",
|
|
199
|
+
content,
|
|
200
|
+
hideAliasPrefixInHover
|
|
201
|
+
});
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
export {
|
|
205
|
+
ContractCreatedAddress,
|
|
206
|
+
CoreHexAddress,
|
|
207
|
+
InvalidAddress,
|
|
208
|
+
ContractAddress,
|
|
209
|
+
MyAddress,
|
|
210
|
+
PosAddress
|
|
211
|
+
};
|
|
212
|
+
//# sourceMappingURL=chunk-X3QTCV4Q.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/AddressContainer/addressSwitcher.tsx"],"sourcesContent":["import { WithTranslation } from 'react-i18next';\nimport { AlertTriangle, File } from '@zeit-ui/react-icons';\nimport InternalContractIcon from '../../images/internal-contract-icon.png';\nimport ContractIcon from '../../images/contract-icon.png';\nimport VerifiedIcon from '../../images/verified.png';\nimport isMeIcon from '../../images/me.png';\nimport { Tooltip } from '../Tooltip';\nimport { isPosAddress } from '@cfx-kit/dapp-utils/dist/address';\nimport { formatAddress, isInnerContractAddress } from '../../utils/address';\nimport { getTranslations, getEnvConfig, useGlobalData } from '../../store';\nimport { getNetwork, formatString, coreCorrespondsToEspace } from 'src/utils';\nimport { Props } from './types';\nimport { RenderAddress } from './addressView';\n\n// common\nexport const ContractCreatedAddress = (\n props: Props & WithTranslation & { outputType: 'hex' | 'base32' },\n) => {\n const { contractCreated = '', outputType, t, isFull } = props;\n\n const translations = getTranslations();\n\n const contractAddress = formatAddress(contractCreated, outputType);\n\n const customProps = {\n content: t(translations.transaction.contractCreation),\n alias: t(translations.transaction.contractCreation),\n hrefAddress: contractAddress,\n cfxAddress: contractAddress,\n maxWidth: 160,\n };\n\n const mergedProps = { ...props, ...customProps };\n return RenderAddress({\n ...mergedProps,\n prefix: (\n <div className={`mr-[2px] flex-shrink-0 ${isFull ? 'icon' : ''}`}>\n <Tooltip title={mergedProps.content}>\n <div className=\"relative w-[16px] h-[16px]\">\n <img\n className=\"w-[16px] h-[16px] align-bottom mb-[3px]\"\n src={ContractIcon}\n alt={mergedProps.content}\n />\n </div>\n </Tooltip>\n </div>\n ),\n });\n};\n\n// core\nexport const CoreHexAddress = (props: Props & WithTranslation) => {\n const { value, t, isFull, maxWidth } = props;\n const { globalData } = useGlobalData();\n\n const ENV_CONFIG = getEnvConfig();\n const translations = getTranslations();\n const hexAddress = formatAddress(value, 'hex');\n const network = getNetwork(\n globalData?.networks,\n coreCorrespondsToEspace(ENV_CONFIG.ENV_NETWORK_ID),\n );\n const url = `${window.location.protocol}${network.url}/address/${hexAddress}`;\n\n return RenderAddress({\n cfxAddress: hexAddress,\n hoverValue: hexAddress,\n link: url,\n isFull,\n maxWidth,\n suffixSize: 0,\n prefix: (\n <div className=\"mr-[2px] flex-shrink-0\">\n <Tooltip title={t((translations as any).general.eSpaceAddress)}>\n <File size={16} color=\"#17B38A\" />\n </Tooltip>\n </div>\n ),\n });\n};\n\n// common\nexport const InvalidAddress = (props: Props & WithTranslation) => {\n const {\n value,\n alias,\n t,\n isFull,\n maxWidth,\n isFullNameTag,\n hideAliasPrefixInHover,\n } = props;\n\n const translations = getTranslations();\n\n const tip = t(translations.general.invalidAddress);\n\n return RenderAddress({\n cfxAddress: value,\n alias,\n hoverValue: `${tip}: ${value}`,\n content: alias ? formatString(alias, 'tag') : value,\n link: false,\n isFull,\n isFullNameTag,\n maxWidth,\n style: { color: '#e00909' },\n prefix: (\n <div className=\"mr-[2px] flex-shrink-0\">\n <Tooltip title={tip}>\n <AlertTriangle size={16} color=\"#e00909\" />\n </Tooltip>\n </div>\n ),\n hideAliasPrefixInHover,\n });\n};\n\n// common\nexport const ContractAddress = (props: Props & WithTranslation) => {\n const { showIcon, verify, t, cfxAddress, isFull } = props;\n\n const translations = getTranslations();\n\n const isInnerContract = cfxAddress && isInnerContractAddress(cfxAddress);\n\n const typeText = t(\n isInnerContract\n ? translations.general.internalContract\n : verify\n ? translations.general.verifiedContract\n : translations.general.unverifiedContract,\n );\n\n return RenderAddress({\n ...props,\n prefix: showIcon ? (\n <div className={`mr-[2px] flex-shrink-0 ${isFull ? 'icon' : ''}`}>\n <Tooltip title={typeText}>\n <div className=\"relative w-[16px] h-[16px]\">\n {isInnerContract ? (\n <img\n className=\"w-[16px] h-[16px] align-bottom mb-[5px]\"\n src={InternalContractIcon}\n alt={typeText}\n />\n ) : (\n <>\n <img\n className=\"w-[16px] h-[16px] align-bottom mb-[5px]\"\n src={ContractIcon}\n alt={typeText}\n />\n {verify ? (\n <img\n className=\"w-[8px] h-[8px] absolute bottom-[-1px] right-[1px]\"\n src={VerifiedIcon}\n alt={''}\n />\n ) : (\n <></>\n )}\n </>\n )}\n </div>\n </Tooltip>\n </div>\n ) : (\n <></>\n ),\n });\n};\n\n// common\nexport const MyAddress = (props: Props & WithTranslation) => {\n const { isFull } = props;\n return RenderAddress({\n ...props,\n suffix: (\n <div className=\"mr-[2px] flex-shrink-0\">\n <img\n className=\"w-[38.5px] h-[16px] ml-[3px] align-bottom\"\n src={isMeIcon}\n alt=\"is me\"\n style={{\n marginBottom: isFull ? '6px' : '4px',\n }}\n />\n </div>\n ),\n });\n};\n\n// core\nexport const PosAddress = (props: Props & WithTranslation) => {\n const {\n alias,\n isFull,\n isFullNameTag,\n maxWidth,\n t,\n link,\n isMe,\n hideAliasPrefixInHover,\n } = props;\n const value = props.value;\n if (!value) {\n return <>--</>;\n }\n if (isMe) {\n return MyAddress(props);\n }\n const translations = getTranslations();\n const content = alias\n ? formatString(alias, 'tag')\n : formatString(value, 'posAddress');\n if (!isPosAddress(value)) {\n const tip = t(translations.general.invalidPosAddress);\n return RenderAddress({\n cfxAddress: value,\n alias,\n hoverValue: `${tip}: ${value}`,\n content,\n link: false,\n isFull,\n isFullNameTag,\n maxWidth,\n style: { color: '#e00909' },\n prefix: (\n <div className=\"mr-[2px] flex-shrink-0\">\n <Tooltip title={tip}>\n <AlertTriangle size={16} color=\"#e00909\" />\n </Tooltip>\n </div>\n ),\n type: 'pos',\n hideAliasPrefixInHover,\n });\n }\n\n return RenderAddress({\n cfxAddress: value,\n alias,\n link,\n isFull,\n isFullNameTag,\n maxWidth,\n type: 'pos',\n content,\n hideAliasPrefixInHover,\n });\n};\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ContractAddress,
|
|
3
|
+
ContractCreatedAddress,
|
|
4
|
+
InvalidAddress,
|
|
5
|
+
MyAddress
|
|
6
|
+
} from "./chunk-BJAVQP5F.js";
|
|
7
|
+
import {
|
|
8
|
+
RenderAddress
|
|
9
|
+
} from "./chunk-NVIXO3FX.js";
|
|
10
|
+
import {
|
|
11
|
+
convertCheckSum,
|
|
12
|
+
formatAddress,
|
|
13
|
+
isEvmAddress,
|
|
14
|
+
isZeroAddress
|
|
15
|
+
} from "./chunk-RTFAJGPO.js";
|
|
16
|
+
import {
|
|
17
|
+
getLabelInfo
|
|
18
|
+
} from "./chunk-T6TINFBB.js";
|
|
19
|
+
import {
|
|
20
|
+
getTranslations,
|
|
21
|
+
useGlobalData
|
|
22
|
+
} from "./chunk-DQGLZCIG.js";
|
|
23
|
+
|
|
24
|
+
// src/components/AddressContainer/EVMAddressContainer.tsx
|
|
25
|
+
import { memo } from "react";
|
|
26
|
+
import { withTranslation } from "react-i18next";
|
|
27
|
+
import _ from "lodash";
|
|
28
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
|
29
|
+
var parseProps = (props, globalData) => {
|
|
30
|
+
const { alias, t, showAddressLabel, showNametag, nametagInfo } = props;
|
|
31
|
+
const value = props.value || "";
|
|
32
|
+
const cfxAddress = formatAddress(value, "hex");
|
|
33
|
+
const translations = getTranslations();
|
|
34
|
+
let aliasLabel = alias;
|
|
35
|
+
if (!alias && isZeroAddress(cfxAddress)) {
|
|
36
|
+
aliasLabel = t(translations.general.zeroAddress);
|
|
37
|
+
}
|
|
38
|
+
let officalNametag = null;
|
|
39
|
+
let addressLabel = null;
|
|
40
|
+
if (cfxAddress && showAddressLabel) {
|
|
41
|
+
const addressLabels = globalData?.["CONFLUX_SCAN_ADDRESS_LABELS" /* addressLabel */];
|
|
42
|
+
const gAddressLabel = addressLabels?.[convertCheckSum(cfxAddress)] || addressLabels?.[cfxAddress.toLowerCase()];
|
|
43
|
+
if (gAddressLabel) {
|
|
44
|
+
const { label } = getLabelInfo(gAddressLabel, "tag");
|
|
45
|
+
addressLabel = label;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
if (cfxAddress && showNametag) {
|
|
49
|
+
const nametags = nametagInfo?.[convertCheckSum(cfxAddress)] || nametagInfo?.[cfxAddress.toLowerCase()];
|
|
50
|
+
if (nametags) {
|
|
51
|
+
const nametag = nametags?.nametag ?? "";
|
|
52
|
+
const { label } = getLabelInfo(nametag, "nametag");
|
|
53
|
+
officalNametag = label;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return {
|
|
57
|
+
alias: aliasLabel,
|
|
58
|
+
nametag: officalNametag,
|
|
59
|
+
addressLabel,
|
|
60
|
+
cfxAddress
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
var EVMAddressContainer = withTranslation()(
|
|
64
|
+
memo((props) => {
|
|
65
|
+
const { globalData } = useGlobalData();
|
|
66
|
+
if (!props.value && !props.contractCreated) {
|
|
67
|
+
return /* @__PURE__ */ jsx(Fragment, { children: "--" });
|
|
68
|
+
}
|
|
69
|
+
const defaultProps = {
|
|
70
|
+
isFull: false,
|
|
71
|
+
isFullNameTag: false,
|
|
72
|
+
link: true,
|
|
73
|
+
isMe: false,
|
|
74
|
+
showIcon: true,
|
|
75
|
+
verify: false,
|
|
76
|
+
showAddressLabel: true,
|
|
77
|
+
showENSLabel: true,
|
|
78
|
+
showNametag: true
|
|
79
|
+
};
|
|
80
|
+
const mergeDefaultProps = _.assign({}, defaultProps, props);
|
|
81
|
+
const mergeParseProps = _.merge(
|
|
82
|
+
{},
|
|
83
|
+
mergeDefaultProps,
|
|
84
|
+
parseProps(mergeDefaultProps, globalData)
|
|
85
|
+
);
|
|
86
|
+
if (!mergeParseProps.value && mergeParseProps.contractCreated) {
|
|
87
|
+
return ContractCreatedAddress({
|
|
88
|
+
...mergeParseProps,
|
|
89
|
+
outputType: "hex"
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
if (!isEvmAddress(mergeParseProps.value)) {
|
|
93
|
+
return InvalidAddress(mergeParseProps);
|
|
94
|
+
}
|
|
95
|
+
if (mergeParseProps.isContract) {
|
|
96
|
+
return ContractAddress(mergeParseProps);
|
|
97
|
+
}
|
|
98
|
+
if (mergeParseProps.isMe) {
|
|
99
|
+
return MyAddress(mergeParseProps);
|
|
100
|
+
}
|
|
101
|
+
return RenderAddress(mergeParseProps);
|
|
102
|
+
})
|
|
103
|
+
);
|
|
104
|
+
|
|
105
|
+
export {
|
|
106
|
+
EVMAddressContainer
|
|
107
|
+
};
|
|
108
|
+
//# sourceMappingURL=chunk-X5ZOQIDW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/AddressContainer/EVMAddressContainer.tsx"],"sourcesContent":["import { memo } from 'react';\nimport { WithTranslation, withTranslation } from 'react-i18next';\nimport _ from 'lodash';\nimport {\n formatAddress,\n isEvmAddress,\n isZeroAddress,\n convertCheckSum,\n} from '../../utils/address';\nimport { useGlobalData, getTranslations } from '../../store';\nimport { LOCALSTORAGE_KEYS_MAP } from '../../utils/constants';\nimport { getLabelInfo } from './label';\n\nimport { RenderAddress } from './addressView';\nimport {\n ContractCreatedAddress,\n InvalidAddress,\n ContractAddress,\n MyAddress,\n} from './addressSwitcher';\nimport { GlobalDataType } from 'src/store/types';\nimport { EVMAddressContainerProps } from './types';\n\nconst parseProps = (\n props: EVMAddressContainerProps & WithTranslation,\n globalData: GlobalDataType,\n) => {\n const { alias, t, showAddressLabel, showNametag, nametagInfo } = props;\n const value: string = props.value || '';\n const cfxAddress = formatAddress(value, 'hex');\n\n const translations = getTranslations();\n\n let aliasLabel = alias;\n if (!alias && isZeroAddress(cfxAddress)) {\n aliasLabel = t(translations.general.zeroAddress);\n }\n\n // official name tag\n let officalNametag: React.ReactNode = null;\n // private name tag\n let addressLabel: React.ReactNode = null;\n\n if (cfxAddress && showAddressLabel) {\n // global private name tag\n const addressLabels = globalData?.[LOCALSTORAGE_KEYS_MAP.addressLabel];\n const gAddressLabel =\n addressLabels?.[convertCheckSum(cfxAddress)] ||\n addressLabels?.[cfxAddress.toLowerCase()];\n\n if (gAddressLabel) {\n const { label } = getLabelInfo(gAddressLabel, 'tag');\n addressLabel = label;\n }\n }\n\n if (cfxAddress && showNametag) {\n const nametags =\n nametagInfo?.[convertCheckSum(cfxAddress)] ||\n nametagInfo?.[cfxAddress.toLowerCase()];\n\n if (nametags) {\n const nametag = nametags?.nametag ?? '';\n const { label } = getLabelInfo(nametag, 'nametag');\n officalNametag = label;\n }\n }\n\n return {\n alias: aliasLabel,\n nametag: officalNametag,\n addressLabel,\n cfxAddress,\n };\n};\n\nexport const EVMAddressContainer = withTranslation()(\n memo((props: EVMAddressContainerProps & WithTranslation) => {\n const { globalData } = useGlobalData();\n\n // If a txn receipt has no 'to' address or 'contractCreated', show -- for temp\n if (!props.value && !props.contractCreated) {\n return <>--</>;\n }\n\n const defaultProps = {\n isFull: false,\n isFullNameTag: false,\n link: true,\n isMe: false,\n showIcon: true,\n verify: false,\n showAddressLabel: true,\n showENSLabel: true,\n showNametag: true,\n };\n\n const mergeDefaultProps = _.assign({}, defaultProps, props);\n\n const mergeParseProps = _.merge(\n {},\n mergeDefaultProps,\n parseProps(mergeDefaultProps, globalData),\n );\n\n if (!mergeParseProps.value && mergeParseProps.contractCreated) {\n return ContractCreatedAddress({\n ...mergeParseProps,\n outputType: 'hex',\n });\n }\n\n if (!isEvmAddress(mergeParseProps.value)) {\n return InvalidAddress(mergeParseProps);\n }\n\n if (mergeParseProps.isContract) {\n return ContractAddress(mergeParseProps);\n }\n\n if (mergeParseProps.isMe) {\n return MyAddress(mergeParseProps);\n }\n\n return RenderAddress(mergeParseProps);\n }),\n);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,YAAY;AACrB,SAA0B,uBAAuB;AACjD,OAAO,OAAO;AAgFD;AA3Db,IAAM,aAAa,CACjB,OACA,eACG;AACH,QAAM,EAAE,OAAO,GAAG,kBAAkB,aAAa,YAAY,IAAI;AACjE,QAAM,QAAgB,MAAM,SAAS;AACrC,QAAM,aAAa,cAAc,OAAO,KAAK;AAE7C,QAAM,eAAe,gBAAgB;AAErC,MAAI,aAAa;AACjB,MAAI,CAAC,SAAS,cAAc,UAAU,GAAG;AACvC,iBAAa,EAAE,aAAa,QAAQ,WAAW;AAAA,EACjD;AAGA,MAAI,iBAAkC;AAEtC,MAAI,eAAgC;AAEpC,MAAI,cAAc,kBAAkB;AAElC,UAAM,gBAAgB,6DAA+C;AACrE,UAAM,gBACJ,gBAAgB,gBAAgB,UAAU,CAAC,KAC3C,gBAAgB,WAAW,YAAY,CAAC;AAE1C,QAAI,eAAe;AACjB,YAAM,EAAE,MAAM,IAAI,aAAa,eAAe,KAAK;AACnD,qBAAe;AAAA,IACjB;AAAA,EACF;AAEA,MAAI,cAAc,aAAa;AAC7B,UAAM,WACJ,cAAc,gBAAgB,UAAU,CAAC,KACzC,cAAc,WAAW,YAAY,CAAC;AAExC,QAAI,UAAU;AACZ,YAAM,UAAU,UAAU,WAAW;AACrC,YAAM,EAAE,MAAM,IAAI,aAAa,SAAS,SAAS;AACjD,uBAAiB;AAAA,IACnB;AAAA,EACF;AAEA,SAAO;AAAA,IACL,OAAO;AAAA,IACP,SAAS;AAAA,IACT;AAAA,IACA;AAAA,EACF;AACF;AAEO,IAAM,sBAAsB,gBAAgB;AAAA,EACjD,KAAK,CAAC,UAAsD;AAC1D,UAAM,EAAE,WAAW,IAAI,cAAc;AAGrC,QAAI,CAAC,MAAM,SAAS,CAAC,MAAM,iBAAiB;AAC1C,aAAO,gCAAE,gBAAE;AAAA,IACb;AAEA,UAAM,eAAe;AAAA,MACnB,QAAQ;AAAA,MACR,eAAe;AAAA,MACf,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAU;AAAA,MACV,QAAQ;AAAA,MACR,kBAAkB;AAAA,MAClB,cAAc;AAAA,MACd,aAAa;AAAA,IACf;AAEA,UAAM,oBAAoB,EAAE,OAAO,CAAC,GAAG,cAAc,KAAK;AAE1D,UAAM,kBAAkB,EAAE;AAAA,MACxB,CAAC;AAAA,MACD;AAAA,MACA,WAAW,mBAAmB,UAAU;AAAA,IAC1C;AAEA,QAAI,CAAC,gBAAgB,SAAS,gBAAgB,iBAAiB;AAC7D,aAAO,uBAAuB;AAAA,QAC5B,GAAG;AAAA,QACH,YAAY;AAAA,MACd,CAAC;AAAA,IACH;AAEA,QAAI,CAAC,aAAa,gBAAgB,KAAK,GAAG;AACxC,aAAO,eAAe,eAAe;AAAA,IACvC;AAEA,QAAI,gBAAgB,YAAY;AAC9B,aAAO,gBAAgB,eAAe;AAAA,IACxC;AAEA,QAAI,gBAAgB,MAAM;AACxB,aAAO,UAAU,eAAe;AAAA,IAClC;AAEA,WAAO,cAAc,eAAe;AAAA,EACtC,CAAC;AACH;","names":[]}
|