@vechain/vechain-kit 1.5.5 → 1.5.7

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.js CHANGED
@@ -4,8 +4,8 @@ export { getConfig } from './chunk-EUQRNI5E.js';
4
4
  import { SimpleAccountFactoryABI, VechainLogo, VechainLogoLight, VechainLogoDark, PrivyLogo, SimpleAccountABI } from './chunk-DYI6ON4O.js';
5
5
  import './chunk-PZ5AY32C.js';
6
6
  import React10, { createContext, useState, useEffect, useMemo, useCallback, useRef, useContext } from 'react';
7
- import { useLoginWithOAuth, usePrivy, useLoginWithEmail, useMfaEnrollment, useLoginWithPasskey as useLoginWithPasskey$1, PrivyProvider } from '@privy-io/react-auth';
8
- export { useMfaEnrollment, usePrivy } from '@privy-io/react-auth';
7
+ import { useLoginWithOAuth, usePrivy, useLoginWithEmail, useMfaEnrollment, useSetWalletRecovery, useLoginWithPasskey as useLoginWithPasskey$1, PrivyProvider } from '@privy-io/react-auth';
8
+ export { useMfaEnrollment, usePrivy, useSetWalletRecovery } from '@privy-io/react-auth';
9
9
  import { useConnex, useWallet as useWallet$1, useWalletModal, useVechainDomain as useVechainDomain$1, DAppKitProvider } from '@vechain/dapp-kit-react';
10
10
  export { WalletButton as DAppKitWalletButton, useConnex, useWallet as useDAppKitWallet, useWalletModal as useDAppKitWalletModal } from '@vechain/dapp-kit-react';
11
11
  import { defineChain, formatEther, parseEther, zeroAddress, keccak256, toBytes, concat, encodeFunctionData } from 'viem';
@@ -22,14 +22,14 @@ 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 { isMobile } from 'react-device-detect';
25
- import { createMultiStyleConfigHelpers, defineStyle, defineStyleConfig, extendTheme, createStandaloneToast, IconButton, VStack, Text, InputGroup, InputLeftElement, Icon, Input, InputRightElement, HStack, Link, Box, useMediaQuery, Modal, ModalOverlay, ModalContent, Button, Image, Skeleton, Spinner, useDisclosure, GridItem, ModalHeader, ModalCloseButton, ModalBody, ModalFooter, useColorModeValue, Card, CardBody, Tag, Alert, AlertIcon, useColorMode, Heading, Tabs, TabList, Tab, TabPanels, TabPanel, Grid, Divider, FormControl, Center, Container, Select, FormLabel, Textarea, AlertTitle, AlertDescription, Popover, PopoverTrigger, PopoverContent, PopoverBody, Circle, CardFooter, PinInput, PinInputField, Stack, Accordion, AccordionItem, AccordionButton, AccordionPanel, List, ListItem, ChakraProvider, ColorModeScript, Flex } from '@chakra-ui/react';
25
+ import { createMultiStyleConfigHelpers, defineStyle, defineStyleConfig, extendTheme, createStandaloneToast, IconButton, VStack, Text, InputGroup, InputLeftElement, Icon, Input, InputRightElement, HStack, Link, Box, useMediaQuery, Modal, ModalOverlay, ModalContent, Button, Image, Skeleton, Spinner, useDisclosure, GridItem, ModalHeader, ModalCloseButton, ModalBody, ModalFooter, Tag, useColorMode, Heading, useColorModeValue, Tabs, TabList, Tab, TabPanels, TabPanel, Grid, Card, CardBody, Alert, AlertIcon, Divider, FormControl, Center, Container, Select, FormLabel, Textarea, Circle, AlertTitle, AlertDescription, Popover, PopoverTrigger, PopoverContent, PopoverBody, CardFooter, PinInput, PinInputField, Stack, Accordion, AccordionItem, AccordionButton, AccordionPanel, List, ListItem, ChakraProvider, ColorModeScript, Flex } from '@chakra-ui/react';
26
26
  import { motion } from 'framer-motion';
27
- import { IoChevronBack, IoCheckmarkOutline, IoCopyOutline, IoWalletOutline, IoCloseCircle, IoShieldOutline, IoOpenOutline, IoWarningOutline, IoTrashBin, IoChevronUp, IoChevronDown, IoCloseOutline } from 'react-icons/io5';
28
- import { FaRegAddressCard, FaExternalLinkAlt, FaGlobe, FaEnvelope, FaTelegramPlane, FaChevronDown, FaEdit, FaGoogle, FaTwitter, FaPhone, FaSpotify, FaApple, FaInstagram, FaTiktok, FaGithub, FaLinkedin, FaTelegram, FaDiscord as FaDiscord$1, FaWallet, FaPlus } from 'react-icons/fa';
27
+ import { IoChevronBack, IoCheckmarkOutline, IoCopyOutline, IoWalletOutline, IoCloseCircle, IoShieldOutline, IoCogSharp, IoOpenOutline, IoTrashBin, IoChevronUp, IoChevronDown, IoCloseOutline } from 'react-icons/io5';
28
+ import { FaRegAddressCard, FaExternalLinkAlt, FaGlobe, FaEnvelope, FaArrowRight, FaTelegramPlane, FaChevronDown, FaEdit, FaGoogle, FaTwitter, FaPhone, FaSpotify, FaApple, FaInstagram, FaTiktok, FaGithub, FaLinkedin, FaTelegram, FaDiscord as FaDiscord$1, FaWallet, FaPlus } from 'react-icons/fa';
29
29
  import { HiOutlineWallet, HiOutlineShieldCheck } from 'react-icons/hi2';
30
30
  import { BsQuestionCircle, BsBookmarkFill, BsBookmark } from 'react-icons/bs';
31
31
  import { LuMail, LuArrowDownToLine } from 'react-icons/lu';
32
- import { MdOutlineNavigateNext, MdPhotoCamera, MdOutlineRefresh, MdOutlineErrorOutline, MdEmail, MdSwapHoriz } from 'react-icons/md';
32
+ import { MdOutlineNavigateNext, MdOutlineSettingsBackupRestore, MdPhotoCamera, MdOutlineRefresh, MdOutlineErrorOutline, MdEmail, MdSwapHoriz } from 'react-icons/md';
33
33
  import { FcGoogle, FcCheckmark } from 'react-icons/fc';
34
34
  import { IoIosFingerPrint, IoIosArrowForward, IoMdApps, IoMdSettings, IoIosCheckmarkCircleOutline } from 'react-icons/io';
35
35
  import { AiOutlineUser } from 'react-icons/ai';
@@ -3288,7 +3288,7 @@ var useSendTransaction = ({
3288
3288
  });
3289
3289
  }
3290
3290
  let transaction = vendor.sign("tx", clauses2);
