@vechain/vechain-kit 1.4.0 → 1.4.1
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/index.cjs +983 -898
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +46 -34
- package/dist/index.d.ts +46 -34
- package/dist/index.js +815 -736
- package/dist/index.js.map +1 -1
- package/dist/metafile-cjs.json +1 -1
- package/dist/metafile-esm.json +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -3,11 +3,11 @@ import { getConfig, humanNumber, NodeStrengthLevelToImage, allNodeStrengthLevelT
|
|
|
3
3
|
export { getConfig } from './chunk-CDZXTDVH.js';
|
|
4
4
|
import { SimpleAccountFactoryABI, VechainLogoHorizontal, VechainLogo, SimpleAccountABI, PrivyLogo } from './chunk-IGUWNKV2.js';
|
|
5
5
|
import './chunk-PZ5AY32C.js';
|
|
6
|
-
import
|
|
6
|
+
import React8, { createContext, useState, useEffect, useMemo, useCallback, useContext, useRef } from 'react';
|
|
7
7
|
import { useLoginWithOAuth, usePrivy, useLoginWithPasskey as useLoginWithPasskey$1, useLoginWithEmail, PrivyProvider } from '@privy-io/react-auth';
|
|
8
8
|
export { usePrivy } from '@privy-io/react-auth';
|
|
9
9
|
import { useConnex, useWallet as useWallet$1, useWalletModal as useWalletModal$1, useVechainDomain as useVechainDomain$1, DAppKitProvider } from '@vechain/dapp-kit-react';
|
|
10
|
-
export { useConnex } from '@vechain/dapp-kit-react';
|
|
10
|
+
export { useConnex, useWallet as useDappKitWallet } from '@vechain/dapp-kit-react';
|
|
11
11
|
import { defineChain, formatEther, parseEther, zeroAddress, keccak256, toBytes, concat, encodeFunctionData } from 'viem';
|
|
12
12
|
import { ABIContract, Address, Clause } from '@vechain/sdk-core';
|
|
13
13
|
import { ThorClient, ProviderInternalBaseWallet, VeChainProvider, signerUtils } from '@vechain/sdk-network';
|
|
@@ -22,23 +22,25 @@ import { z } from 'zod';
|
|
|
22
22
|
import { useAccount, createConfig, http, WagmiProvider, useConnect, useSignTypedData, useSignMessage, useDisconnect } from 'wagmi';
|
|
23
23
|
import { toPrivyWalletConnector } from '@privy-io/cross-app-connect/rainbow-kit';
|
|
24
24
|
import { isSafari } from 'react-device-detect';
|
|
25
|
-
import { createMultiStyleConfigHelpers, defineStyle, defineStyleConfig, extendTheme, createStandaloneToast, IconButton, VStack, Text, HStack, Icon, Link, Box, useMediaQuery, Modal, ModalOverlay, ModalContent, Button, Image, Skeleton, Spinner, useDisclosure, GridItem, Divider, InputGroup, InputLeftElement, Input, ModalHeader, ModalCloseButton, ModalBody, Stack, Grid, ModalFooter, useColorModeValue, Card, CardBody, Tag, Alert, AlertIcon, useColorMode, Heading, Tabs, TabList, Tab, TabPanels, TabPanel, Center, Container, InputRightElement, Select, Progress, PinInput, PinInputField, Accordion, AccordionItem, AccordionButton, AccordionPanel, List, ListItem, ChakraProvider, Flex, AlertDescription, Circle } from '@chakra-ui/react';
|
|
25
|
+
import { createMultiStyleConfigHelpers, defineStyle, defineStyleConfig, extendTheme, createStandaloneToast, IconButton, VStack, Text, HStack, Icon, Link, Box, useMediaQuery, Modal, ModalOverlay, ModalContent, Button, Image, Skeleton, Spinner, useDisclosure, GridItem, Divider, InputGroup, InputLeftElement, Input, ModalHeader, ModalCloseButton, ModalBody, Stack, Grid, ModalFooter, useColorModeValue, Card, CardBody, Tag, Alert, AlertIcon, useColorMode, Heading, Tabs, TabList, Tab, TabPanels, TabPanel, CardFooter, Center, Container, InputRightElement, Select, Progress, PinInput, PinInputField, Accordion, AccordionItem, AccordionButton, AccordionPanel, List, ListItem, ChakraProvider, Flex, AlertDescription, Circle } from '@chakra-ui/react';
|
|
26
26
|
import { motion } from 'framer-motion';
|
|
27
|
-
import { IoChevronBack, IoCheckmarkOutline, IoCopyOutline,
|
|
27
|
+
import { IoChevronBack, IoCheckmarkOutline, IoCopyOutline, IoCloseCircle, IoShieldOutline, IoOpenOutline, IoChevronUp, IoChevronDown } from 'react-icons/io5';
|
|
28
28
|
import { BsQuestionCircle, BsBookmarkFill, BsBookmark } from 'react-icons/bs';
|
|
29
29
|
import { FcGoogle, FcCheckmark } from 'react-icons/fc';
|
|
30
|
-
import { IoIosFingerPrint } from 'react-icons/io';
|
|
30
|
+
import { IoIosFingerPrint, IoMdApps } from 'react-icons/io';
|
|
31
31
|
import { HiOutlineWallet } from 'react-icons/hi2';
|
|
32
32
|
import { CiCircleMore, CiSearch } from 'react-icons/ci';
|
|
33
33
|
import { LuMail } from 'react-icons/lu';
|
|
34
|
-
import { MdOutlineNavigateNext, MdSwapHoriz,
|
|
35
|
-
import { BiBell, BiArchive } from 'react-icons/bi';
|
|
36
|
-
import { RiLogoutBoxLine, RiTwitterXFill } from 'react-icons/ri';
|
|
34
|
+
import { MdOutlineNavigateNext, MdSwapHoriz, MdOutlineErrorOutline, MdOutlineRefresh, MdEmail } from 'react-icons/md';
|
|
37
35
|
import { VscRefresh, VscDebugDisconnect } from 'react-icons/vsc';
|
|
38
|
-
import { FaRegArrowAltCircleDown, FaRegAddressCard, FaExternalLinkAlt, FaTelegramPlane, FaGoogle, FaEnvelope, FaTwitter, FaPhone, FaSpotify, FaApple, FaInstagram, FaTiktok, FaGithub, FaLinkedin, FaTelegram, FaDiscord, FaPlus, FaWallet } from 'react-icons/fa';
|
|
36
|
+
import { FaRegArrowAltCircleDown, FaEdit, FaRegAddressCard, FaExternalLinkAlt, FaTelegramPlane, FaGoogle, FaEnvelope, FaTwitter, FaPhone, FaSpotify, FaApple, FaInstagram, FaTiktok, FaGithub, FaLinkedin, FaTelegram, FaDiscord, FaPlus, FaWallet } from 'react-icons/fa';
|
|
39
37
|
import { FiSend, FiSlash, FiArrowDown } from 'react-icons/fi';
|
|
40
|
-
import {
|
|
38
|
+
import { picasso } from '@vechain/picasso';
|
|
39
|
+
import { GrUserAdmin } from 'react-icons/gr';
|
|
40
|
+
import { RiLogoutBoxLine, RiTwitterXFill } from 'react-icons/ri';
|
|
41
|
+
import { BiBell, BiArchive } from 'react-icons/bi';
|
|
41
42
|
import { PiLineVertical } from 'react-icons/pi';
|
|
43
|
+
import { GiHouseKeys, GiConfirmed } from 'react-icons/gi';
|
|
42
44
|
import { QRCode } from 'react-qrcode-logo';
|
|
43
45
|
import { GoLinkExternal } from 'react-icons/go';
|
|
44
46
|
import { FaWhatsapp } from 'react-icons/fa6';
|
|
@@ -1778,7 +1780,7 @@ function getOrCreateQueryClient() {
|
|
|
1778
1780
|
}
|
|
1779
1781
|
var EnsureQueryClient = ({ children }) => {
|
|
1780
1782
|
try {
|
|
1781
|
-
const existingQueryClient =
|
|
1783
|
+
const existingQueryClient = React8.useContext(QueryClientContext);
|
|
1782
1784
|
if (existingQueryClient) {
|
|
1783
1785
|
return /* @__PURE__ */ jsx(Fragment, { children });
|
|
1784
1786
|
}
|
|
@@ -4023,7 +4025,7 @@ var useSendTokenModal = () => {
|
|
|
4023
4025
|
var SendTokenModalProvider = ({
|
|
4024
4026
|
children
|
|
4025
4027
|
}) => /* @__PURE__ */ jsx(Fragment, { children });
|
|
4026
|
-
var
|
|
4028
|
+
var useAccessAndSecurityModal = () => {
|
|
4027
4029
|
const {
|
|
4028
4030
|
openAccountModal,
|
|
4029
4031
|
closeAccountModal,
|
|
@@ -4031,7 +4033,7 @@ var useEmbeddedWalletSettingsModal = () => {
|
|
|
4031
4033
|
setAccountModalContent
|
|
4032
4034
|
} = useVeChainKitConfig();
|
|
4033
4035
|
const open = () => {
|
|
4034
|
-
setAccountModalContent("
|
|
4036
|
+
setAccountModalContent("access-and-security");
|
|
4035
4037
|
openAccountModal();
|
|
4036
4038
|
};
|
|
4037
4039
|
const close = () => {
|
|
@@ -4043,7 +4045,7 @@ var useEmbeddedWalletSettingsModal = () => {
|
|
|
4043
4045
|
isOpen: isAccountModalOpen
|
|
4044
4046
|
};
|
|
4045
4047
|
};
|
|
4046
|
-
var
|
|
4048
|
+
var AccessAndSecurityModalProvider = ({
|
|
4047
4049
|
children
|
|
4048
4050
|
}) => /* @__PURE__ */ jsx(Fragment, { children });
|
|
4049
4051
|
var useExploreEcosystemModal = () => {
|
|
@@ -5195,7 +5197,12 @@ var ModalBackButton = ({ onClick, ...props }) => {
|
|
|
5195
5197
|
}
|
|
5196
5198
|
);
|
|
5197
5199
|
};
|
|
5198
|
-
var AddressDisplay = ({
|
|
5200
|
+
var AddressDisplay = ({
|
|
5201
|
+
wallet,
|
|
5202
|
+
label,
|
|
5203
|
+
size = "lg",
|
|
5204
|
+
style
|
|
5205
|
+
}) => {
|
|
5199
5206
|
const [copied, setCopied] = useState(false);
|
|
5200
5207
|
const [copiedDomain, setCopiedDomain] = useState(false);
|
|
5201
5208
|
const copyToClipboard = async (textToCopy, setCopied2) => {
|
|
@@ -5205,7 +5212,7 @@ var AddressDisplay = ({ wallet, label, size = "lg" }) => {
|
|
|
5205
5212
|
setCopied2(false);
|
|
5206
5213
|
}, 2e3);
|
|
5207
5214
|
};
|
|
5208
|
-
return /* @__PURE__ */ jsx(VStack, { w: "full", justifyContent: "center", children: /* @__PURE__ */ jsxs(VStack, { children: [
|
|
5215
|
+
return /* @__PURE__ */ jsx(VStack, { w: "full", justifyContent: "center", ...style, children: /* @__PURE__ */ jsxs(VStack, { children: [
|
|
5209
5216
|
label && /* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.7, children: label }),
|
|
5210
5217
|
wallet?.domain ? /* @__PURE__ */ jsxs(VStack, { children: [
|
|
5211
5218
|
/* @__PURE__ */ jsxs(
|
|
@@ -5281,7 +5288,7 @@ var AddressDisplay = ({ wallet, label, size = "lg" }) => {
|
|
|
5281
5288
|
// package.json
|
|
5282
5289
|
var package_default = {
|
|
5283
5290
|
name: "@vechain/vechain-kit",
|
|
5284
|
-
version: "1.4.
|
|
5291
|
+
version: "1.4.1",
|
|
5285
5292
|
private: false,
|
|
5286
5293
|
homepage: "https://github.com/vechain/vechain-kit",
|
|
5287
5294
|
repository: "github:vechain/vechain-kit",
|
|
@@ -5765,7 +5772,7 @@ var SocialLoginButtons = ({
|
|
|
5765
5772
|
const selfHostedPrivyLoginMethods = loginMethods?.filter(
|
|
5766
5773
|
(method35) => method35.method === "email" || method35.method === "google"
|
|
5767
5774
|
);
|
|
5768
|
-
return /* @__PURE__ */ jsx(GridItem, { colSpan: gridColumn, w: "full", children: selfHostedPrivyLoginMethods?.map((loginMethod, index) => /* @__PURE__ */ jsxs(
|
|
5775
|
+
return /* @__PURE__ */ jsx(GridItem, { colSpan: gridColumn, w: "full", children: selfHostedPrivyLoginMethods?.map((loginMethod, index) => /* @__PURE__ */ jsxs(React8.Fragment, { children: [
|
|
5769
5776
|
loginMethod.method === "email" && /* @__PURE__ */ jsx(GridItem, { colSpan: 4, w: "full", children: /* @__PURE__ */ jsx(EmailLoginButton, {}) }),
|
|
5770
5777
|
loginMethod.method === "google" && /* @__PURE__ */ jsx(GridItem, { colSpan: 4, w: "full", children: /* @__PURE__ */ jsx(
|
|
5771
5778
|
ConnectionButton,
|
|
@@ -5855,8 +5862,8 @@ var EcosystemButton = ({
|
|
|
5855
5862
|
{
|
|
5856
5863
|
isDark,
|
|
5857
5864
|
onClick: ecosystemModal.onOpen,
|
|
5858
|
-
icon:
|
|
5859
|
-
text: gridColumn && gridColumn >= 2 ? t("
|
|
5865
|
+
icon: IoMdApps,
|
|
5866
|
+
text: gridColumn && gridColumn >= 2 ? t("Other") : void 0
|
|
5860
5867
|
}
|
|
5861
5868
|
) }),
|
|
5862
5869
|
/* @__PURE__ */ jsx(
|
|
@@ -6364,7 +6371,7 @@ var MainContent = ({ setCurrentContent, onClose }) => {
|
|
|
6364
6371
|
gridColumn: gridLayout.veChainColumn
|
|
6365
6372
|
}
|
|
6366
6373
|
)),
|
|
6367
|
-
|
|
6374
|
+
gridLayout.passkeyColumn && /* @__PURE__ */ jsx(
|
|
6368
6375
|
PasskeyLoginButton,
|
|
6369
6376
|
{
|
|
6370
6377
|
isDark,
|
|
@@ -6482,21 +6489,10 @@ var ExchangeWarningAlert = () => {
|
|
|
6482
6489
|
] })
|
|
6483
6490
|
] }) }) });
|
|
6484
6491
|
};
|
|
6485
|
-
var AccountMainContent = ({
|
|
6486
|
-
setCurrentContent,
|
|
6487
|
-
wallet,
|
|
6488
|
-
onClose
|
|
6489
|
-
}) => {
|
|
6492
|
+
var AccountMainContent = ({ setCurrentContent, wallet }) => {
|
|
6490
6493
|
const { t } = useTranslation();
|
|
6491
6494
|
const { darkMode: isDark } = useVeChainKitConfig();
|
|
6492
|
-
const {
|
|
6493
|
-
const { getNotifications } = useNotifications();
|
|
6494
|
-
const notifications = getNotifications();
|
|
6495
|
-
const hasUnreadNotifications = notifications.some((n) => !n.isRead);
|
|
6496
|
-
const handleDisconnect = () => {
|
|
6497
|
-
disconnect();
|
|
6498
|
-
onClose();
|
|
6499
|
-
};
|
|
6495
|
+
const { connection, account } = useWallet();
|
|
6500
6496
|
return /* @__PURE__ */ jsxs(ScrollToTopWrapper, { children: [
|
|
6501
6497
|
/* @__PURE__ */ jsxs(StickyHeaderContainer, { children: [
|
|
6502
6498
|
/* @__PURE__ */ jsx(
|
|
@@ -6519,60 +6515,16 @@ var AccountMainContent = ({
|
|
|
6519
6515
|
setCurrentContent
|
|
6520
6516
|
}
|
|
6521
6517
|
),
|
|
6522
|
-
/* @__PURE__ */
|
|
6523
|
-
|
|
6524
|
-
|
|
6525
|
-
|
|
6526
|
-
|
|
6527
|
-
|
|
6528
|
-
|
|
6529
|
-
|
|
6530
|
-
|
|
6531
|
-
|
|
6532
|
-
type: "disconnect-confirm",
|
|
6533
|
-
props: {
|
|
6534
|
-
onDisconnect: handleDisconnect,
|
|
6535
|
-
onBack: () => setCurrentContent("main")
|
|
6536
|
-
}
|
|
6537
|
-
})
|
|
6538
|
-
}
|
|
6539
|
-
),
|
|
6540
|
-
/* @__PURE__ */ jsx(
|
|
6541
|
-
AccountSelector,
|
|
6542
|
-
{
|
|
6543
|
-
mt: 0,
|
|
6544
|
-
onClick: () => {
|
|
6545
|
-
setCurrentContent("settings");
|
|
6546
|
-
},
|
|
6547
|
-
wallet
|
|
6548
|
-
}
|
|
6549
|
-
),
|
|
6550
|
-
/* @__PURE__ */ jsxs(Box, { position: "relative", children: [
|
|
6551
|
-
/* @__PURE__ */ jsx(
|
|
6552
|
-
IconButton,
|
|
6553
|
-
{
|
|
6554
|
-
p: 2,
|
|
6555
|
-
h: 9,
|
|
6556
|
-
variant: "vechainKitSelector",
|
|
6557
|
-
"aria-label": "notifications",
|
|
6558
|
-
icon: /* @__PURE__ */ jsx(Icon, { boxSize: 5, as: BiBell }),
|
|
6559
|
-
onClick: () => setCurrentContent("notifications")
|
|
6560
|
-
}
|
|
6561
|
-
),
|
|
6562
|
-
hasUnreadNotifications && /* @__PURE__ */ jsx(
|
|
6563
|
-
Box,
|
|
6564
|
-
{
|
|
6565
|
-
position: "absolute",
|
|
6566
|
-
top: 1,
|
|
6567
|
-
right: 1,
|
|
6568
|
-
width: "8px",
|
|
6569
|
-
height: "8px",
|
|
6570
|
-
bg: "red.500",
|
|
6571
|
-
borderRadius: "full"
|
|
6572
|
-
}
|
|
6573
|
-
)
|
|
6574
|
-
] })
|
|
6575
|
-
] }),
|
|
6518
|
+
/* @__PURE__ */ jsx(
|
|
6519
|
+
AccountSelector,
|
|
6520
|
+
{
|
|
6521
|
+
mt: 0,
|
|
6522
|
+
onClick: () => {
|
|
6523
|
+
setCurrentContent("settings");
|
|
6524
|
+
},
|
|
6525
|
+
wallet
|
|
6526
|
+
}
|
|
6527
|
+
),
|
|
6576
6528
|
/* @__PURE__ */ jsx(BalanceSection, { mt: 14 }),
|
|
6577
6529
|
/* @__PURE__ */ jsx(
|
|
6578
6530
|
QuickActionsSection,
|
|
@@ -6659,7 +6611,6 @@ var ActionButton = ({
|
|
|
6659
6611
|
leftIcon,
|
|
6660
6612
|
rightIcon,
|
|
6661
6613
|
title,
|
|
6662
|
-
description,
|
|
6663
6614
|
onClick,
|
|
6664
6615
|
leftImage,
|
|
6665
6616
|
hide = false,
|
|
@@ -6670,7 +6621,8 @@ var ActionButton = ({
|
|
|
6670
6621
|
stacked = false,
|
|
6671
6622
|
isLoading,
|
|
6672
6623
|
loadingText,
|
|
6673
|
-
style
|
|
6624
|
+
style,
|
|
6625
|
+
extraContent
|
|
6674
6626
|
}) => {
|
|
6675
6627
|
const { t } = useTranslation();
|
|
6676
6628
|
const { colorMode } = useColorMode();
|
|
@@ -6703,7 +6655,7 @@ var ActionButton = ({
|
|
|
6703
6655
|
objectFit: "cover"
|
|
6704
6656
|
}
|
|
6705
6657
|
) : /* @__PURE__ */ jsx(Icon, { as: leftIcon, fontSize: "25px" }) }),
|
|
6706
|
-
/* @__PURE__ */
|
|
6658
|
+
/* @__PURE__ */ jsx(
|
|
6707
6659
|
VStack,
|
|
6708
6660
|
{
|
|
6709
6661
|
textAlign: "left",
|
|
@@ -6711,26 +6663,11 @@ var ActionButton = ({
|
|
|
6711
6663
|
flex: 1,
|
|
6712
6664
|
justifyContent: "flex-start",
|
|
6713
6665
|
alignItems: "flex-start",
|
|
6714
|
-
children: [
|
|
6715
|
-
/* @__PURE__ */
|
|
6716
|
-
|
|
6717
|
-
|
|
6718
|
-
|
|
6719
|
-
/* @__PURE__ */ jsx(
|
|
6720
|
-
Text,
|
|
6721
|
-
{
|
|
6722
|
-
fontSize: "xs",
|
|
6723
|
-
fontWeight: "400",
|
|
6724
|
-
opacity: 0.5,
|
|
6725
|
-
overflowWrap: "break-word",
|
|
6726
|
-
wordBreak: "break-word",
|
|
6727
|
-
whiteSpace: "normal",
|
|
6728
|
-
w: "full",
|
|
6729
|
-
pr: rightIcon ? "0px" : "10px",
|
|
6730
|
-
children: description
|
|
6731
|
-
}
|
|
6732
|
-
)
|
|
6733
|
-
]
|
|
6666
|
+
children: /* @__PURE__ */ jsxs(HStack, { justify: "flex-start", children: [
|
|
6667
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "sm", fontWeight: "400", children: title }),
|
|
6668
|
+
showComingSoon && /* @__PURE__ */ jsx(Tag, { size: "sm", colorScheme: "red", children: t("Coming Soon!") }),
|
|
6669
|
+
extraContent
|
|
6670
|
+
] })
|
|
6734
6671
|
}
|
|
6735
6672
|
),
|
|
6736
6673
|
rightIcon && /* @__PURE__ */ jsx(VStack, { minW: "40px", justifyContent: "flex-end", children: /* @__PURE__ */ jsx(Icon, { as: rightIcon, fontSize: "20px", opacity: 0.5 }) })
|
|
@@ -6744,13 +6681,13 @@ var AccountSelector = ({
|
|
|
6744
6681
|
onClick,
|
|
6745
6682
|
mt
|
|
6746
6683
|
}) => {
|
|
6747
|
-
return /* @__PURE__ */ jsx(HStack, { mt, children: /* @__PURE__ */ jsx(
|
|
6684
|
+
return /* @__PURE__ */ jsx(HStack, { mt, w: "full", justify: "center", children: /* @__PURE__ */ jsx(
|
|
6748
6685
|
Button,
|
|
6749
6686
|
{
|
|
6750
6687
|
w: "fit-content",
|
|
6751
6688
|
p: 2,
|
|
6752
6689
|
pl: 4,
|
|
6753
|
-
h:
|
|
6690
|
+
h: 14,
|
|
6754
6691
|
"aria-label": "Wallet",
|
|
6755
6692
|
onClick,
|
|
6756
6693
|
variant: "vechainKitSelector",
|
|
@@ -6759,10 +6696,10 @@ var AccountSelector = ({
|
|
|
6759
6696
|
AccountAvatar,
|
|
6760
6697
|
{
|
|
6761
6698
|
wallet,
|
|
6762
|
-
props: { width:
|
|
6699
|
+
props: { width: 10, height: 10 }
|
|
6763
6700
|
}
|
|
6764
6701
|
),
|
|
6765
|
-
/* @__PURE__ */ jsx(Text, { fontSize: size, fontWeight: "500", children: humanDomain(wallet?.domain ?? "",
|
|
6702
|
+
/* @__PURE__ */ jsx(Text, { fontSize: size, fontWeight: "500", children: humanDomain(wallet?.domain ?? "", 20, 0) || humanAddress(wallet?.address ?? "", 6, 4) }),
|
|
6766
6703
|
/* @__PURE__ */ jsx(
|
|
6767
6704
|
Icon,
|
|
6768
6705
|
{
|
|
@@ -6962,8 +6899,8 @@ var QuickActionsSection = ({ mt, setCurrentContent }) => {
|
|
|
6962
6899
|
py: 3,
|
|
6963
6900
|
fontSize: "xs",
|
|
6964
6901
|
verticalAlign: "middle",
|
|
6965
|
-
"aria-label": "
|
|
6966
|
-
icon: /* @__PURE__ */ jsx(Icon, { as:
|
|
6902
|
+
"aria-label": "Apps",
|
|
6903
|
+
icon: /* @__PURE__ */ jsx(Icon, { as: IoMdApps, boxSize: 5, opacity: 0.9 }),
|
|
6967
6904
|
onClick: () => setCurrentContent("ecosystem")
|
|
6968
6905
|
}
|
|
6969
6906
|
),
|
|
@@ -7016,267 +6953,174 @@ var QuickActionsSection = ({ mt, setCurrentContent }) => {
|
|
|
7016
6953
|
)
|
|
7017
6954
|
] });
|
|
7018
6955
|
};
|
|
7019
|
-
var
|
|
6956
|
+
var Profile = ({ onEditClick }) => {
|
|
6957
|
+
const { darkMode: isDark } = useVeChainKitConfig();
|
|
6958
|
+
const { account } = useWallet();
|
|
6959
|
+
const baseBackgroundColor = isDark ? "whiteAlpha.100" : "#00000005";
|
|
6960
|
+
const headerImageSvg = picasso(account?.address ?? "");
|
|
6961
|
+
return /* @__PURE__ */ jsxs(
|
|
6962
|
+
Card,
|
|
6963
|
+
{
|
|
6964
|
+
bg: baseBackgroundColor,
|
|
6965
|
+
borderRadius: "xl",
|
|
6966
|
+
width: "full",
|
|
6967
|
+
position: "relative",
|
|
6968
|
+
overflow: "visible",
|
|
6969
|
+
children: [
|
|
6970
|
+
/* @__PURE__ */ jsx(
|
|
6971
|
+
Box,
|
|
6972
|
+
{
|
|
6973
|
+
p: 0,
|
|
6974
|
+
backgroundSize: "100% !important",
|
|
6975
|
+
backgroundPosition: "center",
|
|
6976
|
+
position: "relative",
|
|
6977
|
+
h: "80px",
|
|
6978
|
+
background: `no-repeat url('data:image/svg+xml;utf8,${headerImageSvg}')`,
|
|
6979
|
+
w: "100%",
|
|
6980
|
+
borderRadius: "14px 14px 0 0"
|
|
6981
|
+
}
|
|
6982
|
+
),
|
|
6983
|
+
/* @__PURE__ */ jsx(
|
|
6984
|
+
Box,
|
|
6985
|
+
{
|
|
6986
|
+
position: "absolute",
|
|
6987
|
+
top: "30px",
|
|
6988
|
+
left: "50%",
|
|
6989
|
+
transform: "translateX(-50%)",
|
|
6990
|
+
children: /* @__PURE__ */ jsx(
|
|
6991
|
+
AccountAvatar,
|
|
6992
|
+
{
|
|
6993
|
+
wallet: account,
|
|
6994
|
+
props: {
|
|
6995
|
+
width: "100px",
|
|
6996
|
+
height: "100px",
|
|
6997
|
+
boxShadow: "0px 0px 3px 2px #00000024"
|
|
6998
|
+
}
|
|
6999
|
+
}
|
|
7000
|
+
)
|
|
7001
|
+
}
|
|
7002
|
+
),
|
|
7003
|
+
/* @__PURE__ */ jsx(CardBody, { pt: "14", pb: "6", backgroundColor: "none", border: "none", children: /* @__PURE__ */ jsx(AddressDisplay, { wallet: account }) }),
|
|
7004
|
+
/* @__PURE__ */ jsx(CardFooter, { pt: 0, justify: "center", children: /* @__PURE__ */ jsx(
|
|
7005
|
+
Button,
|
|
7006
|
+
{
|
|
7007
|
+
size: "sm",
|
|
7008
|
+
variant: "ghost",
|
|
7009
|
+
leftIcon: /* @__PURE__ */ jsx(Icon, { as: FaEdit }),
|
|
7010
|
+
onClick: onEditClick,
|
|
7011
|
+
children: "Edit"
|
|
7012
|
+
}
|
|
7013
|
+
) })
|
|
7014
|
+
]
|
|
7015
|
+
}
|
|
7016
|
+
);
|
|
7017
|
+
};
|
|
7018
|
+
var AccessAndSecurityContent = ({ setCurrentContent }) => {
|
|
7020
7019
|
const { t } = useTranslation();
|
|
7021
|
-
const {
|
|
7022
|
-
const {
|
|
7023
|
-
|
|
7024
|
-
|
|
7025
|
-
|
|
7026
|
-
|
|
7027
|
-
|
|
7028
|
-
] }),
|
|
7029
|
-
/* @__PURE__ */ jsx(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: connection.source.type })
|
|
7030
|
-
] }),
|
|
7031
|
-
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7032
|
-
/* @__PURE__ */ jsxs(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: [
|
|
7033
|
-
t("Network"),
|
|
7034
|
-
":"
|
|
7035
|
-
] }),
|
|
7036
|
-
/* @__PURE__ */ jsx(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: network.type })
|
|
7037
|
-
] }),
|
|
7038
|
-
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7039
|
-
/* @__PURE__ */ jsxs(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: [
|
|
7040
|
-
t("Node URL"),
|
|
7041
|
-
":"
|
|
7042
|
-
] }),
|
|
7043
|
-
/* @__PURE__ */ jsx(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: network.nodeUrl || getConfig(network.type).nodeUrl })
|
|
7044
|
-
] }),
|
|
7045
|
-
connection.isConnectedWithPrivy ? /* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7046
|
-
/* @__PURE__ */ jsxs(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: [
|
|
7047
|
-
t("Smart Account"),
|
|
7048
|
-
":"
|
|
7049
|
-
] }),
|
|
7050
|
-
/* @__PURE__ */ jsx(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: smartAccount.version ? `v${smartAccount.version}` : "v1" })
|
|
7051
|
-
] }) : smartAccount.isDeployed && /* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7052
|
-
/* @__PURE__ */ jsxs(
|
|
7053
|
-
Text,
|
|
7020
|
+
const { linkPasskey } = usePrivy();
|
|
7021
|
+
const { darkMode: isDark, privy } = useVeChainKitConfig();
|
|
7022
|
+
const { connection } = useWallet();
|
|
7023
|
+
return /* @__PURE__ */ jsxs(ScrollToTopWrapper, { children: [
|
|
7024
|
+
/* @__PURE__ */ jsxs(StickyHeaderContainer, { children: [
|
|
7025
|
+
/* @__PURE__ */ jsx(
|
|
7026
|
+
ModalHeader,
|
|
7054
7027
|
{
|
|
7055
|
-
fontSize: "
|
|
7028
|
+
fontSize: "md",
|
|
7029
|
+
fontWeight: "500",
|
|
7030
|
+
textAlign: "center",
|
|
7056
7031
|
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7057
|
-
children:
|
|
7058
|
-
t("Smart Account"),
|
|
7059
|
-
":"
|
|
7060
|
-
]
|
|
7032
|
+
children: t("Access and security")
|
|
7061
7033
|
}
|
|
7062
7034
|
),
|
|
7063
7035
|
/* @__PURE__ */ jsx(
|
|
7064
|
-
|
|
7036
|
+
ModalBackButton,
|
|
7065
7037
|
{
|
|
7066
|
-
|
|
7067
|
-
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7068
|
-
children: smartAccount.version ? `v${smartAccount.version}` : "v1"
|
|
7038
|
+
onClick: () => setCurrentContent("settings")
|
|
7069
7039
|
}
|
|
7070
|
-
)
|
|
7040
|
+
),
|
|
7041
|
+
/* @__PURE__ */ jsx(ModalCloseButton, {})
|
|
7071
7042
|
] }),
|
|
7072
|
-
/* @__PURE__ */
|
|
7073
|
-
|
|
7074
|
-
|
|
7075
|
-
|
|
7076
|
-
|
|
7077
|
-
|
|
7078
|
-
|
|
7079
|
-
|
|
7080
|
-
|
|
7081
|
-
|
|
7082
|
-
|
|
7083
|
-
|
|
7084
|
-
|
|
7085
|
-
VStack,
|
|
7086
|
-
{
|
|
7087
|
-
p: 4,
|
|
7088
|
-
bg: isDark ? "#1a1a1a" : "#f5f5f5",
|
|
7089
|
-
borderRadius: "xl",
|
|
7090
|
-
spacing: 4,
|
|
7091
|
-
w: "full",
|
|
7092
|
-
children: [
|
|
7093
|
-
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7094
|
-
/* @__PURE__ */ jsxs(
|
|
7095
|
-
Text,
|
|
7043
|
+
/* @__PURE__ */ jsx(ModalBody, { w: "full", children: /* @__PURE__ */ jsxs(
|
|
7044
|
+
VStack,
|
|
7045
|
+
{
|
|
7046
|
+
justify: "center",
|
|
7047
|
+
spacing: 3,
|
|
7048
|
+
align: "flex-start",
|
|
7049
|
+
w: "full",
|
|
7050
|
+
children: [
|
|
7051
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.5, children: t(
|
|
7052
|
+
"Manage your embedded wallet security settings or back it up to a new device."
|
|
7053
|
+
) }),
|
|
7054
|
+
/* @__PURE__ */ jsx(
|
|
7055
|
+
ActionButton,
|
|
7096
7056
|
{
|
|
7097
|
-
|
|
7098
|
-
|
|
7099
|
-
|
|
7100
|
-
|
|
7101
|
-
|
|
7102
|
-
|
|
7057
|
+
title: t("Passkey"),
|
|
7058
|
+
description: t(
|
|
7059
|
+
"Enable one click login by adding a passkey to your account."
|
|
7060
|
+
),
|
|
7061
|
+
onClick: () => {
|
|
7062
|
+
linkPasskey();
|
|
7063
|
+
},
|
|
7064
|
+
leftIcon: IoIosFingerPrint,
|
|
7065
|
+
rightIcon: void 0,
|
|
7066
|
+
isDisabled: !privy?.allowPasskeyLinking
|
|
7103
7067
|
}
|
|
7104
7068
|
),
|
|
7105
7069
|
/* @__PURE__ */ jsx(
|
|
7106
|
-
|
|
7107
|
-
{
|
|
7108
|
-
fontSize: "sm",
|
|
7109
|
-
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7110
|
-
children: connectionCache.ecosystemApp.name
|
|
7111
|
-
}
|
|
7112
|
-
)
|
|
7113
|
-
] }),
|
|
7114
|
-
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7115
|
-
/* @__PURE__ */ jsxs(
|
|
7116
|
-
Text,
|
|
7070
|
+
ActionButton,
|
|
7117
7071
|
{
|
|
7118
|
-
|
|
7119
|
-
|
|
7120
|
-
|
|
7121
|
-
|
|
7122
|
-
|
|
7123
|
-
|
|
7072
|
+
title: t("Login methods"),
|
|
7073
|
+
description: t(
|
|
7074
|
+
connection.isConnectedWithSocialLogin ? "View and manage the login methods linked to your wallet." : "Login methods can be managed only in the app securing your wallet."
|
|
7075
|
+
),
|
|
7076
|
+
onClick: () => {
|
|
7077
|
+
setCurrentContent("privy-linked-accounts");
|
|
7078
|
+
},
|
|
7079
|
+
isDisabled: !connection.isConnectedWithSocialLogin,
|
|
7080
|
+
leftIcon: GrUserAdmin,
|
|
7081
|
+
rightIcon: MdOutlineNavigateNext
|
|
7124
7082
|
}
|
|
7125
7083
|
),
|
|
7126
7084
|
/* @__PURE__ */ jsx(
|
|
7127
|
-
|
|
7085
|
+
ActionButton,
|
|
7128
7086
|
{
|
|
7129
|
-
|
|
7130
|
-
|
|
7131
|
-
|
|
7132
|
-
|
|
7133
|
-
|
|
7087
|
+
title: t("Embedded wallet"),
|
|
7088
|
+
description: t(
|
|
7089
|
+
connection.isConnectedWithSocialLogin ? "Store your Recovery Phrase or Private Key in a secure location, avoid losing access to your assets." : "Backup can be done only in the app securing your wallet."
|
|
7090
|
+
),
|
|
7091
|
+
onClick: () => {
|
|
7092
|
+
setCurrentContent("embedded-wallet");
|
|
7093
|
+
},
|
|
7094
|
+
leftIcon: HiOutlineWallet,
|
|
7095
|
+
rightIcon: MdOutlineNavigateNext
|
|
7134
7096
|
}
|
|
7135
7097
|
)
|
|
7136
|
-
]
|
|
7137
|
-
|
|
7138
|
-
|
|
7139
|
-
}
|
|
7140
|
-
|
|
7098
|
+
]
|
|
7099
|
+
}
|
|
7100
|
+
) }),
|
|
7101
|
+
/* @__PURE__ */ jsx(ModalFooter, { w: "full" })
|
|
7102
|
+
] });
|
|
7141
7103
|
};
|
|
7142
|
-
var
|
|
7143
|
-
|
|
7144
|
-
|
|
7145
|
-
|
|
7146
|
-
|
|
7147
|
-
VStack,
|
|
7148
|
-
{
|
|
7149
|
-
p: 4,
|
|
7150
|
-
bg: isDark ? "#1a1a1a" : "#f5f5f5",
|
|
7151
|
-
borderRadius: "xl",
|
|
7152
|
-
spacing: 4,
|
|
7153
|
-
w: "full",
|
|
7154
|
-
justifyContent: "space-between",
|
|
7155
|
-
children: [
|
|
7156
|
-
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7157
|
-
/* @__PURE__ */ jsxs(
|
|
7158
|
-
Text,
|
|
7159
|
-
{
|
|
7160
|
-
fontSize: "sm",
|
|
7161
|
-
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7162
|
-
children: [
|
|
7163
|
-
t("Logged in with"),
|
|
7164
|
-
":"
|
|
7165
|
-
]
|
|
7166
|
-
}
|
|
7167
|
-
),
|
|
7168
|
-
/* @__PURE__ */ jsx(
|
|
7169
|
-
Text,
|
|
7170
|
-
{
|
|
7171
|
-
fontSize: "sm",
|
|
7172
|
-
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7173
|
-
children: source
|
|
7174
|
-
}
|
|
7175
|
-
)
|
|
7176
|
-
] }),
|
|
7177
|
-
/* @__PURE__ */ jsx(NetworkInfo, {})
|
|
7178
|
-
]
|
|
7179
|
-
}
|
|
7180
|
-
) });
|
|
7181
|
-
};
|
|
7182
|
-
var PrivyConnectionCard = () => {
|
|
7104
|
+
var SettingsContent = ({
|
|
7105
|
+
setCurrentContent,
|
|
7106
|
+
onLogoutSuccess
|
|
7107
|
+
}) => {
|
|
7108
|
+
const contentRef = useRef(null);
|
|
7183
7109
|
const { t } = useTranslation();
|
|
7184
7110
|
const { privy, darkMode: isDark } = useVeChainKitConfig();
|
|
7185
|
-
const {
|
|
7186
|
-
if (isLoading)
|
|
7187
|
-
return /* @__PURE__ */ jsx(VStack, { w: "full", h: "full", justify: "center", align: "center", children: /* @__PURE__ */ jsx(Spinner, {}) });
|
|
7188
|
-
return /* @__PURE__ */ jsx(Fragment, { children: appInfo && /* @__PURE__ */ jsxs(
|
|
7189
|
-
VStack,
|
|
7190
|
-
{
|
|
7191
|
-
p: 4,
|
|
7192
|
-
bg: isDark ? "#1a1a1a" : "#f5f5f5",
|
|
7193
|
-
borderRadius: "xl",
|
|
7194
|
-
spacing: 4,
|
|
7195
|
-
w: "full",
|
|
7196
|
-
justifyContent: "space-between",
|
|
7197
|
-
children: [
|
|
7198
|
-
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7199
|
-
/* @__PURE__ */ jsxs(
|
|
7200
|
-
Text,
|
|
7201
|
-
{
|
|
7202
|
-
fontSize: "sm",
|
|
7203
|
-
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7204
|
-
children: [
|
|
7205
|
-
t("Logged in with"),
|
|
7206
|
-
":"
|
|
7207
|
-
]
|
|
7208
|
-
}
|
|
7209
|
-
),
|
|
7210
|
-
/* @__PURE__ */ jsx(
|
|
7211
|
-
Text,
|
|
7212
|
-
{
|
|
7213
|
-
fontSize: "sm",
|
|
7214
|
-
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7215
|
-
children: Object.values(appInfo)[0].name
|
|
7216
|
-
}
|
|
7217
|
-
)
|
|
7218
|
-
] }),
|
|
7219
|
-
/* @__PURE__ */ jsx(NetworkInfo, {})
|
|
7220
|
-
]
|
|
7221
|
-
}
|
|
7222
|
-
) });
|
|
7223
|
-
};
|
|
7224
|
-
var WalletSecuredBy = () => {
|
|
7225
|
-
const { connection } = useWallet();
|
|
7226
|
-
const { t } = useTranslation();
|
|
7227
|
-
const { darkMode: isDark, privy } = useVeChainKitConfig();
|
|
7111
|
+
const { connection, disconnect } = useWallet();
|
|
7228
7112
|
const { getConnectionCache } = useCrossAppConnectionCache();
|
|
7229
7113
|
const connectionCache = getConnectionCache();
|
|
7230
|
-
|
|
7231
|
-
|
|
7232
|
-
|
|
7233
|
-
|
|
7234
|
-
|
|
7235
|
-
|
|
7236
|
-
|
|
7237
|
-
p: 3,
|
|
7238
|
-
borderRadius: "lg",
|
|
7239
|
-
bg: isDark ? "whiteAlpha.100" : "blackAlpha.50",
|
|
7240
|
-
shadow: "sm",
|
|
7241
|
-
children: [
|
|
7242
|
-
/* @__PURE__ */ jsx(Text, { fontSize: "xs", fontWeight: "800", children: t("Wallet secured by") }),
|
|
7243
|
-
/* @__PURE__ */ jsxs(HStack, { justify: "center", children: [
|
|
7244
|
-
/* @__PURE__ */ jsx(PrivyLogo, { isDark, w: "50px" }),
|
|
7245
|
-
/* @__PURE__ */ jsx(Icon, { as: PiLineVertical, ml: 2 }),
|
|
7246
|
-
connection.isConnectedWithVeChain ? /* @__PURE__ */ jsx(VechainLogoHorizontal, { isDark, w: "69px" }) : connection.isConnectedWithCrossApp && connectionCache && /* @__PURE__ */ jsx(
|
|
7247
|
-
Image,
|
|
7248
|
-
{
|
|
7249
|
-
src: connectionCache.ecosystemApp.logoUrl,
|
|
7250
|
-
alt: connectionCache.ecosystemApp.name,
|
|
7251
|
-
maxW: "40px",
|
|
7252
|
-
borderRadius: "md"
|
|
7253
|
-
}
|
|
7254
|
-
),
|
|
7255
|
-
connection.isConnectedWithSocialLogin && !connection.isConnectedWithVeChain && /* @__PURE__ */ jsx(
|
|
7256
|
-
Image,
|
|
7257
|
-
{
|
|
7258
|
-
src: privy?.appearance.logo,
|
|
7259
|
-
alt: privy?.appearance.logo,
|
|
7260
|
-
maxW: "40px",
|
|
7261
|
-
borderRadius: "md"
|
|
7262
|
-
}
|
|
7263
|
-
)
|
|
7264
|
-
] })
|
|
7265
|
-
]
|
|
7114
|
+
const { data: appInfo } = useFetchAppInfo(privy?.appId ?? "");
|
|
7115
|
+
const { getNotifications } = useNotifications();
|
|
7116
|
+
const notifications = getNotifications();
|
|
7117
|
+
const hasUnreadNotifications = notifications.some((n) => !n.isRead);
|
|
7118
|
+
useEffect(() => {
|
|
7119
|
+
if (contentRef.current) {
|
|
7120
|
+
contentRef.current.scrollTop = 0;
|
|
7266
7121
|
}
|
|
7267
|
-
);
|
|
7268
|
-
|
|
7269
|
-
var EmbeddedWalletContent = ({ setCurrentContent }) => {
|
|
7270
|
-
const { t } = useTranslation();
|
|
7271
|
-
const [showFullText, setShowFullText] = useState(false);
|
|
7272
|
-
const { connectedWallet } = useWallet();
|
|
7273
|
-
const { exportWallet } = usePrivy();
|
|
7274
|
-
const walletImage = getPicassoImage(connectedWallet?.address ?? "");
|
|
7275
|
-
const { getConnectionCache } = useCrossAppConnectionCache();
|
|
7276
|
-
const { darkMode: isDark } = useVeChainKitConfig();
|
|
7277
|
-
const { connection } = useWallet();
|
|
7278
|
-
const connectionCache = getConnectionCache();
|
|
7279
|
-
return /* @__PURE__ */ jsxs(ScrollToTopWrapper, { children: [
|
|
7122
|
+
}, []);
|
|
7123
|
+
return /* @__PURE__ */ jsxs(Box, { children: [
|
|
7280
7124
|
/* @__PURE__ */ jsxs(StickyHeaderContainer, { children: [
|
|
7281
7125
|
/* @__PURE__ */ jsx(
|
|
7282
7126
|
ModalHeader,
|
|
@@ -7285,268 +7129,103 @@ var EmbeddedWalletContent = ({ setCurrentContent }) => {
|
|
|
7285
7129
|
fontWeight: "500",
|
|
7286
7130
|
textAlign: "center",
|
|
7287
7131
|
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7288
|
-
children: t("
|
|
7132
|
+
children: t("Settings")
|
|
7289
7133
|
}
|
|
7290
7134
|
),
|
|
7135
|
+
/* @__PURE__ */ jsx(ModalBackButton, { onClick: () => setCurrentContent("main") }),
|
|
7136
|
+
/* @__PURE__ */ jsx(ModalCloseButton, {})
|
|
7137
|
+
] }),
|
|
7138
|
+
/* @__PURE__ */ jsxs(ModalBody, { w: "full", children: [
|
|
7291
7139
|
/* @__PURE__ */ jsx(
|
|
7292
|
-
|
|
7140
|
+
Profile,
|
|
7293
7141
|
{
|
|
7294
|
-
|
|
7142
|
+
onEditClick: () => setCurrentContent("account-customization")
|
|
7295
7143
|
}
|
|
7296
7144
|
),
|
|
7297
|
-
/* @__PURE__ */
|
|
7298
|
-
|
|
7299
|
-
|
|
7300
|
-
|
|
7301
|
-
|
|
7302
|
-
|
|
7303
|
-
|
|
7304
|
-
|
|
7305
|
-
|
|
7306
|
-
|
|
7307
|
-
|
|
7308
|
-
/* @__PURE__ */ jsx(
|
|
7309
|
-
Image,
|
|
7310
|
-
{
|
|
7311
|
-
src: walletImage,
|
|
7312
|
-
maxW: "100px",
|
|
7313
|
-
borderRadius: "50%"
|
|
7314
|
-
}
|
|
7145
|
+
/* @__PURE__ */ jsxs(VStack, { w: "full", spacing: 0, children: [
|
|
7146
|
+
/* @__PURE__ */ jsx(
|
|
7147
|
+
ActionButton,
|
|
7148
|
+
{
|
|
7149
|
+
style: {
|
|
7150
|
+
marginTop: "10px",
|
|
7151
|
+
borderBottomRadius: connection.isConnectedWithPrivy ? "0px" : "12px"
|
|
7152
|
+
},
|
|
7153
|
+
title: t("Connection details"),
|
|
7154
|
+
description: t(
|
|
7155
|
+
"View the details of your connection to this app."
|
|
7315
7156
|
),
|
|
7316
|
-
|
|
7317
|
-
|
|
7318
|
-
|
|
7319
|
-
|
|
7320
|
-
|
|
7157
|
+
onClick: () => {
|
|
7158
|
+
setCurrentContent("connection-details");
|
|
7159
|
+
},
|
|
7160
|
+
leftIcon: VscDebugDisconnect,
|
|
7161
|
+
rightIcon: MdOutlineNavigateNext
|
|
7162
|
+
}
|
|
7163
|
+
),
|
|
7164
|
+
connection.isConnectedWithPrivy && /* @__PURE__ */ jsx(
|
|
7165
|
+
ActionButton,
|
|
7166
|
+
{
|
|
7167
|
+
style: {
|
|
7168
|
+
borderTopRadius: "0px"
|
|
7169
|
+
},
|
|
7170
|
+
title: t("Access and security"),
|
|
7171
|
+
description: t(
|
|
7172
|
+
"Manage your embedded wallet security settings or back it up to a new device."
|
|
7173
|
+
),
|
|
7174
|
+
onClick: () => {
|
|
7175
|
+
setCurrentContent("access-and-security");
|
|
7176
|
+
},
|
|
7177
|
+
leftIcon: IoShieldOutline,
|
|
7178
|
+
rightIcon: MdOutlineNavigateNext
|
|
7179
|
+
}
|
|
7180
|
+
),
|
|
7181
|
+
/* @__PURE__ */ jsx(
|
|
7182
|
+
ActionButton,
|
|
7183
|
+
{
|
|
7184
|
+
style: {
|
|
7185
|
+
marginTop: "10px",
|
|
7186
|
+
borderBottomRadius: "0px"
|
|
7187
|
+
},
|
|
7188
|
+
title: t("Notifications"),
|
|
7189
|
+
description: t("View your notifications and updates."),
|
|
7190
|
+
onClick: () => {
|
|
7191
|
+
setCurrentContent("notifications");
|
|
7192
|
+
},
|
|
7193
|
+
leftIcon: BiBell,
|
|
7194
|
+
rightIcon: MdOutlineNavigateNext,
|
|
7195
|
+
extraContent: hasUnreadNotifications && /* @__PURE__ */ jsx(
|
|
7196
|
+
Box,
|
|
7321
7197
|
{
|
|
7322
|
-
|
|
7198
|
+
minWidth: "16px",
|
|
7199
|
+
height: "16px",
|
|
7200
|
+
bg: "red.500",
|
|
7201
|
+
borderRadius: "full",
|
|
7202
|
+
display: "flex",
|
|
7203
|
+
alignItems: "center",
|
|
7204
|
+
justifyContent: "center",
|
|
7205
|
+
ml: 2,
|
|
7206
|
+
children: /* @__PURE__ */ jsx(Text, { fontSize: "xs", color: "white", children: notifications.filter(
|
|
7207
|
+
(n) => !n.isRead
|
|
7208
|
+
).length })
|
|
7323
7209
|
}
|
|
7324
|
-
)
|
|
7325
|
-
|
|
7326
|
-
|
|
7327
|
-
|
|
7328
|
-
|
|
7329
|
-
|
|
7330
|
-
|
|
7331
|
-
|
|
7332
|
-
|
|
7333
|
-
/* @__PURE__ */ jsx(
|
|
7334
|
-
Button,
|
|
7210
|
+
)
|
|
7211
|
+
}
|
|
7212
|
+
),
|
|
7213
|
+
/* @__PURE__ */ jsx(
|
|
7214
|
+
ActionButton,
|
|
7215
|
+
{
|
|
7216
|
+
title: t("Help"),
|
|
7217
|
+
description: t(
|
|
7218
|
+
"Still have some doubts? Check out our FAQs and learn more.",
|
|
7335
7219
|
{
|
|
7336
|
-
|
|
7337
|
-
variant: "link",
|
|
7338
|
-
size: "sm",
|
|
7339
|
-
onClick: () => setShowFullText(!showFullText),
|
|
7340
|
-
color: "blue.500",
|
|
7341
|
-
textAlign: "left",
|
|
7342
|
-
children: t(showFullText ? "Show Less" : "Read More")
|
|
7343
|
-
}
|
|
7344
|
-
)
|
|
7345
|
-
] }),
|
|
7346
|
-
connection.isConnectedWithSocialLogin && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
7347
|
-
/* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.5, children: t(
|
|
7348
|
-
"You are using an Embedded Wallet secured by your social login method, ensuring a seamless VeChain experience."
|
|
7349
|
-
) }),
|
|
7350
|
-
showFullText && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
7351
|
-
/* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.5, children: t(
|
|
7352
|
-
"This wallet is the owner of your smart account, which is used as your identity and as a gateway for your blockchain interactions."
|
|
7353
|
-
) }),
|
|
7354
|
-
/* @__PURE__ */ jsxs(Text, { fontSize: "sm", opacity: 0.5, children: [
|
|
7355
|
-
t(
|
|
7356
|
-
"We highly recommend exporting your private key to back up your wallet. This ensures you can restore it if needed or transfer it to self-custody using"
|
|
7357
|
-
),
|
|
7358
|
-
/* @__PURE__ */ jsxs(
|
|
7359
|
-
Link,
|
|
7360
|
-
{
|
|
7361
|
-
href: "https://www.veworld.net/",
|
|
7362
|
-
isExternal: true,
|
|
7363
|
-
color: "gray.500",
|
|
7364
|
-
fontSize: "14px",
|
|
7365
|
-
textDecoration: "underline",
|
|
7366
|
-
children: [
|
|
7367
|
-
" ",
|
|
7368
|
-
t("VeWorld Wallet"),
|
|
7369
|
-
/* @__PURE__ */ jsx(Icon, { ml: 1, as: IoOpenOutline })
|
|
7370
|
-
]
|
|
7371
|
-
}
|
|
7372
|
-
),
|
|
7373
|
-
"."
|
|
7374
|
-
] }),
|
|
7375
|
-
/* @__PURE__ */ jsxs(Text, { fontSize: "sm", opacity: 0.5, children: [
|
|
7376
|
-
t("Click"),
|
|
7377
|
-
" ",
|
|
7378
|
-
/* @__PURE__ */ jsx(
|
|
7379
|
-
Link,
|
|
7380
|
-
{
|
|
7381
|
-
href: "https://docs.vechain-kit.vechain.org/vechain-kit/embedded-wallets",
|
|
7382
|
-
isExternal: true,
|
|
7383
|
-
color: "gray.500",
|
|
7384
|
-
fontSize: "14px",
|
|
7385
|
-
textDecoration: "underline",
|
|
7386
|
-
children: t("here")
|
|
7387
|
-
}
|
|
7388
|
-
),
|
|
7389
|
-
" ",
|
|
7390
|
-
t(
|
|
7391
|
-
"to learn more about embedded wallets."
|
|
7392
|
-
)
|
|
7393
|
-
] })
|
|
7394
|
-
] }),
|
|
7395
|
-
/* @__PURE__ */ jsx(
|
|
7396
|
-
Button,
|
|
7397
|
-
{
|
|
7398
|
-
mt: 0,
|
|
7399
|
-
variant: "link",
|
|
7400
|
-
size: "sm",
|
|
7401
|
-
onClick: () => setShowFullText(!showFullText),
|
|
7402
|
-
color: "blue.500",
|
|
7403
|
-
textAlign: "left",
|
|
7404
|
-
children: t(showFullText ? "Show Less" : "Read More")
|
|
7405
|
-
}
|
|
7406
|
-
)
|
|
7407
|
-
] }),
|
|
7408
|
-
/* @__PURE__ */ jsx(
|
|
7409
|
-
ActionButton,
|
|
7410
|
-
{
|
|
7411
|
-
title: t("Backup your wallet"),
|
|
7412
|
-
description: t(
|
|
7413
|
-
connection.isConnectedWithSocialLogin ? "Store your Recovery Phrase or Private Key in a secure location, avoid losing access to your assets." : "Backup can be done only in the app securing your wallet."
|
|
7414
|
-
),
|
|
7415
|
-
onClick: () => {
|
|
7416
|
-
exportWallet();
|
|
7417
|
-
},
|
|
7418
|
-
isDisabled: !connection.isConnectedWithSocialLogin,
|
|
7419
|
-
leftIcon: GiHouseKeys,
|
|
7420
|
-
rightIcon: MdOutlineNavigateNext
|
|
7421
|
-
}
|
|
7422
|
-
),
|
|
7423
|
-
/* @__PURE__ */ jsx(
|
|
7424
|
-
ActionButton,
|
|
7425
|
-
{
|
|
7426
|
-
title: t("Login methods"),
|
|
7427
|
-
description: t(
|
|
7428
|
-
connection.isConnectedWithSocialLogin ? "View and manage the login methods linked to your wallet." : "Login methods can be managed only in the app securing your wallet."
|
|
7429
|
-
),
|
|
7430
|
-
onClick: () => {
|
|
7431
|
-
setCurrentContent("privy-linked-accounts");
|
|
7432
|
-
},
|
|
7433
|
-
isDisabled: !connection.isConnectedWithSocialLogin,
|
|
7434
|
-
leftIcon: MdManageAccounts,
|
|
7435
|
-
rightIcon: MdOutlineNavigateNext
|
|
7436
|
-
}
|
|
7437
|
-
)
|
|
7438
|
-
]
|
|
7439
|
-
}
|
|
7440
|
-
) }),
|
|
7441
|
-
/* @__PURE__ */ jsx(ModalFooter, { w: "full", children: /* @__PURE__ */ jsxs(VStack, { w: "full", children: [
|
|
7442
|
-
/* @__PURE__ */ jsx(Divider, {}),
|
|
7443
|
-
connection.isConnectedWithPrivy && /* @__PURE__ */ jsx(WalletSecuredBy, {})
|
|
7444
|
-
] }) })
|
|
7445
|
-
] });
|
|
7446
|
-
};
|
|
7447
|
-
var WalletSettingsContent = ({
|
|
7448
|
-
setCurrentContent,
|
|
7449
|
-
onLogoutSuccess
|
|
7450
|
-
}) => {
|
|
7451
|
-
const contentRef = useRef(null);
|
|
7452
|
-
const { t } = useTranslation();
|
|
7453
|
-
const { privy, darkMode: isDark, network } = useVeChainKitConfig();
|
|
7454
|
-
const { connection, disconnect, account } = useWallet();
|
|
7455
|
-
const { getConnectionCache } = useCrossAppConnectionCache();
|
|
7456
|
-
const connectionCache = getConnectionCache();
|
|
7457
|
-
const { data: appInfo } = useFetchAppInfo(privy?.appId ?? "");
|
|
7458
|
-
useEffect(() => {
|
|
7459
|
-
if (contentRef.current) {
|
|
7460
|
-
contentRef.current.scrollTop = 0;
|
|
7461
|
-
}
|
|
7462
|
-
}, []);
|
|
7463
|
-
return /* @__PURE__ */ jsxs(Box, { children: [
|
|
7464
|
-
/* @__PURE__ */ jsxs(StickyHeaderContainer, { children: [
|
|
7465
|
-
/* @__PURE__ */ jsx(
|
|
7466
|
-
ModalHeader,
|
|
7467
|
-
{
|
|
7468
|
-
fontSize: "md",
|
|
7469
|
-
fontWeight: "500",
|
|
7470
|
-
textAlign: "center",
|
|
7471
|
-
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7472
|
-
children: t("Settings")
|
|
7473
|
-
}
|
|
7474
|
-
),
|
|
7475
|
-
/* @__PURE__ */ jsx(ModalBackButton, { onClick: () => setCurrentContent("main") }),
|
|
7476
|
-
/* @__PURE__ */ jsx(ModalCloseButton, {})
|
|
7477
|
-
] }),
|
|
7478
|
-
/* @__PURE__ */ jsxs(ModalBody, { w: "full", children: [
|
|
7479
|
-
/* @__PURE__ */ jsxs(VStack, { justify: "center", children: [
|
|
7480
|
-
/* @__PURE__ */ jsx(AccountAvatar, { wallet: account, props: { maxW: "100px" } }),
|
|
7481
|
-
/* @__PURE__ */ jsx(AddressDisplay, { wallet: account }),
|
|
7482
|
-
network.type !== "main" && /* @__PURE__ */ jsx(
|
|
7483
|
-
Tag,
|
|
7484
|
-
{
|
|
7485
|
-
size: "sm",
|
|
7486
|
-
colorScheme: "blue",
|
|
7487
|
-
width: "fit-content",
|
|
7488
|
-
justifyContent: "center",
|
|
7489
|
-
padding: "10px",
|
|
7490
|
-
children: network.type === "test" ? t("Testnet") : t("Unknown")
|
|
7491
|
-
}
|
|
7492
|
-
)
|
|
7493
|
-
] }),
|
|
7494
|
-
/* @__PURE__ */ jsxs(VStack, { mt: 10, w: "full", spacing: 3, children: [
|
|
7495
|
-
/* @__PURE__ */ jsx(
|
|
7496
|
-
ActionButton,
|
|
7497
|
-
{
|
|
7498
|
-
title: t("Connection Details"),
|
|
7499
|
-
description: t(
|
|
7500
|
-
"View the details of your connection to this app."
|
|
7501
|
-
),
|
|
7502
|
-
onClick: () => {
|
|
7503
|
-
setCurrentContent("connection-details");
|
|
7504
|
-
},
|
|
7505
|
-
leftIcon: VscDebugDisconnect,
|
|
7506
|
-
rightIcon: MdOutlineNavigateNext
|
|
7507
|
-
}
|
|
7508
|
-
),
|
|
7509
|
-
/* @__PURE__ */ jsx(
|
|
7510
|
-
ActionButton,
|
|
7511
|
-
{
|
|
7512
|
-
title: t("Customize account"),
|
|
7513
|
-
description: t(
|
|
7514
|
-
"Customize your account with a nickname and a picture to easily identify it."
|
|
7515
|
-
),
|
|
7516
|
-
onClick: () => {
|
|
7517
|
-
setCurrentContent("account-customization");
|
|
7518
|
-
},
|
|
7519
|
-
leftIcon: GiPaintBrush,
|
|
7520
|
-
rightIcon: MdOutlineNavigateNext
|
|
7521
|
-
}
|
|
7522
|
-
),
|
|
7523
|
-
connection.isConnectedWithPrivy && /* @__PURE__ */ jsx(
|
|
7524
|
-
ActionButton,
|
|
7525
|
-
{
|
|
7526
|
-
title: t("Embedded Wallet"),
|
|
7527
|
-
description: t(
|
|
7528
|
-
"Manage your embedded wallet security settings or back it up to a new device."
|
|
7529
|
-
),
|
|
7530
|
-
onClick: () => {
|
|
7531
|
-
setCurrentContent("embedded-wallet");
|
|
7532
|
-
},
|
|
7533
|
-
leftIcon: HiOutlineWallet,
|
|
7534
|
-
rightIcon: MdOutlineNavigateNext
|
|
7535
|
-
}
|
|
7536
|
-
),
|
|
7537
|
-
/* @__PURE__ */ jsx(
|
|
7538
|
-
ActionButton,
|
|
7539
|
-
{
|
|
7540
|
-
title: t("FAQs"),
|
|
7541
|
-
description: t(
|
|
7542
|
-
"Still have some doubts? Check out our FAQs and learn more.",
|
|
7543
|
-
{
|
|
7544
|
-
appName: connection.isConnectedWithCrossApp ? connectionCache?.ecosystemApp?.name : Object.values(appInfo ?? {})[0]?.name ?? ""
|
|
7220
|
+
appName: connection.isConnectedWithCrossApp ? connectionCache?.ecosystemApp?.name : Object.values(appInfo ?? {})[0]?.name ?? ""
|
|
7545
7221
|
}
|
|
7546
7222
|
),
|
|
7547
7223
|
onClick: () => setCurrentContent("faq"),
|
|
7548
7224
|
leftIcon: BsQuestionCircle,
|
|
7549
|
-
rightIcon: MdOutlineNavigateNext
|
|
7225
|
+
rightIcon: MdOutlineNavigateNext,
|
|
7226
|
+
style: {
|
|
7227
|
+
borderTopRadius: "0px"
|
|
7228
|
+
}
|
|
7550
7229
|
}
|
|
7551
7230
|
)
|
|
7552
7231
|
] })
|
|
@@ -7554,10 +7233,16 @@ var WalletSettingsContent = ({
|
|
|
7554
7233
|
/* @__PURE__ */ jsx(ModalFooter, { w: "full", children: /* @__PURE__ */ jsx(
|
|
7555
7234
|
Button,
|
|
7556
7235
|
{
|
|
7557
|
-
onClick: () => {
|
|
7558
|
-
disconnect
|
|
7559
|
-
|
|
7560
|
-
|
|
7236
|
+
onClick: () => setCurrentContent({
|
|
7237
|
+
type: "disconnect-confirm",
|
|
7238
|
+
props: {
|
|
7239
|
+
onDisconnect: () => {
|
|
7240
|
+
disconnect();
|
|
7241
|
+
onLogoutSuccess();
|
|
7242
|
+
},
|
|
7243
|
+
onBack: () => setCurrentContent("settings")
|
|
7244
|
+
}
|
|
7245
|
+
}),
|
|
7561
7246
|
variant: "vechainKitSecondary",
|
|
7562
7247
|
leftIcon: /* @__PURE__ */ jsx(RiLogoutBoxLine, { color: "#888888" }),
|
|
7563
7248
|
children: t("Logout")
|
|
@@ -7611,8 +7296,379 @@ var AccountCustomizationContent = ({ setCurrentContent }) => {
|
|
|
7611
7296
|
} finally {
|
|
7612
7297
|
setIsUploading(false);
|
|
7613
7298
|
}
|
|
7614
|
-
};
|
|
7615
|
-
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
7299
|
+
};
|
|
7300
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
7301
|
+
/* @__PURE__ */ jsxs(StickyHeaderContainer, { children: [
|
|
7302
|
+
/* @__PURE__ */ jsx(
|
|
7303
|
+
ModalHeader,
|
|
7304
|
+
{
|
|
7305
|
+
fontSize: "md",
|
|
7306
|
+
fontWeight: "500",
|
|
7307
|
+
textAlign: "center",
|
|
7308
|
+
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7309
|
+
children: t("Customize Account")
|
|
7310
|
+
}
|
|
7311
|
+
),
|
|
7312
|
+
/* @__PURE__ */ jsx(
|
|
7313
|
+
ModalBackButton,
|
|
7314
|
+
{
|
|
7315
|
+
onClick: () => setCurrentContent("settings")
|
|
7316
|
+
}
|
|
7317
|
+
),
|
|
7318
|
+
/* @__PURE__ */ jsx(ModalCloseButton, {})
|
|
7319
|
+
] }),
|
|
7320
|
+
/* @__PURE__ */ jsx(ModalBody, { children: /* @__PURE__ */ jsxs(VStack, { spacing: 3, align: "center", children: [
|
|
7321
|
+
/* @__PURE__ */ jsxs(
|
|
7322
|
+
VStack,
|
|
7323
|
+
{
|
|
7324
|
+
spacing: 3,
|
|
7325
|
+
w: "full",
|
|
7326
|
+
justifyContent: "flex-start",
|
|
7327
|
+
alignItems: "flex-start",
|
|
7328
|
+
children: [
|
|
7329
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.5, children: t(
|
|
7330
|
+
"Customize your account with a unique .vet domain name and profile image to enhance your identity across VeChain applications."
|
|
7331
|
+
) }),
|
|
7332
|
+
showFullText && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
7333
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.5, children: t(
|
|
7334
|
+
"Your customizations are linked to your .vet domain name, making them portable across different applications."
|
|
7335
|
+
) }),
|
|
7336
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.5, children: t(
|
|
7337
|
+
"To get started with customization, first secure your .vet domain name. Once you have a domain, you can add a profile image that will be visible wherever you use your account."
|
|
7338
|
+
) }),
|
|
7339
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.5, children: t(
|
|
7340
|
+
"Changing your domain name will update also your profile image."
|
|
7341
|
+
) })
|
|
7342
|
+
] }),
|
|
7343
|
+
/* @__PURE__ */ jsx(
|
|
7344
|
+
Button,
|
|
7345
|
+
{
|
|
7346
|
+
mt: 0,
|
|
7347
|
+
variant: "link",
|
|
7348
|
+
size: "sm",
|
|
7349
|
+
onClick: () => setShowFullText(!showFullText),
|
|
7350
|
+
color: "blue.500",
|
|
7351
|
+
textAlign: "left",
|
|
7352
|
+
children: t(showFullText ? "Show Less" : "Read More")
|
|
7353
|
+
}
|
|
7354
|
+
)
|
|
7355
|
+
]
|
|
7356
|
+
}
|
|
7357
|
+
),
|
|
7358
|
+
/* @__PURE__ */ jsx(
|
|
7359
|
+
ActionButton,
|
|
7360
|
+
{
|
|
7361
|
+
style: {
|
|
7362
|
+
mt: 3
|
|
7363
|
+
},
|
|
7364
|
+
title: account?.domain ? account?.domain : t("Choose account name"),
|
|
7365
|
+
description: t(
|
|
7366
|
+
"Choose a unique .vet domain name for your account."
|
|
7367
|
+
),
|
|
7368
|
+
onClick: () => {
|
|
7369
|
+
if (account?.domain) {
|
|
7370
|
+
setCurrentContent({
|
|
7371
|
+
type: "choose-name-search",
|
|
7372
|
+
props: {
|
|
7373
|
+
name: "",
|
|
7374
|
+
setCurrentContent
|
|
7375
|
+
}
|
|
7376
|
+
});
|
|
7377
|
+
} else {
|
|
7378
|
+
setCurrentContent("choose-name");
|
|
7379
|
+
}
|
|
7380
|
+
},
|
|
7381
|
+
leftIcon: FaRegAddressCard,
|
|
7382
|
+
rightIcon: MdOutlineNavigateNext
|
|
7383
|
+
}
|
|
7384
|
+
),
|
|
7385
|
+
/* @__PURE__ */ jsx(
|
|
7386
|
+
ActionButton,
|
|
7387
|
+
{
|
|
7388
|
+
title: t("Update profile image"),
|
|
7389
|
+
description: t(
|
|
7390
|
+
!account?.domain ? "You can change your profile image only after you setup your domain name." : "Customize your account by adding a profile image, which will be displayed on the apps you use."
|
|
7391
|
+
),
|
|
7392
|
+
onClick: () => fileInputRef.current?.click(),
|
|
7393
|
+
leftImage: account?.image,
|
|
7394
|
+
isLoading: isUploading || isProcessing,
|
|
7395
|
+
isDisabled: !account?.domain,
|
|
7396
|
+
loadingText: isUploading ? t("Uploading image") : t("Setting image")
|
|
7397
|
+
}
|
|
7398
|
+
),
|
|
7399
|
+
/* @__PURE__ */ jsx(
|
|
7400
|
+
"input",
|
|
7401
|
+
{
|
|
7402
|
+
type: "file",
|
|
7403
|
+
ref: fileInputRef,
|
|
7404
|
+
hidden: true,
|
|
7405
|
+
accept: "image/*",
|
|
7406
|
+
onChange: async (event) => await handleImageUpload(event)
|
|
7407
|
+
}
|
|
7408
|
+
)
|
|
7409
|
+
] }) })
|
|
7410
|
+
] });
|
|
7411
|
+
};
|
|
7412
|
+
var NetworkInfo = () => {
|
|
7413
|
+
const { t } = useTranslation();
|
|
7414
|
+
const { darkMode: isDark, network } = useVeChainKitConfig();
|
|
7415
|
+
const { connection, smartAccount } = useWallet();
|
|
7416
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
7417
|
+
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7418
|
+
/* @__PURE__ */ jsxs(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: [
|
|
7419
|
+
t("Connection Type"),
|
|
7420
|
+
":"
|
|
7421
|
+
] }),
|
|
7422
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: connection.source.type })
|
|
7423
|
+
] }),
|
|
7424
|
+
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7425
|
+
/* @__PURE__ */ jsxs(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: [
|
|
7426
|
+
t("Network"),
|
|
7427
|
+
":"
|
|
7428
|
+
] }),
|
|
7429
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: network.type })
|
|
7430
|
+
] }),
|
|
7431
|
+
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7432
|
+
/* @__PURE__ */ jsxs(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: [
|
|
7433
|
+
t("Node URL"),
|
|
7434
|
+
":"
|
|
7435
|
+
] }),
|
|
7436
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: network.nodeUrl || getConfig(network.type).nodeUrl })
|
|
7437
|
+
] }),
|
|
7438
|
+
connection.isConnectedWithPrivy ? /* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7439
|
+
/* @__PURE__ */ jsxs(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: [
|
|
7440
|
+
t("Smart Account"),
|
|
7441
|
+
":"
|
|
7442
|
+
] }),
|
|
7443
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: smartAccount.version ? `v${smartAccount.version}` : "v1" })
|
|
7444
|
+
] }) : smartAccount.isDeployed && /* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7445
|
+
/* @__PURE__ */ jsxs(
|
|
7446
|
+
Text,
|
|
7447
|
+
{
|
|
7448
|
+
fontSize: "sm",
|
|
7449
|
+
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7450
|
+
children: [
|
|
7451
|
+
t("Smart Account"),
|
|
7452
|
+
":"
|
|
7453
|
+
]
|
|
7454
|
+
}
|
|
7455
|
+
),
|
|
7456
|
+
/* @__PURE__ */ jsx(
|
|
7457
|
+
Text,
|
|
7458
|
+
{
|
|
7459
|
+
fontSize: "sm",
|
|
7460
|
+
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7461
|
+
children: smartAccount.version ? `v${smartAccount.version}` : "v1"
|
|
7462
|
+
}
|
|
7463
|
+
)
|
|
7464
|
+
] }),
|
|
7465
|
+
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7466
|
+
/* @__PURE__ */ jsxs(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: [
|
|
7467
|
+
t("VeChain Kit"),
|
|
7468
|
+
":"
|
|
7469
|
+
] }),
|
|
7470
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "sm", color: isDark ? "#dfdfdd" : "#4d4d4d", children: package_default.version })
|
|
7471
|
+
] })
|
|
7472
|
+
] });
|
|
7473
|
+
};
|
|
7474
|
+
var CrossAppConnectionCard = ({ connectionCache }) => {
|
|
7475
|
+
const { t } = useTranslation();
|
|
7476
|
+
const { darkMode: isDark } = useVeChainKitConfig();
|
|
7477
|
+
return /* @__PURE__ */ jsx(Fragment, { children: connectionCache.ecosystemApp && /* @__PURE__ */ jsxs(
|
|
7478
|
+
VStack,
|
|
7479
|
+
{
|
|
7480
|
+
p: 4,
|
|
7481
|
+
bg: isDark ? "#1a1a1a" : "#f5f5f5",
|
|
7482
|
+
borderRadius: "xl",
|
|
7483
|
+
spacing: 4,
|
|
7484
|
+
w: "full",
|
|
7485
|
+
children: [
|
|
7486
|
+
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7487
|
+
/* @__PURE__ */ jsxs(
|
|
7488
|
+
Text,
|
|
7489
|
+
{
|
|
7490
|
+
fontSize: "sm",
|
|
7491
|
+
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7492
|
+
children: [
|
|
7493
|
+
t("Logged in with"),
|
|
7494
|
+
":"
|
|
7495
|
+
]
|
|
7496
|
+
}
|
|
7497
|
+
),
|
|
7498
|
+
/* @__PURE__ */ jsx(
|
|
7499
|
+
Text,
|
|
7500
|
+
{
|
|
7501
|
+
fontSize: "sm",
|
|
7502
|
+
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7503
|
+
children: connectionCache.ecosystemApp.name
|
|
7504
|
+
}
|
|
7505
|
+
)
|
|
7506
|
+
] }),
|
|
7507
|
+
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7508
|
+
/* @__PURE__ */ jsxs(
|
|
7509
|
+
Text,
|
|
7510
|
+
{
|
|
7511
|
+
fontSize: "sm",
|
|
7512
|
+
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7513
|
+
children: [
|
|
7514
|
+
t("Connected at"),
|
|
7515
|
+
":"
|
|
7516
|
+
]
|
|
7517
|
+
}
|
|
7518
|
+
),
|
|
7519
|
+
/* @__PURE__ */ jsx(
|
|
7520
|
+
Text,
|
|
7521
|
+
{
|
|
7522
|
+
fontSize: "sm",
|
|
7523
|
+
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7524
|
+
children: new Date(
|
|
7525
|
+
connectionCache.timestamp
|
|
7526
|
+
).toLocaleString()
|
|
7527
|
+
}
|
|
7528
|
+
)
|
|
7529
|
+
] }),
|
|
7530
|
+
/* @__PURE__ */ jsx(NetworkInfo, {})
|
|
7531
|
+
]
|
|
7532
|
+
}
|
|
7533
|
+
) });
|
|
7534
|
+
};
|
|
7535
|
+
var DappKitConnectionCard = () => {
|
|
7536
|
+
const { t } = useTranslation();
|
|
7537
|
+
const { source } = useWallet$1();
|
|
7538
|
+
const { darkMode: isDark } = useVeChainKitConfig();
|
|
7539
|
+
return /* @__PURE__ */ jsx(Fragment, { children: source && /* @__PURE__ */ jsxs(
|
|
7540
|
+
VStack,
|
|
7541
|
+
{
|
|
7542
|
+
p: 4,
|
|
7543
|
+
bg: isDark ? "#1a1a1a" : "#f5f5f5",
|
|
7544
|
+
borderRadius: "xl",
|
|
7545
|
+
spacing: 4,
|
|
7546
|
+
w: "full",
|
|
7547
|
+
justifyContent: "space-between",
|
|
7548
|
+
children: [
|
|
7549
|
+
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7550
|
+
/* @__PURE__ */ jsxs(
|
|
7551
|
+
Text,
|
|
7552
|
+
{
|
|
7553
|
+
fontSize: "sm",
|
|
7554
|
+
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7555
|
+
children: [
|
|
7556
|
+
t("Logged in with"),
|
|
7557
|
+
":"
|
|
7558
|
+
]
|
|
7559
|
+
}
|
|
7560
|
+
),
|
|
7561
|
+
/* @__PURE__ */ jsx(
|
|
7562
|
+
Text,
|
|
7563
|
+
{
|
|
7564
|
+
fontSize: "sm",
|
|
7565
|
+
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7566
|
+
children: source
|
|
7567
|
+
}
|
|
7568
|
+
)
|
|
7569
|
+
] }),
|
|
7570
|
+
/* @__PURE__ */ jsx(NetworkInfo, {})
|
|
7571
|
+
]
|
|
7572
|
+
}
|
|
7573
|
+
) });
|
|
7574
|
+
};
|
|
7575
|
+
var PrivyConnectionCard = () => {
|
|
7576
|
+
const { t } = useTranslation();
|
|
7577
|
+
const { privy, darkMode: isDark } = useVeChainKitConfig();
|
|
7578
|
+
const { data: appInfo, isLoading } = useFetchAppInfo(privy?.appId ?? "");
|
|
7579
|
+
if (isLoading)
|
|
7580
|
+
return /* @__PURE__ */ jsx(VStack, { w: "full", h: "full", justify: "center", align: "center", children: /* @__PURE__ */ jsx(Spinner, {}) });
|
|
7581
|
+
return /* @__PURE__ */ jsx(Fragment, { children: appInfo && /* @__PURE__ */ jsxs(
|
|
7582
|
+
VStack,
|
|
7583
|
+
{
|
|
7584
|
+
p: 4,
|
|
7585
|
+
bg: isDark ? "#1a1a1a" : "#f5f5f5",
|
|
7586
|
+
borderRadius: "xl",
|
|
7587
|
+
spacing: 4,
|
|
7588
|
+
w: "full",
|
|
7589
|
+
justifyContent: "space-between",
|
|
7590
|
+
children: [
|
|
7591
|
+
/* @__PURE__ */ jsxs(HStack, { w: "full", justifyContent: "space-between", children: [
|
|
7592
|
+
/* @__PURE__ */ jsxs(
|
|
7593
|
+
Text,
|
|
7594
|
+
{
|
|
7595
|
+
fontSize: "sm",
|
|
7596
|
+
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7597
|
+
children: [
|
|
7598
|
+
t("Logged in with"),
|
|
7599
|
+
":"
|
|
7600
|
+
]
|
|
7601
|
+
}
|
|
7602
|
+
),
|
|
7603
|
+
/* @__PURE__ */ jsx(
|
|
7604
|
+
Text,
|
|
7605
|
+
{
|
|
7606
|
+
fontSize: "sm",
|
|
7607
|
+
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7608
|
+
children: Object.values(appInfo)[0].name
|
|
7609
|
+
}
|
|
7610
|
+
)
|
|
7611
|
+
] }),
|
|
7612
|
+
/* @__PURE__ */ jsx(NetworkInfo, {})
|
|
7613
|
+
]
|
|
7614
|
+
}
|
|
7615
|
+
) });
|
|
7616
|
+
};
|
|
7617
|
+
var WalletSecuredBy = () => {
|
|
7618
|
+
const { connection } = useWallet();
|
|
7619
|
+
const { t } = useTranslation();
|
|
7620
|
+
const { darkMode: isDark, privy } = useVeChainKitConfig();
|
|
7621
|
+
const { getConnectionCache } = useCrossAppConnectionCache();
|
|
7622
|
+
const connectionCache = getConnectionCache();
|
|
7623
|
+
return /* @__PURE__ */ jsxs(
|
|
7624
|
+
VStack,
|
|
7625
|
+
{
|
|
7626
|
+
w: "full",
|
|
7627
|
+
align: "stretch",
|
|
7628
|
+
textAlign: "center",
|
|
7629
|
+
mt: 5,
|
|
7630
|
+
p: 3,
|
|
7631
|
+
borderRadius: "lg",
|
|
7632
|
+
bg: isDark ? "whiteAlpha.100" : "blackAlpha.50",
|
|
7633
|
+
shadow: "sm",
|
|
7634
|
+
children: [
|
|
7635
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "xs", fontWeight: "800", children: t("Wallet secured by") }),
|
|
7636
|
+
/* @__PURE__ */ jsxs(HStack, { justify: "center", children: [
|
|
7637
|
+
/* @__PURE__ */ jsx(PrivyLogo, { isDark, w: "50px" }),
|
|
7638
|
+
/* @__PURE__ */ jsx(Icon, { as: PiLineVertical, ml: 2 }),
|
|
7639
|
+
connection.isConnectedWithVeChain ? /* @__PURE__ */ jsx(VechainLogoHorizontal, { isDark, w: "69px" }) : connection.isConnectedWithCrossApp && connectionCache && /* @__PURE__ */ jsx(
|
|
7640
|
+
Image,
|
|
7641
|
+
{
|
|
7642
|
+
src: connectionCache.ecosystemApp.logoUrl,
|
|
7643
|
+
alt: connectionCache.ecosystemApp.name,
|
|
7644
|
+
maxW: "40px",
|
|
7645
|
+
borderRadius: "md"
|
|
7646
|
+
}
|
|
7647
|
+
),
|
|
7648
|
+
connection.isConnectedWithSocialLogin && !connection.isConnectedWithVeChain && /* @__PURE__ */ jsx(
|
|
7649
|
+
Image,
|
|
7650
|
+
{
|
|
7651
|
+
src: privy?.appearance.logo,
|
|
7652
|
+
alt: privy?.appearance.logo,
|
|
7653
|
+
maxW: "40px",
|
|
7654
|
+
borderRadius: "md"
|
|
7655
|
+
}
|
|
7656
|
+
)
|
|
7657
|
+
] })
|
|
7658
|
+
]
|
|
7659
|
+
}
|
|
7660
|
+
);
|
|
7661
|
+
};
|
|
7662
|
+
var EmbeddedWalletContent = ({ setCurrentContent }) => {
|
|
7663
|
+
const { t } = useTranslation();
|
|
7664
|
+
const { connectedWallet, connection } = useWallet();
|
|
7665
|
+
const [showFullText, setShowFullText] = useState(false);
|
|
7666
|
+
const walletImage = getPicassoImage(connectedWallet?.address ?? "");
|
|
7667
|
+
const { getConnectionCache } = useCrossAppConnectionCache();
|
|
7668
|
+
const connectionCache = getConnectionCache();
|
|
7669
|
+
const { darkMode: isDark } = useVeChainKitConfig();
|
|
7670
|
+
const { exportWallet } = usePrivy();
|
|
7671
|
+
return /* @__PURE__ */ jsxs(ScrollToTopWrapper, { children: [
|
|
7616
7672
|
/* @__PURE__ */ jsxs(StickyHeaderContainer, { children: [
|
|
7617
7673
|
/* @__PURE__ */ jsx(
|
|
7618
7674
|
ModalHeader,
|
|
@@ -7621,38 +7677,49 @@ var AccountCustomizationContent = ({ setCurrentContent }) => {
|
|
|
7621
7677
|
fontWeight: "500",
|
|
7622
7678
|
textAlign: "center",
|
|
7623
7679
|
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
7624
|
-
children: t("
|
|
7680
|
+
children: t("Embedded wallet")
|
|
7625
7681
|
}
|
|
7626
7682
|
),
|
|
7627
7683
|
/* @__PURE__ */ jsx(
|
|
7628
7684
|
ModalBackButton,
|
|
7629
7685
|
{
|
|
7630
|
-
onClick: () => setCurrentContent("
|
|
7686
|
+
onClick: () => setCurrentContent("access-and-security")
|
|
7631
7687
|
}
|
|
7632
7688
|
),
|
|
7633
7689
|
/* @__PURE__ */ jsx(ModalCloseButton, {})
|
|
7634
7690
|
] }),
|
|
7635
|
-
/* @__PURE__ */ jsx(ModalBody, { children: /* @__PURE__ */ jsxs(
|
|
7636
|
-
|
|
7637
|
-
|
|
7638
|
-
|
|
7639
|
-
|
|
7640
|
-
|
|
7641
|
-
|
|
7642
|
-
|
|
7643
|
-
children: [
|
|
7691
|
+
/* @__PURE__ */ jsx(ModalBody, { w: "full", children: /* @__PURE__ */ jsxs(
|
|
7692
|
+
VStack,
|
|
7693
|
+
{
|
|
7694
|
+
justify: "center",
|
|
7695
|
+
spacing: 3,
|
|
7696
|
+
align: "flex-start",
|
|
7697
|
+
w: "full",
|
|
7698
|
+
children: [
|
|
7699
|
+
/* @__PURE__ */ jsxs(VStack, { justify: "center", align: "center", w: "full", children: [
|
|
7700
|
+
/* @__PURE__ */ jsx(
|
|
7701
|
+
Image,
|
|
7702
|
+
{
|
|
7703
|
+
src: walletImage,
|
|
7704
|
+
maxW: "100px",
|
|
7705
|
+
borderRadius: "50%"
|
|
7706
|
+
}
|
|
7707
|
+
),
|
|
7708
|
+
/* @__PURE__ */ jsx(AddressDisplay, { wallet: connectedWallet })
|
|
7709
|
+
] }),
|
|
7710
|
+
connection.isConnectedWithCrossApp && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
7644
7711
|
/* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.5, children: t(
|
|
7645
|
-
"
|
|
7712
|
+
"This is your main wallet, created by {{element}} and secured by Privy.",
|
|
7713
|
+
{
|
|
7714
|
+
element: connectionCache?.ecosystemApp?.name
|
|
7715
|
+
}
|
|
7646
7716
|
) }),
|
|
7647
7717
|
showFullText && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
7648
7718
|
/* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.5, children: t(
|
|
7649
|
-
"
|
|
7650
|
-
) }),
|
|
7651
|
-
/* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.5, children: t(
|
|
7652
|
-
"To get started with customization, first secure your .vet domain name. Once you have a domain, you can add a profile image that will be visible wherever you use your account."
|
|
7719
|
+
"This wallet is the owner of your smart account, which is used as your identity and as a gateway for your blockchain interactions."
|
|
7653
7720
|
) }),
|
|
7654
7721
|
/* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.5, children: t(
|
|
7655
|
-
"
|
|
7722
|
+
"Please be sure to keep this wallet safe and backed up."
|
|
7656
7723
|
) })
|
|
7657
7724
|
] }),
|
|
7658
7725
|
/* @__PURE__ */ jsx(
|
|
@@ -7667,60 +7734,89 @@ var AccountCustomizationContent = ({ setCurrentContent }) => {
|
|
|
7667
7734
|
children: t(showFullText ? "Show Less" : "Read More")
|
|
7668
7735
|
}
|
|
7669
7736
|
)
|
|
7670
|
-
]
|
|
7671
|
-
|
|
7672
|
-
|
|
7673
|
-
|
|
7674
|
-
|
|
7675
|
-
|
|
7676
|
-
|
|
7677
|
-
|
|
7678
|
-
|
|
7679
|
-
|
|
7680
|
-
|
|
7681
|
-
|
|
7682
|
-
|
|
7683
|
-
|
|
7684
|
-
|
|
7685
|
-
|
|
7686
|
-
|
|
7687
|
-
|
|
7688
|
-
|
|
7689
|
-
|
|
7690
|
-
|
|
7691
|
-
|
|
7692
|
-
|
|
7693
|
-
|
|
7737
|
+
] }),
|
|
7738
|
+
connection.isConnectedWithSocialLogin && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
7739
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.5, children: t(
|
|
7740
|
+
"You are using an Embedded Wallet secured by your social login method, ensuring a seamless VeChain experience."
|
|
7741
|
+
) }),
|
|
7742
|
+
showFullText && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
7743
|
+
/* @__PURE__ */ jsx(Text, { fontSize: "sm", opacity: 0.5, children: t(
|
|
7744
|
+
"This wallet is the owner of your smart account, which is used as your identity and as a gateway for your blockchain interactions."
|
|
7745
|
+
) }),
|
|
7746
|
+
/* @__PURE__ */ jsxs(Text, { fontSize: "sm", opacity: 0.5, children: [
|
|
7747
|
+
t(
|
|
7748
|
+
"We highly recommend exporting your private key to back up your wallet. This ensures you can restore it if needed or transfer it to self-custody using"
|
|
7749
|
+
),
|
|
7750
|
+
/* @__PURE__ */ jsxs(
|
|
7751
|
+
Link,
|
|
7752
|
+
{
|
|
7753
|
+
href: "https://www.veworld.net/",
|
|
7754
|
+
isExternal: true,
|
|
7755
|
+
color: "gray.500",
|
|
7756
|
+
fontSize: "14px",
|
|
7757
|
+
textDecoration: "underline",
|
|
7758
|
+
children: [
|
|
7759
|
+
" ",
|
|
7760
|
+
t("VeWorld Wallet"),
|
|
7761
|
+
/* @__PURE__ */ jsx(Icon, { ml: 1, as: IoOpenOutline })
|
|
7762
|
+
]
|
|
7763
|
+
}
|
|
7764
|
+
),
|
|
7765
|
+
"."
|
|
7766
|
+
] }),
|
|
7767
|
+
/* @__PURE__ */ jsxs(Text, { fontSize: "sm", opacity: 0.5, children: [
|
|
7768
|
+
t("Click"),
|
|
7769
|
+
" ",
|
|
7770
|
+
/* @__PURE__ */ jsx(
|
|
7771
|
+
Link,
|
|
7772
|
+
{
|
|
7773
|
+
href: "https://docs.vechain-kit.vechain.org/vechain-kit/embedded-wallets",
|
|
7774
|
+
isExternal: true,
|
|
7775
|
+
color: "gray.500",
|
|
7776
|
+
fontSize: "14px",
|
|
7777
|
+
textDecoration: "underline",
|
|
7778
|
+
children: t("here")
|
|
7779
|
+
}
|
|
7780
|
+
),
|
|
7781
|
+
" ",
|
|
7782
|
+
t(
|
|
7783
|
+
"to learn more about embedded wallets."
|
|
7784
|
+
)
|
|
7785
|
+
] })
|
|
7786
|
+
] }),
|
|
7787
|
+
/* @__PURE__ */ jsx(
|
|
7788
|
+
Button,
|
|
7789
|
+
{
|
|
7790
|
+
mt: 0,
|
|
7791
|
+
variant: "link",
|
|
7792
|
+
size: "sm",
|
|
7793
|
+
onClick: () => setShowFullText(!showFullText),
|
|
7794
|
+
color: "blue.500",
|
|
7795
|
+
textAlign: "left",
|
|
7796
|
+
children: t(showFullText ? "Show Less" : "Read More")
|
|
7797
|
+
}
|
|
7798
|
+
)
|
|
7799
|
+
] }),
|
|
7800
|
+
/* @__PURE__ */ jsx(
|
|
7801
|
+
ActionButton,
|
|
7802
|
+
{
|
|
7803
|
+
title: t("Backup your wallet"),
|
|
7804
|
+
description: t(
|
|
7805
|
+
connection.isConnectedWithSocialLogin ? "Store your Recovery Phrase or Private Key in a secure location, avoid losing access to your assets." : "Backup can be done only in the app securing your wallet."
|
|
7806
|
+
),
|
|
7807
|
+
onClick: () => {
|
|
7808
|
+
exportWallet();
|
|
7809
|
+
},
|
|
7810
|
+
isDisabled: !connection.isConnectedWithSocialLogin,
|
|
7811
|
+
leftIcon: GiHouseKeys
|
|
7694
7812
|
}
|
|
7695
|
-
|
|
7696
|
-
|
|
7697
|
-
|
|
7698
|
-
|
|
7699
|
-
|
|
7700
|
-
/* @__PURE__ */ jsx(
|
|
7701
|
-
|
|
7702
|
-
{
|
|
7703
|
-
title: t("Update profile image"),
|
|
7704
|
-
description: t(
|
|
7705
|
-
!account?.domain ? "You can change your profile image only after you setup your domain name." : "Customize your account by adding a profile image, which will be displayed on the apps you use."
|
|
7706
|
-
),
|
|
7707
|
-
onClick: () => fileInputRef.current?.click(),
|
|
7708
|
-
leftImage: account?.image,
|
|
7709
|
-
isLoading: isUploading || isProcessing,
|
|
7710
|
-
isDisabled: !account?.domain,
|
|
7711
|
-
loadingText: isUploading ? t("Uploading image") : t("Setting image")
|
|
7712
|
-
}
|
|
7713
|
-
),
|
|
7714
|
-
/* @__PURE__ */ jsx(
|
|
7715
|
-
"input",
|
|
7716
|
-
{
|
|
7717
|
-
type: "file",
|
|
7718
|
-
ref: fileInputRef,
|
|
7719
|
-
hidden: true,
|
|
7720
|
-
accept: "image/*",
|
|
7721
|
-
onChange: async (event) => await handleImageUpload(event)
|
|
7722
|
-
}
|
|
7723
|
-
)
|
|
7813
|
+
)
|
|
7814
|
+
]
|
|
7815
|
+
}
|
|
7816
|
+
) }),
|
|
7817
|
+
/* @__PURE__ */ jsx(ModalFooter, { w: "full", children: /* @__PURE__ */ jsxs(VStack, { w: "full", children: [
|
|
7818
|
+
/* @__PURE__ */ jsx(Divider, {}),
|
|
7819
|
+
connection.isConnectedWithPrivy && /* @__PURE__ */ jsx(WalletSecuredBy, {})
|
|
7724
7820
|
] }) })
|
|
7725
7821
|
] });
|
|
7726
7822
|
};
|
|
@@ -9903,7 +9999,18 @@ var en_default = {
|
|
|
9903
9999
|
"{{element}} website": "{{element}} website",
|
|
9904
10000
|
"{{name}}": "{{name}}",
|
|
9905
10001
|
"Sending to OceanX or other exchanges may result in loss of funds.": "Sending to OceanX or other exchanges may result in loss of funds.",
|
|
9906
|
-
"Send the tokens to your VeWorld wallet first.": "Send the tokens to your VeWorld wallet first."
|
|
10002
|
+
"Send the tokens to your VeWorld wallet first.": "Send the tokens to your VeWorld wallet first.",
|
|
10003
|
+
"Sign in with a wallet from other x2earn apps.": "Sign in with a wallet from other x2earn apps.",
|
|
10004
|
+
"Select an app": "Select an app",
|
|
10005
|
+
Other: "Other",
|
|
10006
|
+
Apps: "Apps",
|
|
10007
|
+
"View your notifications and updates.": "View your notifications and updates.",
|
|
10008
|
+
"Access and security": "Access and security",
|
|
10009
|
+
"Connection details": "Connection details",
|
|
10010
|
+
"Customize profile": "Customize profile",
|
|
10011
|
+
Help: "Help",
|
|
10012
|
+
"Add Passkey": "Add Passkey",
|
|
10013
|
+
"Embedded wallet": "Embedded wallet"
|
|
9907
10014
|
};
|
|
9908
10015
|
|
|
9909
10016
|
// src/languages/de.json
|
|
@@ -12016,7 +12123,7 @@ var FAQContent = ({ onGoBack }) => {
|
|
|
12016
12123
|
fontWeight: "500",
|
|
12017
12124
|
textAlign: "center",
|
|
12018
12125
|
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
12019
|
-
children: t("
|
|
12126
|
+
children: t("Help")
|
|
12020
12127
|
}
|
|
12021
12128
|
),
|
|
12022
12129
|
/* @__PURE__ */ jsx(ModalBackButton, { onClick: onGoBack }),
|
|
@@ -12102,7 +12209,6 @@ var ConnectionDetailsContent = ({ onGoBack }) => {
|
|
|
12102
12209
|
const { getConnectionCache } = useCrossAppConnectionCache();
|
|
12103
12210
|
const { privy, darkMode: isDark } = useVeChainKitConfig();
|
|
12104
12211
|
const { connection } = useWallet();
|
|
12105
|
-
const { source } = useWallet$1();
|
|
12106
12212
|
const { data: appInfo } = useFetchAppInfo(privy?.appId ?? "");
|
|
12107
12213
|
const connectionCache = getConnectionCache();
|
|
12108
12214
|
return /* @__PURE__ */ jsxs(ScrollToTopWrapper, { children: [
|
|
@@ -12130,23 +12236,7 @@ var ConnectionDetailsContent = ({ onGoBack }) => {
|
|
|
12130
12236
|
/* @__PURE__ */ jsxs(ModalBody, { w: "full", children: [
|
|
12131
12237
|
connection.isConnectedWithCrossApp && connectionCache && /* @__PURE__ */ jsx(CrossAppConnectionCard, { connectionCache }),
|
|
12132
12238
|
connection.isConnectedWithSocialLogin && /* @__PURE__ */ jsx(PrivyConnectionCard, {}),
|
|
12133
|
-
connection.isConnectedWithDappKit && /* @__PURE__ */
|
|
12134
|
-
/* @__PURE__ */ jsx(DappKitConnectionCard, {}),
|
|
12135
|
-
/* @__PURE__ */ jsx(
|
|
12136
|
-
Text,
|
|
12137
|
-
{
|
|
12138
|
-
fontSize: "sm",
|
|
12139
|
-
opacity: 0.5,
|
|
12140
|
-
textAlign: "center",
|
|
12141
|
-
children: t(
|
|
12142
|
-
"This is your main wallet and identity. Please be sure to keep it safe and backed up. Go to {{element}} app or extension to manage your security settings.",
|
|
12143
|
-
{
|
|
12144
|
-
element: source
|
|
12145
|
-
}
|
|
12146
|
-
)
|
|
12147
|
-
}
|
|
12148
|
-
)
|
|
12149
|
-
] }),
|
|
12239
|
+
connection.isConnectedWithDappKit && /* @__PURE__ */ jsx(VStack, { align: "stretch", textAlign: "center", mt: 5, children: /* @__PURE__ */ jsx(DappKitConnectionCard, {}) }),
|
|
12150
12240
|
(connection.isConnectedWithSocialLogin || connection.isConnectedWithCrossApp) && /* @__PURE__ */ jsxs(VStack, { spacing: 4, mt: 5, children: [
|
|
12151
12241
|
/* @__PURE__ */ jsx(Divider, {}),
|
|
12152
12242
|
/* @__PURE__ */ jsxs(
|
|
@@ -12418,22 +12508,7 @@ var PrivyLinkedAccounts = ({ onBack }) => {
|
|
|
12418
12508
|
),
|
|
12419
12509
|
/* @__PURE__ */ jsx(ModalCloseButton, {})
|
|
12420
12510
|
] }),
|
|
12421
|
-
/* @__PURE__ */ jsx(ModalBody, { children: /* @__PURE__ */ jsxs(VStack, { spacing: 3, align: "stretch", children: [
|
|
12422
|
-
/* @__PURE__ */ jsx(
|
|
12423
|
-
ActionButton,
|
|
12424
|
-
{
|
|
12425
|
-
title: t("Handle Passkey Login"),
|
|
12426
|
-
description: t(
|
|
12427
|
-
"Enable one click login by adding a passkey to your account."
|
|
12428
|
-
),
|
|
12429
|
-
onClick: () => {
|
|
12430
|
-
linkPasskey();
|
|
12431
|
-
},
|
|
12432
|
-
leftIcon: IoIosFingerPrint,
|
|
12433
|
-
rightIcon: void 0,
|
|
12434
|
-
isDisabled: !privy?.allowPasskeyLinking
|
|
12435
|
-
}
|
|
12436
|
-
),
|
|
12511
|
+
/* @__PURE__ */ jsx(ModalBody, { w: "full", children: /* @__PURE__ */ jsxs(VStack, { spacing: 3, align: "stretch", w: "full", children: [
|
|
12437
12512
|
canLinkGoogle && /* @__PURE__ */ jsx(
|
|
12438
12513
|
ActionButton,
|
|
12439
12514
|
{
|
|
@@ -12841,9 +12916,14 @@ var NotificationsContent = ({ setCurrentContent }) => {
|
|
|
12841
12916
|
if (b.id === "multiclause") return 1;
|
|
12842
12917
|
return b.timestamp - a.timestamp;
|
|
12843
12918
|
});
|
|
12844
|
-
return /* @__PURE__ */ jsxs(
|
|
12919
|
+
return /* @__PURE__ */ jsxs(ScrollToTopWrapper, { children: [
|
|
12845
12920
|
/* @__PURE__ */ jsxs(StickyHeaderContainer, { children: [
|
|
12846
|
-
/* @__PURE__ */ jsx(
|
|
12921
|
+
/* @__PURE__ */ jsx(
|
|
12922
|
+
ModalBackButton,
|
|
12923
|
+
{
|
|
12924
|
+
onClick: () => setCurrentContent("settings")
|
|
12925
|
+
}
|
|
12926
|
+
),
|
|
12847
12927
|
/* @__PURE__ */ jsx(
|
|
12848
12928
|
ModalHeader,
|
|
12849
12929
|
{
|
|
@@ -12856,7 +12936,7 @@ var NotificationsContent = ({ setCurrentContent }) => {
|
|
|
12856
12936
|
),
|
|
12857
12937
|
/* @__PURE__ */ jsx(ModalCloseButton, {})
|
|
12858
12938
|
] }),
|
|
12859
|
-
/* @__PURE__ */ jsxs(Container, { maxW: "container.lg", h: "
|
|
12939
|
+
/* @__PURE__ */ jsxs(Container, { maxW: "container.lg", h: ["auto", "540px"], children: [
|
|
12860
12940
|
/* @__PURE__ */ jsx(ModalBody, { w: "full", children: /* @__PURE__ */ jsxs(VStack, { spacing: 4, align: "stretch", w: "full", children: [
|
|
12861
12941
|
/* @__PURE__ */ jsxs(HStack, { justify: "space-between", children: [
|
|
12862
12942
|
/* @__PURE__ */ jsx(
|
|
@@ -13083,7 +13163,7 @@ var ExploreEcosystemContent = ({ setCurrentContent }) => {
|
|
|
13083
13163
|
fontWeight: "500",
|
|
13084
13164
|
textAlign: "center",
|
|
13085
13165
|
color: isDark ? "#dfdfdd" : "#4d4d4d",
|
|
13086
|
-
children: t("
|
|
13166
|
+
children: t("Apps")
|
|
13087
13167
|
}
|
|
13088
13168
|
),
|
|
13089
13169
|
/* @__PURE__ */ jsx(ModalBackButton, { onClick: () => setCurrentContent("main") }),
|
|
@@ -13330,7 +13410,7 @@ var AccountModal = ({
|
|
|
13330
13410
|
);
|
|
13331
13411
|
case "settings":
|
|
13332
13412
|
return /* @__PURE__ */ jsx(
|
|
13333
|
-
|
|
13413
|
+
SettingsContent,
|
|
13334
13414
|
{
|
|
13335
13415
|
setCurrentContent,
|
|
13336
13416
|
onLogoutSuccess: onClose
|
|
@@ -13343,9 +13423,9 @@ var AccountModal = ({
|
|
|
13343
13423
|
setCurrentContent
|
|
13344
13424
|
}
|
|
13345
13425
|
);
|
|
13346
|
-
case "
|
|
13426
|
+
case "access-and-security":
|
|
13347
13427
|
return /* @__PURE__ */ jsx(
|
|
13348
|
-
|
|
13428
|
+
AccessAndSecurityContent,
|
|
13349
13429
|
{
|
|
13350
13430
|
setCurrentContent
|
|
13351
13431
|
}
|
|
@@ -13379,7 +13459,7 @@ var AccountModal = ({
|
|
|
13379
13459
|
return /* @__PURE__ */ jsx(
|
|
13380
13460
|
PrivyLinkedAccounts,
|
|
13381
13461
|
{
|
|
13382
|
-
onBack: () => setCurrentContent("
|
|
13462
|
+
onBack: () => setCurrentContent("access-and-security")
|
|
13383
13463
|
}
|
|
13384
13464
|
);
|
|
13385
13465
|
case "ecosystem":
|
|
@@ -13396,6 +13476,13 @@ var AccountModal = ({
|
|
|
13396
13476
|
setCurrentContent
|
|
13397
13477
|
}
|
|
13398
13478
|
);
|
|
13479
|
+
case "embedded-wallet":
|
|
13480
|
+
return /* @__PURE__ */ jsx(
|
|
13481
|
+
EmbeddedWalletContent,
|
|
13482
|
+
{
|
|
13483
|
+
setCurrentContent
|
|
13484
|
+
}
|
|
13485
|
+
);
|
|
13399
13486
|
}
|
|
13400
13487
|
};
|
|
13401
13488
|
return /* @__PURE__ */ jsx(
|
|
@@ -13830,9 +13917,9 @@ var LoadingContent = ({
|
|
|
13830
13917
|
}) => {
|
|
13831
13918
|
const { t } = useTranslation();
|
|
13832
13919
|
const { darkMode: isDark } = useVeChainKitConfig();
|
|
13833
|
-
const [showTimeout, setShowTimeout] =
|
|
13834
|
-
const [showSafariMessage, setShowSafariMessage] =
|
|
13835
|
-
|
|
13920
|
+
const [showTimeout, setShowTimeout] = React8.useState(false);
|
|
13921
|
+
const [showSafariMessage, setShowSafariMessage] = React8.useState(false);
|
|
13922
|
+
React8.useEffect(() => {
|
|
13836
13923
|
if (isSafari) {
|
|
13837
13924
|
setShowSafariMessage(true);
|
|
13838
13925
|
}
|
|
@@ -14018,8 +14105,8 @@ var EcosystemContent = ({ onClose, appsInfo, isLoading }) => {
|
|
|
14018
14105
|
display: "flex",
|
|
14019
14106
|
gap: 2,
|
|
14020
14107
|
children: [
|
|
14021
|
-
/* @__PURE__ */ jsx(Icon, { as:
|
|
14022
|
-
t("
|
|
14108
|
+
/* @__PURE__ */ jsx(Icon, { as: IoMdApps, size: "20px" }),
|
|
14109
|
+
t("Select an app")
|
|
14023
14110
|
]
|
|
14024
14111
|
}
|
|
14025
14112
|
),
|
|
@@ -14034,9 +14121,7 @@ var EcosystemContent = ({ onClose, appsInfo, isLoading }) => {
|
|
|
14034
14121
|
opacity: 0.5,
|
|
14035
14122
|
mb: 4,
|
|
14036
14123
|
textAlign: "center",
|
|
14037
|
-
children: t(
|
|
14038
|
-
"Use your existing VeChain wallet from other ecosystem apps to sign in seamlessly."
|
|
14039
|
-
)
|
|
14124
|
+
children: t("Sign in with a wallet from other x2earn apps.")
|
|
14040
14125
|
}
|
|
14041
14126
|
),
|
|
14042
14127
|
isLoading && /* @__PURE__ */ jsx(
|
|
@@ -14153,8 +14238,6 @@ var initializeI18n = (i18nInstance) => {
|
|
|
14153
14238
|
});
|
|
14154
14239
|
};
|
|
14155
14240
|
var DEFAULT_PRIVY_ECOSYSTEM_APP_IDS = [
|
|
14156
|
-
"cm4wxxujb022fyujl7g0thb21",
|
|
14157
|
-
//vechain
|
|
14158
14241
|
"clz41gcg00e4ay75dmq3uzzgr",
|
|
14159
14242
|
//cleanify
|
|
14160
14243
|
"cm153hrup0817axti38avlfyg"
|
|
@@ -14219,10 +14302,6 @@ var VeChainKitProvider = ({
|
|
|
14219
14302
|
);
|
|
14220
14303
|
return userEcosystemMethods?.allowedApps ?? DEFAULT_PRIVY_ECOSYSTEM_APP_IDS;
|
|
14221
14304
|
}, [loginMethods]);
|
|
14222
|
-
const privyLoginMethods = [
|
|
14223
|
-
...privy?.loginMethods ?? [],
|
|
14224
|
-
...allowedEcosystemApps.map((appID) => `privy:${appID}`)
|
|
14225
|
-
];
|
|
14226
14305
|
let privyAppId, privyClientId;
|
|
14227
14306
|
if (!privy) {
|
|
14228
14307
|
privyAppId = "clzdb5k0b02b9qvzjm6jpknsc";
|
|
@@ -14286,7 +14365,7 @@ var VeChainKitProvider = ({
|
|
|
14286
14365
|
config: {
|
|
14287
14366
|
loginMethodsAndOrder: {
|
|
14288
14367
|
// @ts-ignore
|
|
14289
|
-
primary:
|
|
14368
|
+
primary: privy?.loginMethods
|
|
14290
14369
|
},
|
|
14291
14370
|
appearance: {
|
|
14292
14371
|
theme: darkMode ? "dark" : "light",
|
|
@@ -14591,6 +14670,6 @@ var VechainKitThemeProvider = ({
|
|
|
14591
14670
|
] });
|
|
14592
14671
|
};
|
|
14593
14672
|
|
|
14594
|
-
export { APP_SECURITY_LEVELS, AccountAvatar, AccountCustomizationContent, AccountCustomizationModalProvider, AccountDetailsButton, AccountMainContent, AccountModal, AccountModalProvider, AccountSelector, ActionButton, AddressDisplay, AddressDisplayCard, AssetButton, AssetsSection, BalanceSection, BaseModal, ChooseNameContent, ChooseNameModalProvider, ChooseNameSearchContent, ChooseNameSummaryContent, ConnectModal, ConnectModalProvider, ConnectionButton, DappKitButton, EcosystemButton, EcosystemModal, EmailLoginButton, EmbeddedWalletContent,
|
|
14673
|
+
export { APP_SECURITY_LEVELS, AccessAndSecurityContent, AccessAndSecurityModalProvider, AccountAvatar, AccountCustomizationContent, AccountCustomizationModalProvider, AccountDetailsButton, AccountMainContent, AccountModal, AccountModalProvider, AccountSelector, ActionButton, AddressDisplay, AddressDisplayCard, AssetButton, AssetsSection, BalanceSection, BaseModal, ChooseNameContent, ChooseNameModalProvider, ChooseNameSearchContent, ChooseNameSummaryContent, ConnectModal, ConnectModalProvider, ConnectionButton, DappKitButton, EcosystemButton, EcosystemModal, EmailLoginButton, EmbeddedWalletContent, ExchangeWarningAlert, ExploreEcosystemModalProvider, FAQContent, FAQModalProvider, FadeInView, FadeInViewFromBottom, FadeInViewFromLeft, FadeInViewFromRight, FeatureAnnouncementCard, LoginLoadingModal, MAX_IMAGE_SIZE, MainContent, ModalBackButton, ModalFAQButton, NFTMediaType, NotificationsModalProvider, PRICE_FEED_IDS, PasskeyLoginButton, PrivyButton, PrivyWalletProvider, Profile, QuickActionsSection, ReceiveModalProvider, ReceiveTokenContent, RoundState, ScrollToTopWrapper, SecurityLevel, SelectTokenContent, SendTokenContent, SendTokenModalProvider, SendTokenSummaryContent, SettingsContent, SocialLoginButtons, StickyFooterContainer, StickyHeaderContainer, SwapTokenContent, TransactionModal, TransactionModalProvider, TransactionToast, TransactionToastProvider, VeChainKitContext, VeChainKitProvider, VeChainLoginButton, VeChainWithPrivyLoginButton, VePassportUserStatus, VechainKitThemeProvider, VersionFooter, WalletButton, WalletModalProvider, buildClaimRewardsTx, buildClaimRoundReward, compressImages, currentBlockQueryKey, fetchPrivyAppInfo, fetchVechainDomain, getAccountBalance, getAccountBalanceQueryKey, getAllEvents, getAllocationAmount, getAllocationAmountQueryKey, getAllocationsRoundState, getAllocationsRoundStateQueryKey, getAllocationsRoundsEvents, getAllocationsRoundsEventsQueryKey, getAppAdmin, getAppAdminQueryKey, getAppBalance, getAppBalanceQueryKey, getAppExistsQueryKey, getAppSecurityLevelQueryKey, getAppsEligibleInNextRound, getAppsEligibleInNextRoundQueryKey, getAppsShareClauses, getAvatar, getAvatarQueryKey, getB3trBalance, getB3trBalanceQueryKey, getB3trDonatedQueryKey, getB3trToUpgradeQueryKey, getBalanceOf, getCallKey, getChainId, getChainIdQueryKey, getCurrentAllocationsRoundId, getCurrentAllocationsRoundIdQueryKey, getDelegateeQueryKey, getDelegatorQueryKey, getDomainsOfAddress, getDomainsOfAddressQueryKey, getEnsRecordExistsQueryKey, getEntitiesLinkedToPassportQueryKey, getEvents, getGMBaseUriQueryKey, getGMLevel, getGMbalanceQueryKey, getGetCumulativeScoreWithDecayQueryKey, getHasVotedInRound, getHasVotedInRoundQueryKey, getIpfsImage, getIpfsImageQueryKey, getIpfsMetadata, getIpfsMetadataQueryKey, getIsBlacklistedQueryKey, getIsDomainProtectedQueryKey, getIsEntityQueryKey, getIsNodeHolder, getIsNodeHolderQueryKey, getIsPassportQueryKey, getIsPersonAtTimepointQueryKey, getIsPersonQueryKey, getIsWhitelistedQueryKey, getLevelGradient, getLevelMultiplierQueryKey, getLevelOfTokenQueryKey, getNFTMetadataUri, getNFTMetadataUriQueryKey, getNodeCheckCooldownQueryKey, getNodeManagerQueryKey, getParticipatedInGovernance, getParticipatedInGovernanceQueryKey, getParticipationScoreThresholdQueryKey, getPassportForEntityQueryKey, getPassportToggleQueryKey, getPendingDelegationsQueryKeyDelegateePOV, getPendingDelegationsQueryKeyDelegatorPOV, getPendingLinkingsQueryKey, getPrivyAppInfoQueryKey, getRoundReward, getRoundRewardQueryKey, getRoundXApps, getRoundXAppsQueryKey, getSecurityMultiplierQueryKey, getSmartAccount, getSmartAccountQueryKey, getThresholdParticipationScoreAtTimepointQueryKey, getThresholdParticipationScoreQueryKey, getTokenIdByAccount, getTokenIdByAccountQueryKey, getTokenUsdPrice, getTokenUsdPriceQueryKey, getTokensInfoByOwnerQueryKey, getUserBotSignalsQueryKey, getUserNodesQueryKey, getUserRoundScoreQueryKey, getUserVotesInRound, getUserVotesInRoundQueryKey, getUserXNodes, getUserXNodesQueryKey, getVeDelegateBalance, getVeDelegateBalanceQueryKey, getVechainDomainQueryKey, getVersion, getVersionQueryKey, getVot3Balance, getVot3BalanceQueryKey, getVotesInRoundQueryKey, getXAppMetadata, getXAppMetadataQueryKey, getXAppRoundEarnings, getXAppRoundEarningsQueryKey, getXAppTotalEarningsClauses, getXAppTotalEarningsQueryKey, getXAppVotes, getXAppVotesQf, getXAppVotesQfQueryKey, getXAppVotesQueryKey, getXApps, getXAppsMetadataBaseUri, getXAppsMetadataBaseUriQueryKey, getXAppsQueryKey, getXAppsSharesQueryKey, imageCompressionOptions, pollForReceipt, useAccessAndSecurityModal, useAccountBalance, useAccountCustomizationModal, useAccountLinking, useAccountModal, useAllocationAmount, useAllocationsRound, useAllocationsRoundState, useAllocationsRoundsEvents, useAppAdmin, useAppBalance, useAppExists, useAppSecurityLevel, useAppsEligibleInNextRound, useB3trDonated, useB3trToUpgrade, useBalances, useCall, useChooseNameModal, useClaimVeWorldSubdomain, useConnectModal, useContractVersion, useCrossAppConnectionCache, useCurrentAllocationsRound, useCurrentAllocationsRoundId, useCurrentBlock, useEcosystemShortcuts, useEnsRecordExists, useExploreEcosystemModal, useFAQModal, useFeatureAnnouncement, useFetchAppInfo, useGMBaseUri, useGMbalance, useGetAvatar, useGetB3trBalance, useGetChainId, useGetCumulativeScoreWithDecay, useGetDelegatee, useGetDelegator, useGetDomainsOfAddress, useGetEntitiesLinkedToPassport, useGetNodeManager, useGetNodeUrl, useGetPassportForEntity, useGetPendingDelegationsDelegateePOV, useGetPendingDelegationsDelegatorPOV, useGetPendingLinkings, useGetTokenUsdPrice, useGetTokensInfoByOwner, useGetUserEntitiesLinkedToPassport, useGetUserNode, useGetUserNodes, useGetUserPassportForEntity, useGetUserPendingLinkings, useGetVeDelegateBalance, useGetVot3Balance, useHasVotedInRound, useIpfsImage, useIpfsImageList, useIpfsMetadata, useIpfsMetadatas, useIsBlacklisted, useIsDomainProtected, useIsEntity, useIsGMclaimable, useIsNodeHolder, useIsPWA, useIsPassport, useIsPassportCheckEnabled, useIsPerson, useIsPersonAtTimepoint, useIsUserEntity, useIsUserPassport, useIsUserPerson, useIsWhitelisted, useLevelMultiplier, useLevelOfToken, useLocalStorage, useLoginModalContent, useLoginWithOAuth2 as useLoginWithOAuth, useLoginWithPasskey, useLoginWithVeChain, useMostVotedAppsInRound, useMultipleXAppRoundEarnings, useNFTImage, useNFTMetadataUri, useNotificationAlerts, useNotifications, useNotificationsModal, useParticipatedInGovernance, useParticipationScoreThreshold, usePassportChecks, usePrivyWalletProvider, useReceiveModal, useRefreshBalances, useRoundEarnings, useRoundReward, useRoundXApps, useScrollToTop, useSecurityMultiplier, useSelectedGmNft, useSendTokenModal, useSendTransaction, useSignMessage2 as useSignMessage, useSignTypedData2 as useSignTypedData, useSingleImageUpload, useSmartAccount, useThresholdParticipationScore, useThresholdParticipationScoreAtTimepoint, useTokenIdByAccount, useTransactionModal, useTransactionToast, useTransferERC20, useTransferVET, useTxReceipt, useUpdateAvatarRecord, useUploadImages, useUserBotSignals, useUserDelegation, useUserRoundScore, useUserStatus, useUserTopVotedApps, useUserVotesInAllRounds, useUserVotesInRound, useVeChainKitConfig, useVechainDomain, useVotesInRound, useVotingRewards, useWallet, useWalletModal, useXApp, useXAppMetadata, useXAppRoundEarnings, useXAppTotalEarnings, useXAppVotes, useXAppVotesQf, useXApps, useXAppsMetadataBaseUri, useXAppsShares, useXNode, useXNodeCheckCooldown, useXNodes };
|
|
14595
14674
|
//# sourceMappingURL=index.js.map
|
|
14596
14675
|
//# sourceMappingURL=index.js.map
|