3291
- if (feeDelegation.delegateAllTransactions) {
3291
+ if (feeDelegation?.delegateAllTransactions) {
3292
3292
  transaction = transaction.delegate(feeDelegation.delegatorUrl);
3293
3293
  }
3294
3294
  if (signerAccountAddress) {
@@ -3971,7 +3971,7 @@ var useWallet = () => {
3971
3971
  source: connectionSource,
3972
3972
  isInAppBrowser: (window.vechain && window.vechain.isInAppBrowser) ?? false,
3973
3973
  nodeUrl,
3974
- delegatorUrl: feeDelegation.delegatorUrl,
3974
+ delegatorUrl: feeDelegation?.delegatorUrl,
3975
3975
  chainId,
3976
3976
  network: network.type
3977
3977
  },
@@ -4978,7 +4978,7 @@ var AddressDisplay = ({
4978
4978
  // package.json
4979
4979
  var package_default = {
4980
4980
  name: "@vechain/vechain-kit",
4981
- version: "1.5.5",
4981
+ version: "1.5.7",
4982
4982
  private: false,
4983
4983
  homepage: "https://github.com/vechain/vechain-kit",
4984
4984
  repository: "github:vechain/vechain-kit",
@@ -5453,7 +5453,8 @@ var TransactionButtonAndStatus = ({
5453
5453
  txReceipt,
5454
5454
  isSubmitForm = false,
5455
5455
  buttonText,
5456
- isDisabled = false
5456
+ isDisabled = false,
5457
+ style
5457
5458
  }) => {
5458
5459
  const { t } = useTranslation();
5459
5460
  const { darkMode: isDark } = useVeChainKitConfig();
@@ -5462,6 +5463,10 @@ var TransactionButtonAndStatus = ({
5462
5463
  if (!transactionError) return null;
5463
5464
  return transactionError.reason || t("Something went wrong. Please try again.");
5464
5465
  }, [transactionError, t]);
5466
+ const buttonBg = useMemo(() => {
5467
+ if (style?.accentColor) return `${style.accentColor} !important`;
5468
+ return void 0;
5469
+ }, [style?.accentColor]);
5465
5470
  return /* @__PURE__ */ jsxs(VStack, { width: "full", spacing: 4, children: [
5466
5471
  errorMessage && /* @__PURE__ */ jsx(Text, { color: "#da5a5a", textAlign: "center", width: "full", children: errorMessage }),
5467
5472
  /* @__PURE__ */ jsx(
@@ -5469,6 +5474,7 @@ var TransactionButtonAndStatus = ({
5469
5474
  {
5470
5475
  px: 4,
5471
5476
  variant: "vechainKitPrimary",
5477
+ bg: buttonBg,
5472
5478
  onClick: onConfirm,
5473
5479
  type: isSubmitForm ? "submit" : "button",
5474
5480
  isLoading: isSubmitting,
@@ -5882,7 +5888,7 @@ var DappKitButton = ({ isDark, gridColumn = 2 }) => {
5882
5888
  isDark,
5883
5889
  onClick: openDappKitModal,
5884
5890
  icon: IoWalletOutline,
5885
- text: gridColumn >= 2 ? t("Connect Wallet") : void 0,
5891
+ text: gridColumn >= 2 ? t("Connect wallet") : void 0,
5886
5892
  rightIcon: /* @__PURE__ */ jsx(Icon, { as: IoIosArrowForward })
5887
5893
  }
5888
5894
  ) });
@@ -6072,110 +6078,9 @@ var MainContent = ({ setCurrentContent, onClose }) => {
6072
6078
  /* @__PURE__ */ jsx(ModalFooter, { pt: 0, pb: "5px", children: /* @__PURE__ */ jsx(VersionFooter, {}) })
6073
6079
  ] });
6074
6080
  };
6075
- var useFeatureAnnouncement = () => {
6076
- const [isVisible, setIsVisible] = useState(true);
6077
- const CACHE_KEY = "vechain_kit_feature_announcement_closed";
6078
- useEffect(() => {
6079
- const isClosed = localStorage.getItem(CACHE_KEY);
6080
- if (isClosed) {
6081
- setIsVisible(false);
6082
- }
6083
- }, []);
6084
- const closeAnnouncement = () => {
6085
- localStorage.setItem(CACHE_KEY, "true");
6086
- setIsVisible(false);
6087
- };
6088
- return {
6089
- isVisible,
6090
- closeAnnouncement
6091
- };
6092
- };
6093
- var FeatureAnnouncementCard = ({
6094
- setCurrentContent
6095
- }) => {
6096
- const { t } = useTranslation();
6097
- const { isVisible, closeAnnouncement } = useFeatureAnnouncement();
6098
- const titleColor = useColorModeValue("gray.800", "whiteAlpha.900");
6099
- const handleOnClick = () => {
6100
- setCurrentContent({
6101
- type: "choose-name",
6102
- props: {
6103
- setCurrentContent,
6104
- onBack: () => setCurrentContent("main"),
6105
- initialContentSource: "main"
6106
- }
6107
- });
6108
- closeAnnouncement();
6109
- };
6110
- if (!isVisible) return null;
6111
- return /* @__PURE__ */ jsx(
6112
- Card,
6113
- {
6114
- w: "full",
6115
- variant: "featureAnnouncement",
6116
- overflow: "hidden",
6117
- mb: 4,
6118
- onClick: handleOnClick,
6119
- cursor: "pointer",
6120
- _hover: { opacity: 0.8 },
6121
- children: /* @__PURE__ */ jsx(CardBody, { p: 4, children: /* @__PURE__ */ jsxs(HStack, { justify: "space-between", align: "flex-start", spacing: 3, children: [
6122
- /* @__PURE__ */ jsxs(VStack, { align: "flex-start", spacing: 1, children: [
6123
- /* @__PURE__ */ jsxs(HStack, { spacing: 2, children: [
6124
- /* @__PURE__ */ jsx(
6125
- Text,
6126
- {
6127
- fontSize: "sm",
6128
- fontWeight: "400",
6129
- color: titleColor,
6130
- children: t("Claim your vet domain!")
6131
- }
6132
- ),
6133
- /* @__PURE__ */ jsx(Tag, { size: "sm", colorScheme: "red", children: t("New") })
6134
- ] }),
6135
- /* @__PURE__ */ jsx(Text, { fontSize: "xs", opacity: 0.5, children: t(
6136
- "Say goodbye to 0x addresses, claim your .veworld.vet subdomain now for free!"
6137
- ) })
6138
- ] }),
6139
- /* @__PURE__ */ jsx(
6140
- IconButton,
6141
- {
6142
- size: "sm",
6143
- variant: "ghost",
6144
- colorScheme: "gray",
6145
- icon: /* @__PURE__ */ jsx(IoCloseCircle, {}),
6146
- onClick: (e) => {
6147
- e.stopPropagation();
6148
- closeAnnouncement();
6149
- },
6150
- "aria-label": t("Close announcement")
6151
- }
6152
- )
6153
- ] }) })
6154
- }
6155
- );
6156
- };
6157
- var ExchangeWarningAlert = () => {
6158
- const { t } = useTranslation();
6159
- return /* @__PURE__ */ jsx(Alert, { status: "warning", fontSize: "xs", borderRadius: "xl", p: 2, children: /* @__PURE__ */ jsx(VStack, { spacing: 1, align: "stretch", w: "full", children: /* @__PURE__ */ jsxs(HStack, { spacing: 2, align: "flex-start", children: [
6160
- /* @__PURE__ */ jsx(AlertIcon, { boxSize: 4, mt: "10px" }),
6161
- /* @__PURE__ */ jsx(Text, { w: "full", children: t(
6162
- "Sending to OceanX or other exchanges may result in loss of funds."
6163
- ) })
6164
- ] }) }) });
6165
- };
6166
- var DomainRequiredAlert = () => {
6167
- const { t } = useTranslation();
6168
- return /* @__PURE__ */ jsx(Alert, { status: "warning", fontSize: "xs", borderRadius: "xl", p: 2, children: /* @__PURE__ */ jsx(VStack, { spacing: 1, align: "stretch", w: "full", children: /* @__PURE__ */ jsxs(HStack, { spacing: 2, align: "flex-start", children: [
6169
- /* @__PURE__ */ jsx(AlertIcon, { boxSize: 4, mt: "10px" }),
6170
- /* @__PURE__ */ jsx(Text, { w: "full", children: t(
6171
- "A .vet domain is required to customize your profile. Choose an account name to get started."
6172
- ) })
6173
- ] }) }) });
6174
- };
6175
6081
  var AccountMainContent = ({ setCurrentContent, wallet }) => {
6176
6082
  const { t } = useTranslation();
6177
6083
  const { network } = useVeChainKitConfig();
6178
- const { account } = useWallet();
6179
6084
  return /* @__PURE__ */ jsxs(ScrollToTopWrapper, { children: [
6180
6085
  /* @__PURE__ */ jsxs(StickyHeaderContainer, { children: [
6181
6086
  /* @__PURE__ */ jsx(
@@ -6189,7 +6094,29 @@ var AccountMainContent = ({ setCurrentContent, wallet }) => {
6189
6094
  })
6190
6095
  }
6191
6096
  ),
6192
- /* @__PURE__ */ jsx(ModalHeader, { children: t("Wallet") }),
6097
+ /* @__PURE__ */ jsx(ModalHeader, { children: /* @__PURE__ */ jsxs(
6098
+ HStack,
6099
+ {
6100
+ w: "full",
6101
+ justifyContent: "center",
6102
+ p: 0,
6103
+ spacing: 2,
6104
+ children: [
6105
+ /* @__PURE__ */ jsx(Text, { fontSize: "md", fontWeight: "bold", children: t("Wallet") }),
6106
+ network?.type !== "main" && /* @__PURE__ */ jsx(
6107
+ Tag,
6108
+ {
6109
+ size: "xs",
6110
+ colorScheme: "orange",
6111
+ fontSize: "2xs",
6112
+ p: 1,
6113
+ textTransform: "uppercase",
6114
+ children: `${network?.type}`
6115
+ }
6116
+ )
6117
+ ]
6118
+ }
6119
+ ) }),
6193
6120
  /* @__PURE__ */ jsx(ModalCloseButton, {})
6194
6121
  ] }),
6195
6122
  /* @__PURE__ */ jsx(ModalBody, { w: "full", children: /* @__PURE__ */ jsxs(
@@ -6200,12 +6127,6 @@ var AccountMainContent = ({ setCurrentContent, wallet }) => {
6200
6127
  justifyContent: "flex-start",
6201
6128
  spacing: 6,
6202
6129
  children: [
6203
- !account?.domain && /* @__PURE__ */ jsx(
6204
- FeatureAnnouncementCard,
6205
- {
6206
- setCurrentContent
6207
- }
6208
- ),
6209
6130
  /* @__PURE__ */ jsx(
6210
6131
  AccountSelector,
6211
6132
  {
@@ -6216,26 +6137,6 @@ var AccountMainContent = ({ setCurrentContent, wallet }) => {
6216
6137
  wallet
6217
6138
  }
6218
6139
  ),
6219
- network?.type !== "main" && /* @__PURE__ */ jsx(
6220
- HStack,
6221
- {
6222
- w: "full",
6223
- justifyContent: "flex-start",
6224
- mt: "-10px",
6225
- mb: "-10px",
6226
- children: /* @__PURE__ */ jsx(
6227
- Tag,
6228
- {
6229
- size: "xl",
6230
- colorScheme: "orange",
6231
- fontSize: "xs",
6232
- p: 2,
6233
- textTransform: "capitalize",
6234
- children: `${network?.type} network`
6235
- }
6236
- )
6237
- }
6238
- ),
6239
6140
  /* @__PURE__ */ jsx(
6240
6141
  BalanceSection,
6241
6142
  {
@@ -6377,7 +6278,7 @@ var ActionButton = ({
6377
6278
  flex: 1,
6378
6279
  justifyContent: "flex-start",
6379
6280
  alignItems: "flex-start",
6380
- children: /* @__PURE__ */ jsxs(HStack, { justify: "flex-start", children: [
6281
+ children: /* @__PURE__ */ jsxs(HStack, { justify: "flex-start", alignItems: "baseline", children: [
6381
6282
  /* @__PURE__ */ jsx(Text, { fontSize: "sm", fontWeight: "400", children: title }),
6382
6283
  showComingSoon && /* @__PURE__ */ jsx(Tag, { size: "sm", colorScheme: "red", children: t("Coming Soon!") }),
6383
6284
  extraContent
@@ -6439,7 +6340,7 @@ var AccountSelector = ({
6439
6340
  props: { width: 7, height: 7 }
6440
6341
  }
6441
6342
  ),
6442
- /* @__PURE__ */ jsx(Text, { fontSize: size, fontWeight: "500", children: humanDomain(wallet?.domain ?? "", 15, 0) || humanAddress(wallet?.address ?? "", 6, 4) })
6343
+ /* @__PURE__ */ jsx(Text, { fontSize: size, fontWeight: "500", children: humanDomain(wallet?.domain ?? "", 18, 0) || humanAddress(wallet?.address ?? "", 6, 4) })
6443
6344
  ] }),
6444
6345
  /* @__PURE__ */ jsx(
6445
6346
  Icon,
@@ -6824,7 +6725,8 @@ var QuickActionButton = ({
6824
6725
  icon,
6825
6726
  label,
6826
6727
  onClick,
6827
- isDisabled
6728
+ isDisabled,
6729
+ showRedDot
6828
6730
  }) => {
6829
6731
  const { t } = useTranslation();
6830
6732
  return /* @__PURE__ */ jsx(
@@ -6837,18 +6739,41 @@ var QuickActionButton = ({
6837
6739
  isDisabled,
6838
6740
  icon: /* @__PURE__ */ jsxs(VStack, { spacing: 4, children: [
6839
6741
  /* @__PURE__ */ jsx(Icon, { as: icon, boxSize: 5, opacity: 0.9 }),
6840
- /* @__PURE__ */ jsx(Text, { fontSize: "sm", fontWeight: "600", children: t(label, label) })
6742
+ /* @__PURE__ */ jsxs(HStack, { p: 0, alignItems: "baseline", spacing: 1, children: [
6743
+ /* @__PURE__ */ jsx(Text, { fontSize: "sm", fontWeight: "600", children: t(label, label) }),
6744
+ showRedDot && /* @__PURE__ */ jsx(
6745
+ Box,
6746
+ {
6747
+ minWidth: "8px",
6748
+ height: "8px",
6749
+ bg: "red.500",
6750
+ borderRadius: "full",
6751
+ display: "flex",
6752
+ alignItems: "center",
6753
+ justifyContent: "center"
6754
+ }
6755
+ )
6756
+ ] })
6841
6757
  ] }),
6842
6758
  onClick
6843
6759
  }
6844
6760
  );
6845
6761
  };
6846
6762
  var QuickActionsSection = ({ mt, setCurrentContent }) => {
6847
- const { account } = useWallet();
6763
+ const { account, smartAccount, connectedWallet } = useWallet();
6848
6764
  const { totalBalance } = useBalances({
6849
6765
  address: account?.address ?? ""
6850
6766
  });
6851
6767
  const { t } = useTranslation();
6768
+ const { data: upgradeRequired } = useUpgradeRequired(
6769
+ smartAccount?.address ?? "",
6770
+ connectedWallet?.address ?? "",
6771
+ 3
6772
+ );
6773
+ const { getNotifications } = useNotifications();
6774
+ const notifications = getNotifications();
6775
+ const hasUnreadNotifications = notifications.some((n) => !n.isRead);
6776
+ const showRedDot = upgradeRequired || hasUnreadNotifications;
6852
6777
  return /* @__PURE__ */ jsxs(VStack, { w: "full", mt, spacing: 4, children: [
6853
6778
  /* @__PURE__ */ jsx(Heading, { size: "xs", fontWeight: "500", w: "full", opacity: 0.5, children: t("Activities") }),
6854
6779
  /* @__PURE__ */ jsx(Grid, { templateColumns: "repeat(3, 1fr)", gap: 2, w: "full", children: QUICK_ACTIONS.map((action) => /* @__PURE__ */ jsx(
@@ -6857,16 +6782,121 @@ var QuickActionsSection = ({ mt, setCurrentContent }) => {
6857
6782
  icon: action.icon,
6858
6783
  label: action.label,
6859
6784
  onClick: () => action.onClick(setCurrentContent),
6860
- isDisabled: action.isDisabled?.(totalBalance)
6785
+ isDisabled: action.isDisabled?.(totalBalance),
6786
+ showRedDot: showRedDot && action.label === "Settings"
6861
6787
  },
6862
6788
  action.label
6863
6789
  )) })
6864
6790
  ] });
6865
6791
  };
6792
+ var useFeatureAnnouncement = () => {
6793
+ const [isVisible, setIsVisible] = useState(true);
6794
+ const CACHE_KEY = "vechain_kit_feature_announcement_closed";
6795
+ useEffect(() => {
6796
+ const isClosed = localStorage.getItem(CACHE_KEY);
6797
+ if (isClosed) {
6798
+ setIsVisible(false);
6799
+ }
6800
+ }, []);
6801
+ const closeAnnouncement = () => {
6802
+ localStorage.setItem(CACHE_KEY, "true");
6803
+ setIsVisible(false);
6804
+ };
6805
+ return {
6806
+ isVisible,
6807
+ closeAnnouncement
6808
+ };
6809
+ };
6810
+ var FeatureAnnouncementCard = ({
6811
+ setCurrentContent
6812
+ }) => {
6813
+ const { t } = useTranslation();
6814
+ const { isVisible, closeAnnouncement } = useFeatureAnnouncement();
6815
+ const titleColor = useColorModeValue("blackAlpha.800", "whiteAlpha.800");
6816
+ const descriptionColor = useColorModeValue(
6817
+ "blackAlpha.700",
6818
+ "whiteAlpha.700"
6819
+ );
6820
+ const handleOnClick = () => {
6821
+ setCurrentContent({
6822
+ type: "choose-name",
6823
+ props: {
6824
+ setCurrentContent,
6825
+ onBack: () => setCurrentContent("main"),
6826
+ initialContentSource: "main"
6827
+ }
6828
+ });
6829
+ closeAnnouncement();
6830
+ };
6831
+ if (!isVisible) return null;
6832
+ return /* @__PURE__ */ jsx(
6833
+ Card,
6834
+ {
6835
+ w: "full",
6836
+ variant: "featureAnnouncement",
6837
+ overflow: "hidden",
6838
+ onClick: handleOnClick,
6839
+ cursor: "pointer",
6840
+ _hover: { opacity: 0.8 },
6841
+ children: /* @__PURE__ */ jsx(CardBody, { p: 4, children: /* @__PURE__ */ jsxs(HStack, { justify: "space-between", align: "flex-start", spacing: 3, children: [
6842
+ /* @__PURE__ */ jsxs(VStack, { align: "flex-start", spacing: 1, children: [
6843
+ /* @__PURE__ */ jsxs(HStack, { spacing: 2, children: [
6844
+ /* @__PURE__ */ jsx(
6845
+ Text,
6846
+ {
6847
+ fontSize: "sm",
6848
+ fontWeight: "400",
6849
+ color: titleColor,
6850
+ children: t("Claim your vet domain!")
6851
+ }
6852
+ ),
6853
+ /* @__PURE__ */ jsx(Tag, { size: "sm", colorScheme: "red", children: t("New") })
6854
+ ] }),
6855
+ /* @__PURE__ */ jsx(Text, { fontSize: "xs", color: descriptionColor, children: t(
6856
+ "Say goodbye to 0x addresses, claim your .veworld.vet subdomain now for free!"
6857
+ ) })
6858
+ ] }),
6859
+ /* @__PURE__ */ jsx(
6860
+ IconButton,
6861
+ {
6862
+ size: "sm",
6863
+ variant: "ghost",
6864
+ colorScheme: "gray",
6865
+ icon: /* @__PURE__ */ jsx(IoCloseCircle, {}),
6866
+ onClick: (e) => {
6867
+ e.stopPropagation();
6868
+ closeAnnouncement();
6869
+ },
6870
+ "aria-label": t("Close announcement")
6871
+ }
6872
+ )
6873
+ ] }) })
6874
+ }
6875
+ );
6876
+ };
6877
+ var ExchangeWarningAlert = () => {
6878
+ const { t } = useTranslation();
6879
+ return /* @__PURE__ */ jsx(Alert, { status: "warning", fontSize: "xs", borderRadius: "xl", p: 2, children: /* @__PURE__ */ jsx(VStack, { spacing: 1, align: "stretch", w: "full", children: /* @__PURE__ */ jsxs(HStack, { spacing: 2, align: "flex-start", children: [
6880
+ /* @__PURE__ */ jsx(AlertIcon, { boxSize: 4, mt: "10px" }),
6881
+ /* @__PURE__ */ jsx(Text, { w: "full", children: t(
6882
+ "Sending to OceanX or other exchanges may result in loss of funds."
6883
+ ) })
6884
+ ] }) }) });
6885
+ };
6886
+ var DomainRequiredAlert = () => {
6887
+ const { t } = useTranslation();
6888
+ return /* @__PURE__ */ jsx(Alert, { status: "warning", fontSize: "xs", borderRadius: "xl", p: 2, children: /* @__PURE__ */ jsx(VStack, { spacing: 1, align: "stretch", w: "full", children: /* @__PURE__ */ jsxs(HStack, { spacing: 2, align: "flex-start", children: [
6889
+ /* @__PURE__ */ jsx(AlertIcon, { boxSize: 4, mt: "10px" }),
6890
+ /* @__PURE__ */ jsx(Text, { w: "full", children: t(
6891
+ "A .vet domain is required to customize your profile. Choose an account name to get started."
6892
+ ) })
6893
+ ] }) }) });
6894
+ };
6866
6895
  var AccessAndSecurityContent = ({ setCurrentContent }) => {
6867
6896
  const { t } = useTranslation();
6868
6897
  const { exportWallet } = usePrivy();
6869
6898
  const { showMfaEnrollmentModal } = useMfaEnrollment();
6899
+ const { setWalletRecovery } = useSetWalletRecovery();
6870
6900
  const { connection, smartAccount, connectedWallet } = useWallet();
6871
6901
  const { data: upgradeRequired } = useUpgradeRequired(
6872
6902
  smartAccount?.address ?? "",
@@ -6913,6 +6943,38 @@ var AccessAndSecurityContent = ({ setCurrentContent }) => {
6913
6943
  }
6914
6944
  )
6915
6945
  ] }),
6946
+ upgradeRequired && /* @__PURE__ */ jsx(
6947
+ ActionButton,
6948
+ {
6949
+ title: t("Upgrade Smart Account to V3"),
6950
+ description: t(
6951
+ "A new version is available for your account"
6952
+ ),
6953
+ onClick: () => {
6954
+ setCurrentContent({
6955
+ type: "upgrade-smart-account",
6956
+ props: {
6957
+ setCurrentContent,
6958
+ initialContent: "access-and-security"
6959
+ }
6960
+ });
6961
+ },
6962
+ leftIcon: IoCogSharp,
6963
+ extraContent: /* @__PURE__ */ jsx(
6964
+ Box,
6965
+ {
6966
+ minWidth: "8px",
6967
+ height: "8px",
6968
+ bg: "red.500",
6969
+ borderRadius: "full",
6970
+ display: "flex",
6971
+ alignItems: "center",
6972
+ justifyContent: "center",
6973
+ ml: 2
6974
+ }
6975
+ )
6976
+ }
6977
+ ),
6916
6978
  /* @__PURE__ */ jsx(
6917
6979
  ActionButton,
6918
6980
  {
@@ -6958,23 +7020,15 @@ var AccessAndSecurityContent = ({ setCurrentContent }) => {
6958
7020
  leftIcon: HiOutlineShieldCheck
6959
7021
  }
6960
7022
  ),
6961
- upgradeRequired && /* @__PURE__ */ jsx(
7023
+ /* @__PURE__ */ jsx(
6962
7024
  ActionButton,
6963
7025
  {
6964
- title: t("Upgrade Smart Account to V3"),
6965
- description: t(
6966
- "A new version is available for your account"
6967
- ),
7026
+ title: t("Manage Recovery"),
6968
7027
  onClick: () => {
6969
- setCurrentContent({
6970
- type: "upgrade-smart-account",
6971
- props: {
6972
- setCurrentContent,
6973
- initialContent: "access-and-security"
6974
- }
6975
- });
7028
+ setWalletRecovery();
6976
7029
  },
6977
- leftIcon: HiOutlineShieldCheck
7030
+ isDisabled: !connection.isConnectedWithSocialLogin,
7031
+ leftIcon: MdOutlineSettingsBackupRestore
6978
7032
  }
6979
7033
  )
6980
7034
  ]
@@ -7220,13 +7274,18 @@ var SettingsContent = ({
7220
7274
  const contentRef = useRef(null);
7221
7275
  const { t } = useTranslation();
7222
7276
  const { privy } = useVeChainKitConfig();
7223
- const { connection, disconnect, account } = useWallet();
7277
+ const { connection, disconnect, account, smartAccount, connectedWallet } = useWallet();
7224
7278
  const { getConnectionCache } = useCrossAppConnectionCache();
7225
7279
  const connectionCache = getConnectionCache();
7226
7280
  const { data: appInfo } = useFetchAppInfo(privy?.appId ?? "");
7227
7281
  const { getNotifications } = useNotifications();
7228
7282
  const notifications = getNotifications();
7229
7283
  const hasUnreadNotifications = notifications.some((n) => !n.isRead);
7284
+ const { data: upgradeRequired } = useUpgradeRequired(
7285
+ smartAccount?.address ?? "",
7286
+ connectedWallet?.address ?? "",
7287
+ 3
7288
+ );
7230
7289
  useEffect(() => {
7231
7290
  if (contentRef.current) {
7232
7291
  contentRef.current.scrollTop = 0;
@@ -7287,7 +7346,19 @@ var SettingsContent = ({
7287
7346
  setCurrentContent("access-and-security");
7288
7347
  },
7289
7348
  leftIcon: IoShieldOutline,
7290
- rightIcon: MdOutlineNavigateNext
7349
+ rightIcon: MdOutlineNavigateNext,
7350
+ extraContent: upgradeRequired && /* @__PURE__ */ jsx(
7351
+ Box,
7352
+ {
7353
+ minWidth: "8px",
7354
+ height: "8px",
7355
+ bg: "red.500",
7356
+ borderRadius: "full",
7357
+ display: "flex",
7358
+ alignItems: "center",
7359
+ justifyContent: "center"
7360
+ }
7361
+ )
7291
7362
  }
7292
7363
  ),
7293
7364
  /* @__PURE__ */ jsx(
@@ -7325,17 +7396,13 @@ var SettingsContent = ({
7325
7396
  extraContent: hasUnreadNotifications && /* @__PURE__ */ jsx(
7326
7397
  Box,
7327
7398
  {
7328
- minWidth: "16px",
7329
- height: "16px",
7399
+ minWidth: "8px",
7400
+ height: "8px",
7330
7401
  bg: "red.500",
7331
7402
  borderRadius: "full",
7332
7403
  display: "flex",
7333
7404
  alignItems: "center",
7334
- justifyContent: "center",
7335
- ml: 2,
7336
- children: /* @__PURE__ */ jsx(Text, { fontSize: "xs", color: "white", children: notifications.filter(
7337
- (n) => !n.isRead
7338
- ).length })
7405
+ justifyContent: "center"
7339
7406
  }
7340
7407
  )
7341
7408
  }
@@ -8292,6 +8359,10 @@ var SendTokenSummaryContent = ({
8292
8359
  return selectedToken.symbol === "VET" ? transferVETReceipt : transferERC20Receipt;
8293
8360
  };
8294
8361
  const handleSend = async () => {
8362
+ if (upgradeRequired) {
8363
+ openUpgradeSmartAccountModal();
8364
+ return;
8365
+ }
8295
8366
  try {
8296
8367
  if (selectedToken.symbol === "VET") {
8297
8368
  await transferVET();
@@ -8304,11 +8375,6 @@ var SendTokenSummaryContent = ({
8304
8375
  };
8305
8376
  const isTxWaitingConfirmation = transferERC20WaitingForWalletConfirmation || transferVETWaitingForWalletConfirmation;
8306
8377
  const isSubmitting = isTxWaitingConfirmation || transferERC20Pending || transferVETPending;
8307
- useEffect(() => {
8308
- if (upgradeRequired) {
8309
- openUpgradeSmartAccountModal();
8310
- }
8311
- }, [upgradeRequired, openUpgradeSmartAccountModal]);
8312
8378
  return /* @__PURE__ */ jsxs(Fragment, { children: [
8313
8379
  /* @__PURE__ */ jsxs(StickyHeaderContainer, { children: [
8314
8380
  /* @__PURE__ */ jsx(ModalHeader, { children: "Send" }),
@@ -8407,7 +8473,7 @@ var SendTokenSummaryContent = ({
8407
8473
  transactionPendingText: t("Sending..."),
8408
8474
  txReceipt: getTxReceipt(),
8409
8475
  buttonText: t("Confirm"),
8410
- isDisabled: isSubmitting || upgradeRequired
8476
+ isDisabled: isSubmitting
8411
8477
  }
8412
8478
  ) })
8413
8479
  ] });
@@ -8873,17 +8939,16 @@ var ChooseNameSummaryContent = ({
8873
8939
  }
8874
8940
  });
8875
8941
  const handleConfirm = async () => {
8942
+ if (upgradeRequired) {
8943
+ openUpgradeSmartAccountModal();
8944
+ return;
8945
+ }
8876
8946
  try {
8877
8947
  await sendTransaction();
8878
8948
  } catch (error) {
8879
8949
  console.error("Transaction failed:", error);
8880
8950
  }
8881
8951
  };
8882
- useEffect(() => {
8883
- if (upgradeRequired) {
8884
- openUpgradeSmartAccountModal();
8885
- }
8886
- }, [upgradeRequired, openUpgradeSmartAccountModal]);
8887
8952
  return /* @__PURE__ */ jsxs(Fragment, { children: [
8888
8953
  /* @__PURE__ */ jsxs(StickyHeaderContainer, { children: [
8889
8954
  /* @__PURE__ */ jsx(ModalHeader, { children: t("Confirm Name") }),
@@ -8917,7 +8982,7 @@ var ChooseNameSummaryContent = ({
8917
8982
  transactionPendingText: t("Claiming name..."),
8918
8983
  txReceipt,
8919
8984
  buttonText: t("Confirm"),
8920
- isDisabled: isTransactionPending || upgradeRequired
8985
+ isDisabled: isTransactionPending
8921
8986
  }
8922
8987
  ) })
8923
8988
  ] });
@@ -9169,6 +9234,7 @@ var en_default = {
9169
9234
  "Confirm transaction": "Confirm transaction",
9170
9235
  "Connect Wallet": "Connect Wallet",
9171
9236
  "Connect an external wallet for easier access": "Connect an external wallet for easier access",
9237
+ "Connect wallet": "Connect wallet",
9172
9238
  "Connect your Apple account for easier access": "Connect your Apple account for easier access",
9173
9239
  "Connect your Discord account for easier access": "Connect your Discord account for easier access",
9174
9240
  "Connect your Farcaster account for easier access": "Connect your Farcaster account for easier access",
@@ -9301,6 +9367,7 @@ var en_default = {
9301
9367
  Mainnet: "Mainnet",
9302
9368
  "Manage Custom Tokens": "Manage Custom Tokens",
9303
9369
  "Manage MFA": "Manage MFA",
9370
+ "Manage Recovery": "Manage Recovery",
9304
9371
  "Manage multi-factor authentication settings for your wallet.": "Manage multi-factor authentication settings for your wallet.",
9305
9372
  "Manage on VeBetterDAO": "Manage on VeBetterDAO",
9306
9373
  "Manage passkey login": "Manage passkey login",
@@ -9649,6 +9716,7 @@ var de_default = {
9649
9716
  "Confirm transaction": "Transaktion best\xE4tigen",
9650
9717
  "Connect Wallet": "Wallet verbinden",
9651
9718
  "Connect an external wallet for easier access": "Verbinden Sie eine externe Wallet f\xFCr einfacheren Zugang",
9719
+ "Connect wallet": "Wallet verbinden",
9652
9720
  "Connect your Apple account for easier access": "Verbinden Sie Ihr Apple-Konto f\xFCr einfacheren Zugriff",
9653
9721
  "Connect your Discord account for easier access": "Verbinden Sie Ihr Discord-Konto f\xFCr einen einfacheren Zugriff",
9654
9722
  "Connect your Farcaster account for easier access": "Verbinden Sie Ihr Farcaster-Konto f\xFCr einfacheren Zugriff",
@@ -9781,6 +9849,7 @@ var de_default = {
9781
9849
  Mainnet: "Mainnet",
9782
9850
  "Manage Custom Tokens": "Benutzerdefinierte Token verwalten",
9783
9851
  "Manage MFA": "MFA verwalten",
9852
+ "Manage Recovery": "Wiederherstellung verwalten",
9784
9853
  "Manage multi-factor authentication settings for your wallet.": "Verwalten Sie die Einstellungen zur Multi-Faktor-Authentifizierung f\xFCr Ihr Wallet.",
9785
9854
  "Manage on VeBetterDAO": "Verwalten auf VeBetterDAO",
9786
9855
  "Manage passkey login": "Passkey-Anmeldung verwalten",
@@ -10129,6 +10198,7 @@ var it_default = {
10129
10198
  "Confirm transaction": "Conferma transazione",
10130
10199
  "Connect Wallet": "Collega Portafoglio",
10131
10200
  "Connect an external wallet for easier access": "Collega un portafoglio esterno per un accesso pi\xF9 semplice",
10201
+ "Connect wallet": "Connetti portafoglio",
10132
10202
  "Connect your Apple account for easier access": "Collega il tuo account Apple per un accesso pi\xF9 facile",
10133
10203
  "Connect your Discord account for easier access": "Collega il tuo account Discord per accedere pi\xF9 facilmente",
10134
10204
  "Connect your Farcaster account for easier access": "Collega il tuo account Farcaster per un accesso pi\xF9 facile",
@@ -10261,6 +10331,7 @@ var it_default = {
10261
10331
  Mainnet: "Mainnet",
10262
10332
  "Manage Custom Tokens": "Gestisci Token Personalizzati",
10263
10333
  "Manage MFA": "Gestisci MFA",
10334
+ "Manage Recovery": "Gestisci Recupero",
10264
10335
  "Manage multi-factor authentication settings for your wallet.": "Gestisci le impostazioni di autenticazione a pi\xF9 fattori per il tuo portafoglio.",
10265
10336
  "Manage on VeBetterDAO": "Gestisci su VeBetterDAO",
10266
10337
  "Manage passkey login": "Gestisci login con chiave di accesso",
@@ -10609,6 +10680,7 @@ var fr_default = {
10609
10680
  "Confirm transaction": "Confirmer la transaction",
10610
10681
  "Connect Wallet": "Connecter le portefeuille",
10611
10682
  "Connect an external wallet for easier access": "Connectez un portefeuille externe pour un acc\xE8s plus facile",
10683
+ "Connect wallet": "Connecter le portefeuille",
10612
10684
  "Connect your Apple account for easier access": "Connectez votre compte Apple pour un acc\xE8s plus facile",
10613
10685
  "Connect your Discord account for easier access": "Connectez votre compte Discord pour un acc\xE8s plus facile",
10614
10686
  "Connect your Farcaster account for easier access": "Connectez votre compte Farcaster pour un acc\xE8s plus facile",
@@ -10741,6 +10813,7 @@ var fr_default = {
10741
10813
  Mainnet: "Mainnet",
10742
10814
  "Manage Custom Tokens": "G\xE9rer les jetons personnalis\xE9s",
10743
10815
  "Manage MFA": "G\xE9rer la MFA",
10816
+ "Manage Recovery": "G\xE9rer la r\xE9cup\xE9ration",
10744
10817
  "Manage multi-factor authentication settings for your wallet.": "G\xE9rez les param\xE8tres d'authentification \xE0 plusieurs facteurs pour votre portefeuille.",
10745
10818
  "Manage on VeBetterDAO": "G\xE9rer sur VeBetterDAO",
10746
10819
  "Manage passkey login": "G\xE9rer la connexion par cl\xE9 de passe",
@@ -11089,6 +11162,7 @@ var es_default = {
11089
11162
  "Confirm transaction": "Confirmar transacci\xF3n",
11090
11163
  "Connect Wallet": "Conectar Monedero",
11091
11164
  "Connect an external wallet for easier access": "Conectar una billetera externa para un acceso m\xE1s f\xE1cil",
11165
+ "Connect wallet": "Conectar billetera",
11092
11166
  "Connect your Apple account for easier access": "Conecta tu cuenta de Apple para un acceso m\xE1s f\xE1cil",
11093
11167
  "Connect your Discord account for easier access": "Conecta tu cuenta de Discord para un acceso m\xE1s f\xE1cil",
11094
11168
  "Connect your Farcaster account for easier access": "Conecta tu cuenta de Farcaster para un acceso m\xE1s f\xE1cil",
@@ -11221,6 +11295,7 @@ var es_default = {
11221
11295
  Mainnet: "Red principal",
11222
11296
  "Manage Custom Tokens": "Gestionar tokens personalizados",
11223
11297
  "Manage MFA": "Gestionar MFA",
11298
+ "Manage Recovery": "Gestionar la Recuperaci\xF3n",
11224
11299
  "Manage multi-factor authentication settings for your wallet.": "Gestionar configuraciones de autenticaci\xF3n multifactor para tu billetera.",
11225
11300
  "Manage on VeBetterDAO": "Gestionar en VeBetterDAO",
11226
11301
  "Manage passkey login": "Administrar inicio de sesi\xF3n con llave de acceso",
@@ -11569,6 +11644,7 @@ var zh_default = {
11569
11644
  "Confirm transaction": "\u786E\u8BA4\u4EA4\u6613",
11570
11645
  "Connect Wallet": "\u8FDE\u63A5\u94B1\u5305",
11571
11646
  "Connect an external wallet for easier access": "\u8FDE\u63A5\u5916\u90E8\u94B1\u5305\u4EE5\u4FBF\u66F4\u8F7B\u677E\u8BBF\u95EE",
11647
+ "Connect wallet": "\u8FDE\u63A5\u94B1\u5305",
11572
11648
  "Connect your Apple account for easier access": "\u8FDE\u63A5\u60A8\u7684 Apple \u8D26\u6237\u4EE5\u4FBF\u66F4\u8F7B\u677E\u5730\u8BBF\u95EE",
11573
11649
  "Connect your Discord account for easier access": "\u8FDE\u63A5\u60A8\u7684 Discord \u5E10\u53F7\u4EE5\u66F4\u8F7B\u677E\u5730\u8BBF\u95EE",
11574
11650
  "Connect your Farcaster account for easier access": "\u8FDE\u63A5\u60A8\u7684 Farcaster \u8D26\u6237\u4EE5\u4FBF\u66F4\u8F7B\u677E\u5730\u8BBF\u95EE",
@@ -11701,6 +11777,7 @@ var zh_default = {
11701
11777
  Mainnet: "\u4E3B\u7F51",
11702
11778
  "Manage Custom Tokens": "\u7BA1\u7406\u81EA\u5B9A\u4E49\u4EE3\u5E01",
11703
11779
  "Manage MFA": "\u7BA1\u7406\u591A\u56E0\u7D20\u8BA4\u8BC1",
11780
+ "Manage Recovery": "\u7BA1\u7406\u6062\u590D",
11704
11781
  "Manage multi-factor authentication settings for your wallet.": "\u7BA1\u7406\u60A8\u94B1\u5305\u7684\u591A\u56E0\u7D20\u8BA4\u8BC1\u8BBE\u7F6E\u3002",
11705
11782
  "Manage on VeBetterDAO": "\u5728VeBetterDAO\u4E0A\u7BA1\u7406",
11706
11783
  "Manage passkey login": "\u7BA1\u7406\u5BC6\u7801\u767B\u5F55",
@@ -12049,6 +12126,7 @@ var ja_default = {
12049
12126
  "Confirm transaction": "\u53D6\u5F15\u3092\u78BA\u8A8D",
12050
12127
  "Connect Wallet": "\u30A6\u30A9\u30EC\u30C3\u30C8\u3092\u63A5\u7D9A",
12051
12128
  "Connect an external wallet for easier access": "\u5916\u90E8\u30A6\u30A9\u30EC\u30C3\u30C8\u3092\u63A5\u7D9A\u3057\u3066\u7C21\u5358\u306B\u30A2\u30AF\u30BB\u30B9",
12129
+ "Connect wallet": "\u30A6\u30A9\u30EC\u30C3\u30C8\u3092\u63A5\u7D9A",
12052
12130
  "Connect your Apple account for easier access": "Apple\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u63A5\u7D9A\u3057\u3066\u7C21\u5358\u306B\u30A2\u30AF\u30BB\u30B9",
12053
12131
  "Connect your Discord account for easier access": "\u7C21\u5358\u306A\u30A2\u30AF\u30BB\u30B9\u306E\u305F\u3081\u306B\u3042\u306A\u305F\u306EDiscord\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u63A5\u7D9A\u3057\u3066\u304F\u3060\u3055\u3044",
12054
12132
  "Connect your Farcaster account for easier access": "Farcaster\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u63A5\u7D9A\u3057\u3066\u7C21\u5358\u306B\u30A2\u30AF\u30BB\u30B9",
@@ -12181,6 +12259,7 @@ var ja_default = {
12181
12259
  Mainnet: "\u30E1\u30A4\u30F3\u30CD\u30C3\u30C8",
12182
12260
  "Manage Custom Tokens": "\u30AB\u30B9\u30BF\u30E0\u30C8\u30FC\u30AF\u30F3\u306E\u7BA1\u7406",
12183
12261
  "Manage MFA": "MFA\u3092\u7BA1\u7406\u3059\u308B",
12262
+ "Manage Recovery": "\u30EA\u30AB\u30D0\u30EA\u30FC\u306E\u7BA1\u7406",
12184
12263
  "Manage multi-factor authentication settings for your wallet.": "\u30A6\u30A9\u30EC\u30C3\u30C8\u306E\u591A\u8981\u7D20\u8A8D\u8A3C\u8A2D\u5B9A\u3092\u7BA1\u7406\u3059\u308B\u3002",
12185
12264
  "Manage on VeBetterDAO": "VeBetterDAO\u3067\u7BA1\u7406",
12186
12265
  "Manage passkey login": "\u30D1\u30B9\u30AD\u30FC\u306E\u30ED\u30B0\u30A4\u30F3\u3092\u7BA1\u7406",
@@ -13072,13 +13151,17 @@ var CustomizationSummaryContent = ({
13072
13151
  "Your changes have been saved successfully."
13073
13152
  ),
13074
13153
  onDone: () => {
13075
- setCurrentContent("settings");
13154
+ setCurrentContent("profile");
13076
13155
  }
13077
13156
  }
13078
13157
  });
13079
13158
  }
13080
13159
  });
13081
13160
  const onSubmit = async (data) => {
13161
+ if (upgradeRequired) {
13162
+ openUpgradeSmartAccountModal();
13163
+ return;
13164
+ }
13082
13165
  try {
13083
13166
  const domain2 = account?.domain ?? "";
13084
13167
  const CHANGES_TO_TEXT_RECORDS = {
@@ -13117,11 +13200,6 @@ var CustomizationSummaryContent = ({
13117
13200
  /* @__PURE__ */ jsx(Text, { fontSize: "md", children: value })
13118
13201
  ] });
13119
13202
  };
13120
- useEffect(() => {
13121
- if (upgradeRequired) {
13122
- openUpgradeSmartAccountModal();
13123
- }
13124
- }, [upgradeRequired, openUpgradeSmartAccountModal]);
13125
13203
  return /* @__PURE__ */ jsxs(Box, { as: "form", onSubmit: handleSubmit(onSubmit), children: [
13126
13204
  /* @__PURE__ */ jsxs(StickyHeaderContainer, { children: [
13127
13205
  /* @__PURE__ */ jsx(ModalHeader, { children: t("Confirm Changes") }),
@@ -13162,7 +13240,7 @@ var CustomizationSummaryContent = ({
13162
13240
  transactionPendingText: t("Saving changes..."),
13163
13241
  txReceipt,
13164
13242
  buttonText: t("Confirm"),
13165
- isDisabled: isTransactionPending || upgradeRequired
13243
+ isDisabled: isTransactionPending
13166
13244
  }
13167
13245
  ) })
13168
13246
  ] });
@@ -13179,26 +13257,34 @@ var ProfileContent = ({
13179
13257
  /* @__PURE__ */ jsx(ModalBackButton, { onClick: () => setCurrentContent("main") }),
13180
13258
  /* @__PURE__ */ jsx(ModalCloseButton, {})
13181
13259
  ] }),
13182
- /* @__PURE__ */ jsx(ModalBody, { w: "full", children: /* @__PURE__ */ jsx(
13183
- ProfileCard,
13184
- {
13185
- onEditClick: () => setCurrentContent("account-customization"),
13186
- address: account?.address ?? "",
13187
- showHeader: false,
13188
- onLogout: () => {
13189
- setCurrentContent?.({
13190
- type: "disconnect-confirm",
13191
- props: {
13192
- onDisconnect: () => {
13193
- disconnect();
13194
- onLogoutSuccess?.();
13195
- },
13196
- onBack: () => setCurrentContent?.("profile")
13197
- }
13198
- });
13260
+ /* @__PURE__ */ jsx(ModalBody, { w: "full", children: /* @__PURE__ */ jsxs(VStack, { w: "full", spacing: 2, children: [
13261
+ !account?.domain && /* @__PURE__ */ jsx(
13262
+ FeatureAnnouncementCard,
13263
+ {
13264
+ setCurrentContent
13199
13265
  }
13200
- }
13201
- ) }),
13266
+ ),
13267
+ /* @__PURE__ */ jsx(
13268
+ ProfileCard,
13269
+ {
13270
+ onEditClick: () => setCurrentContent("account-customization"),
13271
+ address: account?.address ?? "",
13272
+ showHeader: false,
13273
+ onLogout: () => {
13274
+ setCurrentContent?.({
13275
+ type: "disconnect-confirm",
13276
+ props: {
13277
+ onDisconnect: () => {
13278
+ disconnect();
13279
+ onLogoutSuccess?.();
13280
+ },
13281
+ onBack: () => setCurrentContent?.("profile")
13282
+ }
13283
+ });
13284
+ }
13285
+ }
13286
+ )
13287
+ ] }) }),
13202
13288
  /* @__PURE__ */ jsx(ModalFooter, { pt: 0 })
13203
13289
  ] });
13204
13290
  };
@@ -13268,12 +13354,71 @@ var UpgradeSmartAccountContent = ({
13268
13354
  ),
13269
13355
  /* @__PURE__ */ jsx(ModalCloseButton, {})
13270
13356
  ] }),
13271
- /* @__PURE__ */ jsx(ModalBody, { children: /* @__PURE__ */ jsxs(VStack, { spacing: 6, align: "stretch", children: [
13357
+ /* @__PURE__ */ jsx(ModalBody, { children: /* @__PURE__ */ jsxs(VStack, { spacing: 10, align: "stretch", children: [
13272
13358
  /* @__PURE__ */ jsx(Text, { fontSize: "sm", textAlign: "center", children: upgradeRequired ? t(
13273
13359
  "Your smart account needs to be upgraded to the latest version (v3)."
13274
13360
  ) : t(
13275
13361
  "Your smart account is already upgraded to this version."
13276
13362
  ) }),
13363
+ /* @__PURE__ */ jsxs(
13364
+ HStack,
13365
+ {
13366
+ align: "center",
13367
+ justifyContent: "space-evenly",
13368
+ rounded: "md",
13369
+ children: [
13370
+ /* @__PURE__ */ jsxs(Box, { position: "relative", display: "inline-block", children: [
13371
+ /* @__PURE__ */ jsx(Circle, { size: "60px", bg: "gray.200", children: /* @__PURE__ */ jsx(
13372
+ Image,
13373
+ {
13374
+ borderRadius: "full",
13375
+ src: smartAccount?.image,
13376
+ alt: t("Profile Picture"),
13377
+ w: "100%",
13378
+ h: "100%",
13379
+ objectFit: "cover"
13380
+ }
13381
+ ) }),
13382
+ /* @__PURE__ */ jsx(
13383
+ Heading,
13384
+ {
13385
+ position: "absolute",
13386
+ top: "-5",
13387
+ right: "-5",
13388
+ color: "#D23F63",
13389
+ fontSize: "28px",
13390
+ children: `v1`
13391
+ }
13392
+ )
13393
+ ] }),
13394
+ /* @__PURE__ */ jsx(Icon, { as: FaArrowRight, color: "#3DBA67" }),
13395
+ /* @__PURE__ */ jsxs(Box, { position: "relative", display: "inline-block", children: [
13396
+ /* @__PURE__ */ jsx(Circle, { size: "60px", bg: "gray.200", children: /* @__PURE__ */ jsx(
13397
+ Image,
13398
+ {
13399
+ borderRadius: "full",
13400
+ src: smartAccount?.image,
13401
+ alt: t("Profile Picture"),
13402
+ w: "100%",
13403
+ h: "100%",
13404
+ objectFit: "cover"
13405
+ }
13406
+ ) }),
13407
+ /* @__PURE__ */ jsx(
13408
+ Heading,
13409
+ {
13410
+ position: "absolute",
13411
+ top: "-5",
13412
+ right: "-5",
13413
+ color: "#3DBA67",
13414
+ fontSize: "28px",
13415
+ children: `v3`
13416
+ }
13417
+ )
13418
+ ] })
13419
+ ]
13420
+ }
13421
+ ),
13277
13422
  /* @__PURE__ */ jsxs(Alert, { status: "info", borderRadius: "md", children: [
13278
13423
  /* @__PURE__ */ jsx(AlertIcon, {}),
13279
13424
  /* @__PURE__ */ jsxs(Box, { children: [
@@ -13299,23 +13444,6 @@ var UpgradeSmartAccountContent = ({
13299
13444
  ] })
13300
13445
  ] }) })
13301
13446
  ] })
13302
- ] }),
13303
- /* @__PURE__ */ jsxs(Alert, { status: "warning", borderRadius: "md", children: [
13304
- /* @__PURE__ */ jsx(AlertIcon, { as: IoWarningOutline }),
13305
- /* @__PURE__ */ jsxs(Box, { children: [
13306
- /* @__PURE__ */ jsx(AlertTitle, { fontSize: "sm", children: t("Important") }),
13307
- /* @__PURE__ */ jsx(
13308
- AlertDescription,
13309
- {
13310
- fontSize: "xs",
13311
- lineHeight: "17px",
13312
- display: "block",
13313
- children: t(
13314
- "This upgrade is necessary to continue interacting with VeChain blockchain. Please complete it now."
13315
- )
13316
- }
13317
- )
13318
- ] })
13319
13447
  ] })
13320
13448
  ] }) }),
13321
13449
  /* @__PURE__ */ jsx(ModalFooter, { justifyContent: "center", children: /* @__PURE__ */ jsxs(VStack, { spacing: 3, w: "full", children: [
@@ -14532,7 +14660,7 @@ var DEFAULT_APPS = [
14532
14660
  name: "VeChain Kit",
14533
14661
  description: "A all-in-one library for building VeChain applications.",
14534
14662
  external_url: "https://vechainkit.vechain.org/",
14535
- logo: "https://i.ibb.co/ncysMF9/vechain-kit-logo-transparent.png",
14663
+ logo: "https://vechain.org/wp-content/uploads/2025/02/VeChain_Icon_Quartz_300ppi.png",
14536
14664
  banner: "",
14537
14665
  screenshots: [],
14538
14666
  social_urls: [],
@@ -14835,7 +14963,7 @@ var TransactionModalContent = ({
14835
14963
  };
14836
14964
  case "error":
14837
14965
  return {
14838
- title: uiConfig?.title ?? t("Something went wrong"),
14966
+ title: t("Something went wrong"),
14839
14967
  icon: uiConfig?.errorIcon ?? /* @__PURE__ */ jsx(
14840
14968
  Icon,
14841
14969
  {
@@ -14848,7 +14976,7 @@ var TransactionModalContent = ({
14848
14976
  };
14849
14977
  case "success":
14850
14978
  return {
14851
- title: uiConfig?.title ?? t("Transaction completed!"),
14979
+ title: t("Transaction successful!"),
14852
14980
  icon: uiConfig?.successIcon ?? /* @__PURE__ */ jsx(
14853
14981
  Icon,
14854
14982
  {
@@ -15016,7 +15144,7 @@ var SuccessfulOperationContent = ({
15016
15144
  showSocialButtons = false
15017
15145
  }) => {
15018
15146
  const { t } = useTranslation();
15019
- const { network } = useVeChainKitConfig();
15147
+ const { network, darkMode } = useVeChainKitConfig();
15020
15148
  const explorerUrl = getConfig(network.type).explorerUrl;
15021
15149
  const socialDescription = `${explorerUrl}/${txId}`;
15022
15150
  return /* @__PURE__ */ jsxs(Box, { children: [
@@ -15030,7 +15158,7 @@ var SuccessfulOperationContent = ({
15030
15158
  {
15031
15159
  as: IoIosCheckmarkCircleOutline,
15032
15160
  fontSize: "100px",
15033
- color: "#22c55e"
15161
+ color: darkMode ? "#00ff45de" : "#10ba3e"
15034
15162
  }
15035
15163
  ),
15036
15164
  description && /* @__PURE__ */ jsx(Text, { fontSize: "sm", textAlign: "center", children: description }),
@@ -16158,7 +16286,7 @@ var SuccessfulOperationContent2 = ({
16158
16286
  showSocialButtons = false
16159
16287
  }) => {
16160
16288
  const { t } = useTranslation();
16161
- const { network } = useVeChainKitConfig();
16289
+ const { network, darkMode } = useVeChainKitConfig();
16162
16290
  const explorerUrl = getConfig(network.type).explorerUrl;
16163
16291
  const socialDescription = `${explorerUrl}/${txId}`;
16164
16292
  return /* @__PURE__ */ jsxs(Box, { children: [
@@ -16183,7 +16311,7 @@ var SuccessfulOperationContent2 = ({
16183
16311
  {
16184
16312
  as: IoIosCheckmarkCircleOutline,
16185
16313
  fontSize: "100px",
16186
- color: "#00ff45de"
16314
+ color: darkMode ? "#00ff45de" : "#10ba3e"
16187
16315
  }
16188
16316
  )
16189
16317
  }
@@ -16237,7 +16365,8 @@ var SuccessfulOperationContent2 = ({
16237
16365
  };
16238
16366
  var UpgradeSmartAccountContent2 = ({
16239
16367
  setCurrentContent,
16240
- handleClose
16368
+ handleClose,
16369
+ style
16241
16370
  }) => {
16242
16371
  const { t } = useTranslation();
16243
16372
  const { smartAccount, connectedWallet } = useWallet();
@@ -16288,10 +16417,69 @@ var UpgradeSmartAccountContent2 = ({
16288
16417
  /* @__PURE__ */ jsx(ModalHeader, { children: t("Account upgrade required") }),
16289
16418
  /* @__PURE__ */ jsx(ModalCloseButton, {})
16290
16419
  ] }),
16291
- /* @__PURE__ */ jsx(ModalBody, { children: /* @__PURE__ */ jsxs(VStack, { spacing: 6, align: "stretch", children: [
16420
+ /* @__PURE__ */ jsx(ModalBody, { children: /* @__PURE__ */ jsxs(VStack, { spacing: 10, align: "stretch", justifyContent: "center", children: [
16292
16421
  /* @__PURE__ */ jsx(Text, { fontSize: "sm", textAlign: "center", children: t(
16293
16422
  "To continue interacting with VeChain blockchain and complete your operation, your smart account needs to be upgraded to the latest version (v3)."
16294
16423
  ) }),
16424
+ /* @__PURE__ */ jsxs(
16425
+ HStack,
16426
+ {
16427
+ align: "center",
16428
+ justifyContent: "space-evenly",
16429
+ rounded: "md",
16430
+ children: [
16431
+ /* @__PURE__ */ jsxs(Box, { position: "relative", display: "inline-block", children: [
16432
+ /* @__PURE__ */ jsx(Circle, { size: "60px", bg: "gray.200", children: /* @__PURE__ */ jsx(
16433
+ Image,
16434
+ {
16435
+ src: smartAccount?.image,
16436
+ alt: t("Profile Picture"),
16437
+ w: "100%",
16438
+ h: "100%",
16439
+ borderRadius: "full",
16440
+ objectFit: "cover"
16441
+ }
16442
+ ) }),
16443
+ /* @__PURE__ */ jsx(
16444
+ Heading,
16445
+ {
16446
+ position: "absolute",
16447
+ top: "-5",
16448
+ right: "-5",
16449
+ color: "#D23F63",
16450
+ fontSize: "28px",
16451
+ children: `v1`
16452
+ }
16453
+ )
16454
+ ] }),
16455
+ /* @__PURE__ */ jsx(Icon, { as: FaArrowRight, color: "#3DBA67" }),
16456
+ /* @__PURE__ */ jsxs(Box, { position: "relative", display: "inline-block", children: [
16457
+ /* @__PURE__ */ jsx(Circle, { size: "60px", bg: "gray.200", children: /* @__PURE__ */ jsx(
16458
+ Image,
16459
+ {
16460
+ src: smartAccount?.image,
16461
+ alt: t("Profile Picture"),
16462
+ w: "100%",
16463
+ h: "100%",
16464
+ borderRadius: "full",
16465
+ objectFit: "cover"
16466
+ }
16467
+ ) }),
16468
+ /* @__PURE__ */ jsx(
16469
+ Heading,
16470
+ {
16471
+ position: "absolute",
16472
+ top: "-5",
16473
+ right: "-5",
16474
+ color: "#3DBA67",
16475
+ fontSize: "28px",
16476
+ children: `v3`
16477
+ }
16478
+ )
16479
+ ] })
16480
+ ]
16481
+ }
16482
+ ),
16295
16483
  /* @__PURE__ */ jsxs(Alert, { status: "info", borderRadius: "md", children: [
16296
16484
  /* @__PURE__ */ jsx(AlertIcon, {}),
16297
16485
  /* @__PURE__ */ jsxs(Box, { children: [
@@ -16317,28 +16505,12 @@ var UpgradeSmartAccountContent2 = ({
16317
16505
  ] })
16318
16506
  ] }) })
16319
16507
  ] })
16320
- ] }),
16321
- /* @__PURE__ */ jsxs(Alert, { status: "warning", borderRadius: "md", children: [
16322
- /* @__PURE__ */ jsx(AlertIcon, { as: IoWarningOutline }),
16323
- /* @__PURE__ */ jsxs(Box, { children: [
16324
- /* @__PURE__ */ jsx(AlertTitle, { fontSize: "sm", children: t("Important") }),
16325
- /* @__PURE__ */ jsx(
16326
- AlertDescription,
16327
- {
16328
- fontSize: "xs",
16329
- lineHeight: "17px",
16330
- display: "block",
16331
- children: t(
16332
- "This upgrade is necessary to continue interacting with VeChain blockchain. Please complete it now."
16333
- )
16334
- }
16335
- )
16336
- ] })
16337
16508
  ] })
16338
16509
  ] }) }),
16339
16510
  /* @__PURE__ */ jsx(ModalFooter, { justifyContent: "center", children: /* @__PURE__ */ jsx(VStack, { spacing: 3, w: "full", children: /* @__PURE__ */ jsx(
16340
16511
  TransactionButtonAndStatus,
16341
16512
  {
16513
+ style,
16342
16514
  buttonText: upgradeRequired ? t("Upgrade account") : t("Account already upgraded"),
16343
16515
  onConfirm: handleUpgrade,
16344
16516
  isTxWaitingConfirmation: isWaitingForWalletConfirmation,
@@ -16351,7 +16523,7 @@ var UpgradeSmartAccountContent2 = ({
16351
16523
  ) }) })
16352
16524
  ] });
16353
16525
  };
16354
- var UpgradeSmartAccountModal = ({ isOpen, onClose }) => {
16526
+ var UpgradeSmartAccountModal = ({ isOpen, onClose, style }) => {
16355
16527
  const [currentContent, setCurrentContent] = useState(
16356
16528
  "upgrade-smart-account"
16357
16529
  );
@@ -16371,7 +16543,8 @@ var UpgradeSmartAccountModal = ({ isOpen, onClose }) => {
16371
16543
  UpgradeSmartAccountContent2,
16372
16544
  {
16373
16545
  setCurrentContent,
16374
- handleClose: onClose
16546
+ handleClose: onClose,
16547
+ style
16375
16548
  }
16376
16549
  );
16377
16550
  }
@@ -16383,6 +16556,7 @@ var UpgradeSmartAccountModal = ({ isOpen, onClose }) => {
16383
16556
  onClose,
16384
16557
  allowExternalFocus: true,
16385
16558
  blockScrollOnMount: true,
16559
+ size: style?.modalSize,
16386
16560
  children: renderContent()
16387
16561
  }
16388
16562
  );
@@ -16411,10 +16585,13 @@ var ModalProvider = ({ children }) => {
16411
16585
  []
16412
16586
  );
16413
16587
  const [isAccountModalOpen, setIsAccountModalOpen] = useState(false);
16414
- const openAccountModal = useCallback(() => {
16415
- setAccountModalContent("main");
16416
- setIsAccountModalOpen(true);
16417
- }, []);
16588
+ const openAccountModal = useCallback(
16589
+ (content) => {
16590
+ setAccountModalContent(content ?? "main");
16591
+ setIsAccountModalOpen(true);
16592
+ },
16593
+ []
16594
+ );
16418
16595
  const closeAccountModal = useCallback(
16419
16596
  () => setIsAccountModalOpen(false),
16420
16597
  []
@@ -16438,8 +16615,12 @@ var ModalProvider = ({ children }) => {
16438
16615
  []
16439
16616
  );
16440
16617
  const [isUpgradeSmartAccountModalOpen, setIsUpgradeSmartAccountModalOpen] = useState(false);
16618
+ const [upgradeSmartAccountModalStyle, setUpgradeSmartAccountModalStyle] = useState(void 0);
16441
16619
  const openUpgradeSmartAccountModal = useCallback(
16442
- () => setIsUpgradeSmartAccountModalOpen(true),
16620
+ (style) => {
16621
+ setUpgradeSmartAccountModalStyle(style);
16622
+ setIsUpgradeSmartAccountModalOpen(true);
16623
+ },
16443
16624
  []
16444
16625
  );
16445
16626
  const closeUpgradeSmartAccountModal = useCallback(
@@ -16490,7 +16671,8 @@ var ModalProvider = ({ children }) => {
16490
16671
  UpgradeSmartAccountModal,
16491
16672
  {
16492
16673
  isOpen: isUpgradeSmartAccountModalOpen,
16493
- onClose: closeUpgradeSmartAccountModal
16674
+ onClose: closeUpgradeSmartAccountModal,
16675
+ style: upgradeSmartAccountModalStyle
16494
16676
  }
16495
16677
  )
16496
16678
  ]
@@ -16512,7 +16694,7 @@ var useAccountModal = () => {
16512
16694
  closeAccountModal: close,
16513
16695
  isAccountModalOpen: isOpen
16514
16696
  } = useModal();
16515
- return { open, close, isOpen };
16697
+ return { open: () => open(), close, isOpen };
16516
16698
  };
16517
16699
  var AccountModalProvider = ({ children }) => /* @__PURE__ */ jsx(Fragment, { children });
16518
16700
  var useTransactionModal = () => {
@@ -16574,7 +16756,7 @@ var useChooseNameModal = () => {
16574
16756
  setAccountModalContent
16575
16757
  } = useModal();
16576
16758
  const open = () => {
16577
- setAccountModalContent({
16759
+ openAccountModal({
16578
16760
  type: "choose-name",
16579
16761
  props: {
16580
16762
  setCurrentContent: setAccountModalContent,
@@ -16582,7 +16764,6 @@ var useChooseNameModal = () => {
16582
16764
  initialContentSource: "main"
16583
16765
  }
16584
16766
  });
16585
- openAccountModal();
16586
16767
  };
16587
16768
  const close = () => {
16588
16769
  closeAccountModal();
@@ -16604,13 +16785,12 @@ var useSendTokenModal = () => {
16604
16785
  setAccountModalContent
16605
16786
  } = useModal();
16606
16787
  const open = () => {
16607
- setAccountModalContent({
16788
+ openAccountModal({
16608
16789
  type: "send-token",
16609
16790
  props: {
16610
16791
  setCurrentContent: setAccountModalContent
16611
16792
  }
16612
16793
  });
16613
- openAccountModal();
16614
16794
  };
16615
16795
  const close = () => {
16616
16796
  closeAccountModal();
@@ -16625,15 +16805,9 @@ var SendTokenModalProvider = ({
16625
16805
  children
16626
16806
  }) => /* @__PURE__ */ jsx(Fragment, { children });
16627
16807
  var useAccessAndSecurityModal = () => {
16628
- const {
16629
- openAccountModal,
16630
- closeAccountModal,
16631
- isAccountModalOpen,
16632
- setAccountModalContent
16633
- } = useModal();
16808
+ const { openAccountModal, closeAccountModal, isAccountModalOpen } = useModal();
16634
16809
  const open = () => {
16635
- setAccountModalContent("access-and-security");
16636
- openAccountModal();
16810
+ openAccountModal("access-and-security");
16637
16811
  };
16638
16812
  const close = () => {
16639
16813
  closeAccountModal();
@@ -16648,15 +16822,9 @@ var AccessAndSecurityModalProvider = ({
16648
16822
  children
16649
16823
  }) => /* @__PURE__ */ jsx(Fragment, { children });
16650
16824
  var useExploreEcosystemModal = () => {
16651
- const {
16652
- openAccountModal,
16653
- closeAccountModal,
16654
- isAccountModalOpen,
16655
- setAccountModalContent
16656
- } = useModal();
16825
+ const { openAccountModal, closeAccountModal, isAccountModalOpen } = useModal();
16657
16826
  const open = () => {
16658
- setAccountModalContent("ecosystem");
16659
- openAccountModal();
16827
+ openAccountModal("ecosystem");
16660
16828
  };
16661
16829
  const close = () => {
16662
16830
  closeAccountModal();
@@ -16671,15 +16839,9 @@ var ExploreEcosystemModalProvider = ({
16671
16839
  children
16672
16840
  }) => /* @__PURE__ */ jsx(Fragment, { children });
16673
16841
  var useNotificationsModal = () => {
16674
- const {
16675
- openAccountModal,
16676
- closeAccountModal,
16677
- isAccountModalOpen,
16678
- setAccountModalContent
16679
- } = useModal();
16842
+ const { openAccountModal, closeAccountModal, isAccountModalOpen } = useModal();
16680
16843
  const open = () => {
16681
- setAccountModalContent("notifications");
16682
- openAccountModal();
16844
+ openAccountModal("notifications");
16683
16845
  };
16684
16846
  const close = () => {
16685
16847
  closeAccountModal();
@@ -16701,11 +16863,10 @@ var useFAQModal = () => {
16701
16863
  setAccountModalContent
16702
16864
  } = useModal();
16703
16865
  const open = () => {
16704
- setAccountModalContent({
16866
+ openAccountModal({
16705
16867
  type: "faq",
16706
16868
  props: { onGoBack: () => setAccountModalContent("main") }
16707
16869
  });
16708
- openAccountModal();
16709
16870
  };
16710
16871
  const close = () => {
16711
16872
  closeAccountModal();
@@ -16718,15 +16879,9 @@ var useFAQModal = () => {
16718
16879
  };
16719
16880
  var FAQModalProvider = ({ children }) => /* @__PURE__ */ jsx(Fragment, { children });
16720
16881
  var useAccountCustomizationModal = () => {
16721
- const {
16722
- openAccountModal,
16723
- closeAccountModal,
16724
- isAccountModalOpen,
16725
- setAccountModalContent
16726
- } = useModal();
16882
+ const { openAccountModal, closeAccountModal, isAccountModalOpen } = useModal();
16727
16883
  const open = () => {
16728
- setAccountModalContent("account-customization");
16729
- openAccountModal();
16884
+ openAccountModal("account-customization");
16730
16885
  };
16731
16886
  const close = () => {
16732
16887
  closeAccountModal();
@@ -16741,15 +16896,9 @@ var AccountCustomizationModalProvider = ({
16741
16896
  children
16742
16897
  }) => /* @__PURE__ */ jsx(Fragment, { children });
16743
16898
  var useReceiveModal = () => {
16744
- const {
16745
- openAccountModal,
16746
- closeAccountModal,
16747
- isAccountModalOpen,
16748
- setAccountModalContent
16749
- } = useModal();
16899
+ const { openAccountModal, closeAccountModal, isAccountModalOpen } = useModal();
16750
16900
  const open = () => {
16751
- setAccountModalContent("receive-token");
16752
- openAccountModal();
16901
+ openAccountModal("receive-token");
16753
16902
  };
16754
16903
  const close = () => {
16755
16904
  closeAccountModal();
@@ -16830,17 +16979,32 @@ var useLoginModalContent = () => {
16830
16979
  ...baseConfig
16831
16980
  };
16832
16981
  };
16833
- var useUpgradeSmartAccountModal = () => {
16982
+ var useUpgradeSmartAccountModal = (style) => {
16834
16983
  const {
16835
16984
  openUpgradeSmartAccountModal: open,
16836
16985
  closeUpgradeSmartAccountModal: close,
16837
16986
  isUpgradeSmartAccountModalOpen: isOpen
16838
16987
  } = useModal();
16839
- return { open, close, isOpen };
16988
+ return { open: () => open(style), close, isOpen };
16840
16989
  };
16841
16990
  var UpgradeSmartAccountModalProvider = ({
16842
16991
  children
16843
16992
  }) => /* @__PURE__ */ jsx(Fragment, { children });
16993
+ var useProfileModal = () => {
16994
+ const { openAccountModal, closeAccountModal, isAccountModalOpen } = useModal();
16995
+ const open = () => {
16996
+ openAccountModal("profile");
16997
+ };
16998
+ const close = () => {
16999
+ closeAccountModal();
17000
+ };
17001
+ return {
17002
+ open,
17003
+ close,
17004
+ isOpen: isAccountModalOpen
17005
+ };
17006
+ };
17007
+ var ProfileModalProvider = ({ children }) => /* @__PURE__ */ jsx(Fragment, { children });
16844
17008
  var ERC20Interface4 = ERC20__factory.createInterface();
16845
17009
  var useTransferERC20 = ({
16846
17010
  fromAddress,
@@ -17298,8 +17462,8 @@ var PrivyWalletProvider = ({
17298
17462
  value: valueArray,
17299
17463
  data: dataArray,
17300
17464
  validAfter: 0,
17301
- validBefore: Math.floor(Date.now() / 1e3) + 60,
17302
- // e.g. 1 minute from now
17465
+ validBefore: Math.floor(Date.now() / 1e3) + 300,
17466
+ // e.g. 5 minutes from now
17303
17467
  nonce: ethers.hexlify(ethers.randomBytes(32))
17304
17468
  }
17305
17469
  };
@@ -17621,11 +17785,20 @@ var useVeChainKitConfig = () => {
17621
17785
  };
17622
17786
  var validateConfig = (props) => {
17623
17787
  const errors = [];
17624
- if (!props.feeDelegation) {
17625
- errors.push("feeDelegation configuration is required");
17626
- } else {
17627
- if (!props.feeDelegation.delegatorUrl) {
17628
- errors.push("feeDelegation.delegatorUrl is required");
17788
+ const requiresFeeDelegation = props.privy !== void 0 || props.loginMethods?.some(
17789
+ (method35) => method35.method === "vechain" || method35.method === "ecosystem"
17790
+ );
17791
+ if (requiresFeeDelegation) {
17792
+ if (!props.feeDelegation) {
17793
+ errors.push(
17794
+ "feeDelegation configuration is required when using Privy or vechain login method"
17795
+ );
17796
+ } else {
17797
+ if (!props.feeDelegation || !props.feeDelegation.delegatorUrl) {
17798
+ errors.push(
17799
+ "feeDelegation.delegatorUrl is required when using Privy or vechain login method"
17800
+ );
17801
+ }
17629
17802
  }
17630
17803
  }
17631
17804
  if (!props.network) {
@@ -17740,7 +17913,7 @@ var VeChainKitProvider = (props) => {
17740
17913
  },
17741
17914
  appearance: {
17742
17915
  theme: darkMode ? "dark" : "light",
17743
- accentColor: darkMode ? "#3182CE" : "#2B6CB0",
17916
+ accentColor: privy?.appearance.accentColor ?? (darkMode ? "#3182CE" : "#2B6CB0"),
17744
17917
  loginMessage: privy?.appearance.loginMessage,
17745
17918
  logo: privy?.appearance.logo
17746
17919
  },
@@ -17791,8 +17964,8 @@ var VeChainKitProvider = (props) => {
17791
17964
  PrivyWalletProvider,
17792
17965
  {
17793
17966
  nodeUrl: network.nodeUrl ?? getConfig(network.type).nodeUrl,
17794
- delegatorUrl: feeDelegation.delegatorUrl,
17795
- delegateAllTransactions: feeDelegation.delegateAllTransactions,
17967
+ delegatorUrl: feeDelegation?.delegatorUrl ?? "",
17968
+ delegateAllTransactions: feeDelegation?.delegateAllTransactions ?? false,
17796
17969
  children: /* @__PURE__ */ jsx(ModalProvider, { children })
17797
17970
  }
17798
17971
  )
@@ -17870,10 +18043,9 @@ var variants2 = {
17870
18043
  }),
17871
18044
  featureAnnouncement: (props) => definePartsStyle2({
17872
18045
  body: {
17873
- backgroundColor: props.colorMode === "dark" ? "whiteAlpha.100" : "blackAlpha.50",
18046
+ backgroundColor: props.colorMode === "dark" ? "#ffffff0a" : "blackAlpha.50",
17874
18047
  borderRadius: "12px",
17875
- border: props.colorMode === "dark" ? "1px solid #2d2d2d" : "1px solid #eaeaea",
17876
- color: props.colorMode === "dark" ? "whiteAlpha.900" : "gray.800"
18048
+ color: props.colorMode === "dark" ? "#ffffff12" : "blackAlpha.200"
17877
18049
  },
17878
18050
  container: {
17879
18051
  borderRadius: "12px",
@@ -18112,6 +18284,6 @@ var VechainKitThemeProvider = ({
18112
18284
  ] });
18113
18285
  };
18114
18286
 
18115
- export { APP_SECURITY_LEVELS, AccessAndSecurityContent, AccessAndSecurityModalProvider, AccountAvatar, AccountCustomizationModalProvider, AccountDetailsButton, AccountMainContent, AccountModal, AccountModalProvider, AccountSelector, ActionButton, AddressDisplay, AddressDisplayCard, AssetButton, AssetsContent, AssetsSection, BalanceSection, BaseModal, BridgeContent, ChooseNameContent, ChooseNameModalProvider, ChooseNameSearchContent, ChooseNameSummaryContent, ConnectModal, ConnectModalProvider, ConnectPopover, ConnectionButton, CustomizationContent, CustomizationSummaryContent, DappKitButton, DomainRequiredAlert, ENS_TEXT_RECORDS, EcosystemButton, EcosystemModal, EmailLoginButton, EmbeddedWalletContent, ExchangeWarningAlert, ExploreEcosystemModalProvider, FAQContent, FAQModalProvider, FadeInView, FadeInViewFromBottom, FadeInViewFromLeft, FadeInViewFromRight, FeatureAnnouncementCard, LoginLoadingModal, LoginWithGoogleButton, MAX_IMAGE_SIZE, MainContent, ManageCustomTokenContent, ModalBackButton, ModalFAQButton, NFTMediaType, NotificationsModalProvider, PRICE_FEED_IDS, PasskeyLoginButton, PrivyButton, PrivyWalletProvider, ProfileCard, ProfileContent, QuickActionsSection, ReceiveModalProvider, ReceiveTokenContent, RoundState, ScrollToTopWrapper, SecurityLevel, SelectTokenContent, SendTokenContent, SendTokenModalProvider, SendTokenSummaryContent, SettingsContent, ShareButtons, SocialIcons, StickyFooterContainer, StickyHeaderContainer, SwapTokenContent, TransactionButtonAndStatus, TransactionModal, TransactionModalContent, TransactionModalProvider, TransactionToast, TransactionToastProvider, UpgradeSmartAccountContent, UpgradeSmartAccountModal, UpgradeSmartAccountModalProvider, VeChainKitContext, VeChainKitProvider, VeChainLoginButton, VeChainWithPrivyLoginButton, VePassportUserStatus, VechainKitThemeProvider, VersionFooter, WalletButton, WalletModalProvider, buildClaimRewardsTx, buildClaimRoundReward, compressImages, currentBlockQueryKey, fetchPrivyAppInfo, fetchPrivyStatus, fetchVechainDomain, getAccountAddress, getAccountAddressQueryKey, getAccountBalance, getAccountBalanceQueryKey, getAccountImplementationAddress, getAccountImplementationAddressQueryKey, getAccountVersion, getAccountVersionQueryKey, 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, getCurrentAccountImplementationVersion, getCurrentAccountImplementationVersionQueryKey, getCurrentAllocationsRoundId, getCurrentAllocationsRoundIdQueryKey, getCustomTokenBalance, getCustomTokenBalanceQueryKey, getCustomTokenInfo, getDelegateeQueryKey, getDelegatorQueryKey, getDomainsOfAddress, getDomainsOfAddressQueryKey, getEnsRecordExistsQueryKey, getEntitiesLinkedToPassportQueryKey, getEvents, getGMBaseUriQueryKey, getGMLevel, getGMbalanceQueryKey, getGetCumulativeScoreWithDecayQueryKey, getHasV1SmartAccount, getHasV1SmartAccountQueryKey, getHasVotedInRound, getHasVotedInRoundQueryKey, getIpfsImage, getIpfsImageQueryKey, getIpfsMetadata, getIpfsMetadataQueryKey, getIsBlacklistedQueryKey, getIsDeployed, getIsDeployedQueryKey, getIsDomainProtectedQueryKey, getIsEntityQueryKey, getIsNodeHolder, getIsNodeHolderQueryKey, getIsPassportQueryKey, getIsPersonAtTimepointQueryKey, getIsPersonQueryKey, getIsWhitelistedQueryKey, getLevelGradient, getLevelMultiplierQueryKey, getLevelOfTokenQueryKey, getNFTMetadataUri, getNFTMetadataUriQueryKey, getNodeCheckCooldownQueryKey, getNodeManagerQueryKey, getParticipatedInGovernance, getParticipatedInGovernanceQueryKey, getParticipationScoreThresholdQueryKey, getPassportForEntityQueryKey, getPassportToggleQueryKey, getPendingDelegationsQueryKeyDelegateePOV, getPendingDelegationsQueryKeyDelegatorPOV, getPendingLinkingsQueryKey, getPrivyAppInfoQueryKey, getResolverAddress, getResolverAddressQueryKey, getRoundReward, getRoundRewardQueryKey, getRoundXApps, getRoundXAppsQueryKey, getSecurityMultiplierQueryKey, getSmartAccount, getSmartAccountQueryKey, getTextRecords, getTextRecordsQueryKey, getThresholdParticipationScoreAtTimepointQueryKey, getThresholdParticipationScoreQueryKey, getTokenIdByAccount, getTokenIdByAccountQueryKey, getTokenInfo, getTokenUsdPrice, getTokenUsdPriceQueryKey, getTokensInfoByOwnerQueryKey, getUpgradeRequired, getUpgradeRequiredForAccount, getUpgradeRequiredForAccountQueryKey, getUpgradeRequiredQueryKey, 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, useAccountImplementationAddress, useAccountLinking, useAccountModal, useAllocationAmount, useAllocationsRound, useAllocationsRoundState, useAllocationsRoundsEvents, useAppAdmin, useAppBalance, useAppExists, useAppSecurityLevel, useAppsEligibleInNextRound, useB3trDonated, useB3trToUpgrade, useBalances, useCall, useChooseNameModal, useClaimVeWorldSubdomain, useConnectModal, useCrossAppConnectionCache, useCurrentAccountImplementationVersion, useCurrentAllocationsRound, useCurrentAllocationsRoundId, useCurrentBlock, useEcosystemShortcuts, useEnsRecordExists, useExploreEcosystemModal, useFAQModal, useFeatureAnnouncement, useFetchAppInfo, useFetchPrivyStatus, useGMBaseUri, useGMbalance, useGetAccountAddress, useGetAccountVersion, useGetAvatar, useGetB3trBalance, useGetChainId, useGetCumulativeScoreWithDecay, useGetCustomTokenBalances, useGetCustomTokenInfo, useGetDelegatee, useGetDelegator, useGetDomainsOfAddress, useGetEntitiesLinkedToPassport, useGetNodeManager, useGetNodeUrl, useGetPassportForEntity, useGetPendingDelegationsDelegateePOV, useGetPendingDelegationsDelegatorPOV, useGetPendingLinkings, useGetResolverAddress, useGetTextRecords, useGetTokenUsdPrice, useGetTokensInfoByOwner, useGetUserEntitiesLinkedToPassport, useGetUserNode, useGetUserNodes, useGetUserPassportForEntity, useGetUserPendingLinkings, useGetVeDelegateBalance, useGetVot3Balance, useHasV1SmartAccount, useHasVotedInRound, useIpfsImage, useIpfsImageList, useIpfsMetadata, useIpfsMetadatas, useIsBlacklisted, useIsDomainProtected, useIsEntity, useIsGMclaimable, useIsNodeHolder, useIsPWA, useIsPassport, useIsPassportCheckEnabled, useIsPerson, useIsPersonAtTimepoint, useIsSmartAccountDeployed, 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, useRefreshMetadata, useRoundEarnings, useRoundReward, useRoundXApps, useScrollToTop, useSecurityMultiplier, useSelectedGmNft, useSendTokenModal, useSendTransaction, useSignMessage2 as useSignMessage, useSignTypedData2 as useSignTypedData, useSingleImageUpload, useSmartAccount, useSmartAccountVersion, useThresholdParticipationScore, useThresholdParticipationScoreAtTimepoint, useTokenIdByAccount, useTransactionModal, useTransactionToast, useTransferERC20, useTransferVET, useTxReceipt, useUpdateTextRecord, useUpgradeRequired, useUpgradeRequiredForAccount, useUpgradeSmartAccount, useUpgradeSmartAccountModal, useUploadImages, useUserBotSignals, useUserDelegation, useUserRoundScore, useUserStatus, useUserTopVotedApps, useUserVotesInAllRounds, useUserVotesInRound, useVeChainKitConfig, useVechainDomain, useVotesInRound, useVotingRewards, useWallet, useWalletMetadata, useWalletModal2 as useWalletModal, useXApp, useXAppMetadata, useXAppRoundEarnings, useXAppTotalEarnings, useXAppVotes, useXAppVotesQf, useXApps, useXAppsMetadataBaseUri, useXAppsShares, useXNode, useXNodeCheckCooldown, useXNodes };
18287
+ export { APP_SECURITY_LEVELS, AccessAndSecurityContent, AccessAndSecurityModalProvider, AccountAvatar, AccountCustomizationModalProvider, AccountDetailsButton, AccountMainContent, AccountModal, AccountModalProvider, AccountSelector, ActionButton, AddressDisplay, AddressDisplayCard, AssetButton, AssetsContent, AssetsSection, BalanceSection, BaseModal, BridgeContent, ChooseNameContent, ChooseNameModalProvider, ChooseNameSearchContent, ChooseNameSummaryContent, ConnectModal, ConnectModalProvider, ConnectPopover, ConnectionButton, CustomizationContent, CustomizationSummaryContent, DappKitButton, DomainRequiredAlert, ENS_TEXT_RECORDS, EcosystemButton, EcosystemModal, EmailLoginButton, EmbeddedWalletContent, ExchangeWarningAlert, ExploreEcosystemModalProvider, FAQContent, FAQModalProvider, FadeInView, FadeInViewFromBottom, FadeInViewFromLeft, FadeInViewFromRight, FeatureAnnouncementCard, LoginLoadingModal, LoginWithGoogleButton, MAX_IMAGE_SIZE, MainContent, ManageCustomTokenContent, ModalBackButton, ModalFAQButton, NFTMediaType, NotificationsModalProvider, PRICE_FEED_IDS, PasskeyLoginButton, PrivyButton, PrivyWalletProvider, ProfileCard, ProfileContent, ProfileModalProvider, QuickActionsSection, ReceiveModalProvider, ReceiveTokenContent, RoundState, ScrollToTopWrapper, SecurityLevel, SelectTokenContent, SendTokenContent, SendTokenModalProvider, SendTokenSummaryContent, SettingsContent, ShareButtons, SocialIcons, StickyFooterContainer, StickyHeaderContainer, SwapTokenContent, TransactionButtonAndStatus, TransactionModal, TransactionModalContent, TransactionModalProvider, TransactionToast, TransactionToastProvider, UpgradeSmartAccountContent, UpgradeSmartAccountModal, UpgradeSmartAccountModalProvider, VeChainKitContext, VeChainKitProvider, VeChainLoginButton, VeChainWithPrivyLoginButton, VePassportUserStatus, VechainKitThemeProvider, VersionFooter, WalletButton, WalletModalProvider, buildClaimRewardsTx, buildClaimRoundReward, compressImages, currentBlockQueryKey, fetchPrivyAppInfo, fetchPrivyStatus, fetchVechainDomain, getAccountAddress, getAccountAddressQueryKey, getAccountBalance, getAccountBalanceQueryKey, getAccountImplementationAddress, getAccountImplementationAddressQueryKey, getAccountVersion, getAccountVersionQueryKey, 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, getCurrentAccountImplementationVersion, getCurrentAccountImplementationVersionQueryKey, getCurrentAllocationsRoundId, getCurrentAllocationsRoundIdQueryKey, getCustomTokenBalance, getCustomTokenBalanceQueryKey, getCustomTokenInfo, getDelegateeQueryKey, getDelegatorQueryKey, getDomainsOfAddress, getDomainsOfAddressQueryKey, getEnsRecordExistsQueryKey, getEntitiesLinkedToPassportQueryKey, getEvents, getGMBaseUriQueryKey, getGMLevel, getGMbalanceQueryKey, getGetCumulativeScoreWithDecayQueryKey, getHasV1SmartAccount, getHasV1SmartAccountQueryKey, getHasVotedInRound, getHasVotedInRoundQueryKey, getIpfsImage, getIpfsImageQueryKey, getIpfsMetadata, getIpfsMetadataQueryKey, getIsBlacklistedQueryKey, getIsDeployed, getIsDeployedQueryKey, getIsDomainProtectedQueryKey, getIsEntityQueryKey, getIsNodeHolder, getIsNodeHolderQueryKey, getIsPassportQueryKey, getIsPersonAtTimepointQueryKey, getIsPersonQueryKey, getIsWhitelistedQueryKey, getLevelGradient, getLevelMultiplierQueryKey, getLevelOfTokenQueryKey, getNFTMetadataUri, getNFTMetadataUriQueryKey, getNodeCheckCooldownQueryKey, getNodeManagerQueryKey, getParticipatedInGovernance, getParticipatedInGovernanceQueryKey, getParticipationScoreThresholdQueryKey, getPassportForEntityQueryKey, getPassportToggleQueryKey, getPendingDelegationsQueryKeyDelegateePOV, getPendingDelegationsQueryKeyDelegatorPOV, getPendingLinkingsQueryKey, getPrivyAppInfoQueryKey, getResolverAddress, getResolverAddressQueryKey, getRoundReward, getRoundRewardQueryKey, getRoundXApps, getRoundXAppsQueryKey, getSecurityMultiplierQueryKey, getSmartAccount, getSmartAccountQueryKey, getTextRecords, getTextRecordsQueryKey, getThresholdParticipationScoreAtTimepointQueryKey, getThresholdParticipationScoreQueryKey, getTokenIdByAccount, getTokenIdByAccountQueryKey, getTokenInfo, getTokenUsdPrice, getTokenUsdPriceQueryKey, getTokensInfoByOwnerQueryKey, getUpgradeRequired, getUpgradeRequiredForAccount, getUpgradeRequiredForAccountQueryKey, getUpgradeRequiredQueryKey, 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, useAccountImplementationAddress, useAccountLinking, useAccountModal, useAllocationAmount, useAllocationsRound, useAllocationsRoundState, useAllocationsRoundsEvents, useAppAdmin, useAppBalance, useAppExists, useAppSecurityLevel, useAppsEligibleInNextRound, useB3trDonated, useB3trToUpgrade, useBalances, useCall, useChooseNameModal, useClaimVeWorldSubdomain, useConnectModal, useCrossAppConnectionCache, useCurrentAccountImplementationVersion, useCurrentAllocationsRound, useCurrentAllocationsRoundId, useCurrentBlock, useEcosystemShortcuts, useEnsRecordExists, useExploreEcosystemModal, useFAQModal, useFeatureAnnouncement, useFetchAppInfo, useFetchPrivyStatus, useGMBaseUri, useGMbalance, useGetAccountAddress, useGetAccountVersion, useGetAvatar, useGetB3trBalance, useGetChainId, useGetCumulativeScoreWithDecay, useGetCustomTokenBalances, useGetCustomTokenInfo, useGetDelegatee, useGetDelegator, useGetDomainsOfAddress, useGetEntitiesLinkedToPassport, useGetNodeManager, useGetNodeUrl, useGetPassportForEntity, useGetPendingDelegationsDelegateePOV, useGetPendingDelegationsDelegatorPOV, useGetPendingLinkings, useGetResolverAddress, useGetTextRecords, useGetTokenUsdPrice, useGetTokensInfoByOwner, useGetUserEntitiesLinkedToPassport, useGetUserNode, useGetUserNodes, useGetUserPassportForEntity, useGetUserPendingLinkings, useGetVeDelegateBalance, useGetVot3Balance, useHasV1SmartAccount, useHasVotedInRound, useIpfsImage, useIpfsImageList, useIpfsMetadata, useIpfsMetadatas, useIsBlacklisted, useIsDomainProtected, useIsEntity, useIsGMclaimable, useIsNodeHolder, useIsPWA, useIsPassport, useIsPassportCheckEnabled, useIsPerson, useIsPersonAtTimepoint, useIsSmartAccountDeployed, useIsUserEntity, useIsUserPassport, useIsUserPerson, useIsWhitelisted, useLevelMultiplier, useLevelOfToken, useLocalStorage, useLoginModalContent, useLoginWithOAuth2 as useLoginWithOAuth, useLoginWithPasskey, useLoginWithVeChain, useMostVotedAppsInRound, useMultipleXAppRoundEarnings, useNFTImage, useNFTMetadataUri, useNotificationAlerts, useNotifications, useNotificationsModal, useParticipatedInGovernance, useParticipationScoreThreshold, usePassportChecks, usePrivyWalletProvider, useProfileModal, useReceiveModal, useRefreshBalances, useRefreshMetadata, useRoundEarnings, useRoundReward, useRoundXApps, useScrollToTop, useSecurityMultiplier, useSelectedGmNft, useSendTokenModal, useSendTransaction, useSignMessage2 as useSignMessage, useSignTypedData2 as useSignTypedData, useSingleImageUpload, useSmartAccount, useSmartAccountVersion, useThresholdParticipationScore, useThresholdParticipationScoreAtTimepoint, useTokenIdByAccount, useTransactionModal, useTransactionToast, useTransferERC20, useTransferVET, useTxReceipt, useUpdateTextRecord, useUpgradeRequired, useUpgradeRequiredForAccount, useUpgradeSmartAccount, useUpgradeSmartAccountModal, useUploadImages, useUserBotSignals, useUserDelegation, useUserRoundScore, useUserStatus, useUserTopVotedApps, useUserVotesInAllRounds, useUserVotesInRound, useVeChainKitConfig, useVechainDomain, useVotesInRound, useVotingRewards, useWallet, useWalletMetadata, useWalletModal2 as useWalletModal, useXApp, useXAppMetadata, useXAppRoundEarnings, useXAppTotalEarnings, useXAppVotes, useXAppVotesQf, useXApps, useXAppsMetadataBaseUri, useXAppsShares, useXNode, useXNodeCheckCooldown, useXNodes };
18116
18288
  //# sourceMappingURL=index.js.map
18117
18289
  //# sourceMappingURL=index.js.map