@vechain/vechain-kit 1.5.7 → 1.5.8

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 CHANGED
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  var chunk5GZ7N47F_cjs = require('./chunk-5GZ7N47F.cjs');
4
- var chunkRUIC653T_cjs = require('./chunk-RUIC653T.cjs');
5
- var chunkFID67WC3_cjs = require('./chunk-FID67WC3.cjs');
4
+ var chunk5YN7CZ5H_cjs = require('./chunk-5YN7CZ5H.cjs');
5
+ var chunkA4NZ5AVL_cjs = require('./chunk-A4NZ5AVL.cjs');
6
6
  require('./chunk-Q7SFCCGT.cjs');
7
7
  var React10 = require('react');
8
8
  var reactAuth = require('@privy-io/react-auth');
@@ -92,7 +92,7 @@ var PRICE_FEED_IDS = {
92
92
  };
93
93
  var getTokenUsdPrice = async (thor, token, network) => {
94
94
  const functionFragment2 = OracleInterface.getFunction("getLatestValue").format("json");
95
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(network).oracleContractAddress).method(JSON.parse(functionFragment2)).call(PRICE_FEED_IDS[token]);
95
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(network).oracleContractAddress).method(JSON.parse(functionFragment2)).call(PRICE_FEED_IDS[token]);
96
96
  if (res.reverted) throw new Error("Reverted");
97
97
  return new bignumber_js.BigNumber(res.decoded[0]).div(1e12).toNumber();
98
98
  };
@@ -111,11 +111,11 @@ var useGetTokenUsdPrice = (token) => {
111
111
  var B3TRInterface = chunk5GZ7N47F_cjs.IB3TR__factory.createInterface();
112
112
  var getB3trBalance = async (thor, network, address) => {
113
113
  const functionFragment2 = B3TRInterface.getFunction("balanceOf").format("json");
114
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(network).b3trContractAddress).method(JSON.parse(functionFragment2)).call(address);
114
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(network).b3trContractAddress).method(JSON.parse(functionFragment2)).call(address);
115
115
  if (res.reverted) throw new Error("Reverted");
116
116
  const original = res.decoded[0];
117
117
  const scaled = viem.formatEther(original);
118
- const formatted = scaled === "0" ? "0" : chunkRUIC653T_cjs.humanNumber(scaled);
118
+ const formatted = scaled === "0" ? "0" : chunk5YN7CZ5H_cjs.humanNumber(scaled);
119
119
  return {
120
120
  original,
121
121
  scaled,
@@ -138,11 +138,11 @@ var useGetB3trBalance = (address) => {
138
138
  var VOT3Interface = chunk5GZ7N47F_cjs.IVOT3__factory.createInterface();
139
139
  var getVot3Balance = async (thor, network, address) => {
140
140
  const functionFragment2 = VOT3Interface.getFunction("balanceOf").format("json");
141
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(network).vot3ContractAddress).method(JSON.parse(functionFragment2)).call(address);
141
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(network).vot3ContractAddress).method(JSON.parse(functionFragment2)).call(address);
142
142
  if (res.reverted) throw new Error("Reverted");
143
143
  const original = res.decoded[0];
144
144
  const scaled = viem.formatEther(original);
145
- const formatted = scaled === "0" ? "0" : chunkRUIC653T_cjs.humanNumber(scaled);
145
+ const formatted = scaled === "0" ? "0" : chunk5YN7CZ5H_cjs.humanNumber(scaled);
146
146
  return {
147
147
  original,
148
148
  scaled,
@@ -168,7 +168,7 @@ var contractInterface = chunk5GZ7N47F_cjs.GalaxyMember__factory.createInterface(
168
168
  var method = "getIdAttachedToNode";
169
169
  var useGetTokenIdAttachedToNode = (nodeId, enabled = true) => {
170
170
  const { network } = useVeChainKitConfig();
171
- const contractAddress = chunkRUIC653T_cjs.getConfig(network.type).galaxyMemberContractAddress;
171
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(network.type).galaxyMemberContractAddress;
172
172
  return useCall({
173
173
  contractInterface,
174
174
  contractAddress,
@@ -184,7 +184,7 @@ var method2 = "getUserNodes";
184
184
  var getUserNodesQueryKey = (user) => getCallKey({ method: method2, keyArgs: [user] });
185
185
  var useGetUserNodes = (user) => {
186
186
  const { network } = useVeChainKitConfig();
187
- const contractAddress = chunkRUIC653T_cjs.getConfig(
187
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(
188
188
  network.type
189
189
  ).nodeManagementContractAddress;
190
190
  return useCall({
@@ -215,7 +215,7 @@ var method3 = "checkCooldown";
215
215
  var getNodeCheckCooldownQueryKey = (nodeId) => getCallKey({ method: method3, keyArgs: [nodeId] });
216
216
  var useXNodeCheckCooldown = (nodeId) => {
217
217
  const { network } = useVeChainKitConfig();
218
- const contractAddress = chunkRUIC653T_cjs.getConfig(
218
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(
219
219
  network.type
220
220
  ).nodeManagementContractAddress;
221
221
  return useCall({
@@ -236,11 +236,11 @@ var useXNode = (address) => {
236
236
  const xNode = firstNode ? {
237
237
  id: firstNode.nodeId,
238
238
  level: Number(firstNode.nodeLevel),
239
- image: chunkRUIC653T_cjs.NodeStrengthLevelToImage[Number(firstNode.nodeLevel)],
240
- name: chunkRUIC653T_cjs.allNodeStrengthLevelToName[Number(firstNode.nodeLevel)]
239
+ image: chunk5YN7CZ5H_cjs.NodeStrengthLevelToImage[Number(firstNode.nodeLevel)],
240
+ name: chunk5YN7CZ5H_cjs.allNodeStrengthLevelToName[Number(firstNode.nodeLevel)]
241
241
  } : void 0;
242
242
  const xNodeName = xNode?.name ?? t("Not available");
243
- const xNodeImage = xNode?.image ?? chunkRUIC653T_cjs.notFoundImage;
243
+ const xNodeImage = xNode?.image ?? chunk5YN7CZ5H_cjs.notFoundImage;
244
244
  const xNodeLevel = xNode?.level ?? 0;
245
245
  const nodeType = Number(xNodeLevel) >= 4 ? "XNODE" : "ECONOMIC NODE";
246
246
  const {
@@ -281,7 +281,7 @@ var getNodeIdsAbi = new thorDevkit.abi.Function(JSON.parse(getNodeIdsFragment));
281
281
  var getNodeLevelsAbi = new thorDevkit.abi.Function(JSON.parse(getNodeLevelsFragment));
282
282
  var getUserXNodes = async (thor, networkType, user) => {
283
283
  if (!user) throw new Error("User address is required");
284
- const contractAddress = chunkRUIC653T_cjs.getConfig(networkType).nodeManagementContractAddress;
284
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(networkType).nodeManagementContractAddress;
285
285
  const clauses = [
286
286
  {
287
287
  to: contractAddress,
@@ -307,8 +307,8 @@ var getUserXNodes = async (thor, networkType, user) => {
307
307
  return {
308
308
  id,
309
309
  level: Number(levels[index]),
310
- image: chunkRUIC653T_cjs.NodeStrengthLevelToImage[Number(levels[index])],
311
- name: chunkRUIC653T_cjs.allNodeStrengthLevelToName[Number(levels[index])]
310
+ image: chunk5YN7CZ5H_cjs.NodeStrengthLevelToImage[Number(levels[index])],
311
+ name: chunk5YN7CZ5H_cjs.allNodeStrengthLevelToName[Number(levels[index])]
312
312
  };
313
313
  });
314
314
  };
@@ -335,7 +335,7 @@ var getIsNodeHolderQueryKey = (address) => [
335
335
  ];
336
336
  var getIsNodeHolder = async (thor, networkType, address) => {
337
337
  if (!address) return Promise.reject(new Error("Address not provided"));
338
- const contractAddress = chunkRUIC653T_cjs.getConfig(networkType).nodeManagementContractAddress;
338
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(networkType).nodeManagementContractAddress;
339
339
  const functionAbi2 = contractInterface4.getFunction(method4);
340
340
  const res = await thor.account(contractAddress).method(functionAbi2).call(address);
341
341
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -351,7 +351,7 @@ var useIsNodeHolder = (address) => {
351
351
  });
352
352
  };
353
353
  var getAppAdmin = async (thor, appId, networkType) => {
354
- const X2EARNAPPS_CONTRACT = chunkRUIC653T_cjs.getConfig(networkType).x2EarnAppsContractAddress;
354
+ const X2EARNAPPS_CONTRACT = chunk5YN7CZ5H_cjs.getConfig(networkType).x2EarnAppsContractAddress;
355
355
  const functionFragment2 = chunk5GZ7N47F_cjs.X2EarnApps__factory.createInterface().getFunction("appAdmin").format("json");
356
356
  const res = await thor.account(X2EARNAPPS_CONTRACT).method(JSON.parse(functionFragment2)).call(appId);
357
357
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -379,7 +379,7 @@ var method5 = "appExists";
379
379
  var getAppExistsQueryKey = (appId) => getCallKey({ method: method5, keyArgs: [appId] });
380
380
  var useAppExists = (appId) => {
381
381
  const { network } = useVeChainKitConfig();
382
- const contractAddress = chunkRUIC653T_cjs.getConfig(network.type).x2EarnAppsContractAddress;
382
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(network.type).x2EarnAppsContractAddress;
383
383
  return useCall({
384
384
  contractInterface: contractInterface5,
385
385
  contractAddress,
@@ -389,7 +389,7 @@ var useAppExists = (appId) => {
389
389
  });
390
390
  };
391
391
  var getAppsEligibleInNextRound = async (thor, networkType) => {
392
- const X2EARNAPPS_CONTRACT = chunkRUIC653T_cjs.getConfig(networkType).x2EarnAppsContractAddress;
392
+ const X2EARNAPPS_CONTRACT = chunk5YN7CZ5H_cjs.getConfig(networkType).x2EarnAppsContractAddress;
393
393
  const functionFragment2 = chunk5GZ7N47F_cjs.X2EarnApps__factory.createInterface().getFunction("allEligibleApps").format("json");
394
394
  const res = await thor.account(X2EARNAPPS_CONTRACT).method(JSON.parse(functionFragment2)).call();
395
395
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -410,7 +410,7 @@ var useAppsEligibleInNextRound = () => {
410
410
  };
411
411
  var getRoundXApps = async (thor, networkType, roundId) => {
412
412
  if (!roundId) return [];
413
- const xAllocationVotingContract = chunkRUIC653T_cjs.getConfig(networkType).xAllocationVotingContractAddress;
413
+ const xAllocationVotingContract = chunk5YN7CZ5H_cjs.getConfig(networkType).xAllocationVotingContractAddress;
414
414
  const functionFragment2 = chunk5GZ7N47F_cjs.XAllocationVoting__factory.createInterface().getFunction("getAppsOfRound").format("json");
415
415
  const res = await thor.account(xAllocationVotingContract).method(JSON.parse(functionFragment2)).call(roundId);
416
416
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -441,7 +441,7 @@ var useRoundXApps = (roundId) => {
441
441
  var currentBlockQueryKey = () => ["VECHAIN_KIT", "CURRENT_BLOCK"];
442
442
  var useCurrentBlock = () => {
443
443
  const { network } = useVeChainKitConfig();
444
- const nodeUrl = network.nodeUrl ?? chunkRUIC653T_cjs.getConfig(network.type).nodeUrl;
444
+ const nodeUrl = network.nodeUrl ?? chunk5YN7CZ5H_cjs.getConfig(network.type).nodeUrl;
445
445
  return reactQuery.useQuery({
446
446
  queryKey: currentBlockQueryKey(),
447
447
  queryFn: async () => {
@@ -569,7 +569,7 @@ var useTxReceipt = (txId, blockTimeout) => {
569
569
  // src/hooks/api/vebetterdao/xApps/hooks/useUserVotesInRound.ts
570
570
  var XAllocationVotingInterface = chunk5GZ7N47F_cjs.XAllocationVoting__factory.createInterface();
571
571
  var getUserVotesInRound = async (thor, network, roundId, address) => {
572
- const xAllocationVotingContract = chunkRUIC653T_cjs.getConfig(network).xAllocationVotingContractAddress;
572
+ const xAllocationVotingContract = chunk5YN7CZ5H_cjs.getConfig(network).xAllocationVotingContractAddress;
573
573
  const eventFragment = XAllocationVotingInterface.getEvent("AllocationVoteCast").format(
574
574
  "json"
575
575
  );
@@ -593,7 +593,7 @@ var getUserVotesInRound = async (thor, network, roundId, address) => {
593
593
  const events = await getAllEvents({
594
594
  thor,
595
595
  filterCriteria,
596
- nodeUrl: chunkRUIC653T_cjs.getConfig(network).nodeUrl
596
+ nodeUrl: chunk5YN7CZ5H_cjs.getConfig(network).nodeUrl
597
597
  });
598
598
  const decodedAllocatedVoteEvents = [];
599
599
  events.forEach((event) => {
@@ -664,7 +664,7 @@ var unendorsedAppsAbi = new thorDevkit.abi.Function(JSON.parse(unendorsedAppsFra
664
664
  var allAppsFragment = chunk5GZ7N47F_cjs.X2EarnApps__factory.createInterface().getFunction("apps").format("json");
665
665
  var allAppsAbi = new thorDevkit.abi.Function(JSON.parse(allAppsFragment));
666
666
  var getXApps = async (thor, networkType) => {
667
- const x2EarnAppsContract = chunkRUIC653T_cjs.getConfig(networkType).x2EarnAppsContractAddress;
667
+ const x2EarnAppsContract = chunk5YN7CZ5H_cjs.getConfig(networkType).x2EarnAppsContractAddress;
668
668
  const clauses = [
669
669
  {
670
670
  to: x2EarnAppsContract,
@@ -747,7 +747,7 @@ var useXApp = (appId) => {
747
747
 
748
748
  // src/hooks/api/vebetterdao/xApps/getXAppsMetadataBaseUri.ts
749
749
  var getXAppsMetadataBaseUri = async (thor, networkType) => {
750
- const X2EARNAPPS_CONTRACT = chunkRUIC653T_cjs.getConfig(networkType).x2EarnAppsContractAddress;
750
+ const X2EARNAPPS_CONTRACT = chunk5YN7CZ5H_cjs.getConfig(networkType).x2EarnAppsContractAddress;
751
751
  const functionFragment2 = chunk5GZ7N47F_cjs.X2EarnApps__factory.createInterface().getFunction("baseURI").format("json");
752
752
  const res = await thor.account(X2EARNAPPS_CONTRACT).method(JSON.parse(functionFragment2)).call();
753
753
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -775,7 +775,7 @@ var useXAppsMetadataBaseUri = () => {
775
775
 
776
776
  // src/hooks/api/vebetterdao/xApps/getXAppMetadata.ts
777
777
  var getXAppMetadata = async (uri, networkType) => {
778
- const url = chunkRUIC653T_cjs.convertUriToUrl(uri, networkType);
778
+ const url = chunk5YN7CZ5H_cjs.convertUriToUrl(uri, networkType);
779
779
  if (!url) return void 0;
780
780
  const response = await fetch(url);
781
781
  if (!response.ok) {
@@ -807,7 +807,7 @@ var useXAppMetadata = (xAppId) => {
807
807
  var allocationVotingInterface = chunk5GZ7N47F_cjs.XAllocationVotingGovernor__factory.createInterface();
808
808
  var method6 = "getAppVotes";
809
809
  var getXAppVotes = async (thor, networkType, roundId, xAppId) => {
810
- const ALLOCATION_VOTING_CONTRACT = chunkRUIC653T_cjs.getConfig(networkType).xAllocationVotingContractAddress;
810
+ const ALLOCATION_VOTING_CONTRACT = chunk5YN7CZ5H_cjs.getConfig(networkType).xAllocationVotingContractAddress;
811
811
  const functionFragment2 = allocationVotingInterface.getFunction(method6).format("json");
812
812
  const res = await thor.account(ALLOCATION_VOTING_CONTRACT).method(JSON.parse(functionFragment2)).call(roundId, xAppId);
813
813
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -818,7 +818,7 @@ var useXAppVotes = (roundId, appId) => {
818
818
  const { network } = useVeChainKitConfig();
819
819
  return useCall({
820
820
  contractInterface: allocationVotingInterface,
821
- contractAddress: chunkRUIC653T_cjs.getConfig(network.type).xAllocationVotingContractAddress,
821
+ contractAddress: chunk5YN7CZ5H_cjs.getConfig(network.type).xAllocationVotingContractAddress,
822
822
  method: method6,
823
823
  args: [roundId, appId],
824
824
  enabled: !!roundId && !!appId && !!network.type
@@ -829,7 +829,7 @@ var useXAppVotes = (roundId, appId) => {
829
829
  // src/hooks/api/vebetterdao/xApps/hooks/useXAppVotesQf.ts
830
830
  var allocationVotingInterface2 = chunk5GZ7N47F_cjs.XAllocationVotingGovernor__factory.createInterface();
831
831
  var getXAppVotesQf = async (thor, networkType, roundId, xAppId) => {
832
- const ALLOCATION_VOTING_CONTRACT = chunkRUIC653T_cjs.getConfig(networkType).xAllocationVotingContractAddress;
832
+ const ALLOCATION_VOTING_CONTRACT = chunk5YN7CZ5H_cjs.getConfig(networkType).xAllocationVotingContractAddress;
833
833
  const functionFragment2 = allocationVotingInterface2.getFunction("getAppVotesQF").format("json");
834
834
  const res = await thor.account(ALLOCATION_VOTING_CONTRACT).method(JSON.parse(functionFragment2)).call(roundId, xAppId);
835
835
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -843,7 +843,7 @@ var useXAppVotesQf = (roundId, appId) => {
843
843
  const { network } = useVeChainKitConfig();
844
844
  return useCall({
845
845
  contractInterface: allocationVotingInterface2,
846
- contractAddress: chunkRUIC653T_cjs.getConfig(network.type).xAllocationVotingContractAddress,
846
+ contractAddress: chunk5YN7CZ5H_cjs.getConfig(network.type).xAllocationVotingContractAddress,
847
847
  method: "getAppVotesQF",
848
848
  args: [roundId, appId],
849
849
  enabled: !!roundId && !!appId && !!network.type
@@ -917,7 +917,7 @@ var method7 = "getAppShares";
917
917
  var functionFragment = allocationPoolInterface.getFunction(method7).format("json");
918
918
  var functionAbi = new thorDevkit.abi.Function(JSON.parse(functionFragment));
919
919
  var getAppsShareClauses = (networkType, apps, roundId) => {
920
- const allocationPoolContract = chunkRUIC653T_cjs.getConfig(networkType).xAllocationPoolContractAddress;
920
+ const allocationPoolContract = chunk5YN7CZ5H_cjs.getConfig(networkType).xAllocationPoolContractAddress;
921
921
  const clauses = apps.map((app) => ({
922
922
  to: allocationPoolContract,
923
923
  value: 0,
@@ -974,7 +974,7 @@ var useMostVotedAppsInRound = (roundId) => {
974
974
  };
975
975
  var getParticipatedInGovernance = async (networkType, thor, address) => {
976
976
  if (!address) return Promise.reject(new Error("Address not provided"));
977
- const galaxyMemberContract = chunkRUIC653T_cjs.getConfig(networkType).galaxyMemberContractAddress;
977
+ const galaxyMemberContract = chunk5YN7CZ5H_cjs.getConfig(networkType).galaxyMemberContractAddress;
978
978
  const functionFragment2 = chunk5GZ7N47F_cjs.GalaxyMember__factory.createInterface().getFunction("participatedInGovernance").format("json");
979
979
  const res = await thor.account(galaxyMemberContract).method(JSON.parse(functionFragment2)).call(address);
980
980
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -997,7 +997,7 @@ var useParticipatedInGovernance = (address) => {
997
997
  };
998
998
  var getBalanceOf = async (thor, network, address) => {
999
999
  if (!address) return Promise.reject(new Error("Address not provided"));
1000
- const contractAddress = chunkRUIC653T_cjs.getConfig(network).galaxyMemberContractAddress;
1000
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(network).galaxyMemberContractAddress;
1001
1001
  const functionFragment2 = chunk5GZ7N47F_cjs.GalaxyMember__factory.createInterface().getFunction("balanceOf").format("json");
1002
1002
  const res = await thor.account(contractAddress).method(JSON.parse(functionFragment2)).call(address);
1003
1003
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -1029,7 +1029,7 @@ var useIsGMclaimable = (address) => {
1029
1029
  };
1030
1030
  var getTokenIdByAccount = async (thor, networkType, address, index) => {
1031
1031
  if (!address) return Promise.reject(new Error("Address not provided"));
1032
- const contractAddress = chunkRUIC653T_cjs.getConfig(networkType).galaxyMemberContractAddress;
1032
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(networkType).galaxyMemberContractAddress;
1033
1033
  const functionFragment2 = chunk5GZ7N47F_cjs.GalaxyMember__factory.createInterface().getFunction("tokenOfOwnerByIndex").format("json");
1034
1034
  const res = await thor.account(contractAddress).method(JSON.parse(functionFragment2)).call(address, index);
1035
1035
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -1056,7 +1056,7 @@ var contractInterface6 = chunk5GZ7N47F_cjs.GalaxyMember__factory.createInterface
1056
1056
  var method8 = "getSelectedTokenId";
1057
1057
  var useSelectedTokenId = (address, enabled = true) => {
1058
1058
  const { network } = useVeChainKitConfig();
1059
- const contractAddress = chunkRUIC653T_cjs.getConfig(network.type).galaxyMemberContractAddress;
1059
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(network.type).galaxyMemberContractAddress;
1060
1060
  return useCall({
1061
1061
  contractInterface: contractInterface6,
1062
1062
  contractAddress,
@@ -1067,7 +1067,7 @@ var useSelectedTokenId = (address, enabled = true) => {
1067
1067
  };
1068
1068
  var getIpfsMetadata = async (networkType, uri, parseJson = false) => {
1069
1069
  if (!uri) throw new Error("No URI provided");
1070
- const newUri = chunkRUIC653T_cjs.convertUriToUrl(uri, networkType);
1070
+ const newUri = chunk5YN7CZ5H_cjs.convertUriToUrl(uri, networkType);
1071
1071
  if (!newUri) throw new Error("Invalid URI");
1072
1072
  const response = await fetch(newUri, {
1073
1073
  headers: {
@@ -1091,7 +1091,7 @@ var useIpfsMetadata = (ipfsUri, parseJson = false) => {
1091
1091
  var MAX_IMAGE_SIZE = 1024 * 1024 * 10;
1092
1092
  var getIpfsImage = async (networkType, uri) => {
1093
1093
  if (!uri) throw new Error("IPFS URI is required");
1094
- const response = await fetch(chunkRUIC653T_cjs.convertUriToUrl(uri, networkType) ?? "", {
1094
+ const response = await fetch(chunk5YN7CZ5H_cjs.convertUriToUrl(uri, networkType) ?? "", {
1095
1095
  headers: {
1096
1096
  "X-Project-Id": "vechain-kit"
1097
1097
  }
@@ -1123,7 +1123,7 @@ var getIpfsImage = async (networkType, uri) => {
1123
1123
  resolve({
1124
1124
  image: reader.result,
1125
1125
  mime: blob.type,
1126
- mediaType: chunkRUIC653T_cjs.resolveMediaTypeFromMimeType(blob.type)
1126
+ mediaType: chunk5YN7CZ5H_cjs.resolveMediaTypeFromMimeType(blob.type)
1127
1127
  });
1128
1128
  };
1129
1129
  reader.onerror = () => {
@@ -1279,7 +1279,7 @@ var method9 = "levelOf";
1279
1279
  var getLevelOfTokenQueryKey = (tokenId) => getCallKey({ method: method9, keyArgs: [tokenId] });
1280
1280
  var useLevelOfToken = (tokenId, enabled = true) => {
1281
1281
  const { network } = useVeChainKitConfig();
1282
- const contractAddress = chunkRUIC653T_cjs.getConfig(network.type).galaxyMemberContractAddress;
1282
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(network.type).galaxyMemberContractAddress;
1283
1283
  return useCall({
1284
1284
  contractInterface: contractInterface7,
1285
1285
  contractAddress,
@@ -1296,7 +1296,7 @@ var getLevelMultiplierQueryKey = (level) => getCallKey({ method: method10, keyAr
1296
1296
  var percentageToMultiplier = (percentage) => 1 + percentage / 100;
1297
1297
  var useLevelMultiplier = (level, enabled = true) => {
1298
1298
  const { network } = useVeChainKitConfig();
1299
- const contractAddress = chunkRUIC653T_cjs.getConfig(network.type).voterRewardsContractAddress;
1299
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(network.type).voterRewardsContractAddress;
1300
1300
  return useCall({
1301
1301
  contractInterface: contractInterface8,
1302
1302
  contractAddress,
@@ -1312,7 +1312,7 @@ var contractInterface9 = chunk5GZ7N47F_cjs.GalaxyMember__factory.createInterface
1312
1312
  var method11 = "getNodeIdAttached";
1313
1313
  var useGetNodeIdAttached = (tokenId) => {
1314
1314
  const { network } = useVeChainKitConfig();
1315
- const contractAddress = chunkRUIC653T_cjs.getConfig(network.type).galaxyMemberContractAddress;
1315
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(network.type).galaxyMemberContractAddress;
1316
1316
  return useCall({
1317
1317
  contractInterface: contractInterface9,
1318
1318
  contractAddress,
@@ -1327,7 +1327,7 @@ var contractInterface10 = chunk5GZ7N47F_cjs.GalaxyMember__factory.createInterfac
1327
1327
  var method12 = "MAX_LEVEL";
1328
1328
  var useGMMaxLevel = (enabled = true) => {
1329
1329
  const { network } = useVeChainKitConfig();
1330
- const contractAddress = chunkRUIC653T_cjs.getConfig(network.type).galaxyMemberContractAddress;
1330
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(network.type).galaxyMemberContractAddress;
1331
1331
  return useCall({
1332
1332
  contractInterface: contractInterface10,
1333
1333
  contractAddress,
@@ -1411,8 +1411,8 @@ var useSelectedGmNft = (userAddress) => {
1411
1411
  const { xNodeId } = useXNode(userAddress);
1412
1412
  const isXNodeAttachedToGM = attachedNodeId === xNodeId;
1413
1413
  const isMaxGmLevelReached = !!maxGmLevel && !!gmLevel && Number(gmLevel) === Number(maxGmLevel);
1414
- const gmImage = gmNftImage?.image || imageData?.image || chunkRUIC653T_cjs.gmNfts[Number(gmLevel) - 1]?.image || chunkRUIC653T_cjs.notFoundImage;
1415
- const nftName = nftMetadata?.name || chunkRUIC653T_cjs.gmNfts[Number(gmLevel) - 1]?.name;
1414
+ const gmImage = gmNftImage?.image || imageData?.image || chunk5YN7CZ5H_cjs.gmNfts[Number(gmLevel) - 1]?.image || chunk5YN7CZ5H_cjs.notFoundImage;
1415
+ const nftName = nftMetadata?.name || chunk5YN7CZ5H_cjs.gmNfts[Number(gmLevel) - 1]?.name;
1416
1416
  const gmName = `${nftName} #${tokenID}`;
1417
1417
  return {
1418
1418
  gmId: selectedTokenId,
@@ -1440,7 +1440,7 @@ var method13 = "getB3TRtoUpgrade";
1440
1440
  var getB3trToUpgradeQueryKey = (tokenId) => getCallKey({ method: method13, keyArgs: [tokenId] });
1441
1441
  var useB3trToUpgrade = (tokenId, enabled = true) => {
1442
1442
  const { network } = useVeChainKitConfig();
1443
- const contractAddress = chunkRUIC653T_cjs.getConfig(network.type).galaxyMemberContractAddress;
1443
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(network.type).galaxyMemberContractAddress;
1444
1444
  return useCall({
1445
1445
  contractInterface: contractInterface11,
1446
1446
  contractAddress,
@@ -1455,7 +1455,7 @@ var method14 = "getTokensInfoByOwner";
1455
1455
  var getTokensInfoByOwnerQueryKey = (owner) => getCallKey({ method: method14, keyArgs: [owner] });
1456
1456
  var useGetTokensInfoByOwner = (owner, size = 10) => {
1457
1457
  const { network } = useVeChainKitConfig();
1458
- const contractAddress = chunkRUIC653T_cjs.getConfig(network.type).galaxyMemberContractAddress;
1458
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(network.type).galaxyMemberContractAddress;
1459
1459
  const { thor } = dappKitReact.useConnex();
1460
1460
  const fetchTokens = async ({ pageParam = 0 }) => {
1461
1461
  const functionFragment2 = contractInterface12.getFunction(method14)?.format("json");
@@ -1487,7 +1487,7 @@ var method15 = "getB3TRdonated";
1487
1487
  var getB3trDonatedQueryKey = (tokenId) => getCallKey({ method: method15, keyArgs: [tokenId] });
1488
1488
  var useB3trDonated = (tokenId, enabled = true) => {
1489
1489
  const { network } = useVeChainKitConfig();
1490
- const contractAddress = chunkRUIC653T_cjs.getConfig(network.type).galaxyMemberContractAddress;
1490
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(network.type).galaxyMemberContractAddress;
1491
1491
  return useCall({
1492
1492
  contractInterface: contractInterface13,
1493
1493
  contractAddress,
@@ -1504,7 +1504,7 @@ var method16 = "baseURI";
1504
1504
  var getGMBaseUriQueryKey = () => getCallKey({ method: "getGMBaseUri", keyArgs: [] });
1505
1505
  var useGMBaseUri = () => {
1506
1506
  const { network } = useVeChainKitConfig();
1507
- const contractAddress = chunkRUIC653T_cjs.getConfig(network.type).galaxyMemberContractAddress;
1507
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(network.type).galaxyMemberContractAddress;
1508
1508
  return useCall({
1509
1509
  contractInterface: contractInterface14,
1510
1510
  contractAddress,
@@ -1536,7 +1536,7 @@ var getGMLevel = (startingLevel, b3trDonated) => {
1536
1536
  if (!Number.isInteger(startingLevel) || startingLevel <= 0) {
1537
1537
  throw new Error("Starting level must be a positive integer");
1538
1538
  }
1539
- const gmLevelMap = new Map(chunkRUIC653T_cjs.gmNfts.map((gm) => [Number(gm.level), gm]));
1539
+ const gmLevelMap = new Map(chunk5YN7CZ5H_cjs.gmNfts.map((gm) => [Number(gm.level), gm]));
1540
1540
  const startingGM = gmLevelMap.get(startingLevel);
1541
1541
  if (!startingGM) return null;
1542
1542
  let finalLevel = startingLevel;
@@ -1557,7 +1557,7 @@ var xAllocationVotingInterface = chunk5GZ7N47F_cjs.XAllocationVoting__factory.cr
1557
1557
  var getCurrentAllocationsRoundId = async (thor, networkType) => {
1558
1558
  const currentRoundAbi = xAllocationVotingInterface.getFunction("currentRoundId");
1559
1559
  if (!currentRoundAbi) throw new Error("currentRoundId function not found");
1560
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(networkType).xAllocationVotingContractAddress).method(currentRoundAbi).call();
1560
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(networkType).xAllocationVotingContractAddress).method(currentRoundAbi).call();
1561
1561
  if (res.vmError) return Promise.reject(new Error(res.vmError));
1562
1562
  return res.decoded[0];
1563
1563
  };
@@ -1575,7 +1575,7 @@ var useCurrentAllocationsRoundId = () => {
1575
1575
  });
1576
1576
  };
1577
1577
  var getAllocationAmount = async (thor, networkType, roundId) => {
1578
- const emissionsContract = chunkRUIC653T_cjs.getConfig(networkType).emissionsContractAddress;
1578
+ const emissionsContract = chunk5YN7CZ5H_cjs.getConfig(networkType).emissionsContractAddress;
1579
1579
  const emissionsInterface = chunk5GZ7N47F_cjs.Emissions__factory.createInterface();
1580
1580
  const functionFragmentTreasuryAmount = emissionsInterface.getFunction("getTreasuryAmount").format("json");
1581
1581
  const functionFragmentVoteX2EarnAmount = emissionsInterface.getFunction("getVote2EarnAmount").format("json");
@@ -1613,7 +1613,7 @@ var useAllocationAmount = (roundId) => {
1613
1613
  });
1614
1614
  };
1615
1615
  var getHasVotedInRound = async (thor, networkType, roundId, address) => {
1616
- const xAllocationVotingContract = chunkRUIC653T_cjs.getConfig(networkType).xAllocationVotingContractAddress;
1616
+ const xAllocationVotingContract = chunk5YN7CZ5H_cjs.getConfig(networkType).xAllocationVotingContractAddress;
1617
1617
  const functionFragment2 = chunk5GZ7N47F_cjs.XAllocationVoting__factory.createInterface().getFunction("hasVoted").format("json");
1618
1618
  const res = await thor.account(xAllocationVotingContract).method(JSON.parse(functionFragment2)).call(roundId, address);
1619
1619
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -1637,7 +1637,7 @@ var RoundState = {
1637
1637
  };
1638
1638
  var getAllocationsRoundState = async (thor, networkType, roundId) => {
1639
1639
  if (!roundId) return Promise.reject(new Error("roundId is required"));
1640
- const xAllocationVotingContract = chunkRUIC653T_cjs.getConfig(networkType).xAllocationVotingContractAddress;
1640
+ const xAllocationVotingContract = chunk5YN7CZ5H_cjs.getConfig(networkType).xAllocationVotingContractAddress;
1641
1641
  const functionFragment2 = xAllocationVotingInterface2.getFunction("state").format("json");
1642
1642
  const res = await thor.account(xAllocationVotingContract).method(JSON.parse(functionFragment2)).call(roundId);
1643
1643
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -1658,7 +1658,7 @@ var useAllocationsRoundState = (roundId) => {
1658
1658
  });
1659
1659
  };
1660
1660
  var getAllocationsRoundsEvents = async (thor, networkType) => {
1661
- const xAllocationVotingContract = chunkRUIC653T_cjs.getConfig(networkType).xAllocationVotingContractAddress;
1661
+ const xAllocationVotingContract = chunk5YN7CZ5H_cjs.getConfig(networkType).xAllocationVotingContractAddress;
1662
1662
  const allocationCreatedAbi = chunk5GZ7N47F_cjs.XAllocationVoting__factory.createInterface().getEvent("RoundCreated");
1663
1663
  if (!allocationCreatedAbi) throw new Error("RoundCreated event not found");
1664
1664
  const allocationCreatedEvent = new thorDevkit.abi.Event(
@@ -1673,7 +1673,7 @@ var getAllocationsRoundsEvents = async (thor, networkType) => {
1673
1673
  const events = await getAllEvents({
1674
1674
  thor,
1675
1675
  filterCriteria,
1676
- nodeUrl: chunkRUIC653T_cjs.getConfig(networkType).nodeUrl
1676
+ nodeUrl: chunk5YN7CZ5H_cjs.getConfig(networkType).nodeUrl
1677
1677
  });
1678
1678
  const decodedCreatedAllocationEvents = [];
1679
1679
  events.forEach((event) => {
@@ -1743,7 +1743,7 @@ var useAllocationsRound = (roundId) => {
1743
1743
  const isLoading = currentAllocationId.isLoading || allocationRoundsEvents.isLoading || currentAllocationState.isLoading;
1744
1744
  const isError = currentAllocationId.isError || allocationRoundsEvents.isError || currentAllocationState.isError;
1745
1745
  const error = currentAllocationId.error || allocationRoundsEvents.error || currentAllocationState.error;
1746
- const blockTime = chunkRUIC653T_cjs.getConfig(network.type).network.blockTime;
1746
+ const blockTime = chunk5YN7CZ5H_cjs.getConfig(network.type).network.blockTime;
1747
1747
  const estimatedEndTime = React10.useMemo(() => {
1748
1748
  if (!currentAllocationRound) return null;
1749
1749
  const endBlock = Number(currentAllocationRound.voteEnd);
@@ -1822,7 +1822,7 @@ var EnsureQueryClient = ({ children }) => {
1822
1822
  var roundEarningsFragment = chunk5GZ7N47F_cjs.XAllocationPool__factory.createInterface().getFunction("roundEarnings").format("json");
1823
1823
  var roundEarningsAbi = new thorDevkit.abi.Function(JSON.parse(roundEarningsFragment));
1824
1824
  var getXAppRoundEarnings = async (thor, roundId, xAppId, networkType) => {
1825
- const xAllocationPoolContract = chunkRUIC653T_cjs.getConfig(networkType).xAllocationPoolContractAddress;
1825
+ const xAllocationPoolContract = chunk5YN7CZ5H_cjs.getConfig(networkType).xAllocationPoolContractAddress;
1826
1826
  const functionFragment2 = chunk5GZ7N47F_cjs.XAllocationPool__factory.createInterface().getFunction("roundEarnings").format("json");
1827
1827
  const res = await thor.account(xAllocationPoolContract).method(JSON.parse(functionFragment2)).call(roundId, xAppId);
1828
1828
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -1870,7 +1870,7 @@ var useMultipleXAppRoundEarnings = (roundId, xAppIds) => {
1870
1870
  queryFn: () => getRoundXApps(thor, network.type, roundId),
1871
1871
  queryKey: getRoundXAppsQueryKey(roundId)
1872
1872
  });
1873
- const xAllocationPoolContract = chunkRUIC653T_cjs.getConfig(
1873
+ const xAllocationPoolContract = chunk5YN7CZ5H_cjs.getConfig(
1874
1874
  network.type
1875
1875
  ).xAllocationPoolContractAddress;
1876
1876
  const xAppsInRound = data.filter((app) => xAppIds.includes(app.id));
@@ -1906,7 +1906,7 @@ var roundEarningsFragment2 = chunk5GZ7N47F_cjs.XAllocationPool__factory.createIn
1906
1906
  var roundEarningsAbi2 = new thorDevkit.abi.Function(JSON.parse(roundEarningsFragment2));
1907
1907
  var getXAppTotalEarningsClauses = (roundIds, app, networkType) => {
1908
1908
  const clauses = roundIds.map((roundId) => ({
1909
- to: chunkRUIC653T_cjs.getConfig(networkType).xAllocationPoolContractAddress,
1909
+ to: chunk5YN7CZ5H_cjs.getConfig(networkType).xAllocationPoolContractAddress,
1910
1910
  value: 0,
1911
1911
  data: roundEarningsAbi2.encode(roundId, app)
1912
1912
  }));
@@ -1977,7 +1977,7 @@ var getAppBalance = async (thor, xAppId, x2EarnRewardsPoolContract) => {
1977
1977
  if (res.vmError) return Promise.reject(new Error(res.vmError));
1978
1978
  const original = res.decoded[0];
1979
1979
  const scaled = viem.formatEther(original);
1980
- const formatted = scaled === "0" ? "0" : chunkRUIC653T_cjs.humanNumber(scaled);
1980
+ const formatted = scaled === "0" ? "0" : chunk5YN7CZ5H_cjs.humanNumber(scaled);
1981
1981
  return {
1982
1982
  original,
1983
1983
  scaled,
@@ -1993,7 +1993,7 @@ var getAppBalanceQueryKey = (xAppId) => [
1993
1993
  var useAppBalance = (xAppId) => {
1994
1994
  const { thor } = dappKitReact.useConnex();
1995
1995
  const { network } = useVeChainKitConfig();
1996
- const x2EarnRewardsPoolContract = chunkRUIC653T_cjs.getConfig(
1996
+ const x2EarnRewardsPoolContract = chunk5YN7CZ5H_cjs.getConfig(
1997
1997
  network.type
1998
1998
  ).x2EarnRewardsPoolContractAddress;
1999
1999
  return reactQuery.useQuery({
@@ -2010,7 +2010,7 @@ var getIsPersonQueryKey = (user) => {
2010
2010
  };
2011
2011
  var useIsPerson = (user) => {
2012
2012
  const { network } = useVeChainKitConfig();
2013
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2013
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2014
2014
  network.type
2015
2015
  ).veBetterPassportContractAddress;
2016
2016
  return useCall({
@@ -2032,7 +2032,7 @@ var getUserRoundScoreQueryKey = (user, round) => {
2032
2032
  };
2033
2033
  var useUserRoundScore = (address, round) => {
2034
2034
  const { network } = useVeChainKitConfig();
2035
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2035
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2036
2036
  network.type
2037
2037
  ).veBetterPassportContractAddress;
2038
2038
  return useCall({
@@ -2052,7 +2052,7 @@ var getThresholdParticipationScoreQueryKey = () => {
2052
2052
  };
2053
2053
  var useThresholdParticipationScore = () => {
2054
2054
  const { network } = useVeChainKitConfig();
2055
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2055
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2056
2056
  network.type
2057
2057
  ).veBetterPassportContractAddress;
2058
2058
  return useCall({
@@ -2072,7 +2072,7 @@ var getPassportToggleQueryKey = (checkName) => {
2072
2072
  };
2073
2073
  var useIsPassportCheckEnabled = (checkName) => {
2074
2074
  const { network } = useVeChainKitConfig();
2075
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2075
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2076
2076
  network.type
2077
2077
  ).veBetterPassportContractAddress;
2078
2078
  return useCall({
@@ -2092,7 +2092,7 @@ var getParticipationScoreThresholdQueryKey = () => {
2092
2092
  };
2093
2093
  var useParticipationScoreThreshold = () => {
2094
2094
  const { network } = useVeChainKitConfig();
2095
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2095
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2096
2096
  network.type
2097
2097
  ).veBetterPassportContractAddress;
2098
2098
  return useCall({
@@ -2113,7 +2113,7 @@ var getAppSecurityLevelQueryKey = (appId) => {
2113
2113
  };
2114
2114
  var useAppSecurityLevel = (appId) => {
2115
2115
  const { network } = useVeChainKitConfig();
2116
- const contractAddress = chunkRUIC653T_cjs.getConfig(
2116
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(
2117
2117
  network.type
2118
2118
  ).veBetterPassportContractAddress;
2119
2119
  return useCall({
@@ -2157,7 +2157,7 @@ var getIsBlacklistedQueryKey = (address) => {
2157
2157
  };
2158
2158
  var useIsBlacklisted = (address) => {
2159
2159
  const { network } = useVeChainKitConfig();
2160
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2160
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2161
2161
  network.type
2162
2162
  ).veBetterPassportContractAddress;
2163
2163
  return useCall({
@@ -2177,7 +2177,7 @@ var getIsWhitelistedQueryKey = (address) => {
2177
2177
  };
2178
2178
  var useIsWhitelisted = (address) => {
2179
2179
  const { network } = useVeChainKitConfig();
2180
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2180
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2181
2181
  network.type
2182
2182
  ).veBetterPassportContractAddress;
2183
2183
  return useCall({
@@ -2214,7 +2214,7 @@ var getUserBotSignalsQueryKey = (address) => {
2214
2214
  };
2215
2215
  var useUserBotSignals = (address) => {
2216
2216
  const { network } = useVeChainKitConfig();
2217
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2217
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2218
2218
  network.type
2219
2219
  ).veBetterPassportContractAddress;
2220
2220
  return useCall({
@@ -2236,7 +2236,7 @@ var getGetCumulativeScoreWithDecayQueryKey = (user, round) => {
2236
2236
  };
2237
2237
  var useGetCumulativeScoreWithDecay = (user, round) => {
2238
2238
  const { network } = useVeChainKitConfig();
2239
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2239
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2240
2240
  network.type
2241
2241
  ).veBetterPassportContractAddress;
2242
2242
  return useCall({
@@ -2263,7 +2263,7 @@ var getSecurityMultiplierQueryKey = (securityLevel) => {
2263
2263
  };
2264
2264
  var useSecurityMultiplier = (securityLevel) => {
2265
2265
  const { network } = useVeChainKitConfig();
2266
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2266
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2267
2267
  network.type
2268
2268
  ).veBetterPassportContractAddress;
2269
2269
  return useCall({
@@ -2280,7 +2280,7 @@ var getDelegateeQueryKey = (delegator) => {
2280
2280
  };
2281
2281
  var useGetDelegatee = (delegator) => {
2282
2282
  const { network } = useVeChainKitConfig();
2283
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2283
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2284
2284
  network.type
2285
2285
  ).veBetterPassportContractAddress;
2286
2286
  return useCall({
@@ -2302,7 +2302,7 @@ var getDelegatorQueryKey = (delegator) => {
2302
2302
  };
2303
2303
  var useGetDelegator = (delegator) => {
2304
2304
  const { network } = useVeChainKitConfig();
2305
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2305
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2306
2306
  network.type
2307
2307
  ).veBetterPassportContractAddress;
2308
2308
  return useCall({
@@ -2312,7 +2312,7 @@ var useGetDelegator = (delegator) => {
2312
2312
  args: [delegator],
2313
2313
  mapResponse: (response) => {
2314
2314
  const delegator2 = response.decoded[0];
2315
- if (chunkRUIC653T_cjs.compareAddresses(delegator2, viem.zeroAddress)) return null;
2315
+ if (chunk5YN7CZ5H_cjs.compareAddresses(delegator2, viem.zeroAddress)) return null;
2316
2316
  return delegator2;
2317
2317
  },
2318
2318
  enabled: !!delegator
@@ -2327,7 +2327,7 @@ var getPendingDelegationsQueryKeyDelegateePOV = (delegatee) => {
2327
2327
  };
2328
2328
  var useGetPendingDelegationsDelegateePOV = (delegatee) => {
2329
2329
  const { network } = useVeChainKitConfig();
2330
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2330
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2331
2331
  network.type
2332
2332
  ).veBetterPassportContractAddress;
2333
2333
  return useCall({
@@ -2349,7 +2349,7 @@ var getPendingDelegationsQueryKeyDelegatorPOV = (delegator) => {
2349
2349
  };
2350
2350
  var useGetPendingDelegationsDelegatorPOV = (delegator) => {
2351
2351
  const { network } = useVeChainKitConfig();
2352
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2352
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2353
2353
  network.type
2354
2354
  ).veBetterPassportContractAddress;
2355
2355
  return useCall({
@@ -2371,7 +2371,7 @@ var getPendingLinkingsQueryKey = (user) => {
2371
2371
  };
2372
2372
  var useGetPendingLinkings = (user) => {
2373
2373
  const { network } = useVeChainKitConfig();
2374
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2374
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2375
2375
  network.type
2376
2376
  ).veBetterPassportContractAddress;
2377
2377
  return useCall({
@@ -2398,7 +2398,7 @@ var getEntitiesLinkedToPassportQueryKey = (passport) => {
2398
2398
  };
2399
2399
  var useGetEntitiesLinkedToPassport = (passport) => {
2400
2400
  const { network } = useVeChainKitConfig();
2401
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2401
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2402
2402
  network.type
2403
2403
  ).veBetterPassportContractAddress;
2404
2404
  return useCall({
@@ -2421,7 +2421,7 @@ var getPassportForEntityQueryKey = (entity) => {
2421
2421
  };
2422
2422
  var useGetPassportForEntity = (entity) => {
2423
2423
  const { network } = useVeChainKitConfig();
2424
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2424
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2425
2425
  network.type
2426
2426
  ).veBetterPassportContractAddress;
2427
2427
  return useCall({
@@ -2445,7 +2445,7 @@ var getIsEntityQueryKey = (address) => {
2445
2445
  };
2446
2446
  var useIsEntity = (address) => {
2447
2447
  const { network } = useVeChainKitConfig();
2448
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2448
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2449
2449
  network.type
2450
2450
  ).veBetterPassportContractAddress;
2451
2451
  return useCall({
@@ -2498,7 +2498,7 @@ var getIsPassportQueryKey = (address) => {
2498
2498
  };
2499
2499
  var useIsPassport = (address) => {
2500
2500
  const { network } = useVeChainKitConfig();
2501
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2501
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2502
2502
  network.type
2503
2503
  ).veBetterPassportContractAddress;
2504
2504
  return useCall({
@@ -2534,7 +2534,7 @@ var getThresholdParticipationScoreAtTimepointQueryKey = (blockNumber) => {
2534
2534
  };
2535
2535
  var useThresholdParticipationScoreAtTimepoint = (blockNumber) => {
2536
2536
  const { network } = useVeChainKitConfig();
2537
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2537
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2538
2538
  network.type
2539
2539
  ).veBetterPassportContractAddress;
2540
2540
  return useCall({
@@ -2556,7 +2556,7 @@ var getIsPersonAtTimepointQueryKey = (user, blockNumber) => {
2556
2556
  };
2557
2557
  var useIsPersonAtTimepoint = (user, blockNumber) => {
2558
2558
  const { network } = useVeChainKitConfig();
2559
- const veBetterPassportContractAddress = chunkRUIC653T_cjs.getConfig(
2559
+ const veBetterPassportContractAddress = chunk5YN7CZ5H_cjs.getConfig(
2560
2560
  network.type
2561
2561
  ).veBetterPassportContractAddress;
2562
2562
  return useCall({
@@ -2569,7 +2569,7 @@ var useIsPersonAtTimepoint = (user, blockNumber) => {
2569
2569
  };
2570
2570
  var getRoundReward = async (thor, networkType, address, roundId) => {
2571
2571
  const functionFragment2 = chunk5GZ7N47F_cjs.VoterRewards__factory.createInterface().getFunction("getReward").format("json");
2572
- const contractAddress = chunkRUIC653T_cjs.getConfig(networkType).voterRewardsContractAddress;
2572
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(networkType).voterRewardsContractAddress;
2573
2573
  const res = await thor.account(contractAddress).method(JSON.parse(functionFragment2)).call(roundId, address);
2574
2574
  if (res.vmError) return Promise.reject(new Error(res.vmError));
2575
2575
  const reward = viem.formatEther(res.decoded[0]);
@@ -2601,7 +2601,7 @@ var useVotingRewards = (currentRoundId, voter) => {
2601
2601
  const { thor } = dappKitReact.useConnex();
2602
2602
  const queryClient = reactQuery.useQueryClient();
2603
2603
  const { network } = useVeChainKitConfig();
2604
- const contractAddress = chunkRUIC653T_cjs.getConfig(network.type).voterRewardsContractAddress;
2604
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(network.type).voterRewardsContractAddress;
2605
2605
  const rounds = React10.useMemo(() => {
2606
2606
  return Array.from(
2607
2607
  { length: parseInt(currentRoundId ?? "0") - 1 },
@@ -2656,7 +2656,7 @@ var useVotingRewards = (currentRoundId, voter) => {
2656
2656
  var voterRewardsInterface2 = chunk5GZ7N47F_cjs.VoterRewards__factory.createInterface();
2657
2657
  var buildClaimRoundReward = (roundId, address, networkType) => {
2658
2658
  const clause = {
2659
- to: chunkRUIC653T_cjs.getConfig(networkType).voterRewardsContractAddress,
2659
+ to: chunk5YN7CZ5H_cjs.getConfig(networkType).voterRewardsContractAddress,
2660
2660
  value: 0,
2661
2661
  data: voterRewardsInterface2.encodeFunctionData("claimReward", [
2662
2662
  roundId,
@@ -2691,7 +2691,7 @@ var method33 = "getNodeManager";
2691
2691
  var getNodeManagerQueryKey = (nodeId) => getCallKey({ method: method33, keyArgs: [nodeId] });
2692
2692
  var useGetNodeManager = (nodeId) => {
2693
2693
  const { network } = useVeChainKitConfig();
2694
- const contractAddress = chunkRUIC653T_cjs.getConfig(
2694
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(
2695
2695
  network.type
2696
2696
  ).nodeManagementContractAddress;
2697
2697
  return useCall({
@@ -2705,11 +2705,11 @@ var useGetNodeManager = (nodeId) => {
2705
2705
  var ERC20Interface = chunk5GZ7N47F_cjs.IERC20__factory.createInterface();
2706
2706
  var getVeDelegateBalance = async (thor, network, address) => {
2707
2707
  const functionFragment2 = ERC20Interface.getFunction("balanceOf").format("json");
2708
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(network).veDelegateTokenContractAddress).method(JSON.parse(functionFragment2)).call(address);
2708
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(network).veDelegateTokenContractAddress).method(JSON.parse(functionFragment2)).call(address);
2709
2709
  if (res.reverted) throw new Error("Reverted");
2710
2710
  const original = res.decoded[0];
2711
2711
  const scaled = ethers.formatEther(original);
2712
- const formatted = scaled === "0" ? "0" : chunkRUIC653T_cjs.humanNumber(scaled);
2712
+ const formatted = scaled === "0" ? "0" : chunk5YN7CZ5H_cjs.humanNumber(scaled);
2713
2713
  return {
2714
2714
  original,
2715
2715
  scaled,
@@ -2753,7 +2753,19 @@ var useFetchAppInfo = (appIds) => {
2753
2753
  normalizedIds.map((id) => fetchPrivyAppInfo(id))
2754
2754
  );
2755
2755
  return Object.fromEntries(
2756
- results.map((result, index) => [normalizedIds[index], result])
2756
+ results.map((result, index) => {
2757
+ const id = normalizedIds[index];
2758
+ const defaultApp = chunk5YN7CZ5H_cjs.DEFAULT_PRIVY_ECOSYSTEM_APPS.find(
2759
+ (app) => app.id === id
2760
+ );
2761
+ return [
2762
+ id,
2763
+ {
2764
+ ...result,
2765
+ website: defaultApp?.website
2766
+ }
2767
+ ];
2768
+ })
2757
2769
  );
2758
2770
  },
2759
2771
  enabled: normalizedIds.length > 0
@@ -2807,7 +2819,7 @@ var fetchVechainDomain = async (thor, networkType, addressOrDomain) => {
2807
2819
  const isValidAddress2 = ethers.isAddress(addressOrDomain);
2808
2820
  if (isValidAddress2) {
2809
2821
  try {
2810
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(networkType).vnsResolverAddress).method(getNamesABI).call([addressOrDomain]);
2822
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(networkType).vnsResolverAddress).method(getNamesABI).call([addressOrDomain]);
2811
2823
  const domainName = res.decoded.names?.[0];
2812
2824
  return {
2813
2825
  address: addressOrDomain,
@@ -2824,7 +2836,7 @@ var fetchVechainDomain = async (thor, networkType, addressOrDomain) => {
2824
2836
  }
2825
2837
  }
2826
2838
  try {
2827
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(networkType).vnsResolverAddress).method(getAddressesABI).call([addressOrDomain]);
2839
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(networkType).vnsResolverAddress).method(getAddressesABI).call([addressOrDomain]);
2828
2840
  const domainAddress = res.decoded.addresses?.[0];
2829
2841
  if (domainAddress === "0x0000000000000000000000000000000000000000") {
2830
2842
  return {
@@ -2870,7 +2882,7 @@ var getEnsRecordExists = async (thor, network, name) => {
2870
2882
  const labelHash = viem.keccak256(viem.toBytes(name));
2871
2883
  const subnode = viem.keccak256(viem.concat([hashedNode, labelHash]));
2872
2884
  const functionFragment2 = MockENSInterface.getFunction("recordExists").format("json");
2873
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(network).vetDomainsContractAddress).method(JSON.parse(functionFragment2)).call(subnode);
2885
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(network).vetDomainsContractAddress).method(JSON.parse(functionFragment2)).call(subnode);
2874
2886
  if (res.reverted) throw new Error("Reverted");
2875
2887
  return res.decoded[0];
2876
2888
  };
@@ -2903,10 +2915,10 @@ var useClaimVeWorldSubdomain = ({
2903
2915
  if (!subdomain) throw new Error("Invalid subdomain");
2904
2916
  const clausesArray = [];
2905
2917
  clausesArray.push({
2906
- to: chunkRUIC653T_cjs.getConfig(network.type).vetDomainsReverseRegistrarAddress,
2918
+ to: chunk5YN7CZ5H_cjs.getConfig(network.type).vetDomainsReverseRegistrarAddress,
2907
2919
  value: "0x0",
2908
2920
  data: ReverseRegistrarInterface.encodeFunctionData("setName", [""]),
2909
- comment: `Unsetting your current VeChain nickname of the account ${chunkRUIC653T_cjs.humanAddress(
2921
+ comment: `Unsetting your current VeChain nickname of the account ${chunk5YN7CZ5H_cjs.humanAddress(
2910
2922
  account?.address ?? "",
2911
2923
  4,
2912
2924
  4
@@ -2915,23 +2927,23 @@ var useClaimVeWorldSubdomain = ({
2915
2927
  });
2916
2928
  if (!alreadyOwned) {
2917
2929
  clausesArray.push({
2918
- to: chunkRUIC653T_cjs.getConfig(network.type).veWorldSubdomainClaimerContractAddress,
2930
+ to: chunk5YN7CZ5H_cjs.getConfig(network.type).veWorldSubdomainClaimerContractAddress,
2919
2931
  value: "0x0",
2920
2932
  data: SubdomainClaimerInterface.encodeFunctionData("claim", [
2921
2933
  subdomain,
2922
- chunkRUIC653T_cjs.getConfig(network.type).vetDomainsPublicResolverAddress
2934
+ chunk5YN7CZ5H_cjs.getConfig(network.type).vetDomainsPublicResolverAddress
2923
2935
  ]),
2924
2936
  comment: `Claim VeChain subdomain: ${subdomain}.${domain}`,
2925
2937
  abi: SubdomainClaimerInterface.getFunction("claim")
2926
2938
  });
2927
2939
  }
2928
2940
  clausesArray.push({
2929
- to: chunkRUIC653T_cjs.getConfig(network.type).vetDomainsReverseRegistrarAddress,
2941
+ to: chunk5YN7CZ5H_cjs.getConfig(network.type).vetDomainsReverseRegistrarAddress,
2930
2942
  value: "0x0",
2931
2943
  data: ReverseRegistrarInterface.encodeFunctionData("setName", [
2932
2944
  subdomain + "." + domain
2933
2945
  ]),
2934
- comment: `Set ${subdomain}.${domain} as the VeChain nickname of the account ${chunkRUIC653T_cjs.humanAddress(
2946
+ comment: `Set ${subdomain}.${domain} as the VeChain nickname of the account ${chunk5YN7CZ5H_cjs.humanAddress(
2935
2947
  account?.address ?? "",
2936
2948
  4,
2937
2949
  4
@@ -3014,7 +3026,7 @@ var method34 = "isDomainProtected";
3014
3026
  var getIsDomainProtectedQueryKey = (domain) => getCallKey({ method: method34, keyArgs: [domain] });
3015
3027
  var useIsDomainProtected = (domain, enabled = true) => {
3016
3028
  const { network } = useVeChainKitConfig();
3017
- const contractAddress = chunkRUIC653T_cjs.getConfig(
3029
+ const contractAddress = chunk5YN7CZ5H_cjs.getConfig(
3018
3030
  network.type
3019
3031
  ).veWorldSubdomainClaimerContractAddress;
3020
3032
  return useCall({
@@ -3034,7 +3046,7 @@ var DomainsResponseSchema = zod.z.object({
3034
3046
  });
3035
3047
  var getDomainsOfAddress = async (networkType, address, parentDomain = "vet") => {
3036
3048
  if (!address) throw new Error("Address is required");
3037
- const graphQlIndexerUrl = chunkRUIC653T_cjs.getConfig(networkType).graphQlIndexerUrl;
3049
+ const graphQlIndexerUrl = chunk5YN7CZ5H_cjs.getConfig(networkType).graphQlIndexerUrl;
3038
3050
  const query = `query Registrations {
3039
3051
  domains(
3040
3052
  where: {owner: "${address.toLowerCase()}", parent_: {name: "${parentDomain}"}}
@@ -3073,6 +3085,10 @@ var nameInterface = new ethers.Interface([
3073
3085
  "function resolver(bytes32 node) returns (address resolverAddress)",
3074
3086
  "function text(bytes32 node, string key) returns (string avatar)"
3075
3087
  ]);
3088
+ var erc721Interface = new ethers.Interface([
3089
+ "function tokenURI(uint256 tokenId) view returns (string)",
3090
+ "function uri(uint256 id) view returns (string)"
3091
+ ]);
3076
3092
  var getAvatar = async (networkType, nodeUrl, name) => {
3077
3093
  if (!name) throw new Error("Name is required");
3078
3094
  const node = ethers.namehash(name);
@@ -3085,7 +3101,7 @@ var getAvatar = async (networkType, nodeUrl, name) => {
3085
3101
  body: JSON.stringify({
3086
3102
  clauses: [
3087
3103
  {
3088
- to: chunkRUIC653T_cjs.getConfig(networkType).vetDomainsContractAddress,
3104
+ to: chunk5YN7CZ5H_cjs.getConfig(networkType).vetDomainsContractAddress,
3089
3105
  data: nameInterface.encodeFunctionData("resolver", [
3090
3106
  node
3091
3107
  ])
@@ -3143,15 +3159,89 @@ var getAvatarQueryKey = (name) => [
3143
3159
  "AVATAR",
3144
3160
  name
3145
3161
  ];
3162
+ async function parseAvatarRecord(record, networkType, nodeUrl) {
3163
+ try {
3164
+ if (record.startsWith("http") || record.startsWith("ipfs://") || record.startsWith("ar://")) {
3165
+ return chunk5YN7CZ5H_cjs.convertUriToUrl(record, networkType) || null;
3166
+ }
3167
+ const match = record.match(
3168
+ /eip155:(\d+)\/(?:erc721|erc1155):([^/]+)\/(\d+)/
3169
+ );
3170
+ if (match) {
3171
+ const [, chainId, contractAddress, tokenId] = match;
3172
+ const isErc1155 = record.includes("erc1155");
3173
+ if (!chainId || !contractAddress || tokenId === void 0) {
3174
+ return null;
3175
+ }
3176
+ const clauses = [
3177
+ {
3178
+ to: contractAddress,
3179
+ data: erc721Interface.encodeFunctionData(
3180
+ isErc1155 ? "uri" : "tokenURI",
3181
+ [BigInt(tokenId)]
3182
+ )
3183
+ }
3184
+ ];
3185
+ const [{ data, reverted }] = await fetch(`${nodeUrl}/accounts/*`, {
3186
+ method: "POST",
3187
+ headers: {
3188
+ "content-type": "application/json"
3189
+ },
3190
+ body: JSON.stringify({ clauses })
3191
+ }).then((res) => res.json());
3192
+ if (reverted) {
3193
+ console.error("Failed to fetch tokenURI");
3194
+ return null;
3195
+ }
3196
+ let tokenUri = "";
3197
+ try {
3198
+ tokenUri = erc721Interface.decodeFunctionResult(
3199
+ isErc1155 ? "uri" : "tokenURI",
3200
+ data
3201
+ )[0];
3202
+ } catch (e) {
3203
+ console.error("Failed to decode avatar data:", e);
3204
+ tokenUri = ethers.toUtf8String(data);
3205
+ }
3206
+ tokenUri = chunk5YN7CZ5H_cjs.convertUriToUrl(tokenUri, networkType) || tokenUri;
3207
+ if (isErc1155) {
3208
+ tokenUri = tokenUri.replace(
3209
+ "{id}",
3210
+ ethers.zeroPadValue(ethers.toBeHex(BigInt(tokenId)), 32).slice(2)
3211
+ );
3212
+ }
3213
+ const metadataResponse = await fetch(tokenUri);
3214
+ if (!metadataResponse.ok) {
3215
+ console.error("Failed to fetch metadata");
3216
+ return null;
3217
+ }
3218
+ const metadata = await metadataResponse.json();
3219
+ const imageUrl = metadata.image || metadata.image_url || metadata.image_data;
3220
+ if (!imageUrl) {
3221
+ console.error("No image URL in metadata");
3222
+ return null;
3223
+ }
3224
+ return chunk5YN7CZ5H_cjs.convertUriToUrl(imageUrl, networkType) || imageUrl;
3225
+ }
3226
+ return null;
3227
+ } catch (error) {
3228
+ console.error("Error parsing avatar record:", error);
3229
+ return null;
3230
+ }
3231
+ }
3146
3232
  var useGetAvatar = (name) => {
3147
3233
  const { network } = useVeChainKitConfig();
3148
- const nodeUrl = network.nodeUrl ?? chunkRUIC653T_cjs.getConfig(network.type).nodeUrl;
3234
+ const nodeUrl = network.nodeUrl ?? chunk5YN7CZ5H_cjs.getConfig(network.type).nodeUrl;
3149
3235
  const avatarQuery = reactQuery.useQuery({
3150
3236
  queryKey: getAvatarQueryKey(name ?? ""),
3151
- queryFn: () => getAvatar(network.type, nodeUrl, name),
3237
+ queryFn: async () => {
3238
+ if (!name) return null;
3239
+ const avatarRecord = await getAvatar(network.type, nodeUrl, name);
3240
+ if (!avatarRecord) return null;
3241
+ return parseAvatarRecord(avatarRecord, network.type, nodeUrl);
3242
+ },
3152
3243
  enabled: !!name && !!nodeUrl && !!network.type,
3153
- retry: 3,
3154
- retryDelay: (attemptIndex) => Math.min(1e3 * 2 ** attemptIndex, 3e4),
3244
+ // Use the same caching strategy as the avatar query
3155
3245
  staleTime: 5 * 60 * 1e3
3156
3246
  // 5 minutes
3157
3247
  });
@@ -3173,7 +3263,7 @@ var getTextRecords = async (nodeUrl, network, domain) => {
3173
3263
  body: JSON.stringify({
3174
3264
  clauses: [
3175
3265
  {
3176
- to: chunkRUIC653T_cjs.getConfig(network).vetDomainsContractAddress,
3266
+ to: chunk5YN7CZ5H_cjs.getConfig(network).vetDomainsContractAddress,
3177
3267
  data: nameInterface2.encodeFunctionData("resolver", [
3178
3268
  node
3179
3269
  ])
@@ -3232,7 +3322,7 @@ var getTextRecords = async (nodeUrl, network, domain) => {
3232
3322
  var getTextRecordsQueryKey = (domain, network) => ["VECHAIN_KIT_TEXT_RECORDS", domain, network];
3233
3323
  var useGetTextRecords = (domain) => {
3234
3324
  const { network } = useVeChainKitConfig();
3235
- const nodeUrl = network.nodeUrl ?? chunkRUIC653T_cjs.getConfig(network.type).nodeUrl;
3325
+ const nodeUrl = network.nodeUrl ?? chunk5YN7CZ5H_cjs.getConfig(network.type).nodeUrl;
3236
3326
  return reactQuery.useQuery({
3237
3327
  queryKey: getTextRecordsQueryKey(domain, network.type),
3238
3328
  queryFn: () => getTextRecords(nodeUrl, network.type, domain),
@@ -3527,7 +3617,7 @@ var getResolverAddress = async (nodeUrl, network, domain) => {
3527
3617
  body: JSON.stringify({
3528
3618
  clauses: [
3529
3619
  {
3530
- to: chunkRUIC653T_cjs.getConfig(network).vetDomainsContractAddress,
3620
+ to: chunk5YN7CZ5H_cjs.getConfig(network).vetDomainsContractAddress,
3531
3621
  data: nameInterface4.encodeFunctionData("resolver", [node])
3532
3622
  }
3533
3623
  ]
@@ -3548,13 +3638,39 @@ var getResolverAddressQueryKey = (domain) => [
3548
3638
  ];
3549
3639
  var useGetResolverAddress = (domain) => {
3550
3640
  const { network } = useVeChainKitConfig();
3551
- const nodeUrl = network.nodeUrl ?? chunkRUIC653T_cjs.getConfig(network.type).nodeUrl;
3641
+ const nodeUrl = network.nodeUrl ?? chunk5YN7CZ5H_cjs.getConfig(network.type).nodeUrl;
3552
3642
  return reactQuery.useQuery({
3553
3643
  queryKey: getResolverAddressQueryKey(domain),
3554
3644
  queryFn: () => getResolverAddress(nodeUrl, network.type, domain),
3555
3645
  enabled: !!domain && !!nodeUrl && !!network.type
3556
3646
  });
3557
3647
  };
3648
+ var getAvatarOfAddressQueryKey = (address) => [
3649
+ "VECHAIN_KIT",
3650
+ "VET_DOMAINS",
3651
+ "AVATAR_OF_ADDRESS",
3652
+ address
3653
+ ];
3654
+ var useGetAvatarOfAddress = (address) => {
3655
+ const domainsQuery = useVechainDomain(address);
3656
+ const primaryDomain = domainsQuery.data?.domain;
3657
+ const avatarQuery = useGetAvatar(primaryDomain ?? "");
3658
+ return reactQuery.useQuery({
3659
+ queryKey: getAvatarOfAddressQueryKey(address),
3660
+ queryFn: async () => {
3661
+ if (!address) return chunk5YN7CZ5H_cjs.getPicassoImage(address ?? "");
3662
+ const domains = await domainsQuery.refetch();
3663
+ if (!domains.data?.domain) return chunk5YN7CZ5H_cjs.getPicassoImage(address);
3664
+ if (domains.data.domain && avatarQuery.data)
3665
+ return avatarQuery.data;
3666
+ return chunk5YN7CZ5H_cjs.getPicassoImage(address);
3667
+ },
3668
+ enabled: !!address && domainsQuery.isSuccess && (primaryDomain ? avatarQuery.isSuccess : true),
3669
+ // Use the same caching strategy as the avatar query
3670
+ staleTime: 5 * 60 * 1e3
3671
+ // 5 minutes
3672
+ });
3673
+ };
3558
3674
  var useBalances = ({ address = "" }) => {
3559
3675
  const { network } = useVeChainKitConfig();
3560
3676
  const { data: vetData, isLoading: vetLoading } = useAccountBalance(address);
@@ -3573,10 +3689,10 @@ var useBalances = ({ address = "" }) => {
3573
3689
  const isLoading = vetLoading || b3trLoading || vot3Loading || vetUsdPriceLoading || b3trUsdPriceLoading || veDelegateLoading || vthoUsdPriceLoading || customTokensLoading;
3574
3690
  const contractAddresses = {
3575
3691
  vet: "0x",
3576
- vtho: chunkRUIC653T_cjs.getConfig(network.type).vthoContractAddress,
3577
- b3tr: chunkRUIC653T_cjs.getConfig(network.type).b3trContractAddress,
3578
- vot3: chunkRUIC653T_cjs.getConfig(network.type).vot3ContractAddress,
3579
- veDelegate: chunkRUIC653T_cjs.getConfig(network.type).veDelegate
3692
+ vtho: chunk5YN7CZ5H_cjs.getConfig(network.type).vthoContractAddress,
3693
+ b3tr: chunk5YN7CZ5H_cjs.getConfig(network.type).b3trContractAddress,
3694
+ vot3: chunk5YN7CZ5H_cjs.getConfig(network.type).vot3ContractAddress,
3695
+ veDelegate: chunk5YN7CZ5H_cjs.getConfig(network.type).veDelegate
3580
3696
  };
3581
3697
  const balances = [
3582
3698
  {
@@ -3707,7 +3823,7 @@ var vechain = viem.defineChain({
3707
3823
  });
3708
3824
  var vechainConnector = () => {
3709
3825
  return rainbowKit.toPrivyWalletConnector({
3710
- id: chunkRUIC653T_cjs.VECHAIN_PRIVY_APP_ID,
3826
+ id: chunk5YN7CZ5H_cjs.VECHAIN_PRIVY_APP_ID,
3711
3827
  name: "VeChain",
3712
3828
  iconUrl: "https://imagedelivery.net/oHBRUd2clqykxgDWmeAyLg/661dd77c-2f9d-40e7-baa1-f4e24fd7bf00/icon",
3713
3829
  smartWalletMode: false
@@ -3762,7 +3878,7 @@ var usePrivyCrossAppSdk = () => {
3762
3878
  setIsConnecting(true);
3763
3879
  setConnectionError(null);
3764
3880
  const connector = connectors.find(
3765
- (c) => c.id === (appID || chunkRUIC653T_cjs.VECHAIN_PRIVY_APP_ID)
3881
+ (c) => c.id === (appID || chunk5YN7CZ5H_cjs.VECHAIN_PRIVY_APP_ID)
3766
3882
  );
3767
3883
  if (!connector) {
3768
3884
  throw new Error("Connector not found");
@@ -3822,15 +3938,12 @@ var usePrivyCrossAppSdk = () => {
3822
3938
  // src/hooks/api/wallet/useWalletMetadata.ts
3823
3939
  var useWalletMetadata = (address, networkType) => {
3824
3940
  const { data: domain, isLoading: isLoadingVechainDomain } = useVechainDomain(address ?? "");
3825
- const { data: avatar, isLoading: isLoadingMetadata } = useGetAvatar(
3826
- domain?.domain
3827
- );
3828
- const { data: textRecords, isLoading: isLoadingRecords } = useGetTextRecords(domain?.domain);
3829
- const avatarUrl = avatar ? chunkRUIC653T_cjs.convertUriToUrl(avatar, networkType) : null;
3830
- const headerUrl = textRecords?.header ? chunkRUIC653T_cjs.convertUriToUrl(textRecords.header, networkType) : null;
3941
+ const { data: avatar, isLoading: isLoadingMetadata } = useGetAvatarOfAddress(address ?? "");
3942
+ const { data: textRecords, isLoading: isLoadingRecords } = useGetTextRecords(domain?.domain ?? "");
3943
+ const headerUrl = textRecords?.header ? chunk5YN7CZ5H_cjs.convertUriToUrl(textRecords.header, networkType) : null;
3831
3944
  return {
3832
3945
  domain: domain?.domain,
3833
- image: avatarUrl ?? chunkRUIC653T_cjs.getPicassoImage(address ?? ""),
3946
+ image: avatar,
3834
3947
  records: {
3835
3948
  ...textRecords,
3836
3949
  header: headerUrl
@@ -3859,7 +3972,7 @@ var useWallet = () => {
3859
3972
  const isConnectedWithDappKit = !!dappKitAccount;
3860
3973
  const isConnectedWithSocialLogin = authenticated && !!user;
3861
3974
  const isConnectedWithPrivy = isConnectedWithSocialLogin || isConnectedWithCrossApp;
3862
- const isConnectedWithVeChain = isConnectedWithSocialLogin && privy?.appId === chunkRUIC653T_cjs.VECHAIN_PRIVY_APP_ID || isConnectedWithCrossApp && connectionCache?.ecosystemApp?.appId === chunkRUIC653T_cjs.VECHAIN_PRIVY_APP_ID;
3975
+ const isConnectedWithVeChain = isConnectedWithSocialLogin && privy?.appId === chunk5YN7CZ5H_cjs.VECHAIN_PRIVY_APP_ID || isConnectedWithCrossApp && connectionCache?.ecosystemApp?.appId === chunk5YN7CZ5H_cjs.VECHAIN_PRIVY_APP_ID;
3863
3976
  const isLoading = isConnectingWithCrossApp || isReconnectingWithCrossApp || isLoadingLoginOAuth || !ready;
3864
3977
  const [isConnected, setIsConnected] = React10.useState(false);
3865
3978
  const connectionSource = isConnectedWithCrossApp ? {
@@ -3896,7 +4009,7 @@ var useWallet = () => {
3896
4009
  const { data: smartAccount } = useSmartAccount(connectedWalletAddress);
3897
4010
  const activeAddress = isConnectedWithDappKit ? dappKitAccount : smartAccount?.address;
3898
4011
  const activeAccountDomain = useVechainDomain(activeAddress ?? "");
3899
- const activeAccountAvatar = useGetAvatar(activeAccountDomain?.data?.domain);
4012
+ const activeAccountAvatar = useGetAvatarOfAddress(activeAddress ?? "");
3900
4013
  const activeAccountTextRecords = useGetTextRecords(
3901
4014
  activeAccountDomain?.data?.domain
3902
4015
  );
@@ -3911,7 +4024,7 @@ var useWallet = () => {
3911
4024
  const account = activeAddress ? {
3912
4025
  address: activeAddress,
3913
4026
  domain: activeAccountDomain?.data?.domain,
3914
- image: activeAccountAvatar.data ? chunkRUIC653T_cjs.convertUriToUrl(activeAccountAvatar.data, network.type) : chunkRUIC653T_cjs.getPicassoImage(activeAddress ?? ""),
4027
+ image: activeAccountAvatar.data,
3915
4028
  isLoadingMetadata: activeAccountAvatar?.isLoading || activeAccountDomain?.isLoading || activeAccountTextRecords?.isLoading,
3916
4029
  metadata: activeAccountTextRecords?.data
3917
4030
  } : null;
@@ -3925,7 +4038,7 @@ var useWallet = () => {
3925
4038
  const { data: smartAccountVersion } = useSmartAccountVersion(
3926
4039
  smartAccount?.address ?? ""
3927
4040
  );
3928
- const hasActiveSmartAccount = !!smartAccount?.address && !!account?.address && chunkRUIC653T_cjs.compareAddresses(smartAccount?.address, account?.address);
4041
+ const hasActiveSmartAccount = !!smartAccount?.address && !!account?.address && chunk5YN7CZ5H_cjs.compareAddresses(smartAccount?.address, account?.address);
3929
4042
  const disconnect = React10.useCallback(async () => {
3930
4043
  try {
3931
4044
  setIsConnected(false);
@@ -4049,17 +4162,17 @@ var useCustomTokens = () => {
4049
4162
  };
4050
4163
  const isTokenIncluded = (address) => {
4051
4164
  return customTokens.some(
4052
- (t) => chunkRUIC653T_cjs.compareAddresses(t.address, address)
4165
+ (t) => chunk5YN7CZ5H_cjs.compareAddresses(t.address, address)
4053
4166
  );
4054
4167
  };
4055
4168
  const isDefaultToken = (address) => {
4056
4169
  const contractAddresses = {
4057
4170
  vet: "0x",
4058
4171
  // VET has no contract address since it's the native token
4059
- vtho: chunkRUIC653T_cjs.getConfig(network.type).vthoContractAddress,
4060
- b3tr: chunkRUIC653T_cjs.getConfig(network.type).b3trContractAddress,
4061
- vot3: chunkRUIC653T_cjs.getConfig(network.type).vot3ContractAddress,
4062
- veDelegate: chunkRUIC653T_cjs.getConfig(network.type).veDelegate
4172
+ vtho: chunk5YN7CZ5H_cjs.getConfig(network.type).vthoContractAddress,
4173
+ b3tr: chunk5YN7CZ5H_cjs.getConfig(network.type).b3trContractAddress,
4174
+ vot3: chunk5YN7CZ5H_cjs.getConfig(network.type).vot3ContractAddress,
4175
+ veDelegate: chunk5YN7CZ5H_cjs.getConfig(network.type).veDelegate
4063
4176
  };
4064
4177
  return Object.values(contractAddresses).includes(address);
4065
4178
  };
@@ -4154,11 +4267,11 @@ var useAccountBalance = (address) => {
4154
4267
  return reactQuery.useQuery({
4155
4268
  queryKey: getAccountBalanceQueryKey(address),
4156
4269
  queryFn: () => getAccountBalance(thor, address),
4157
- enabled: !!address && chunkRUIC653T_cjs.isValidAddress(address),
4270
+ enabled: !!address && chunk5YN7CZ5H_cjs.isValidAddress(address),
4158
4271
  refetchInterval: 1e4
4159
4272
  });
4160
4273
  };
4161
- var useRefreshMetadata = (domain) => {
4274
+ var useRefreshMetadata = (domain, address) => {
4162
4275
  const queryClient = reactQuery.useQueryClient();
4163
4276
  const { network } = useVeChainKitConfig();
4164
4277
  const refresh = async () => {
@@ -4174,6 +4287,12 @@ var useRefreshMetadata = (domain) => {
4174
4287
  await queryClient.refetchQueries({
4175
4288
  queryKey: getTextRecordsQueryKey(domain, network.type)
4176
4289
  });
4290
+ await queryClient.invalidateQueries({
4291
+ queryKey: getAvatarOfAddressQueryKey(address)
4292
+ });
4293
+ await queryClient.refetchQueries({
4294
+ queryKey: getAvatarOfAddressQueryKey(address)
4295
+ });
4177
4296
  };
4178
4297
  return { refresh };
4179
4298
  };
@@ -4181,7 +4300,7 @@ var useRefreshMetadata = (domain) => {
4181
4300
  // src/hooks/api/utility/useGetNodeUrl.ts
4182
4301
  var useGetNodeUrl = () => {
4183
4302
  const { network } = useVeChainKitConfig();
4184
- return network.nodeUrl ?? chunkRUIC653T_cjs.getConfig(network.type).nodeUrl;
4303
+ return network.nodeUrl ?? chunk5YN7CZ5H_cjs.getConfig(network.type).nodeUrl;
4185
4304
  };
4186
4305
 
4187
4306
  // src/hooks/api/utility/useGetChainId.ts
@@ -4209,7 +4328,7 @@ var getCustomTokenBalance = async (thor, token, address) => {
4209
4328
  if (res.reverted) throw new Error("Reverted");
4210
4329
  const original = res.decoded[0];
4211
4330
  const scaled = viem.formatEther(original);
4212
- const formatted = scaled === "0" ? "0" : chunkRUIC653T_cjs.humanNumber(scaled);
4331
+ const formatted = scaled === "0" ? "0" : chunk5YN7CZ5H_cjs.humanNumber(scaled);
4213
4332
  return {
4214
4333
  ...token,
4215
4334
  original,
@@ -4232,7 +4351,7 @@ var useGetCustomTokenBalances = (address) => {
4232
4351
  };
4233
4352
  var getNFTMetadataUri = async (networkType, thor, tokenID) => {
4234
4353
  if (!tokenID) return Promise.reject(new Error("tokenID not provided"));
4235
- const galaxyMemberContract = chunkRUIC653T_cjs.getConfig(networkType).galaxyMemberContractAddress;
4354
+ const galaxyMemberContract = chunk5YN7CZ5H_cjs.getConfig(networkType).galaxyMemberContractAddress;
4236
4355
  const functionFragment2 = chunk5GZ7N47F_cjs.GalaxyMember__factory.createInterface().getFunction("tokenURI").format("json");
4237
4356
  const res = await thor.account(galaxyMemberContract).method(JSON.parse(functionFragment2)).call(tokenID);
4238
4357
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -4296,7 +4415,7 @@ var getAccountAddress = async (thor, ownerAddress, networkType) => {
4296
4415
  const functionFragment2 = SimpleAccountFactoryInterface.getFunction("getAccountAddress").format(
4297
4416
  "json"
4298
4417
  );
4299
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(ownerAddress);
4418
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(ownerAddress);
4300
4419
  if (res.reverted) throw new Error("Reverted");
4301
4420
  return res.decoded[0];
4302
4421
  };
@@ -4322,7 +4441,7 @@ var getUpgradeRequiredForAccount = async (thor, contractAddress, targetVersion,
4322
4441
  const functionFragment2 = SimpleAccountFactoryInterface2.getFunction(
4323
4442
  "upgradeRequiredForAccount"
4324
4443
  ).format("json");
4325
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(contractAddress, targetVersion);
4444
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(contractAddress, targetVersion);
4326
4445
  if (res.reverted) throw new Error("Reverted");
4327
4446
  return res.decoded[0];
4328
4447
  };
@@ -4377,7 +4496,7 @@ var getAccountImplementationAddress = async (thor, version, networkType) => {
4377
4496
  default:
4378
4497
  throw new Error("Invalid version, must be between 1 and 3");
4379
4498
  }
4380
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call();
4499
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call();
4381
4500
  if (res.reverted) throw new Error("Reverted");
4382
4501
  return res.decoded[0];
4383
4502
  };
@@ -4408,7 +4527,7 @@ var getHasV1SmartAccount = async (thor, ownerAddress, networkType) => {
4408
4527
  const functionFragment2 = SimpleAccountFactoryInterface4.getFunction("hasLegacyAccount").format(
4409
4528
  "json"
4410
4529
  );
4411
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(ownerAddress);
4530
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(ownerAddress);
4412
4531
  if (res.reverted) throw new Error("Reverted");
4413
4532
  return res.decoded[0];
4414
4533
  };
@@ -4433,7 +4552,7 @@ var getUpgradeRequired = async (thor, accountAddress, ownerAddress, targetVersio
4433
4552
  const functionFragment2 = SimpleAccountFactoryInterface5.getFunction("upgradeRequired").format(
4434
4553
  "json"
4435
4554
  );
4436
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(accountAddress, ownerAddress, targetVersion);
4555
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(accountAddress, ownerAddress, targetVersion);
4437
4556
  if (res.reverted) throw new Error("Reverted");
4438
4557
  return res.decoded[0];
4439
4558
  };
@@ -4472,7 +4591,7 @@ var getAccountVersion = async (thor, accountAddress, ownerAddress, networkType)
4472
4591
  const functionFragment2 = SimpleAccountFactoryInterface6.getFunction("getAccountVersion").format(
4473
4592
  "json"
4474
4593
  );
4475
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(accountAddress, ownerAddress);
4594
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(accountAddress, ownerAddress);
4476
4595
  if (res.reverted) throw new Error("Reverted");
4477
4596
  return {
4478
4597
  version: res.decoded[0],
@@ -4507,7 +4626,7 @@ var getCurrentAccountImplementationVersion = async (thor, networkType) => {
4507
4626
  const functionFragment2 = SimpleAccountFactoryInterface7.getFunction(
4508
4627
  "currentAccountImplementationVersion"
4509
4628
  ).format("json");
4510
- const res = await thor.account(chunkRUIC653T_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call();
4629
+ const res = await thor.account(chunk5YN7CZ5H_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call();
4511
4630
  if (res.reverted) throw new Error("Reverted");
4512
4631
  return parseInt(res.decoded[0]);
4513
4632
  };
@@ -4532,8 +4651,8 @@ var getSmartAccount = async (thor, network, ownerAddress) => {
4532
4651
  return { address: void 0 };
4533
4652
  }
4534
4653
  const account = await thor.contracts.executeCall(
4535
- chunkRUIC653T_cjs.getConfig(network).accountFactoryAddress,
4536
- sdkCore.ABIContract.ofAbi(chunkFID67WC3_cjs.SimpleAccountFactoryABI).getFunction(
4654
+ chunk5YN7CZ5H_cjs.getConfig(network).accountFactoryAddress,
4655
+ sdkCore.ABIContract.ofAbi(chunkA4NZ5AVL_cjs.SimpleAccountFactoryABI).getFunction(
4537
4656
  "getAccountAddress"
4538
4657
  ),
4539
4658
  [ownerAddress]
@@ -4750,7 +4869,7 @@ var useUpgradeSmartAccount = ({
4750
4869
  const { refresh: refreshSmartAccountQueries } = useRefreshSmartAccountQueries();
4751
4870
  const { data: newImplementationAddress } = useAccountImplementationAddress(targetVersion);
4752
4871
  const buildClauses = React10.useCallback(async () => {
4753
- if (!smartAccountAddress || !chunkRUIC653T_cjs.isValidAddress(smartAccountAddress)) {
4872
+ if (!smartAccountAddress || !chunk5YN7CZ5H_cjs.isValidAddress(smartAccountAddress)) {
4754
4873
  throw new Error("Invalid smart account address");
4755
4874
  }
4756
4875
  if (!newImplementationAddress) {
@@ -4781,7 +4900,7 @@ var useUpgradeSmartAccount = ({
4781
4900
  const result = useSendTransaction({
4782
4901
  privyUIOptions: {
4783
4902
  title: "Upgrade Smart Account",
4784
- description: `Upgrading your account at ${chunkRUIC653T_cjs.humanAddress(
4903
+ description: `Upgrading your account at ${chunk5YN7CZ5H_cjs.humanAddress(
4785
4904
  smartAccountAddress
4786
4905
  )} to version ${targetVersion}`,
4787
4906
  buttonText: "Sign to continue"
@@ -4859,6 +4978,8 @@ var ModalBackButton = ({ onClick, ...props }) => {
4859
4978
  icon: /* @__PURE__ */ jsxRuntime.jsx(io5.IoChevronBack, { fontSize: "20px" }),
4860
4979
  size: "sm",
4861
4980
  variant: "ghost",
4981
+ _hover: { bg: "blackAlpha.100" },
4982
+ _dark: { _hover: { bg: "whiteAlpha.100" } },
4862
4983
  position: "absolute",
4863
4984
  borderRadius: "50%",
4864
4985
  left: "10px",
@@ -4921,7 +5042,7 @@ var AddressDisplay = ({
4921
5042
  react.Input,
4922
5043
  {
4923
5044
  cursor: "pointer",
4924
- value: showHumanAddress ? chunkRUIC653T_cjs.humanAddress(
5045
+ value: showHumanAddress ? chunk5YN7CZ5H_cjs.humanAddress(
4925
5046
  wallet.address ?? "",
4926
5047
  8,
4927
5048
  7
@@ -4954,7 +5075,7 @@ var AddressDisplay = ({
4954
5075
  react.Input,
4955
5076
  {
4956
5077
  cursor: "pointer",
4957
- value: showHumanAddress ? chunkRUIC653T_cjs.humanAddress(wallet?.address ?? "", 6, 4) : wallet?.address,
5078
+ value: showHumanAddress ? chunk5YN7CZ5H_cjs.humanAddress(wallet?.address ?? "", 6, 4) : wallet?.address,
4958
5079
  readOnly: true,
4959
5080
  fontSize: "sm",
4960
5081
  fontWeight: "700",
@@ -4983,7 +5104,7 @@ var AddressDisplay = ({
4983
5104
  // package.json
4984
5105
  var package_default = {
4985
5106
  name: "@vechain/vechain-kit",
4986
- version: "1.5.7",
5107
+ version: "1.5.8",
4987
5108
  private: false,
4988
5109
  homepage: "https://github.com/vechain/vechain-kit",
4989
5110
  repository: "github:vechain/vechain-kit",
@@ -5111,7 +5232,7 @@ var VersionFooter = ({ ...props }) => {
5111
5232
  ...props,
5112
5233
  children: [
5113
5234
  /* @__PURE__ */ jsxRuntime.jsx(
5114
- chunkFID67WC3_cjs.VechainLogo,
5235
+ chunkA4NZ5AVL_cjs.VechainLogo,
5115
5236
  {
5116
5237
  isDark,
5117
5238
  w: "70px",
@@ -5166,7 +5287,7 @@ var StickyHeaderContainer = ({ children }) => {
5166
5287
  left: "0",
5167
5288
  w: "full",
5168
5289
  borderRadius: "24px 24px 0px 0px",
5169
- bg: isDark ? "rgb(24 24 27 / 90%)" : "rgba(255, 255, 255, 0.8)",
5290
+ bg: isDark ? "rgb(31 31 30 / 90%)" : "rgb(255 255 255 / 69%)",
5170
5291
  backdropFilter: "blur(12px)",
5171
5292
  style: { WebkitBackdropFilter: "blur(12px)" },
5172
5293
  zIndex: 1e3,
@@ -5193,7 +5314,7 @@ var StickyFooterContainer = ({ children }) => {
5193
5314
  bottom: "0",
5194
5315
  left: "0",
5195
5316
  right: "0",
5196
- bg: isDark ? "#18181b" : "white",
5317
+ bg: isDark ? "#1f1f1e" : "white",
5197
5318
  zIndex: "1000",
5198
5319
  p: 4,
5199
5320
  boxShadow: "0px -1px 6px -3px rgb(0 0 0 / 56%)",
@@ -5288,13 +5409,13 @@ var AssetButton = ({
5288
5409
  ...buttonProps,
5289
5410
  children: [
5290
5411
  /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { children: [
5291
- chunkRUIC653T_cjs.TOKEN_LOGO_COMPONENTS[symbol] ? React10__default.default.cloneElement(chunkRUIC653T_cjs.TOKEN_LOGO_COMPONENTS[symbol], {
5412
+ chunk5YN7CZ5H_cjs.TOKEN_LOGO_COMPONENTS[symbol] ? React10__default.default.cloneElement(chunk5YN7CZ5H_cjs.TOKEN_LOGO_COMPONENTS[symbol], {
5292
5413
  boxSize: "24px",
5293
5414
  borderRadius: "full"
5294
5415
  }) : /* @__PURE__ */ jsxRuntime.jsx(
5295
5416
  react.Image,
5296
5417
  {
5297
- src: chunkRUIC653T_cjs.TOKEN_LOGOS[symbol],
5418
+ src: chunk5YN7CZ5H_cjs.TOKEN_LOGOS[symbol],
5298
5419
  alt: `${symbol} logo`,
5299
5420
  boxSize: "24px",
5300
5421
  borderRadius: "full",
@@ -5379,8 +5500,8 @@ var AddressDisplayCard = ({
5379
5500
  ),
5380
5501
  /* @__PURE__ */ jsxRuntime.jsx(react.VStack, { align: "start", spacing: 0, children: domain ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
5381
5502
  /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontWeight: "medium", fontSize: "sm", children: domain }),
5382
- !hideAddress && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "xs", opacity: 0.5, children: chunkRUIC653T_cjs.humanAddress(address, 6, 4) })
5383
- ] }) : /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontWeight: "medium", fontSize: "sm", children: chunkRUIC653T_cjs.humanAddress(address, 6, 4) }) })
5503
+ !hideAddress && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "xs", opacity: 0.5, children: chunk5YN7CZ5H_cjs.humanAddress(address, 6, 4) })
5504
+ ] }) : /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontWeight: "medium", fontSize: "sm", children: chunk5YN7CZ5H_cjs.humanAddress(address, 6, 4) }) })
5384
5505
  ] }),
5385
5506
  /* @__PURE__ */ jsxRuntime.jsxs(
5386
5507
  react.VStack,
@@ -5411,6 +5532,8 @@ var ModalFAQButton = ({ onClick, ...props }) => {
5411
5532
  icon: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: bs.BsQuestionCircle, fontSize: "17px" }),
5412
5533
  size: "sm",
5413
5534
  variant: "ghost",
5535
+ _hover: { bg: "blackAlpha.100" },
5536
+ _dark: { _hover: { bg: "whiteAlpha.100" } },
5414
5537
  position: "absolute",
5415
5538
  borderRadius: "50%",
5416
5539
  left: "10px",
@@ -5436,13 +5559,11 @@ var AccountAvatar = ({ wallet, props }) => {
5436
5559
  if (wallet?.isLoadingMetadata) {
5437
5560
  return /* @__PURE__ */ jsxRuntime.jsx(react.Spinner, { size: "sm" });
5438
5561
  }
5439
- const fallbackImage = wallet?.address ? chunkRUIC653T_cjs.getPicassoImage(wallet.address) : void 0;
5440
5562
  return /* @__PURE__ */ jsxRuntime.jsx(
5441
5563
  react.Image,
5442
5564
  {
5443
- src: props?.src ?? wallet?.image,
5444
- fallbackSrc: fallbackImage,
5445
- alt: props?.alt ?? wallet?.domain,
5565
+ src: props?.src || wallet?.image,
5566
+ alt: props?.alt || wallet?.domain,
5446
5567
  objectFit: "cover",
5447
5568
  rounded: "full",
5448
5569
  ...props
@@ -5496,7 +5617,7 @@ var TransactionButtonAndStatus = ({
5496
5617
  color: isDark ? "whiteAlpha.600" : "blackAlpha.600",
5497
5618
  textAlign: "center",
5498
5619
  width: "full",
5499
- href: `${chunkRUIC653T_cjs.getConfig(network.type).explorerUrl}/${txReceipt?.meta.txID}`,
5620
+ href: `${chunk5YN7CZ5H_cjs.getConfig(network.type).explorerUrl}/${txReceipt?.meta.txID}`,
5500
5621
  target: "_blank",
5501
5622
  rel: "noopener noreferrer",
5502
5623
  children: t("View transaction on the explorer")
@@ -5787,7 +5908,7 @@ var VeChainWithPrivyLoginButton = ({ isDark, gridColumn }) => {
5787
5908
  {
5788
5909
  isDark,
5789
5910
  onClick: viewMoreLogin,
5790
- icon: isDark ? chunkFID67WC3_cjs.VechainLogoLight : chunkFID67WC3_cjs.VechainLogoDark,
5911
+ icon: isDark ? chunkA4NZ5AVL_cjs.VechainLogoLight : chunkA4NZ5AVL_cjs.VechainLogoDark,
5791
5912
  text: t("Use social login with VeChain"),
5792
5913
  variant: "loginWithVechain",
5793
5914
  rightIcon: /* @__PURE__ */ jsxRuntime.jsx(SocialIcons, {})
@@ -5818,7 +5939,7 @@ var VeChainLoginButton = ({ isDark, gridColumn }) => {
5818
5939
  {
5819
5940
  isDark,
5820
5941
  onClick: handleLoginWithVeChain,
5821
- icon: isDark ? chunkFID67WC3_cjs.VechainLogoLight : chunkFID67WC3_cjs.VechainLogoDark,
5942
+ icon: isDark ? chunkA4NZ5AVL_cjs.VechainLogoLight : chunkA4NZ5AVL_cjs.VechainLogoDark,
5822
5943
  text: t("Use social login with VeChain"),
5823
5944
  variant: "loginWithVechain",
5824
5945
  rightIcon: /* @__PURE__ */ jsxRuntime.jsx(SocialIcons, {})
@@ -6213,7 +6334,7 @@ var AccountDetailsButton = ({
6213
6334
  wordBreak: "break-word",
6214
6335
  whiteSpace: "normal",
6215
6336
  w: "full",
6216
- children: wallet?.domain ? chunkRUIC653T_cjs.humanDomain(wallet?.domain, 4, 11) : chunkRUIC653T_cjs.humanAddress(wallet?.address ?? "", 6, 4)
6337
+ children: wallet?.domain ? chunk5YN7CZ5H_cjs.humanDomain(wallet?.domain ?? "", 18, 0) : chunk5YN7CZ5H_cjs.humanAddress(wallet?.address ?? "", 6, 4)
6217
6338
  }
6218
6339
  )
6219
6340
  ] }),
@@ -6243,24 +6364,18 @@ var ActionButton = ({
6243
6364
  extraContent
6244
6365
  }) => {
6245
6366
  const { t } = reactI18next.useTranslation();
6246
- const { colorMode } = react.useColorMode();
6247
- const baseBackgroundColor = backgroundColor ?? colorMode === "dark" ? "#ffffff0a" : "#00000005";
6248
6367
  return /* @__PURE__ */ jsxRuntime.jsx(
6249
6368
  react.Button,
6250
6369
  {
6251
- w: "full",
6252
- minH: "70px",
6253
- h: "fit-content",
6370
+ variant: "actionButton",
6254
6371
  py: stacked ? 0 : 4,
6255
6372
  onClick,
6256
6373
  display: hide ? "none" : "flex",
6257
6374
  isDisabled: showComingSoon || isDisabled,
6258
6375
  isLoading,
6259
6376
  loadingText,
6260
- bgColor: baseBackgroundColor,
6261
- _hover: _hover ?? {
6262
- backgroundColor: colorMode === "dark" ? "#ffffff12" : "blackAlpha.200"
6263
- },
6377
+ bgColor: backgroundColor,
6378
+ _hover,
6264
6379
  ...style,
6265
6380
  children: /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { w: "full", justify: "space-between", children: [
6266
6381
  /* @__PURE__ */ jsxRuntime.jsx(react.Box, { minW: "40px", children: leftImage ? /* @__PURE__ */ jsxRuntime.jsx(
@@ -6345,7 +6460,7 @@ var AccountSelector = ({
6345
6460
  props: { width: 7, height: 7 }
6346
6461
  }
6347
6462
  ),
6348
- /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: size, fontWeight: "500", children: chunkRUIC653T_cjs.humanDomain(wallet?.domain ?? "", 18, 0) || chunkRUIC653T_cjs.humanAddress(wallet?.address ?? "", 6, 4) })
6463
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: size, fontWeight: "500", children: chunk5YN7CZ5H_cjs.humanDomain(wallet?.domain ?? "", 22, 0) || chunk5YN7CZ5H_cjs.humanAddress(wallet?.address ?? "", 6, 4) })
6349
6464
  ] }),
6350
6465
  /* @__PURE__ */ jsxRuntime.jsx(
6351
6466
  react.Icon,
@@ -6410,17 +6525,17 @@ var AssetIcons = ({
6410
6525
  border: "2px solid #00000024",
6411
6526
  alignItems: "center",
6412
6527
  justifyContent: "center",
6413
- children: chunkRUIC653T_cjs.TOKEN_LOGO_COMPONENTS[token.symbol] ? React10__default.default.cloneElement(
6414
- chunkRUIC653T_cjs.TOKEN_LOGO_COMPONENTS[token.symbol],
6528
+ children: chunk5YN7CZ5H_cjs.TOKEN_LOGO_COMPONENTS[token.symbol] ? React10__default.default.cloneElement(
6529
+ chunk5YN7CZ5H_cjs.TOKEN_LOGO_COMPONENTS[token.symbol],
6415
6530
  {
6416
6531
  width: `${iconSize * 0.8}px`,
6417
6532
  height: `${iconSize * 0.8}px`,
6418
6533
  rounded: "full"
6419
6534
  }
6420
- ) : chunkRUIC653T_cjs.TOKEN_LOGOS[token.symbol] ? /* @__PURE__ */ jsxRuntime.jsx(
6535
+ ) : chunk5YN7CZ5H_cjs.TOKEN_LOGOS[token.symbol] ? /* @__PURE__ */ jsxRuntime.jsx(
6421
6536
  react.Image,
6422
6537
  {
6423
- src: chunkRUIC653T_cjs.TOKEN_LOGOS[token.symbol],
6538
+ src: chunk5YN7CZ5H_cjs.TOKEN_LOGOS[token.symbol],
6424
6539
  alt: `${token.symbol} logo`,
6425
6540
  width: `${iconSize * 0.8}px`,
6426
6541
  height: `${iconSize * 0.8}px`,
@@ -6765,7 +6880,7 @@ var QuickActionButton = ({
6765
6880
  );
6766
6881
  };
6767
6882
  var QuickActionsSection = ({ mt, setCurrentContent }) => {
6768
- const { account, smartAccount, connectedWallet } = useWallet();
6883
+ const { account, smartAccount, connectedWallet, connection } = useWallet();
6769
6884
  const { totalBalance } = useBalances({
6770
6885
  address: account?.address ?? ""
6771
6886
  });
@@ -6778,7 +6893,7 @@ var QuickActionsSection = ({ mt, setCurrentContent }) => {
6778
6893
  const { getNotifications } = useNotifications();
6779
6894
  const notifications = getNotifications();
6780
6895
  const hasUnreadNotifications = notifications.some((n) => !n.isRead);
6781
- const showRedDot = upgradeRequired || hasUnreadNotifications;
6896
+ const showRedDot = connection.isConnectedWithPrivy && upgradeRequired || hasUnreadNotifications;
6782
6897
  return /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { w: "full", mt, spacing: 4, children: [
6783
6898
  /* @__PURE__ */ jsxRuntime.jsx(react.Heading, { size: "xs", fontWeight: "500", w: "full", opacity: 0.5, children: t("Activities") }),
6784
6899
  /* @__PURE__ */ jsxRuntime.jsx(react.Grid, { templateColumns: "repeat(3, 1fr)", gap: 2, w: "full", children: QUICK_ACTIONS.map((action) => /* @__PURE__ */ jsxRuntime.jsx(
@@ -6897,6 +7012,115 @@ var DomainRequiredAlert = () => {
6897
7012
  ) })
6898
7013
  ] }) }) });
6899
7014
  };
7015
+ var CrossAppConnectionSecurityCard = () => {
7016
+ const { t } = reactI18next.useTranslation();
7017
+ const { getConnectionCache } = useCrossAppConnectionCache();
7018
+ const connectionCache = getConnectionCache();
7019
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Card, { variant: "vechainKitBase", w: "full", children: [
7020
+ /* @__PURE__ */ jsxRuntime.jsxs(react.CardHeader, { p: 4, pl: 6, borderBottomWidth: "1px", children: [
7021
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontWeight: "medium", opacity: 0.8, children: t("Security preferences") }),
7022
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "xs", mt: 1, opacity: 0.7, children: t(
7023
+ "For security reasons, you can manage your embedded wallet settings only on the {{appName}} platform.",
7024
+ {
7025
+ appName: connectionCache?.ecosystemApp.name ?? "origin app"
7026
+ }
7027
+ ) })
7028
+ ] }),
7029
+ /* @__PURE__ */ jsxRuntime.jsx(react.CardBody, { borderRadius: "none", children: /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { spacing: 3, align: "stretch", children: [
7030
+ /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { spacing: 3, align: "center", children: [
7031
+ /* @__PURE__ */ jsxRuntime.jsx(
7032
+ react.Center,
7033
+ {
7034
+ w: "fit-content",
7035
+ h: "fit-content",
7036
+ p: 2,
7037
+ borderRadius: "full",
7038
+ bg: "blackAlpha.100",
7039
+ _dark: { bg: "blackAlpha.100" },
7040
+ flexShrink: 0,
7041
+ children: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: gr.GrUserAdmin })
7042
+ }
7043
+ ),
7044
+ /* @__PURE__ */ jsxRuntime.jsxs(react.Box, { flex: 1, children: [
7045
+ /* @__PURE__ */ jsxRuntime.jsx(
7046
+ react.Text,
7047
+ {
7048
+ fontSize: "sm",
7049
+ fontWeight: "medium",
7050
+ lineHeight: "shorter",
7051
+ children: t("Login methods")
7052
+ }
7053
+ ),
7054
+ /* @__PURE__ */ jsxRuntime.jsx(
7055
+ react.Text,
7056
+ {
7057
+ fontSize: "xs",
7058
+ opacity: 0.7,
7059
+ lineHeight: "shorter",
7060
+ children: t("Manage your login methods and passkeys")
7061
+ }
7062
+ )
7063
+ ] })
7064
+ ] }),
7065
+ /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { spacing: 3, align: "center", children: [
7066
+ /* @__PURE__ */ jsxRuntime.jsx(
7067
+ react.Center,
7068
+ {
7069
+ w: "fit-content",
7070
+ h: "fit-content",
7071
+ p: 2,
7072
+ borderRadius: "full",
7073
+ bg: "blackAlpha.100",
7074
+ _dark: { bg: "blackAlpha.100" },
7075
+ flexShrink: 0,
7076
+ children: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: hi2.HiOutlineShieldCheck })
7077
+ }
7078
+ ),
7079
+ /* @__PURE__ */ jsxRuntime.jsxs(react.Box, { flex: 1, children: [
7080
+ /* @__PURE__ */ jsxRuntime.jsx(
7081
+ react.Text,
7082
+ {
7083
+ fontSize: "sm",
7084
+ fontWeight: "medium",
7085
+ lineHeight: "shorter",
7086
+ children: t("Security settings")
7087
+ }
7088
+ ),
7089
+ /* @__PURE__ */ jsxRuntime.jsx(
7090
+ react.Text,
7091
+ {
7092
+ fontSize: "xs",
7093
+ opacity: 0.7,
7094
+ lineHeight: "shorter",
7095
+ children: t(
7096
+ "Backup your wallet, configure MFA and set recovery options"
7097
+ )
7098
+ }
7099
+ )
7100
+ ] })
7101
+ ] })
7102
+ ] }) }),
7103
+ /* @__PURE__ */ jsxRuntime.jsx(react.CardFooter, { children: /* @__PURE__ */ jsxRuntime.jsxs(
7104
+ react.Button,
7105
+ {
7106
+ variant: "vechainKitSecondary",
7107
+ w: "full",
7108
+ onClick: () => {
7109
+ window.open(
7110
+ connectionCache?.ecosystemApp.website ?? "https://governance.vebetterdao.org/",
7111
+ "_blank"
7112
+ );
7113
+ },
7114
+ children: [
7115
+ t("Manage on {{appName}}", {
7116
+ appName: connectionCache?.ecosystemApp.name ?? "origin app"
7117
+ }),
7118
+ /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: fa.FaExternalLinkAlt, ml: 2 })
7119
+ ]
7120
+ }
7121
+ ) })
7122
+ ] });
7123
+ };
6900
7124
  var AccessAndSecurityContent = ({ setCurrentContent }) => {
6901
7125
  const { t } = reactI18next.useTranslation();
6902
7126
  const { exportWallet } = reactAuth.usePrivy();
@@ -6927,27 +7151,17 @@ var AccessAndSecurityContent = ({ setCurrentContent }) => {
6927
7151
  align: "flex-start",
6928
7152
  w: "full",
6929
7153
  children: [
6930
- /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { w: "full", justifyContent: "center", spacing: 3, mb: 3, children: [
6931
- /* @__PURE__ */ jsxRuntime.jsx(
6932
- react.Icon,
6933
- {
6934
- opacity: 0.5,
6935
- as: io5.IoShieldOutline,
6936
- fontSize: "50px"
6937
- }
6938
- ),
6939
- /* @__PURE__ */ jsxRuntime.jsx(
6940
- react.Text,
6941
- {
6942
- fontSize: "sm",
6943
- opacity: 0.5,
6944
- textAlign: "center",
6945
- children: t(
6946
- "Manage your embedded wallet security settings: handle your login methods, add a passkey or back up your wallet to never lose access to your assets."
6947
- )
6948
- }
6949
- )
6950
- ] }),
7154
+ /* @__PURE__ */ jsxRuntime.jsx(react.VStack, { w: "full", justifyContent: "center", spacing: 3, mb: 3, children: /* @__PURE__ */ jsxRuntime.jsx(
7155
+ react.Text,
7156
+ {
7157
+ fontSize: "sm",
7158
+ opacity: 0.5,
7159
+ textAlign: "center",
7160
+ children: t(
7161
+ "Manage your embedded wallet security settings: handle your login methods, add a passkey or back up your wallet to never lose access to your assets."
7162
+ )
7163
+ }
7164
+ ) }),
6951
7165
  upgradeRequired && /* @__PURE__ */ jsxRuntime.jsx(
6952
7166
  ActionButton,
6953
7167
  {
@@ -6991,70 +7205,53 @@ var AccessAndSecurityContent = ({ setCurrentContent }) => {
6991
7205
  rightIcon: md.MdOutlineNavigateNext
6992
7206
  }
6993
7207
  ),
6994
- /* @__PURE__ */ jsxRuntime.jsx(
6995
- ActionButton,
6996
- {
6997
- title: t("Login methods and Passkeys"),
6998
- onClick: () => {
6999
- setCurrentContent("privy-linked-accounts");
7000
- },
7001
- isDisabled: !connection.isConnectedWithSocialLogin,
7002
- leftIcon: gr.GrUserAdmin,
7003
- rightIcon: md.MdOutlineNavigateNext
7004
- }
7005
- ),
7006
- /* @__PURE__ */ jsxRuntime.jsx(
7007
- ActionButton,
7008
- {
7009
- title: t("Backup your wallet"),
7010
- onClick: () => {
7011
- exportWallet();
7012
- },
7013
- isDisabled: !connection.isConnectedWithSocialLogin,
7014
- leftIcon: gi.GiHouseKeys
7015
- }
7016
- ),
7017
- /* @__PURE__ */ jsxRuntime.jsx(
7018
- ActionButton,
7019
- {
7020
- title: t("Manage MFA"),
7021
- onClick: () => {
7022
- showMfaEnrollmentModal();
7023
- },
7024
- isDisabled: !connection.isConnectedWithSocialLogin,
7025
- leftIcon: hi2.HiOutlineShieldCheck
7026
- }
7027
- ),
7028
- /* @__PURE__ */ jsxRuntime.jsx(
7029
- ActionButton,
7030
- {
7031
- title: t("Manage Recovery"),
7032
- onClick: () => {
7033
- setWalletRecovery();
7034
- },
7035
- isDisabled: !connection.isConnectedWithSocialLogin,
7036
- leftIcon: md.MdOutlineSettingsBackupRestore
7037
- }
7038
- )
7208
+ connection.isConnectedWithSocialLogin ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
7209
+ /* @__PURE__ */ jsxRuntime.jsx(
7210
+ ActionButton,
7211
+ {
7212
+ title: t("Login methods and Passkeys"),
7213
+ onClick: () => {
7214
+ setCurrentContent("privy-linked-accounts");
7215
+ },
7216
+ leftIcon: gr.GrUserAdmin,
7217
+ rightIcon: md.MdOutlineNavigateNext
7218
+ }
7219
+ ),
7220
+ /* @__PURE__ */ jsxRuntime.jsx(
7221
+ ActionButton,
7222
+ {
7223
+ title: t("Backup your wallet"),
7224
+ onClick: () => {
7225
+ exportWallet();
7226
+ },
7227
+ leftIcon: gi.GiHouseKeys
7228
+ }
7229
+ ),
7230
+ /* @__PURE__ */ jsxRuntime.jsx(
7231
+ ActionButton,
7232
+ {
7233
+ title: t("Manage MFA"),
7234
+ onClick: () => {
7235
+ showMfaEnrollmentModal();
7236
+ },
7237
+ leftIcon: hi2.HiOutlineShieldCheck
7238
+ }
7239
+ ),
7240
+ /* @__PURE__ */ jsxRuntime.jsx(
7241
+ ActionButton,
7242
+ {
7243
+ title: t("Manage Recovery"),
7244
+ onClick: () => {
7245
+ setWalletRecovery();
7246
+ },
7247
+ leftIcon: md.MdOutlineSettingsBackupRestore
7248
+ }
7249
+ )
7250
+ ] }) : /* @__PURE__ */ jsxRuntime.jsx(CrossAppConnectionSecurityCard, {})
7039
7251
  ]
7040
7252
  }
7041
7253
  ) }),
7042
- /* @__PURE__ */ jsxRuntime.jsx(react.ModalFooter, { w: "full", children: connection.isConnectedWithVeChain && connection.isConnectedWithCrossApp && /* @__PURE__ */ jsxRuntime.jsxs(
7043
- react.Button,
7044
- {
7045
- variant: "vechainKitSecondary",
7046
- onClick: () => {
7047
- window.open(
7048
- "https://governance.vebetterdao.org/",
7049
- "_blank"
7050
- );
7051
- },
7052
- children: [
7053
- t("Manage on VeBetterDAO"),
7054
- /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: fa.FaExternalLinkAlt, ml: 2 })
7055
- ]
7056
- }
7057
- ) })
7254
+ /* @__PURE__ */ jsxRuntime.jsx(react.ModalFooter, { pt: 0 })
7058
7255
  ] });
7059
7256
  };
7060
7257
  var DEFAULT_NOTIFICATIONS = [
@@ -7510,7 +7707,7 @@ var NetworkInfo = () => {
7510
7707
  InfoRow,
7511
7708
  {
7512
7709
  label: t("Node URL"),
7513
- value: network.nodeUrl || chunkRUIC653T_cjs.getConfig(network.type).nodeUrl
7710
+ value: network.nodeUrl || chunk5YN7CZ5H_cjs.getConfig(network.type).nodeUrl
7514
7711
  }
7515
7712
  ),
7516
7713
  connection.isConnectedWithPrivy ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -7706,15 +7903,15 @@ var WalletSecuredBy = () => {
7706
7903
  mt: 5,
7707
7904
  p: 3,
7708
7905
  borderRadius: "lg",
7709
- bg: isDark ? "whiteAlpha.100" : "blackAlpha.50",
7906
+ bg: isDark ? "#00000038" : "#f5f5f5",
7710
7907
  shadow: "sm",
7711
7908
  children: [
7712
7909
  /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "xs", fontWeight: "800", children: t("Wallet secured by") }),
7713
7910
  /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { justify: "center", children: [
7714
- /* @__PURE__ */ jsxRuntime.jsx(chunkFID67WC3_cjs.PrivyLogo, { isDark, w: "50px" }),
7911
+ /* @__PURE__ */ jsxRuntime.jsx(chunkA4NZ5AVL_cjs.PrivyLogo, { isDark, w: "50px" }),
7715
7912
  /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: pi.PiLineVertical, ml: 3 }),
7716
7913
  connection.isConnectedWithVeChain ? /* @__PURE__ */ jsxRuntime.jsx(
7717
- chunkFID67WC3_cjs.VechainLogo,
7914
+ chunkA4NZ5AVL_cjs.VechainLogo,
7718
7915
  {
7719
7916
  isDark,
7720
7917
  w: "80px",
@@ -7747,9 +7944,10 @@ var WalletSecuredBy = () => {
7747
7944
  var EmbeddedWalletContent = ({ setCurrentContent }) => {
7748
7945
  const { t } = reactI18next.useTranslation();
7749
7946
  const { connectedWallet, connection } = useWallet();
7750
- const walletImage = chunkRUIC653T_cjs.getPicassoImage(connectedWallet?.address ?? "");
7947
+ const walletImage = chunk5YN7CZ5H_cjs.getPicassoImage(connectedWallet?.address ?? "");
7751
7948
  const { getConnectionCache } = useCrossAppConnectionCache();
7752
7949
  const connectionCache = getConnectionCache();
7950
+ const { darkMode: isDark } = useVeChainKitConfig();
7753
7951
  return /* @__PURE__ */ jsxRuntime.jsxs(ScrollToTopWrapper, { children: [
7754
7952
  /* @__PURE__ */ jsxRuntime.jsxs(StickyHeaderContainer, { children: [
7755
7953
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalHeader, { children: t("Embedded wallet") }),
@@ -7817,7 +8015,7 @@ var EmbeddedWalletContent = ({ setCurrentContent }) => {
7817
8015
  {
7818
8016
  href: "https://www.veworld.net/",
7819
8017
  isExternal: true,
7820
- color: "blackAlpha.600",
8018
+ color: isDark ? "whiteAlpha.600" : "blackAlpha.600",
7821
8019
  fontSize: "14px",
7822
8020
  textDecoration: "underline",
7823
8021
  children: [
@@ -7837,7 +8035,7 @@ var EmbeddedWalletContent = ({ setCurrentContent }) => {
7837
8035
  {
7838
8036
  href: "https://docs.vechainkit.vechain.org/vechain-kit/embedded-wallets",
7839
8037
  isExternal: true,
7840
- color: "blackAlpha.600",
8038
+ color: isDark ? "whiteAlpha.600" : "blackAlpha.600",
7841
8039
  fontSize: "14px",
7842
8040
  textDecoration: "underline",
7843
8041
  children: t("here")
@@ -7885,7 +8083,7 @@ var SelectTokenContent = ({ onSelectToken, onBack }) => {
7885
8083
  /* @__PURE__ */ jsxRuntime.jsx(ModalBackButton, { onClick: onBack }),
7886
8084
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalCloseButton, {})
7887
8085
  ] }),
7888
- /* @__PURE__ */ jsxRuntime.jsx(react.ModalBody, { children: /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { spacing: 4, align: "stretch", children: [
8086
+ /* @__PURE__ */ jsxRuntime.jsx(react.Container, { h: ["540px", "auto"], p: 0, children: /* @__PURE__ */ jsxRuntime.jsx(react.ModalBody, { children: /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { spacing: 4, align: "stretch", children: [
7889
8087
  /* @__PURE__ */ jsxRuntime.jsxs(react.InputGroup, { size: "lg", children: [
7890
8088
  /* @__PURE__ */ jsxRuntime.jsx(
7891
8089
  react.Input,
@@ -7935,7 +8133,9 @@ var SelectTokenContent = ({ onSelectToken, onBack }) => {
7935
8133
  AssetButton,
7936
8134
  {
7937
8135
  symbol: token.symbol,
7938
- amount: Number(token.numericBalance),
8136
+ amount: Number(
8137
+ token.numericBalance
8138
+ ),
7939
8139
  usdValue,
7940
8140
  onClick: () => onSelectToken(token),
7941
8141
  isDisabled: !hasBalance
@@ -7943,7 +8143,7 @@ var SelectTokenContent = ({ onSelectToken, onBack }) => {
7943
8143
  token.address
7944
8144
  );
7945
8145
  }) })
7946
- ] }) }),
8146
+ ] }) }) }),
7947
8147
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalFooter, { pt: 0 })
7948
8148
  ] });
7949
8149
  };
@@ -7982,11 +8182,7 @@ var SendTokenContent = ({
7982
8182
  mode: "onChange"
7983
8183
  });
7984
8184
  const { toAddressOrDomain } = watch();
7985
- const {
7986
- domain: resolvedDomain,
7987
- address: resolvedAddress,
7988
- isLoading: isLoadingDomain
7989
- } = dappKitReact.useVechainDomain({ addressOrDomain: toAddressOrDomain });
8185
+ const { domain: resolvedDomain, address: resolvedAddress } = dappKitReact.useVechainDomain({ addressOrDomain: toAddressOrDomain });
7990
8186
  const handleSetMaxAmount = () => {
7991
8187
  if (selectedToken) {
7992
8188
  setValue("amount", selectedToken.numericBalance);
@@ -7994,7 +8190,7 @@ var SendTokenContent = ({
7994
8190
  };
7995
8191
  const onSubmit = async (data) => {
7996
8192
  if (!selectedToken) return;
7997
- const isValidReceiver = !chunkRUIC653T_cjs.compareAddresses(resolvedAddress ?? ethers.ZeroAddress, ethers.ZeroAddress) || chunkRUIC653T_cjs.isValidAddress(data.toAddressOrDomain);
8193
+ const isValidReceiver = !chunk5YN7CZ5H_cjs.compareAddresses(resolvedAddress ?? ethers.ZeroAddress, ethers.ZeroAddress) || chunk5YN7CZ5H_cjs.isValidAddress(data.toAddressOrDomain);
7998
8194
  if (!isValidReceiver) {
7999
8195
  setError("toAddressOrDomain", {
8000
8196
  type: "manual",
@@ -8107,8 +8303,8 @@ var SendTokenContent = ({
8107
8303
  bg: isDark ? "whiteAlpha.300" : "blackAlpha.300"
8108
8304
  },
8109
8305
  onClick: () => setIsSelectingToken(true),
8110
- leftIcon: chunkRUIC653T_cjs.TOKEN_LOGO_COMPONENTS[selectedToken.symbol] ? React10__default.default.cloneElement(
8111
- chunkRUIC653T_cjs.TOKEN_LOGO_COMPONENTS[selectedToken.symbol],
8306
+ leftIcon: chunk5YN7CZ5H_cjs.TOKEN_LOGO_COMPONENTS[selectedToken.symbol] ? React10__default.default.cloneElement(
8307
+ chunk5YN7CZ5H_cjs.TOKEN_LOGO_COMPONENTS[selectedToken.symbol],
8112
8308
  {
8113
8309
  boxSize: "20px",
8114
8310
  borderRadius: "full"
@@ -8116,7 +8312,7 @@ var SendTokenContent = ({
8116
8312
  ) : /* @__PURE__ */ jsxRuntime.jsx(
8117
8313
  react.Image,
8118
8314
  {
8119
- src: chunkRUIC653T_cjs.TOKEN_LOGOS[selectedToken.symbol],
8315
+ src: chunk5YN7CZ5H_cjs.TOKEN_LOGOS[selectedToken.symbol],
8120
8316
  alt: `${selectedToken.symbol} logo`,
8121
8317
  boxSize: "20px",
8122
8318
  borderRadius: "full",
@@ -8264,8 +8460,8 @@ var SendTokenContent = ({
8264
8460
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalFooter, { children: /* @__PURE__ */ jsxRuntime.jsx(
8265
8461
  react.Button,
8266
8462
  {
8267
- variant: "vechainKitSecondary",
8268
- isDisabled: !selectedToken || !isValid || isLoadingDomain,
8463
+ variant: "vechainKitPrimary",
8464
+ isDisabled: !selectedToken || !isValid,
8269
8465
  onClick: handleSubmit(onSubmit),
8270
8466
  children: selectedToken ? t("Send") : t("Select Token")
8271
8467
  }
@@ -8292,7 +8488,7 @@ var SendTokenSummaryContent = ({
8292
8488
  }) => {
8293
8489
  const { t } = reactI18next.useTranslation();
8294
8490
  const { account, connection, connectedWallet } = useWallet();
8295
- const { data: avatar } = useGetAvatar(resolvedDomain);
8491
+ const { data: avatar } = useGetAvatar(resolvedDomain ?? "");
8296
8492
  const { network } = useVeChainKitConfig();
8297
8493
  const { data: upgradeRequired } = useUpgradeRequired(
8298
8494
  account?.address ?? "",
@@ -8302,9 +8498,9 @@ var SendTokenSummaryContent = ({
8302
8498
  const { open: openUpgradeSmartAccountModal } = useUpgradeSmartAccountModal();
8303
8499
  const toImageSrc = React10.useMemo(() => {
8304
8500
  if (avatar) {
8305
- return chunkRUIC653T_cjs.convertUriToUrl(avatar, network.type);
8501
+ return avatar;
8306
8502
  }
8307
- return chunkRUIC653T_cjs.getPicassoImage(resolvedAddress || toAddressOrDomain);
8503
+ return chunk5YN7CZ5H_cjs.getPicassoImage(resolvedAddress || toAddressOrDomain);
8308
8504
  }, [avatar, network.type, resolvedAddress, toAddressOrDomain]);
8309
8505
  const {
8310
8506
  sendTransaction: transferERC20,
@@ -8609,6 +8805,78 @@ var ChooseNameContent = ({
8609
8805
  ) })
8610
8806
  ] });
8611
8807
  };
8808
+ var DomainListItem = ({
8809
+ domain,
8810
+ isCurrentDomain,
8811
+ onSelect
8812
+ }) => {
8813
+ const { darkMode: isDark } = useVeChainKitConfig();
8814
+ const { connection } = useWallet();
8815
+ const { t } = reactI18next.useTranslation();
8816
+ const metadata = useWalletMetadata(domain.name, connection.network);
8817
+ return /* @__PURE__ */ jsxRuntime.jsx(
8818
+ react.ListItem,
8819
+ {
8820
+ p: 4,
8821
+ bg: isDark ? "#1f1f1e" : "white",
8822
+ borderRadius: "xl",
8823
+ cursor: isCurrentDomain ? "default" : "pointer",
8824
+ opacity: isCurrentDomain ? 0.7 : 1,
8825
+ border: `1px solid ${isDark ? "#2d2d2d" : "#eaeaea"}`,
8826
+ _hover: {
8827
+ bg: isCurrentDomain ? isDark ? "#1f1f1e" : "white" : isDark ? "#252525" : "gray.50",
8828
+ borderColor: isDark ? "#3d3d3d" : "#dedede"
8829
+ },
8830
+ onClick: () => !isCurrentDomain && onSelect(domain.name),
8831
+ transition: "all 0.2s",
8832
+ children: /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { spacing: 3, align: "center", children: [
8833
+ /* @__PURE__ */ jsxRuntime.jsx(
8834
+ AccountAvatar,
8835
+ {
8836
+ props: {
8837
+ width: "40px",
8838
+ height: "40px",
8839
+ src: metadata.image ?? chunk5YN7CZ5H_cjs.getPicassoImage(domain.name),
8840
+ alt: domain.name
8841
+ }
8842
+ }
8843
+ ),
8844
+ /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { align: "start", spacing: 0, flex: 1, children: [
8845
+ /* @__PURE__ */ jsxRuntime.jsx(
8846
+ react.Text,
8847
+ {
8848
+ color: isDark ? "whiteAlpha.900" : "gray.700",
8849
+ fontSize: "md",
8850
+ fontWeight: "500",
8851
+ children: domain.name
8852
+ }
8853
+ ),
8854
+ isCurrentDomain && /* @__PURE__ */ jsxRuntime.jsx(
8855
+ react.Text,
8856
+ {
8857
+ fontSize: "sm",
8858
+ color: isDark ? "whiteAlpha.600" : "blackAlpha.600",
8859
+ children: t("Current domain")
8860
+ }
8861
+ )
8862
+ ] }),
8863
+ isCurrentDomain && /* @__PURE__ */ jsxRuntime.jsx(
8864
+ react.Tag,
8865
+ {
8866
+ size: "sm",
8867
+ bg: isDark ? "#ffffff0a" : "whiteAlpha.100",
8868
+ color: isDark ? "whiteAlpha.900" : "blackAlpha.600",
8869
+ px: 3,
8870
+ py: 1,
8871
+ borderRadius: "full",
8872
+ children: t("Current")
8873
+ }
8874
+ )
8875
+ ] })
8876
+ },
8877
+ domain.name
8878
+ );
8879
+ };
8612
8880
  var ExistingDomainsList = ({
8613
8881
  domains,
8614
8882
  onDomainSelect,
@@ -8616,7 +8884,7 @@ var ExistingDomainsList = ({
8616
8884
  }) => {
8617
8885
  const { t } = reactI18next.useTranslation();
8618
8886
  const { darkMode: isDark } = useVeChainKitConfig();
8619
- const { account, connection } = useWallet();
8887
+ const { account } = useWallet();
8620
8888
  if (domains.length === 0 || isLoading) {
8621
8889
  return null;
8622
8890
  }
@@ -8645,85 +8913,15 @@ var ExistingDomainsList = ({
8645
8913
  ]
8646
8914
  }
8647
8915
  ),
8648
- /* @__PURE__ */ jsxRuntime.jsx(react.AccordionPanel, { pb: 4, pt: 2, children: /* @__PURE__ */ jsxRuntime.jsx(react.List, { spacing: 2, children: domains.map((domain) => {
8649
- const isCurrentDomain = domain.name === account?.domain;
8650
- const metadata = useWalletMetadata(
8651
- domain.name,
8652
- connection.network
8653
- );
8654
- return /* @__PURE__ */ jsxRuntime.jsx(
8655
- react.ListItem,
8656
- {
8657
- p: 4,
8658
- bg: isDark ? "#1f1f1e" : "white",
8659
- borderRadius: "xl",
8660
- cursor: isCurrentDomain ? "default" : "pointer",
8661
- opacity: isCurrentDomain ? 0.7 : 1,
8662
- border: `1px solid ${isDark ? "#2d2d2d" : "#eaeaea"}`,
8663
- _hover: {
8664
- bg: isCurrentDomain ? isDark ? "#1f1f1e" : "white" : isDark ? "#252525" : "gray.50",
8665
- borderColor: isDark ? "#3d3d3d" : "#dedede"
8666
- },
8667
- onClick: () => !isCurrentDomain && onDomainSelect(domain.name),
8668
- transition: "all 0.2s",
8669
- children: /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { spacing: 3, align: "center", children: [
8670
- /* @__PURE__ */ jsxRuntime.jsx(
8671
- AccountAvatar,
8672
- {
8673
- props: {
8674
- width: "40px",
8675
- height: "40px",
8676
- src: metadata.image,
8677
- alt: domain.name
8678
- }
8679
- }
8680
- ),
8681
- /* @__PURE__ */ jsxRuntime.jsxs(
8682
- react.VStack,
8683
- {
8684
- align: "start",
8685
- spacing: 0,
8686
- flex: 1,
8687
- children: [
8688
- /* @__PURE__ */ jsxRuntime.jsx(
8689
- react.Text,
8690
- {
8691
- color: isDark ? "whiteAlpha.900" : "gray.700",
8692
- fontSize: "md",
8693
- fontWeight: "500",
8694
- children: domain.name
8695
- }
8696
- ),
8697
- isCurrentDomain && /* @__PURE__ */ jsxRuntime.jsx(
8698
- react.Text,
8699
- {
8700
- fontSize: "sm",
8701
- color: isDark ? "whiteAlpha.600" : "blackAlpha.600",
8702
- children: t(
8703
- "Current domain"
8704
- )
8705
- }
8706
- )
8707
- ]
8708
- }
8709
- ),
8710
- isCurrentDomain && /* @__PURE__ */ jsxRuntime.jsx(
8711
- react.Tag,
8712
- {
8713
- size: "sm",
8714
- bg: isDark ? "#ffffff0a" : "whiteAlpha.100",
8715
- color: isDark ? "whiteAlpha.900" : "blackAlpha.600",
8716
- px: 3,
8717
- py: 1,
8718
- borderRadius: "full",
8719
- children: t("Current")
8720
- }
8721
- )
8722
- ] })
8723
- },
8724
- domain.name
8725
- );
8726
- }) }) })
8916
+ /* @__PURE__ */ jsxRuntime.jsx(react.AccordionPanel, { pb: 4, pt: 2, children: /* @__PURE__ */ jsxRuntime.jsx(react.List, { spacing: 2, children: domains.map((domain) => /* @__PURE__ */ jsxRuntime.jsx(
8917
+ DomainListItem,
8918
+ {
8919
+ domain,
8920
+ isCurrentDomain: domain.name === account?.domain,
8921
+ onSelect: onDomainSelect
8922
+ },
8923
+ domain.name
8924
+ )) }) })
8727
8925
  ] }) }) });
8728
8926
  };
8729
8927
  var ChooseNameSearchContent = ({
@@ -8893,7 +9091,7 @@ var ChooseNameSearchContent = ({
8893
9091
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalFooter, { children: /* @__PURE__ */ jsxRuntime.jsx(
8894
9092
  react.Button,
8895
9093
  {
8896
- variant: "vechainKitSecondary",
9094
+ variant: "vechainKitPrimary",
8897
9095
  isDisabled: !isAvailable || !!error || isProtected || isFetchingDomainInfo,
8898
9096
  onClick: handleContinue,
8899
9097
  children: t("Continue")
@@ -9205,6 +9403,7 @@ var en_default = {
9205
9403
  "Backing up your wallet is crucial as you are the only one with access to your private keys. If something goes wrong, having your private key is the only way to recover your assets. How to backup depends on how you access your wallet: If using VeWorld, the backup option is available within the app. For social login users, you can find backup options in the Wallet section. If you're connected through VeChain or another ecosystem app, you'll need to visit the original website, log in, and access the Wallet section from there.": "Backing up your wallet is crucial as you are the only one with access to your private keys. If something goes wrong, having your private key is the only way to recover your assets. How to backup depends on how you access your wallet: If using VeWorld, the backup option is available within the app. For social login users, you can find backup options in the Wallet section. If you're connected through VeChain or another ecosystem app, you'll need to visit the original website, log in, and access the Wallet section from there.",
9206
9404
  "Backup can be done only in the app securing your wallet.": "Backup can be done only in the app securing your wallet.",
9207
9405
  "Backup your wallet": "Backup your wallet",
9406
+ "Backup your wallet, configure MFA and set recovery options": "Backup your wallet, configure MFA and set recovery options",
9208
9407
  Balance: "Balance",
9209
9408
  "Balance:": "Balance:",
9210
9409
  "Benefits of this upgrade:": "Benefits of this upgrade:",
@@ -9317,6 +9516,7 @@ var en_default = {
9317
9516
  "Fee delegation is a unique feature of VeChain that allows someone else (a delegator) to pay for your transaction fees. While many dApps and service providers act as delegators to make it easier for new users to get started, some transactions may still require you to pay fees using your own VTHO. Fees are necessary to prevent network spam and compensate the nodes that process and validate transactions on the blockchain. When paying fees yourself, you'll be able to select VTHO from your assets to cover the transaction cost.": "Fee delegation is a unique feature of VeChain that allows someone else (a delegator) to pay for your transaction fees. While many dApps and service providers act as delegators to make it easier for new users to get started, some transactions may still require you to pay fees using your own VTHO. Fees are necessary to prevent network spam and compensate the nodes that process and validate transactions on the blockchain. When paying fees yourself, you'll be able to select VTHO from your assets to cover the transaction cost.",
9318
9517
  "Finally say goodbye to 0x addresses": "Finally say goodbye to 0x addresses",
9319
9518
  "For developers": "For developers",
9519
+ "For security reasons, you can manage your embedded wallet settings only on the {{appName}} platform.": "For security reasons, you can manage your embedded wallet settings only on the {{appName}} platform.",
9320
9520
  "Frequently asked questions": "Frequently asked questions",
9321
9521
  From: "From",
9322
9522
  Github: "Github",
@@ -9375,9 +9575,11 @@ var en_default = {
9375
9575
  "Manage Recovery": "Manage Recovery",
9376
9576
  "Manage multi-factor authentication settings for your wallet.": "Manage multi-factor authentication settings for your wallet.",
9377
9577
  "Manage on VeBetterDAO": "Manage on VeBetterDAO",
9578
+ "Manage on {{appName}}": "Manage on {{appName}}",
9378
9579
  "Manage passkey login": "Manage passkey login",
9379
9580
  "Manage your embedded wallet security settings or back it up to a new device.": "Manage your embedded wallet security settings or back it up to a new device.",
9380
9581
  "Manage your embedded wallet security settings: handle your login methods, add a passkey or back up your wallet to never lose access to your assets.": "Manage your embedded wallet security settings: handle your login methods, add a passkey or back up your wallet to never lose access to your assets.",
9582
+ "Manage your login methods and passkeys": "Manage your login methods and passkeys",
9381
9583
  "Mobile browser may block the login window.": "Mobile browser may block the login window.",
9382
9584
  More: "More",
9383
9585
  "Multiclause Transaction temporary disabled": "Multiclause Transaction temporary disabled",
@@ -9454,6 +9656,8 @@ var en_default = {
9454
9656
  "Search dApps": "Search dApps",
9455
9657
  "Search for a domain": "Search for a domain",
9456
9658
  "Secured by": "Secured by",
9659
+ "Security preferences": "Security preferences",
9660
+ "Security settings": "Security settings",
9457
9661
  "Select Additional Login Method": "Select Additional Login Method",
9458
9662
  "Select Token": "Select Token",
9459
9663
  "Select an app": "Select an app",
@@ -9687,6 +9891,7 @@ var de_default = {
9687
9891
  "Backing up your wallet is crucial as you are the only one with access to your private keys. If something goes wrong, having your private key is the only way to recover your assets. How to backup depends on how you access your wallet: If using VeWorld, the backup option is available within the app. For social login users, you can find backup options in the Wallet section. If you're connected through VeChain or another ecosystem app, you'll need to visit the original website, log in, and access the Wallet section from there.": "Das Sichern Ihres Wallets ist entscheidend, da Sie der Einzige mit Zugriff auf Ihre privaten Schl\xFCssel sind. Wenn etwas schiefgeht, ist Ihr privater Schl\xFCssel der einzige Weg, um Ihre Verm\xF6genswerte wiederherzustellen. Die Art der Sicherung h\xE4ngt davon ab, wie Sie auf Ihr Wallet zugreifen: Wenn Sie VeWorld verwenden, ist die Sicherungsoption in der App verf\xFCgbar. F\xFCr Benutzer mit sozialem Login finden Sie Sicherungsoptionen im Wallet-Bereich. Wenn Sie \xFCber VeChain oder eine andere Ecosystem-App verbunden sind, m\xFCssen Sie die urspr\xFCngliche Website besuchen, sich anmelden und dort auf den Wallet-Bereich zugreifen.",
9688
9892
  "Backup can be done only in the app securing your wallet.": "Ein Backup kann nur in der App durchgef\xFChrt werden, die Ihr Wallet sichert.",
9689
9893
  "Backup your wallet": "Sichern Sie Ihr Wallet",
9894
+ "Backup your wallet, configure MFA and set recovery options": "Sichern Sie Ihre Wallet, konfigurieren Sie MFA und legen Sie Wiederherstellungsoptionen fest",
9690
9895
  Balance: "Guthaben",
9691
9896
  "Balance:": "Kontostand:",
9692
9897
  "Benefits of this upgrade:": "Vorteile dieses Upgrades:",
@@ -9799,6 +10004,7 @@ var de_default = {
9799
10004
  "Fee delegation is a unique feature of VeChain that allows someone else (a delegator) to pay for your transaction fees. While many dApps and service providers act as delegators to make it easier for new users to get started, some transactions may still require you to pay fees using your own VTHO. Fees are necessary to prevent network spam and compensate the nodes that process and validate transactions on the blockchain. When paying fees yourself, you'll be able to select VTHO from your assets to cover the transaction cost.": "Fee Delegation ist ein einzigartiges Merkmal von VeChain, das es jemand anderem (einem Delegator) erm\xF6glicht, Ihre Transaktionsgeb\xFChren zu bezahlen. W\xE4hrend viele dApps und Dienstanbieter als Delegatoren fungieren, um neuen Benutzern den Einstieg zu erleichtern, k\xF6nnen bei einigen Transaktionen dennoch Geb\xFChren anfallen, die Sie mit Ihrem eigenen VTHO bezahlen m\xFCssen. Geb\xFChren sind notwendig, um Netzwerkmissbrauch zu verhindern und die Knoten zu entsch\xE4digen, die Transaktionen in der Blockchain verarbeiten und validieren. Wenn Sie die Geb\xFChren selbst bezahlen, k\xF6nnen Sie VTHO aus Ihren Verm\xF6genswerten ausw\xE4hlen, um die Transaktionskosten zu decken.",
9800
10005
  "Finally say goodbye to 0x addresses": "Sagen Sie endlich 0x-Adressen auf Wiedersehen",
9801
10006
  "For developers": "F\xFCr Entwickler",
10007
+ "For security reasons, you can manage your embedded wallet settings only on the {{appName}} platform.": "Aus Sicherheitsgr\xFCnden k\xF6nnen Sie die Einstellungen Ihrer eingebetteten Wallet nur auf der {{appName}} Plattform verwalten.",
9802
10008
  "Frequently asked questions": "H\xE4ufig gestellte Fragen",
9803
10009
  From: "Von",
9804
10010
  Github: "Github",
@@ -9857,9 +10063,11 @@ var de_default = {
9857
10063
  "Manage Recovery": "Wiederherstellung verwalten",
9858
10064
  "Manage multi-factor authentication settings for your wallet.": "Verwalten Sie die Einstellungen zur Multi-Faktor-Authentifizierung f\xFCr Ihr Wallet.",
9859
10065
  "Manage on VeBetterDAO": "Verwalten auf VeBetterDAO",
10066
+ "Manage on {{appName}}": "Verwalten auf {{appName}}",
9860
10067
  "Manage passkey login": "Passkey-Anmeldung verwalten",
9861
10068
  "Manage your embedded wallet security settings or back it up to a new device.": "Verwalten Sie die Sicherheitseinstellungen Ihres eingebetteten Wallets oder sichern Sie es auf einem neuen Ger\xE4t.",
9862
10069
  "Manage your embedded wallet security settings: handle your login methods, add a passkey or back up your wallet to never lose access to your assets.": "Verwalten Sie die Sicherheitseinstellungen Ihrer eingebetteten Wallet: Verwalten Sie Ihre Anmeldemethoden, f\xFCgen Sie einen Zugangsschl\xFCssel hinzu oder sichern Sie Ihre Wallet, um nie den Zugriff auf Ihre Assets zu verlieren.",
10070
+ "Manage your login methods and passkeys": "Verwalten Sie Ihre Anmeldemethoden und Zugangsschl\xFCssel",
9863
10071
  "Mobile browser may block the login window.": "Mobiler Browser kann das Anmeldefenster blockieren.",
9864
10072
  More: "Mehr",
9865
10073
  "Multiclause Transaction temporary disabled": "Multiclause-Transaktion vor\xFCbergehend deaktiviert",
@@ -9936,6 +10144,8 @@ var de_default = {
9936
10144
  "Search dApps": "dApps durchsuchen",
9937
10145
  "Search for a domain": "Nach einer Domain suchen",
9938
10146
  "Secured by": "Gesichert durch",
10147
+ "Security preferences": "Sicherheitseinstellungen",
10148
+ "Security settings": "Sicherheitseinstellungen",
9939
10149
  "Select Additional Login Method": "Zus\xE4tzliche Anmeldemethode ausw\xE4hlen",
9940
10150
  "Select Token": "Token ausw\xE4hlen",
9941
10151
  "Select an app": "W\xE4hlen Sie eine App",
@@ -10169,6 +10379,7 @@ var it_default = {
10169
10379
  "Backing up your wallet is crucial as you are the only one with access to your private keys. If something goes wrong, having your private key is the only way to recover your assets. How to backup depends on how you access your wallet: If using VeWorld, the backup option is available within the app. For social login users, you can find backup options in the Wallet section. If you're connected through VeChain or another ecosystem app, you'll need to visit the original website, log in, and access the Wallet section from there.": "Fare il backup del tuo portafoglio \xE8 fondamentale poich\xE9 sei l'unico ad avere accesso alle tue chiavi private. Se qualcosa va storto, avere la tua chiave privata \xE8 l'unico modo per recuperare i tuoi beni. Come fare il backup dipende da come accedi al tuo portafoglio: se usi VeWorld, l'opzione di backup \xE8 disponibile all'interno dell'app. Per gli utenti con accesso tramite login sociale, puoi trovare opzioni di backup nella sezione Portafoglio. Se sei connesso tramite VeChain o un'altra app dell'ecosistema, dovrai visitare il sito originale, accedere e raggiungere la sezione Portafoglio da l\xEC.",
10170
10380
  "Backup can be done only in the app securing your wallet.": "Il backup pu\xF2 essere effettuato solo nell'app che protegge il tuo portafoglio.",
10171
10381
  "Backup your wallet": "Esegui il backup del tuo portafoglio",
10382
+ "Backup your wallet, configure MFA and set recovery options": "Esegui il backup del tuo portafoglio, configura MFA e imposta le opzioni di recupero",
10172
10383
  Balance: "Saldo",
10173
10384
  "Balance:": "Saldo:",
10174
10385
  "Benefits of this upgrade:": "Vantaggi di questo aggiornamento:",
@@ -10281,6 +10492,7 @@ var it_default = {
10281
10492
  "Fee delegation is a unique feature of VeChain that allows someone else (a delegator) to pay for your transaction fees. While many dApps and service providers act as delegators to make it easier for new users to get started, some transactions may still require you to pay fees using your own VTHO. Fees are necessary to prevent network spam and compensate the nodes that process and validate transactions on the blockchain. When paying fees yourself, you'll be able to select VTHO from your assets to cover the transaction cost.": "La delega delle commissioni \xE8 una funzione unica di VeChain che consente a qualcun altro (un delegante) di pagare le tue commissioni di transazione. Mentre molte dApp e fornitori di servizi agiscono come deleganti per facilitare l'inizio per i nuovi utenti, alcune transazioni potrebbero comunque richiedere che tu paghi le commissioni usando il tuo VTHO. Le commissioni sono necessarie per prevenire lo spam di rete e compensare i nodi che elaborano e convalidano le transazioni sulla blockchain. Quando paghi le commissioni di persona, potrai selezionare VTHO dai tuoi asset per coprire il costo della transazione.",
10282
10493
  "Finally say goodbye to 0x addresses": "Finalmente d\xEC addio agli indirizzi 0x",
10283
10494
  "For developers": "Per sviluppatori",
10495
+ "For security reasons, you can manage your embedded wallet settings only on the {{appName}} platform.": "Per motivi di sicurezza, puoi gestire le impostazioni del tuo portafoglio integrato solo sulla piattaforma {{appName}}.",
10284
10496
  "Frequently asked questions": "Domande frequenti",
10285
10497
  From: "Da",
10286
10498
  Github: "Github",
@@ -10339,9 +10551,11 @@ var it_default = {
10339
10551
  "Manage Recovery": "Gestisci Recupero",
10340
10552
  "Manage multi-factor authentication settings for your wallet.": "Gestisci le impostazioni di autenticazione a pi\xF9 fattori per il tuo portafoglio.",
10341
10553
  "Manage on VeBetterDAO": "Gestisci su VeBetterDAO",
10554
+ "Manage on {{appName}}": "Gestisci su {{appName}}",
10342
10555
  "Manage passkey login": "Gestisci login con chiave di accesso",
10343
10556
  "Manage your embedded wallet security settings or back it up to a new device.": "Gestisci le impostazioni di sicurezza del tuo portafoglio incorporato o esegui il backup su un nuovo dispositivo.",
10344
10557
  "Manage your embedded wallet security settings: handle your login methods, add a passkey or back up your wallet to never lose access to your assets.": "Gestisci le impostazioni di sicurezza del tuo portafoglio integrato: gestisci i tuoi metodi di accesso, aggiungi una chiave di accesso o esegui il backup del portafoglio per non perdere mai l'accesso ai tuoi beni.",
10558
+ "Manage your login methods and passkeys": "Gestisci i tuoi metodi di accesso e chiavi di accesso",
10345
10559
  "Mobile browser may block the login window.": "Il browser mobile potrebbe bloccare la finestra di accesso.",
10346
10560
  More: "Altro",
10347
10561
  "Multiclause Transaction temporary disabled": "Transazione multiclausola temporaneamente disabilitata",
@@ -10418,6 +10632,8 @@ var it_default = {
10418
10632
  "Search dApps": "Cerca dApp",
10419
10633
  "Search for a domain": "Cerca un dominio",
10420
10634
  "Secured by": "Protetto da",
10635
+ "Security preferences": "Preferenze di sicurezza",
10636
+ "Security settings": "Impostazioni di sicurezza",
10421
10637
  "Select Additional Login Method": "Seleziona metodo di accesso aggiuntivo",
10422
10638
  "Select Token": "Seleziona Token",
10423
10639
  "Select an app": "Seleziona un'app",
@@ -10651,6 +10867,7 @@ var fr_default = {
10651
10867
  "Backing up your wallet is crucial as you are the only one with access to your private keys. If something goes wrong, having your private key is the only way to recover your assets. How to backup depends on how you access your wallet: If using VeWorld, the backup option is available within the app. For social login users, you can find backup options in the Wallet section. If you're connected through VeChain or another ecosystem app, you'll need to visit the original website, log in, and access the Wallet section from there.": "Sauvegarder votre portefeuille est crucial puisque vous \xEAtes le seul \xE0 avoir acc\xE8s \xE0 vos cl\xE9s priv\xE9es. Si quelque chose ne va pas, avoir votre cl\xE9 priv\xE9e est le seul moyen de r\xE9cup\xE9rer vos actifs. La fa\xE7on de sauvegarder d\xE9pend de la mani\xE8re dont vous acc\xE9dez \xE0 votre portefeuille : si vous utilisez VeWorld, l'option de sauvegarde est disponible dans l'application. Pour les utilisateurs de connexion sociale, vous trouverez les options de sauvegarde dans la section Portefeuille. Si vous \xEAtes connect\xE9 via VeChain ou une autre application de l'\xE9cosyst\xE8me, vous devrez visiter le site web d'origine, vous connecter et acc\xE9der \xE0 la section Portefeuille \xE0 partir de l\xE0.",
10652
10868
  "Backup can be done only in the app securing your wallet.": "La sauvegarde ne peut \xEAtre effectu\xE9e que dans l'application s\xE9curisant votre portefeuille.",
10653
10869
  "Backup your wallet": "Sauvegardez votre portefeuille",
10870
+ "Backup your wallet, configure MFA and set recovery options": "Sauvegardez votre portefeuille, configurez l'authentification multi-facteurs et d\xE9finissez les options de r\xE9cup\xE9ration",
10654
10871
  Balance: "Solde",
10655
10872
  "Balance:": "Solde:",
10656
10873
  "Benefits of this upgrade:": "Avantages de cette mise \xE0 niveau :",
@@ -10763,6 +10980,7 @@ var fr_default = {
10763
10980
  "Fee delegation is a unique feature of VeChain that allows someone else (a delegator) to pay for your transaction fees. While many dApps and service providers act as delegators to make it easier for new users to get started, some transactions may still require you to pay fees using your own VTHO. Fees are necessary to prevent network spam and compensate the nodes that process and validate transactions on the blockchain. When paying fees yourself, you'll be able to select VTHO from your assets to cover the transaction cost.": "La d\xE9l\xE9gation de frais est une fonctionnalit\xE9 unique de VeChain qui permet \xE0 quelqu'un d'autre (un d\xE9l\xE9gataire) de payer vos frais de transaction. Bien que de nombreuses dApps et prestataires de services agissent en tant que d\xE9l\xE9gataires pour faciliter le d\xE9marrage des nouveaux utilisateurs, certaines transactions peuvent encore n\xE9cessiter que vous payiez des frais en utilisant votre propre VTHO. Les frais sont n\xE9cessaires pour pr\xE9venir le spam sur le r\xE9seau et pour r\xE9mun\xE9rer les n\u0153uds qui traitent et valident les transactions sur la blockchain. Lorsque vous payez vous-m\xEAme les frais, vous pourrez s\xE9lectionner VTHO parmi vos actifs pour couvrir le co\xFBt de la transaction.",
10764
10981
  "Finally say goodbye to 0x addresses": "Enfin, dites adieu aux adresses 0x",
10765
10982
  "For developers": "Pour les d\xE9veloppeurs",
10983
+ "For security reasons, you can manage your embedded wallet settings only on the {{appName}} platform.": "Pour des raisons de s\xE9curit\xE9, vous pouvez g\xE9rer les param\xE8tres de votre portefeuille int\xE9gr\xE9 uniquement sur la plateforme {{appName}}.",
10766
10984
  "Frequently asked questions": "Questions fr\xE9quemment pos\xE9es",
10767
10985
  From: "De",
10768
10986
  Github: "Github",
@@ -10821,9 +11039,11 @@ var fr_default = {
10821
11039
  "Manage Recovery": "G\xE9rer la r\xE9cup\xE9ration",
10822
11040
  "Manage multi-factor authentication settings for your wallet.": "G\xE9rez les param\xE8tres d'authentification \xE0 plusieurs facteurs pour votre portefeuille.",
10823
11041
  "Manage on VeBetterDAO": "G\xE9rer sur VeBetterDAO",
11042
+ "Manage on {{appName}}": "G\xE9rer sur {{appName}}",
10824
11043
  "Manage passkey login": "G\xE9rer la connexion par cl\xE9 de passe",
10825
11044
  "Manage your embedded wallet security settings or back it up to a new device.": "G\xE9rez les param\xE8tres de s\xE9curit\xE9 de votre portefeuille int\xE9gr\xE9 ou sauvegardez-le sur un nouvel appareil.",
10826
11045
  "Manage your embedded wallet security settings: handle your login methods, add a passkey or back up your wallet to never lose access to your assets.": "G\xE9rez les param\xE8tres de s\xE9curit\xE9 de votre portefeuille int\xE9gr\xE9 : g\xE9rez vos m\xE9thodes de connexion, ajoutez une cl\xE9 d'acc\xE8s ou sauvegardez votre portefeuille pour ne jamais perdre l'acc\xE8s \xE0 vos actifs.",
11046
+ "Manage your login methods and passkeys": "G\xE9rez vos m\xE9thodes de connexion et cl\xE9s d'acc\xE8s",
10827
11047
  "Mobile browser may block the login window.": "Le navigateur mobile peut bloquer la fen\xEAtre de connexion.",
10828
11048
  More: "Plus",
10829
11049
  "Multiclause Transaction temporary disabled": "Transaction \xE0 clauses multiples temporairement d\xE9sactiv\xE9e",
@@ -10900,6 +11120,8 @@ var fr_default = {
10900
11120
  "Search dApps": "Rechercher des dApps",
10901
11121
  "Search for a domain": "Rechercher un domaine",
10902
11122
  "Secured by": "S\xE9curis\xE9 par",
11123
+ "Security preferences": "Pr\xE9f\xE9rences de s\xE9curit\xE9",
11124
+ "Security settings": "Param\xE8tres de s\xE9curit\xE9",
10903
11125
  "Select Additional Login Method": "S\xE9lectionner une m\xE9thode de connexion suppl\xE9mentaire",
10904
11126
  "Select Token": "S\xE9lectionner un jeton",
10905
11127
  "Select an app": "S\xE9lectionnez une application",
@@ -11133,6 +11355,7 @@ var es_default = {
11133
11355
  "Backing up your wallet is crucial as you are the only one with access to your private keys. If something goes wrong, having your private key is the only way to recover your assets. How to backup depends on how you access your wallet: If using VeWorld, the backup option is available within the app. For social login users, you can find backup options in the Wallet section. If you're connected through VeChain or another ecosystem app, you'll need to visit the original website, log in, and access the Wallet section from there.": "Respaldar tu billetera es crucial ya que eres el \xFAnico con acceso a tus claves privadas. Si algo sale mal, tener tu clave privada es la \xFAnica manera de recuperar tus activos. C\xF3mo hacer un respaldo depende de c\xF3mo accedas a tu billetera: Si usas VeWorld, la opci\xF3n de respaldo est\xE1 disponible dentro de la aplicaci\xF3n. Para usuarios de inicio de sesi\xF3n social, puedes encontrar opciones de respaldo en la secci\xF3n Billetera. Si est\xE1s conectado a trav\xE9s de VeChain u otra aplicaci\xF3n del ecosistema, necesitar\xE1s visitar el sitio web original, iniciar sesi\xF3n y acceder a la secci\xF3n de Billetera desde all\xED.",
11134
11356
  "Backup can be done only in the app securing your wallet.": "La copia de seguridad solo se puede hacer en la aplicaci\xF3n que asegura tu billetera.",
11135
11357
  "Backup your wallet": "Respalda tu billetera",
11358
+ "Backup your wallet, configure MFA and set recovery options": "Realiza una copia de seguridad de tu billetera, configura MFA y establece opciones de recuperaci\xF3n",
11136
11359
  Balance: "Saldo",
11137
11360
  "Balance:": "Saldo:",
11138
11361
  "Benefits of this upgrade:": "Beneficios de esta actualizaci\xF3n:",
@@ -11245,6 +11468,7 @@ var es_default = {
11245
11468
  "Fee delegation is a unique feature of VeChain that allows someone else (a delegator) to pay for your transaction fees. While many dApps and service providers act as delegators to make it easier for new users to get started, some transactions may still require you to pay fees using your own VTHO. Fees are necessary to prevent network spam and compensate the nodes that process and validate transactions on the blockchain. When paying fees yourself, you'll be able to select VTHO from your assets to cover the transaction cost.": "La delegaci\xF3n de tarifas es una funci\xF3n \xFAnica de VeChain que permite que otra persona (un delegado) pague las tarifas de tus transacciones. Aunque muchas aplicaciones descentralizadas (dApps) y proveedores de servicios act\xFAan como delegados para facilitar a los nuevos usuarios el comienzo, es posible que algunas transacciones a\xFAn requieran que pagues tarifas usando tu propio VTHO. Las tarifas son necesarias para prevenir el spam en la red y compensar a los nodos que procesan y validan las transacciones en la cadena de bloques. Al pagar las tarifas t\xFA mismo, podr\xE1s seleccionar VTHO de tus activos para cubrir el costo de la transacci\xF3n.",
11246
11469
  "Finally say goodbye to 0x addresses": "Finalmente di adi\xF3s a las direcciones 0x",
11247
11470
  "For developers": "Para desarrolladores",
11471
+ "For security reasons, you can manage your embedded wallet settings only on the {{appName}} platform.": "Por razones de seguridad, puedes gestionar la configuraci\xF3n de tu billetera integrada solo en la plataforma {{appName}}.",
11248
11472
  "Frequently asked questions": "Preguntas frecuentes",
11249
11473
  From: "De",
11250
11474
  Github: "Github",
@@ -11303,9 +11527,11 @@ var es_default = {
11303
11527
  "Manage Recovery": "Gestionar la Recuperaci\xF3n",
11304
11528
  "Manage multi-factor authentication settings for your wallet.": "Gestionar configuraciones de autenticaci\xF3n multifactor para tu billetera.",
11305
11529
  "Manage on VeBetterDAO": "Gestionar en VeBetterDAO",
11530
+ "Manage on {{appName}}": "Gestionar en {{appName}}",
11306
11531
  "Manage passkey login": "Administrar inicio de sesi\xF3n con llave de acceso",
11307
11532
  "Manage your embedded wallet security settings or back it up to a new device.": "Gestiona la configuraci\xF3n de seguridad de tu monedero incrustado o haz una copia de seguridad en un nuevo dispositivo.",
11308
11533
  "Manage your embedded wallet security settings: handle your login methods, add a passkey or back up your wallet to never lose access to your assets.": "Administra la configuraci\xF3n de seguridad de tu billetera integrada: gestiona tus m\xE9todos de inicio de sesi\xF3n, a\xF1ade una clave de acceso o realiza una copia de seguridad de tu billetera para no perder nunca el acceso a tus activos.",
11534
+ "Manage your login methods and passkeys": "Gestiona tus m\xE9todos de inicio de sesi\xF3n y claves de acceso",
11309
11535
  "Mobile browser may block the login window.": "El navegador m\xF3vil puede bloquear la ventana de inicio de sesi\xF3n.",
11310
11536
  More: "M\xE1s",
11311
11537
  "Multiclause Transaction temporary disabled": "Transacci\xF3n con m\xFAltiples cl\xE1usulas temporalmente deshabilitada",
@@ -11382,6 +11608,8 @@ var es_default = {
11382
11608
  "Search dApps": "Buscar dApps",
11383
11609
  "Search for a domain": "Buscar un dominio",
11384
11610
  "Secured by": "Asegurado por",
11611
+ "Security preferences": "Preferencias de seguridad",
11612
+ "Security settings": "Configuraciones de seguridad",
11385
11613
  "Select Additional Login Method": "Seleccionar M\xE9todo de Inicio de Sesi\xF3n Adicional",
11386
11614
  "Select Token": "Seleccionar Token",
11387
11615
  "Select an app": "Seleccionar una aplicaci\xF3n",
@@ -11615,6 +11843,7 @@ var zh_default = {
11615
11843
  "Backing up your wallet is crucial as you are the only one with access to your private keys. If something goes wrong, having your private key is the only way to recover your assets. How to backup depends on how you access your wallet: If using VeWorld, the backup option is available within the app. For social login users, you can find backup options in the Wallet section. If you're connected through VeChain or another ecosystem app, you'll need to visit the original website, log in, and access the Wallet section from there.": "\u5907\u4EFD\u60A8\u7684\u94B1\u5305\u975E\u5E38\u91CD\u8981\uFF0C\u56E0\u4E3A\u60A8\u662F\u552F\u4E00\u80FD\u8BBF\u95EE\u60A8\u7684\u79C1\u94A5\u7684\u4EBA\u3002\u5982\u679C\u51FA\u73B0\u95EE\u9898\uFF0C\u62E5\u6709\u60A8\u7684\u79C1\u94A5\u662F\u6062\u590D\u8D44\u4EA7\u7684\u552F\u4E00\u65B9\u6CD5\u3002\u5907\u4EFD\u65B9\u5F0F\u53D6\u51B3\u4E8E\u60A8\u5982\u4F55\u8BBF\u95EE\u94B1\u5305\uFF1A\u5982\u679C\u4F7F\u7528 VeWorld\uFF0C\u5907\u4EFD\u9009\u9879\u5728\u5E94\u7528\u5185\u53EF\u7528\u3002\u5BF9\u4E8E\u793E\u4EA4\u767B\u5F55\u7528\u6237\uFF0C\u60A8\u53EF\u4EE5\u5728\u94B1\u5305\u90E8\u5206\u627E\u5230\u5907\u4EFD\u9009\u9879\u3002\u5982\u679C\u901A\u8FC7 VeChain \u6216\u5176\u4ED6\u751F\u6001\u7CFB\u7EDF\u5E94\u7528\u8FDE\u63A5\uFF0C\u60A8\u9700\u8981\u8BBF\u95EE\u539F\u59CB\u7F51\u7AD9\uFF0C\u767B\u5F55\u5E76\u4ECE\u90A3\u91CC\u8BBF\u95EE\u94B1\u5305\u90E8\u5206\u3002",
11616
11844
  "Backup can be done only in the app securing your wallet.": "\u5907\u4EFD\u53EA\u80FD\u5728\u4FDD\u62A4\u60A8\u94B1\u5305\u7684\u5E94\u7528\u4E2D\u5B8C\u6210\u3002",
11617
11845
  "Backup your wallet": "\u5907\u4EFD\u60A8\u7684\u94B1\u5305",
11846
+ "Backup your wallet, configure MFA and set recovery options": "\u5907\u4EFD\u60A8\u7684\u94B1\u5305\uFF0C\u914D\u7F6E\u591A\u56E0\u7D20\u8EAB\u4EFD\u9A8C\u8BC1\u5E76\u8BBE\u7F6E\u6062\u590D\u9009\u9879",
11618
11847
  Balance: "\u4F59\u989D",
11619
11848
  "Balance:": "\u4F59\u989D\uFF1A",
11620
11849
  "Benefits of this upgrade:": "\u6B64\u5347\u7EA7\u7684\u597D\u5904\uFF1A",
@@ -11727,6 +11956,7 @@ var zh_default = {
11727
11956
  "Fee delegation is a unique feature of VeChain that allows someone else (a delegator) to pay for your transaction fees. While many dApps and service providers act as delegators to make it easier for new users to get started, some transactions may still require you to pay fees using your own VTHO. Fees are necessary to prevent network spam and compensate the nodes that process and validate transactions on the blockchain. When paying fees yourself, you'll be able to select VTHO from your assets to cover the transaction cost.": "\u8D39\u7528\u59D4\u6258\u662F\u552F\u94FE\uFF08VeChain\uFF09\u7684\u4E00\u4E2A\u72EC\u7279\u529F\u80FD\uFF0C\u5B83\u5141\u8BB8\u5176\u4ED6\u4EBA\uFF08\u5373\u59D4\u6258\u8005\uFF09\u4E3A\u60A8\u7684\u4EA4\u6613\u8D39\u7528\u4E70\u5355\u3002\u867D\u7136\u8BB8\u591AdApp\u548C\u670D\u52A1\u63D0\u4F9B\u5546\u5145\u5F53\u59D4\u6258\u8005\u4EE5\u65B9\u4FBF\u65B0\u7528\u6237\u4E0A\u624B\uFF0C\u4F46\u67D0\u4E9B\u4EA4\u6613\u53EF\u80FD\u4ECD\u9700\u8981\u60A8\u4F7F\u7528\u81EA\u5DF1\u7684VTHO\u652F\u4ED8\u8D39\u7528\u3002\u8D39\u7528\u662F\u9632\u6B62\u7F51\u7EDC\u5783\u573E\u53CA\u8865\u507F\u5904\u7406\u548C\u9A8C\u8BC1\u533A\u5757\u94FE\u4EA4\u6613\u7684\u8282\u70B9\u6240\u5FC5\u9700\u7684\u3002\u5728\u60A8\u81EA\u5DF1\u652F\u4ED8\u8D39\u7528\u65F6\uFF0C\u60A8\u53EF\u4EE5\u4ECE\u8D44\u4EA7\u4E2D\u9009\u62E9VTHO\u6765\u8986\u76D6\u4EA4\u6613\u6210\u672C\u3002",
11728
11957
  "Finally say goodbye to 0x addresses": "\u6700\u7EC8\u544A\u522B0x\u5730\u5740",
11729
11958
  "For developers": "\u4E3A\u5F00\u53D1\u8005",
11959
+ "For security reasons, you can manage your embedded wallet settings only on the {{appName}} platform.": "\u51FA\u4E8E\u5B89\u5168\u539F\u56E0\uFF0C\u60A8\u53EA\u80FD\u5728 {{appName}} \u5E73\u53F0\u4E0A\u7BA1\u7406\u5D4C\u5165\u5F0F\u94B1\u5305\u8BBE\u7F6E\u3002",
11730
11960
  "Frequently asked questions": "\u5E38\u89C1\u95EE\u9898\u89E3\u7B54",
11731
11961
  From: "\u81EA",
11732
11962
  Github: "Github",
@@ -11785,9 +12015,11 @@ var zh_default = {
11785
12015
  "Manage Recovery": "\u7BA1\u7406\u6062\u590D",
11786
12016
  "Manage multi-factor authentication settings for your wallet.": "\u7BA1\u7406\u60A8\u94B1\u5305\u7684\u591A\u56E0\u7D20\u8BA4\u8BC1\u8BBE\u7F6E\u3002",
11787
12017
  "Manage on VeBetterDAO": "\u5728VeBetterDAO\u4E0A\u7BA1\u7406",
12018
+ "Manage on {{appName}}": "\u5728 {{appName}} \u4E0A\u7BA1\u7406",
11788
12019
  "Manage passkey login": "\u7BA1\u7406\u5BC6\u7801\u767B\u5F55",
11789
12020
  "Manage your embedded wallet security settings or back it up to a new device.": "\u7BA1\u7406\u60A8\u7684\u5D4C\u5165\u94B1\u5305\u5B89\u5168\u8BBE\u7F6E\u6216\u5C06\u5176\u5907\u4EFD\u5230\u65B0\u8BBE\u5907\u3002",
11790
12021
  "Manage your embedded wallet security settings: handle your login methods, add a passkey or back up your wallet to never lose access to your assets.": "\u7BA1\u7406\u60A8\u7684\u5D4C\u5165\u5F0F\u94B1\u5305\u7684\u5B89\u5168\u8BBE\u7F6E\uFF1A\u5904\u7406\u60A8\u7684\u767B\u5F55\u65B9\u6CD5\uFF0C\u6DFB\u52A0\u5BC6\u7801\u94A5\u5319\u6216\u5907\u4EFD\u60A8\u7684\u94B1\u5305\uFF0C\u4EE5\u514D\u5931\u53BB\u5BF9\u8D44\u4EA7\u7684\u8BBF\u95EE\u3002",
12022
+ "Manage your login methods and passkeys": "\u7BA1\u7406\u60A8\u7684\u767B\u5F55\u65B9\u5F0F\u548C\u901A\u884C\u5BC6\u94A5",
11791
12023
  "Mobile browser may block the login window.": "\u79FB\u52A8\u6D4F\u89C8\u5668\u53EF\u80FD\u4F1A\u963B\u6B62\u767B\u5F55\u7A97\u53E3\u3002",
11792
12024
  More: "\u66F4\u591A",
11793
12025
  "Multiclause Transaction temporary disabled": "\u591A\u6761\u6B3E\u4EA4\u6613\u6682\u65F6\u7981\u7528",
@@ -11864,6 +12096,8 @@ var zh_default = {
11864
12096
  "Search dApps": "\u641C\u7D22 dApps",
11865
12097
  "Search for a domain": "\u641C\u7D22\u57DF\u540D",
11866
12098
  "Secured by": "\u5B89\u5168\u4FDD\u969C",
12099
+ "Security preferences": "\u5B89\u5168\u504F\u597D",
12100
+ "Security settings": "\u5B89\u5168\u8BBE\u7F6E",
11867
12101
  "Select Additional Login Method": "\u9009\u62E9\u5176\u4ED6\u767B\u5F55\u65B9\u5F0F",
11868
12102
  "Select Token": "\u9009\u62E9\u4EE3\u5E01",
11869
12103
  "Select an app": "\u9009\u62E9\u4E00\u4E2A\u5E94\u7528",
@@ -12097,6 +12331,7 @@ var ja_default = {
12097
12331
  "Backing up your wallet is crucial as you are the only one with access to your private keys. If something goes wrong, having your private key is the only way to recover your assets. How to backup depends on how you access your wallet: If using VeWorld, the backup option is available within the app. For social login users, you can find backup options in the Wallet section. If you're connected through VeChain or another ecosystem app, you'll need to visit the original website, log in, and access the Wallet section from there.": "\u30A6\u30A9\u30EC\u30C3\u30C8\u306E\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u306F\u975E\u5E38\u306B\u91CD\u8981\u3067\u3059\u3002\u306A\u305C\u306A\u3089\u3001\u3042\u306A\u305F\u3060\u3051\u304C\u79D8\u5BC6\u9375\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u308B\u304B\u3089\u3067\u3059\u3002\u4F55\u304B\u554F\u984C\u304C\u767A\u751F\u3057\u305F\u5834\u5408\u3001\u79D8\u5BC6\u9375\u3092\u6301\u3063\u3066\u3044\u308B\u3053\u3068\u304C\u8CC7\u7523\u3092\u56DE\u5FA9\u3059\u308B\u552F\u4E00\u306E\u624B\u6BB5\u3067\u3059\u3002\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u306E\u65B9\u6CD5\u306F\u30A6\u30A9\u30EC\u30C3\u30C8\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u65B9\u6CD5\u306B\u3088\u308A\u307E\u3059\uFF1AVeWorld\u3092\u4F7F\u7528\u3057\u3066\u3044\u308B\u5834\u5408\u3001\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u30AA\u30D7\u30B7\u30E7\u30F3\u306F\u30A2\u30D7\u30EA\u5185\u3067\u5229\u7528\u53EF\u80FD\u3067\u3059\u3002\u30BD\u30FC\u30B7\u30E3\u30EB\u30ED\u30B0\u30A4\u30F3\u30E6\u30FC\u30B6\u30FC\u306E\u5834\u5408\u3001\u30A6\u30A9\u30EC\u30C3\u30C8\u30BB\u30AF\u30B7\u30E7\u30F3\u3067\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u898B\u3064\u3051\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002VeChain\u307E\u305F\u306F\u5225\u306E\u30A8\u30B3\u30B7\u30B9\u30C6\u30E0\u30A2\u30D7\u30EA\u3092\u901A\u3058\u3066\u63A5\u7D9A\u3057\u3066\u3044\u308B\u5834\u5408\u3001\u5143\u306EWeb\u30B5\u30A4\u30C8\u306B\u30A2\u30AF\u30BB\u30B9\u3057\u3001\u30ED\u30B0\u30A4\u30F3\u3057\u3066\u30A6\u30A9\u30EC\u30C3\u30C8\u30BB\u30AF\u30B7\u30E7\u30F3\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002",
12098
12332
  "Backup can be done only in the app securing your wallet.": "\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u306F\u30A6\u30A9\u30EC\u30C3\u30C8\u3092\u4FDD\u8B77\u3057\u3066\u3044\u308B\u30A2\u30D7\u30EA\u3067\u306E\u307F\u884C\u3048\u307E\u3059\u3002",
12099
12333
  "Backup your wallet": "\u30A6\u30A9\u30EC\u30C3\u30C8\u3092\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u3059\u308B",
12334
+ "Backup your wallet, configure MFA and set recovery options": "\u30A6\u30A9\u30EC\u30C3\u30C8\u3092\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u3057\u3001MFA\u3092\u8A2D\u5B9A\u3057\u3001\u56DE\u5FA9\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u8A2D\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
12100
12335
  Balance: "\u6B8B\u9AD8",
12101
12336
  "Balance:": "\u6B8B\u9AD8\uFF1A",
12102
12337
  "Benefits of this upgrade:": "\u3053\u306E\u30A2\u30C3\u30D7\u30B0\u30EC\u30FC\u30C9\u306E\u5229\u70B9\uFF1A",
@@ -12209,6 +12444,7 @@ var ja_default = {
12209
12444
  "Fee delegation is a unique feature of VeChain that allows someone else (a delegator) to pay for your transaction fees. While many dApps and service providers act as delegators to make it easier for new users to get started, some transactions may still require you to pay fees using your own VTHO. Fees are necessary to prevent network spam and compensate the nodes that process and validate transactions on the blockchain. When paying fees yourself, you'll be able to select VTHO from your assets to cover the transaction cost.": "\u624B\u6570\u6599\u30C7\u30EA\u30B2\u30FC\u30B7\u30E7\u30F3\u306F\u3001VeChain\u306E\u30E6\u30CB\u30FC\u30AF\u306A\u6A5F\u80FD\u3067\u3042\u308A\u3001\u4ED6\u306E\u8AB0\u304B\uFF08\u30C7\u30EA\u30B2\u30FC\u30BF\u30FC\uFF09\u304C\u3042\u306A\u305F\u306E\u53D6\u5F15\u624B\u6570\u6599\u3092\u652F\u6255\u3046\u3053\u3068\u3092\u53EF\u80FD\u306B\u3057\u307E\u3059\u3002\u591A\u304F\u306EdApps\u304A\u3088\u3073\u30B5\u30FC\u30D3\u30B9\u30D7\u30ED\u30D0\u30A4\u30C0\u30FC\u304C\u30C7\u30EA\u30B2\u30FC\u30BF\u30FC\u3068\u3057\u3066\u6A5F\u80FD\u3057\u3001\u65B0\u898F\u30E6\u30FC\u30B6\u30FC\u304C\u958B\u59CB\u3057\u3084\u3059\u304F\u3057\u3066\u3044\u307E\u3059\u304C\u3001\u4E00\u90E8\u306E\u53D6\u5F15\u3067\u306F\u4F9D\u7136\u3068\u3057\u3066\u72EC\u81EA\u306EVTHO\u3092\u4F7F\u7528\u3057\u3066\u624B\u6570\u6599\u3092\u652F\u6255\u3046\u5FC5\u8981\u304C\u3042\u308B\u5834\u5408\u304C\u3042\u308A\u307E\u3059\u3002\u624B\u6570\u6599\u306F\u3001\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\u30B9\u30D1\u30E0\u3092\u9632\u304E\u3001\u30D6\u30ED\u30C3\u30AF\u30C1\u30A7\u30FC\u30F3\u4E0A\u306E\u53D6\u5F15\u3092\u51E6\u7406\u304A\u3088\u3073\u691C\u8A3C\u3059\u308B\u30CE\u30FC\u30C9\u306B\u5831\u916C\u3092\u4E0E\u3048\u308B\u305F\u3081\u306B\u5FC5\u8981\u3067\u3059\u3002\u624B\u6570\u6599\u3092\u81EA\u5206\u3067\u652F\u6255\u3046\u5834\u5408\u306F\u3001\u8CC7\u7523\u304B\u3089VTHO\u3092\u9078\u629E\u3057\u3066\u53D6\u5F15\u30B3\u30B9\u30C8\u3092\u30AB\u30D0\u30FC\u3059\u308B\u3053\u3068\u304C\u3067\u304D\u307E\u3059\u3002",
12210
12445
  "Finally say goodbye to 0x addresses": "\u3064\u3044\u306B0x\u30A2\u30C9\u30EC\u30B9\u306B\u304A\u5225\u308C\u3092\u8A00\u3044\u307E\u3057\u3087\u3046",
12211
12446
  "For developers": "\u958B\u767A\u8005\u5411\u3051",
12447
+ "For security reasons, you can manage your embedded wallet settings only on the {{appName}} platform.": "\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u4E0A\u306E\u7406\u7531\u304B\u3089\u3001\u57CB\u3081\u8FBC\u307F\u30A6\u30A9\u30EC\u30C3\u30C8\u306E\u8A2D\u5B9A\u306F{{appName}}\u30D7\u30E9\u30C3\u30C8\u30D5\u30A9\u30FC\u30E0\u3067\u306E\u307F\u7BA1\u7406\u3067\u304D\u307E\u3059\u3002",
12212
12448
  "Frequently asked questions": "\u3088\u304F\u3042\u308B\u8CEA\u554F",
12213
12449
  From: "\u9001\u4FE1\u5143",
12214
12450
  Github: "\u30AE\u30C3\u30C8\u30CF\u30D6",
@@ -12267,9 +12503,11 @@ var ja_default = {
12267
12503
  "Manage Recovery": "\u30EA\u30AB\u30D0\u30EA\u30FC\u306E\u7BA1\u7406",
12268
12504
  "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",
12269
12505
  "Manage on VeBetterDAO": "VeBetterDAO\u3067\u7BA1\u7406",
12506
+ "Manage on {{appName}}": "{{appName}}\u3067\u7BA1\u7406\u3059\u308B",
12270
12507
  "Manage passkey login": "\u30D1\u30B9\u30AD\u30FC\u306E\u30ED\u30B0\u30A4\u30F3\u3092\u7BA1\u7406",
12271
12508
  "Manage your embedded wallet security settings or back it up to a new device.": "\u7D44\u307F\u8FBC\u307F\u30A6\u30A9\u30EC\u30C3\u30C8\u306E\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u8A2D\u5B9A\u3092\u7BA1\u7406\u3057\u305F\u308A\u3001\u65B0\u3057\u3044\u30C7\u30D0\u30A4\u30B9\u306B\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u3057\u305F\u308A\u3057\u307E\u3059\u3002",
12272
12509
  "Manage your embedded wallet security settings: handle your login methods, add a passkey or back up your wallet to never lose access to your assets.": "\u57CB\u3081\u8FBC\u307F\u30A6\u30A9\u30EC\u30C3\u30C8\u306E\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u8A2D\u5B9A\u3092\u7BA1\u7406\u3057\u307E\u3059: \u30ED\u30B0\u30A4\u30F3\u65B9\u6CD5\u3092\u51E6\u7406\u3057\u305F\u308A\u3001\u30D1\u30B9\u30AD\u30FC\u3092\u8FFD\u52A0\u3057\u305F\u308A\u3001\u8CC7\u7523\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u3092\u5931\u308F\u306A\u3044\u3088\u3046\u306B\u30A6\u30A9\u30EC\u30C3\u30C8\u3092\u30D0\u30C3\u30AF\u30A2\u30C3\u30D7\u3057\u305F\u308A\u3057\u307E\u3059\u3002",
12510
+ "Manage your login methods and passkeys": "\u30ED\u30B0\u30A4\u30F3\u65B9\u6CD5\u3068\u30D1\u30B9\u30AD\u30FC\u3092\u7BA1\u7406\u3059\u308B",
12273
12511
  "Mobile browser may block the login window.": "\u30E2\u30D0\u30A4\u30EB\u30D6\u30E9\u30A6\u30B6\u306F\u30ED\u30B0\u30A4\u30F3\u30A6\u30A3\u30F3\u30C9\u30A6\u3092\u30D6\u30ED\u30C3\u30AF\u3059\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\u3002",
12274
12512
  More: "\u3082\u3063\u3068\u898B\u308B",
12275
12513
  "Multiclause Transaction temporary disabled": "\u8907\u6570\u6761\u9805\u306E\u30C8\u30E9\u30F3\u30B6\u30AF\u30B7\u30E7\u30F3\u306F\u4E00\u6642\u7684\u306B\u7121\u52B9\u5316\u3055\u308C\u3066\u3044\u307E\u3059\u3002",
@@ -12346,6 +12584,8 @@ var ja_default = {
12346
12584
  "Search dApps": "dApps\u3092\u691C\u7D22",
12347
12585
  "Search for a domain": "\u30C9\u30E1\u30A4\u30F3\u3092\u691C\u7D22",
12348
12586
  "Secured by": "\u306B\u3088\u3063\u3066\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u4FDD\u8B77\u3055\u308C\u3066\u3044\u307E\u3059",
12587
+ "Security preferences": "\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u8A2D\u5B9A",
12588
+ "Security settings": "\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u8A2D\u5B9A",
12349
12589
  "Select Additional Login Method": "\u8FFD\u52A0\u306E\u30ED\u30B0\u30A4\u30F3\u65B9\u6CD5\u3092\u9078\u629E",
12350
12590
  "Select Token": "\u30C8\u30FC\u30AF\u30F3\u3092\u9078\u629E",
12351
12591
  "Select an app": "\u30A2\u30D7\u30EA\u3092\u9078\u629E",
@@ -12593,7 +12833,7 @@ var FAQContent = ({ onGoBack }) => {
12593
12833
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalBody, { children: /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { spacing: 6, align: "stretch", children: [
12594
12834
  /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { children: [
12595
12835
  /* @__PURE__ */ jsxRuntime.jsx(react.HStack, { justify: "center", children: /* @__PURE__ */ jsxRuntime.jsx(
12596
- chunkFID67WC3_cjs.VechainLogo,
12836
+ chunkA4NZ5AVL_cjs.VechainLogo,
12597
12837
  {
12598
12838
  isDark,
12599
12839
  w: "200px",
@@ -12669,7 +12909,7 @@ var CustomizationContent = ({
12669
12909
  setCurrentContent
12670
12910
  }) => {
12671
12911
  const { t } = reactI18next.useTranslation();
12672
- const { network, darkMode: isDark } = useVeChainKitConfig();
12912
+ const { network } = useVeChainKitConfig();
12673
12913
  const { account } = useWallet();
12674
12914
  const fileInputRef = React10.useRef(null);
12675
12915
  const coverInputRef = React10.useRef(null);
@@ -12711,23 +12951,25 @@ var CustomizationContent = ({
12711
12951
  setInitialEmail(metadata.email || "");
12712
12952
  setInitialWebsite(metadata.url || "");
12713
12953
  setInitialAvatarHash(
12714
- metadata.avatar ? metadata.avatar.replace("ipfs://", "") : null
12715
- );
12716
- setPreviewImageUrl(
12717
- chunkRUIC653T_cjs.convertUriToUrl(metadata.avatar ?? "", network.type) || null
12954
+ account.image ? account.image.replace("ipfs://", "") : null
12718
12955
  );
12956
+ setPreviewImageUrl((prev) => prev ?? account.image ?? null);
12719
12957
  }
12720
- }, [account?.metadata, network.type]);
12958
+ }, [account, network.type]);
12721
12959
  const formValues = watch();
12722
12960
  const handleImageUpload = async (event) => {
12723
12961
  const file = event.target.files?.[0];
12724
12962
  if (!file) return;
12725
12963
  try {
12726
12964
  setIsUploading(true);
12727
- setPreviewImageUrl(URL.createObjectURL(file));
12965
+ if (previewImageUrl) {
12966
+ URL.revokeObjectURL(previewImageUrl);
12967
+ }
12968
+ const newPreviewUrl = URL.createObjectURL(file);
12969
+ setPreviewImageUrl(newPreviewUrl);
12728
12970
  const uploadedImage = await onUpload(file);
12729
12971
  if (!uploadedImage) throw new Error("Failed to compress image");
12730
- const ipfsHash = await chunkRUIC653T_cjs.uploadBlobToIPFS(
12972
+ const ipfsHash = await chunk5YN7CZ5H_cjs.uploadBlobToIPFS(
12731
12973
  uploadedImage.file,
12732
12974
  file.name,
12733
12975
  network.type
@@ -12785,9 +13027,7 @@ var CustomizationContent = ({
12785
13027
  /* @__PURE__ */ jsxRuntime.jsxs(
12786
13028
  react.Card,
12787
13029
  {
12788
- bg: isDark ? "#1e1e21" : "#00000005",
12789
- borderRadius: "xl",
12790
- width: "full",
13030
+ variant: "vechainKitBase",
12791
13031
  position: "relative",
12792
13032
  overflow: "visible",
12793
13033
  children: [
@@ -12799,7 +13039,7 @@ var CustomizationContent = ({
12799
13039
  backgroundPosition: "center",
12800
13040
  position: "relative",
12801
13041
  h: "80px",
12802
- background: `no-repeat url('${chunkRUIC653T_cjs.getPicassoImage(
13042
+ background: `no-repeat url('${chunk5YN7CZ5H_cjs.getPicassoImage(
12803
13043
  account?.address ?? ""
12804
13044
  )}')`,
12805
13045
  w: "100%",
@@ -12824,7 +13064,7 @@ var CustomizationContent = ({
12824
13064
  width: "100px",
12825
13065
  height: "100px",
12826
13066
  boxShadow: "0px 0px 3px 2px #00000024",
12827
- src: previewImageUrl || void 0
13067
+ src: previewImageUrl ?? void 0
12828
13068
  }
12829
13069
  }
12830
13070
  ),
@@ -13119,7 +13359,8 @@ var CustomizationSummaryContent = ({
13119
13359
  const { darkMode: isDark } = useVeChainKitConfig();
13120
13360
  const { account, connectedWallet } = useWallet();
13121
13361
  const { refresh: refreshMetadata } = useRefreshMetadata(
13122
- account?.domain ?? ""
13362
+ account?.domain ?? "",
13363
+ account?.address ?? ""
13123
13364
  );
13124
13365
  const { data: upgradeRequired } = useUpgradeRequired(
13125
13366
  account?.address ?? "",
@@ -13144,6 +13385,7 @@ var CustomizationSummaryContent = ({
13144
13385
  } = useUpdateTextRecord({
13145
13386
  resolverAddress,
13146
13387
  // Pass the pre-fetched resolver address
13388
+ signerAccountAddress: account?.address ?? "",
13147
13389
  onSuccess: async () => {
13148
13390
  refreshMetadata();
13149
13391
  setCurrentContent({
@@ -13275,6 +13517,15 @@ var ProfileContent = ({
13275
13517
  onEditClick: () => setCurrentContent("account-customization"),
13276
13518
  address: account?.address ?? "",
13277
13519
  showHeader: false,
13520
+ style: {
13521
+ card: {
13522
+ bg: "transparent",
13523
+ px: 0
13524
+ },
13525
+ footer: {
13526
+ px: 0
13527
+ }
13528
+ },
13278
13529
  onLogout: () => {
13279
13530
  setCurrentContent?.({
13280
13531
  type: "disconnect-confirm",
@@ -13676,7 +13927,7 @@ var ManageCustomTokenContent = ({
13676
13927
  /* @__PURE__ */ jsxRuntime.jsx(
13677
13928
  react.Image,
13678
13929
  {
13679
- src: chunkRUIC653T_cjs.TOKEN_LOGOS[token?.symbol],
13930
+ src: chunk5YN7CZ5H_cjs.TOKEN_LOGOS[token?.symbol],
13680
13931
  alt: `${token.symbol} logo`,
13681
13932
  boxSize: "20px",
13682
13933
  borderRadius: "full",
@@ -13706,7 +13957,7 @@ var ManageCustomTokenContent = ({
13706
13957
  ),
13707
13958
  /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontWeight: "medium", children: token.symbol ?? "Unknown" })
13708
13959
  ] }),
13709
- /* @__PURE__ */ jsxRuntime.jsx(react.Text, { opacity: 0.7, children: chunkRUIC653T_cjs.humanAddress(
13960
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { opacity: 0.7, children: chunk5YN7CZ5H_cjs.humanAddress(
13710
13961
  token.address ?? "",
13711
13962
  4,
13712
13963
  4
@@ -13734,7 +13985,7 @@ var ManageCustomTokenContent = ({
13734
13985
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalFooter, { children: /* @__PURE__ */ jsxRuntime.jsx(
13735
13986
  react.Button,
13736
13987
  {
13737
- variant: "vechainKitSecondary",
13988
+ variant: "vechainKitPrimary",
13738
13989
  isDisabled: !isValid,
13739
13990
  onClick: handleSubmit(onSubmit),
13740
13991
  children: t("Add Token")
@@ -13752,16 +14003,7 @@ var BridgeContent = ({ setCurrentContent }) => {
13752
14003
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalCloseButton, {})
13753
14004
  ] }),
13754
14005
  /* @__PURE__ */ jsxRuntime.jsx(react.Container, { maxW: "container.lg", children: /* @__PURE__ */ jsxRuntime.jsx(react.ModalBody, { children: /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { spacing: 6, align: "center", w: "full", children: [
13755
- /* @__PURE__ */ jsxRuntime.jsx(
13756
- react.Image,
13757
- {
13758
- src: isDark ? "https://static.vechain.energy/logo-dark.svg" : "https://static.vechain.energy/logo-light.svg",
13759
- alt: "bridge token",
13760
- w: "200px",
13761
- h: "200px",
13762
- borderRadius: "xl"
13763
- }
13764
- ),
14006
+ /* @__PURE__ */ jsxRuntime.jsx(chunkA4NZ5AVL_cjs.VechainEnergy, { isDark, borderRadius: "xl" }),
13765
14007
  /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", textAlign: "center", children: t(
13766
14008
  "Exchange your digital assets between VeChain and other blockchain networks easily and securely. Swaps are executed through partners that leverage both decentralized and centralized exchanges to convert tokens."
13767
14009
  ) })
@@ -13802,8 +14044,7 @@ var ConnectionDetailsContent = ({ onGoBack }) => {
13802
14044
  /* @__PURE__ */ jsxRuntime.jsxs(react.ModalBody, { w: "full", children: [
13803
14045
  connection.isConnectedWithCrossApp && connectionCache && /* @__PURE__ */ jsxRuntime.jsx(CrossAppConnectionCard, { connectionCache }),
13804
14046
  connection.isConnectedWithSocialLogin && /* @__PURE__ */ jsxRuntime.jsx(PrivyConnectionCard, {}),
13805
- connection.isConnectedWithDappKit && /* @__PURE__ */ jsxRuntime.jsx(DappKitConnectionCard, {}),
13806
- connection.isConnectedWithPrivy && /* @__PURE__ */ jsxRuntime.jsx(WalletSecuredBy, {})
14047
+ connection.isConnectedWithDappKit && /* @__PURE__ */ jsxRuntime.jsx(DappKitConnectionCard, {})
13807
14048
  ] }),
13808
14049
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalFooter, { pt: 0 })
13809
14050
  ] });
@@ -14007,7 +14248,7 @@ var PrivyLinkedAccounts = ({ onBack }) => {
14007
14248
  case "phone":
14008
14249
  return account.number;
14009
14250
  case "wallet":
14010
- return `${chunkRUIC653T_cjs.humanAddress(account.address)} - ${account.walletClientType}`;
14251
+ return `${chunk5YN7CZ5H_cjs.humanAddress(account.address)} - ${account.walletClientType}`;
14011
14252
  default:
14012
14253
  return "";
14013
14254
  }
@@ -14522,7 +14763,7 @@ var SharedAppCard = ({
14522
14763
  react.Image,
14523
14764
  {
14524
14765
  src: imageUrl,
14525
- fallbackSrc: chunkRUIC653T_cjs.notFoundImage,
14766
+ fallbackSrc: chunk5YN7CZ5H_cjs.notFoundImage,
14526
14767
  alt: name,
14527
14768
  height: "90px",
14528
14769
  objectFit: "contain",
@@ -14622,7 +14863,7 @@ var ShortcutsSection = ({}) => {
14622
14863
  react.Image,
14623
14864
  {
14624
14865
  src: shortcut.image,
14625
- fallbackSrc: chunkRUIC653T_cjs.notFoundImage,
14866
+ fallbackSrc: chunk5YN7CZ5H_cjs.notFoundImage,
14626
14867
  alt: shortcut.name,
14627
14868
  objectFit: "contain",
14628
14869
  rounded: "full"
@@ -15009,7 +15250,7 @@ var TransactionModalContent = ({
15009
15250
  }
15010
15251
  };
15011
15252
  const statusConfig = getStatusConfig();
15012
- const socialDescription = `${chunkRUIC653T_cjs.getConfig(network.type).explorerUrl}/${txReceipt?.meta.txID}`;
15253
+ const socialDescription = `${chunk5YN7CZ5H_cjs.getConfig(network.type).explorerUrl}/${txReceipt?.meta.txID}`;
15013
15254
  return /* @__PURE__ */ jsxRuntime.jsxs(react.Box, { children: [
15014
15255
  /* @__PURE__ */ jsxRuntime.jsxs(StickyHeaderContainer, { children: [
15015
15256
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalHeader, { children: statusConfig.title }),
@@ -15044,7 +15285,7 @@ var TransactionModalContent = ({
15044
15285
  {
15045
15286
  fontSize: status === "ready" ? "md" : "sm",
15046
15287
  textAlign: "center",
15047
- color: status === "error" ? "red" : "inherit",
15288
+ color: status === "error" ? "red.500" : "inherit",
15048
15289
  mt: 5,
15049
15290
  style: {
15050
15291
  lineBreak: "anywhere"
@@ -15087,7 +15328,7 @@ var TransactionModalContent = ({
15087
15328
  uiConfig?.showExplorerButton && txReceipt?.meta.txID && /* @__PURE__ */ jsxRuntime.jsx(
15088
15329
  react.Link,
15089
15330
  {
15090
- href: `${chunkRUIC653T_cjs.getConfig(network.type).explorerUrl}/${txReceipt?.meta.txID}`,
15331
+ href: `${chunk5YN7CZ5H_cjs.getConfig(network.type).explorerUrl}/${txReceipt?.meta.txID}`,
15091
15332
  isExternal: true,
15092
15333
  opacity: 0.5,
15093
15334
  fontSize: "14px",
@@ -15150,7 +15391,7 @@ var SuccessfulOperationContent = ({
15150
15391
  }) => {
15151
15392
  const { t } = reactI18next.useTranslation();
15152
15393
  const { network, darkMode } = useVeChainKitConfig();
15153
- const explorerUrl = chunkRUIC653T_cjs.getConfig(network.type).explorerUrl;
15394
+ const explorerUrl = chunk5YN7CZ5H_cjs.getConfig(network.type).explorerUrl;
15154
15395
  const socialDescription = `${explorerUrl}/${txId}`;
15155
15396
  return /* @__PURE__ */ jsxRuntime.jsxs(react.Box, { children: [
15156
15397
  /* @__PURE__ */ jsxRuntime.jsxs(StickyHeaderContainer, { children: [
@@ -15485,44 +15726,42 @@ var ConnectPopover = ({
15485
15726
  };
15486
15727
  var WalletDisplay = ({ variant }) => {
15487
15728
  const { account } = useWallet();
15729
+ const [isSmallMobile] = react.useMediaQuery("(max-width: 480px)");
15488
15730
  if (!account) return /* @__PURE__ */ jsxRuntime.jsx(react.Spinner, {});
15489
15731
  if (variant === "icon") {
15490
15732
  return null;
15491
15733
  }
15734
+ const isLongDomain = account?.domain && account?.domain?.length > 18;
15735
+ const accountDomain = React10.useMemo(() => {
15736
+ return isSmallMobile && isLongDomain ? chunk5YN7CZ5H_cjs.humanDomain(account?.domain ?? "", 18, 0) : account?.domain;
15737
+ }, [isSmallMobile, account.domain]);
15492
15738
  if (variant === "iconAndDomain") {
15493
- return account.domain ? /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", children: account.domain }) : /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", children: chunkRUIC653T_cjs.humanAddress(account.address ?? "", 4, 4) });
15739
+ return account.domain ? /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", children: accountDomain }) : /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", children: chunk5YN7CZ5H_cjs.humanAddress(account.address ?? "", 6, 4) });
15494
15740
  }
15495
15741
  if (variant === "iconDomainAndAssets") {
15496
- return /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { spacing: 2, children: [
15742
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { spacing: 4, children: [
15497
15743
  /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { spacing: 0, alignItems: "flex-start", children: [
15498
- account.domain && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", fontWeight: "bold", children: account.domain }),
15744
+ account.domain && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", fontWeight: "bold", children: accountDomain }),
15499
15745
  /* @__PURE__ */ jsxRuntime.jsx(
15500
15746
  react.Text,
15501
15747
  {
15502
15748
  fontSize: account.domain ? "xs" : "sm",
15503
15749
  opacity: account.domain ? 0.5 : 1,
15504
- children: chunkRUIC653T_cjs.humanAddress(account.address ?? "", 4, 4)
15750
+ children: chunk5YN7CZ5H_cjs.humanAddress(account.address ?? "", 4, 4)
15505
15751
  }
15506
15752
  )
15507
15753
  ] }),
15508
- /* @__PURE__ */ jsxRuntime.jsx(
15509
- AssetIcons,
15510
- {
15511
- ml: 2,
15512
- address: account.address ?? "",
15513
- maxIcons: 3
15514
- }
15515
- )
15754
+ /* @__PURE__ */ jsxRuntime.jsx(AssetIcons, { address: account.address ?? "", maxIcons: 3 })
15516
15755
  ] });
15517
15756
  }
15518
15757
  return /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { spacing: 0, alignItems: "flex-start", children: [
15519
- account.domain && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", fontWeight: "bold", children: account.domain }),
15758
+ account.domain && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", fontWeight: "bold", children: accountDomain }),
15520
15759
  /* @__PURE__ */ jsxRuntime.jsx(
15521
15760
  react.Text,
15522
15761
  {
15523
15762
  fontSize: account.domain ? "xs" : "sm",
15524
15763
  opacity: account.domain ? 0.5 : 1,
15525
- children: chunkRUIC653T_cjs.humanAddress(account.address ?? "", 4, 4)
15764
+ children: chunk5YN7CZ5H_cjs.humanAddress(account.address ?? "", 4, 4)
15526
15765
  }
15527
15766
  )
15528
15767
  ] });
@@ -15535,17 +15774,36 @@ var ConnectedWallet = ({
15535
15774
  }) => {
15536
15775
  const { account } = useWallet();
15537
15776
  const [isDesktop] = react.useMediaQuery("(min-width: 768px)");
15538
- return /* @__PURE__ */ jsxRuntime.jsx(react.Button, { ...buttonStyle, onClick: onOpen, p: "0px 13px", minH: "45px", children: /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { children: [
15539
- /* @__PURE__ */ jsxRuntime.jsx(
15540
- AccountAvatar,
15541
- {
15542
- wallet: account,
15543
- props: { width: 30, height: 30 }
15544
- }
15545
- ),
15546
- !isDesktop && /* @__PURE__ */ jsxRuntime.jsx(WalletDisplay, { variant: mobileVariant }),
15547
- isDesktop && /* @__PURE__ */ jsxRuntime.jsx(WalletDisplay, { variant: desktopVariant })
15548
- ] }) });
15777
+ return /* @__PURE__ */ jsxRuntime.jsx(
15778
+ react.Button,
15779
+ {
15780
+ ...buttonStyle,
15781
+ onClick: onOpen,
15782
+ w: "full",
15783
+ minH: "45px",
15784
+ maxW: "fit-content",
15785
+ children: /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { w: "full", minW: "fit-content", children: [
15786
+ /* @__PURE__ */ jsxRuntime.jsx(
15787
+ AccountAvatar,
15788
+ {
15789
+ wallet: account,
15790
+ props: {
15791
+ width: 30,
15792
+ height: 30,
15793
+ minWidth: 30,
15794
+ minHeight: 30
15795
+ }
15796
+ }
15797
+ ),
15798
+ /* @__PURE__ */ jsxRuntime.jsx(
15799
+ WalletDisplay,
15800
+ {
15801
+ variant: isDesktop ? desktopVariant : mobileVariant
15802
+ }
15803
+ )
15804
+ ] })
15805
+ }
15806
+ );
15549
15807
  };
15550
15808
  var WalletButton = ({
15551
15809
  mobileVariant = "iconAndDomain",
@@ -15677,7 +15935,7 @@ var TransactionToastContent = ({
15677
15935
  }) => {
15678
15936
  const { t } = reactI18next.useTranslation();
15679
15937
  const { network } = useVeChainKitConfig();
15680
- const explorerUrl = chunkRUIC653T_cjs.getConfig(network.type).explorerUrl;
15938
+ const explorerUrl = chunk5YN7CZ5H_cjs.getConfig(network.type).explorerUrl;
15681
15939
  const errorMessage = React10.useMemo(() => {
15682
15940
  if (!txError) return null;
15683
15941
  return txError.reason || t("Something went wrong. Please try again.");
@@ -15703,7 +15961,7 @@ var TransactionToastContent = ({
15703
15961
  react.Icon,
15704
15962
  {
15705
15963
  as: md.MdOutlineErrorOutline,
15706
- color: "red",
15964
+ color: "red.500",
15707
15965
  fontSize: "40px"
15708
15966
  }
15709
15967
  ),
@@ -15978,7 +16236,8 @@ var EcosystemContent = ({ onClose, appsInfo, isLoading }) => {
15978
16236
  setConnectionCache({
15979
16237
  name: appName,
15980
16238
  logoUrl: appsInfo.find((app) => app.id === appId)?.logo_url,
15981
- appId
16239
+ appId,
16240
+ website: appsInfo.find((app) => app.id === appId)?.website
15982
16241
  });
15983
16242
  onClose();
15984
16243
  } catch (error) {
@@ -16118,72 +16377,67 @@ var ProfileCard = ({
16118
16377
  showLinks = true,
16119
16378
  showDescription = true,
16120
16379
  showDisplayName = true,
16121
- showEdit = true
16380
+ showEdit = true,
16381
+ style
16122
16382
  }) => {
16123
16383
  const { t } = reactI18next.useTranslation();
16124
- const { darkMode: isDark, network } = useVeChainKitConfig();
16125
16384
  const { account } = useWallet();
16126
16385
  const activeAccountDomain = useVechainDomain(address);
16127
- const activeAccountAvatar = useGetAvatar(activeAccountDomain?.data?.domain);
16386
+ const activeAccountAvatar = useGetAvatarOfAddress(address);
16128
16387
  const activeAccountTextRecords = useGetTextRecords(
16129
16388
  activeAccountDomain?.data?.domain
16130
16389
  );
16131
- const baseBackgroundColor = isDark ? "#1e1e21" : "#00000005";
16132
- const headerImageSvg = chunkRUIC653T_cjs.getPicassoImage(address);
16390
+ const headerImageSvg = chunk5YN7CZ5H_cjs.getPicassoImage(address);
16133
16391
  const isConnectedAccount = address === account?.address;
16134
16392
  const hasLinks = activeAccountTextRecords?.data?.url || activeAccountTextRecords?.data?.["com.x"] || activeAccountTextRecords?.data?.email;
16135
- return /* @__PURE__ */ jsxRuntime.jsxs(
16136
- react.Card,
16137
- {
16138
- bg: baseBackgroundColor,
16139
- borderRadius: "xl",
16140
- width: "full",
16141
- position: "relative",
16142
- overflow: "visible",
16143
- children: [
16144
- /* @__PURE__ */ jsxRuntime.jsx(
16145
- react.Box,
16146
- {
16147
- p: 0,
16148
- backgroundSize: "100% !important",
16149
- backgroundPosition: "center",
16150
- position: "relative",
16151
- h: "80px",
16152
- background: showHeader ? `no-repeat url('${headerImageSvg}')` : "none",
16153
- w: "100%",
16154
- borderRadius: "14px 14px 0 0"
16155
- }
16156
- ),
16157
- /* @__PURE__ */ jsxRuntime.jsx(
16158
- react.Box,
16393
+ return /* @__PURE__ */ jsxRuntime.jsxs(react.Card, { variant: "vechainKitBase", ...style?.card, children: [
16394
+ /* @__PURE__ */ jsxRuntime.jsx(
16395
+ react.Box,
16396
+ {
16397
+ p: 0,
16398
+ backgroundSize: "100% !important",
16399
+ backgroundPosition: "center",
16400
+ position: "relative",
16401
+ h: "80px",
16402
+ background: showHeader ? `no-repeat url('${headerImageSvg}')` : "none",
16403
+ w: "100%",
16404
+ borderRadius: "14px 14px 0 0"
16405
+ }
16406
+ ),
16407
+ /* @__PURE__ */ jsxRuntime.jsx(
16408
+ react.Box,
16409
+ {
16410
+ position: "absolute",
16411
+ top: "30px",
16412
+ left: "50%",
16413
+ transform: "translateX(-50%)",
16414
+ children: /* @__PURE__ */ jsxRuntime.jsx(
16415
+ AccountAvatar,
16159
16416
  {
16160
- position: "absolute",
16161
- top: "30px",
16162
- left: "50%",
16163
- transform: "translateX(-50%)",
16164
- children: /* @__PURE__ */ jsxRuntime.jsx(
16165
- AccountAvatar,
16166
- {
16167
- wallet: {
16168
- address,
16169
- domain: activeAccountDomain?.data?.domain,
16170
- image: chunkRUIC653T_cjs.convertUriToUrl(
16171
- activeAccountAvatar?.data ?? "",
16172
- network.type
16173
- ) ?? chunkRUIC653T_cjs.getPicassoImage(address),
16174
- isLoadingMetadata: activeAccountAvatar?.isLoading || activeAccountDomain?.isLoading || activeAccountTextRecords?.isLoading,
16175
- metadata: activeAccountTextRecords?.data
16176
- },
16177
- props: {
16178
- width: "100px",
16179
- height: "100px",
16180
- boxShadow: "0px 0px 3px 2px #00000024"
16181
- }
16182
- }
16183
- )
16417
+ wallet: {
16418
+ address,
16419
+ domain: activeAccountDomain?.data?.domain,
16420
+ image: activeAccountAvatar.data,
16421
+ isLoadingMetadata: activeAccountAvatar?.isLoading || activeAccountDomain?.isLoading || activeAccountTextRecords?.isLoading,
16422
+ metadata: activeAccountTextRecords?.data
16423
+ },
16424
+ props: {
16425
+ width: "100px",
16426
+ height: "100px"
16427
+ // boxShadow: '0px 0px 3px 2px #00000024',
16428
+ }
16184
16429
  }
16185
- ),
16186
- /* @__PURE__ */ jsxRuntime.jsx(react.CardBody, { mt: 10, backgroundColor: "none", border: "none", children: /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { w: "full", spacing: 2, children: [
16430
+ )
16431
+ }
16432
+ ),
16433
+ /* @__PURE__ */ jsxRuntime.jsx(
16434
+ react.CardBody,
16435
+ {
16436
+ mt: 10,
16437
+ backgroundColor: "none",
16438
+ border: "none",
16439
+ ...style?.body,
16440
+ children: /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { w: "full", spacing: 2, children: [
16187
16441
  showDisplayName && activeAccountTextRecords?.data?.display && /* @__PURE__ */ jsxRuntime.jsx(
16188
16442
  react.Text,
16189
16443
  {
@@ -16237,51 +16491,48 @@ var ProfileCard = ({
16237
16491
  wallet: {
16238
16492
  address,
16239
16493
  domain: activeAccountDomain?.data?.domain,
16240
- image: chunkRUIC653T_cjs.convertUriToUrl(
16241
- activeAccountAvatar?.data ?? "",
16242
- network.type
16243
- ) ?? chunkRUIC653T_cjs.getPicassoImage(address),
16494
+ image: activeAccountAvatar.data,
16244
16495
  isLoadingMetadata: activeAccountAvatar?.isLoading || activeAccountDomain?.isLoading || activeAccountTextRecords?.isLoading,
16245
16496
  metadata: activeAccountTextRecords?.data
16246
16497
  },
16247
16498
  style: { mt: 4 }
16248
16499
  }
16249
16500
  )
16250
- ] }) }),
16251
- isConnectedAccount && showEdit && /* @__PURE__ */ jsxRuntime.jsx(react.CardFooter, { justify: "space-between", children: /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { w: "full", justify: "space-between", spacing: 4, children: [
16252
- /* @__PURE__ */ jsxRuntime.jsx(react.Divider, {}),
16253
- /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { w: "full", justify: "space-between", children: [
16254
- /* @__PURE__ */ jsxRuntime.jsx(
16255
- react.Button,
16256
- {
16257
- size: "md",
16258
- width: "full",
16259
- height: "40px",
16260
- variant: "ghost",
16261
- leftIcon: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: fa.FaEdit }),
16262
- onClick: onEditClick ?? (() => {
16263
- }),
16264
- children: t("Customize")
16265
- }
16266
- ),
16267
- /* @__PURE__ */ jsxRuntime.jsx(
16268
- react.Button,
16269
- {
16270
- size: "md",
16271
- width: "full",
16272
- height: "40px",
16273
- variant: "ghost",
16274
- leftIcon: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: ri.RiLogoutBoxLine }),
16275
- colorScheme: "red",
16276
- onClick: onLogout,
16277
- children: t("Logout")
16278
- }
16279
- )
16280
- ] })
16281
- ] }) })
16282
- ]
16283
- }
16284
- );
16501
+ ] })
16502
+ }
16503
+ ),
16504
+ isConnectedAccount && showEdit && /* @__PURE__ */ jsxRuntime.jsx(react.CardFooter, { justify: "space-between", ...style?.footer, children: /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { w: "full", justify: "space-between", spacing: 4, children: [
16505
+ /* @__PURE__ */ jsxRuntime.jsx(react.Divider, {}),
16506
+ /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { w: "full", justify: "space-between", children: [
16507
+ /* @__PURE__ */ jsxRuntime.jsx(
16508
+ react.Button,
16509
+ {
16510
+ size: "md",
16511
+ width: "full",
16512
+ height: "40px",
16513
+ variant: "ghost",
16514
+ leftIcon: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: fa.FaEdit }),
16515
+ onClick: onEditClick ?? (() => {
16516
+ }),
16517
+ children: t("Customize")
16518
+ }
16519
+ ),
16520
+ /* @__PURE__ */ jsxRuntime.jsx(
16521
+ react.Button,
16522
+ {
16523
+ size: "md",
16524
+ width: "full",
16525
+ height: "40px",
16526
+ variant: "ghost",
16527
+ leftIcon: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: ri.RiLogoutBoxLine }),
16528
+ colorScheme: "red",
16529
+ onClick: onLogout,
16530
+ children: t("Logout")
16531
+ }
16532
+ )
16533
+ ] })
16534
+ ] }) })
16535
+ ] });
16285
16536
  };
16286
16537
  var SuccessfulOperationContent2 = ({
16287
16538
  txId,
@@ -16292,7 +16543,7 @@ var SuccessfulOperationContent2 = ({
16292
16543
  }) => {
16293
16544
  const { t } = reactI18next.useTranslation();
16294
16545
  const { network, darkMode } = useVeChainKitConfig();
16295
- const explorerUrl = chunkRUIC653T_cjs.getConfig(network.type).explorerUrl;
16546
+ const explorerUrl = chunk5YN7CZ5H_cjs.getConfig(network.type).explorerUrl;
16296
16547
  const socialDescription = `${explorerUrl}/${txId}`;
16297
16548
  return /* @__PURE__ */ jsxRuntime.jsxs(react.Box, { children: [
16298
16549
  /* @__PURE__ */ jsxRuntime.jsxs(StickyHeaderContainer, { children: [
@@ -16917,7 +17168,7 @@ var useReceiveModal = () => {
16917
17168
  var ReceiveModalProvider = ({ children }) => /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
16918
17169
  var useLoginModalContent = () => {
16919
17170
  const { privy, loginMethods } = useVeChainKitConfig();
16920
- const isVeChainApp = privy?.appId === chunkRUIC653T_cjs.VECHAIN_PRIVY_APP_ID;
17171
+ const isVeChainApp = privy?.appId === chunk5YN7CZ5H_cjs.VECHAIN_PRIVY_APP_ID;
16921
17172
  const isLoginMethodEnabled = (method35) => {
16922
17173
  if (!loginMethods) return true;
16923
17174
  if (Array.isArray(method35)) {
@@ -17023,7 +17274,7 @@ var useTransferERC20 = ({
17023
17274
  const queryClient = reactQuery.useQueryClient();
17024
17275
  const { refresh } = useRefreshBalances();
17025
17276
  const buildClauses = React10.useCallback(async () => {
17026
- if (!receiverAddress || !amount || !chunkRUIC653T_cjs.isValidAddress(receiverAddress))
17277
+ if (!receiverAddress || !amount || !chunk5YN7CZ5H_cjs.isValidAddress(receiverAddress))
17027
17278
  throw new Error("Invalid receiver address or amount");
17028
17279
  const clausesArray = [];
17029
17280
  clausesArray.push({
@@ -17046,7 +17297,7 @@ var useTransferERC20 = ({
17046
17297
  signerAccountAddress: fromAddress,
17047
17298
  privyUIOptions: {
17048
17299
  title: "Confirm Transfer",
17049
- description: `Transfer ${amount} ${tokenName} to ${chunkRUIC653T_cjs.humanAddress(
17300
+ description: `Transfer ${amount} ${tokenName} to ${chunk5YN7CZ5H_cjs.humanAddress(
17050
17301
  receiverAddress
17051
17302
  )}`,
17052
17303
  buttonText: "Sign to continue"
@@ -17072,7 +17323,7 @@ var useTransferVET = ({
17072
17323
  }) => {
17073
17324
  const { refresh } = useRefreshBalances();
17074
17325
  const buildClauses = React10.useCallback(async () => {
17075
- if (!receiverAddress || !amount || !chunkRUIC653T_cjs.isValidAddress(receiverAddress))
17326
+ if (!receiverAddress || !amount || !chunk5YN7CZ5H_cjs.isValidAddress(receiverAddress))
17076
17327
  throw new Error("Invalid receiver address or amount");
17077
17328
  if (isNaN(Number(amount))) {
17078
17329
  throw new Error("Invalid amount");
@@ -17096,7 +17347,7 @@ var useTransferVET = ({
17096
17347
  signerAccountAddress: fromAddress,
17097
17348
  privyUIOptions: {
17098
17349
  title: "Confirm Transfer",
17099
- description: `Transfer ${amount} VET to ${chunkRUIC653T_cjs.humanAddress(
17350
+ description: `Transfer ${amount} VET to ${chunk5YN7CZ5H_cjs.humanAddress(
17100
17351
  receiverAddress
17101
17352
  )}`,
17102
17353
  buttonText: "Sign to continue"
@@ -17273,14 +17524,15 @@ var useCrossAppConnectionCache = () => {
17273
17524
  var useLoginWithVeChain = () => {
17274
17525
  const { login: loginWithVeChain } = usePrivyCrossAppSdk();
17275
17526
  const { setConnectionCache } = useCrossAppConnectionCache();
17276
- const { data: appsInfo } = useFetchAppInfo([chunkRUIC653T_cjs.VECHAIN_PRIVY_APP_ID]);
17527
+ const { data: appsInfo } = useFetchAppInfo([chunk5YN7CZ5H_cjs.VECHAIN_PRIVY_APP_ID]);
17277
17528
  const login = async () => {
17278
17529
  try {
17279
- await loginWithVeChain(chunkRUIC653T_cjs.VECHAIN_PRIVY_APP_ID);
17530
+ await loginWithVeChain(chunk5YN7CZ5H_cjs.VECHAIN_PRIVY_APP_ID);
17280
17531
  setConnectionCache({
17281
17532
  name: "VeChain",
17282
- logoUrl: appsInfo?.[chunkRUIC653T_cjs.VECHAIN_PRIVY_APP_ID]?.logo_url,
17283
- appId: chunkRUIC653T_cjs.VECHAIN_PRIVY_APP_ID
17533
+ logoUrl: appsInfo?.[chunk5YN7CZ5H_cjs.VECHAIN_PRIVY_APP_ID]?.logo_url,
17534
+ appId: chunk5YN7CZ5H_cjs.VECHAIN_PRIVY_APP_ID,
17535
+ website: "https://governance.vebetterdao.org"
17284
17536
  });
17285
17537
  } catch (error) {
17286
17538
  throw handlePopupError({
@@ -17543,9 +17795,9 @@ var PrivyWalletProvider = ({
17543
17795
  clauses.push(
17544
17796
  sdkCore.Clause.callFunction(
17545
17797
  sdkCore.Address.of(
17546
- chunkRUIC653T_cjs.getConfig(network.type).accountFactoryAddress
17798
+ chunk5YN7CZ5H_cjs.getConfig(network.type).accountFactoryAddress
17547
17799
  ),
17548
- sdkCore.ABIContract.ofAbi(chunkFID67WC3_cjs.SimpleAccountFactoryABI).getFunction(
17800
+ sdkCore.ABIContract.ofAbi(chunkA4NZ5AVL_cjs.SimpleAccountFactoryABI).getFunction(
17549
17801
  "createAccount"
17550
17802
  ),
17551
17803
  [connectedWallet.address ?? ""]
@@ -17555,7 +17807,7 @@ var PrivyWalletProvider = ({
17555
17807
  clauses.push(
17556
17808
  sdkCore.Clause.callFunction(
17557
17809
  sdkCore.Address.of(smartAccount.address),
17558
- sdkCore.ABIContract.ofAbi(chunkFID67WC3_cjs.SimpleAccountABI).getFunction(
17810
+ sdkCore.ABIContract.ofAbi(chunkA4NZ5AVL_cjs.SimpleAccountABI).getFunction(
17559
17811
  "executeBatchWithAuthorization"
17560
17812
  ),
17561
17813
  [
@@ -17618,9 +17870,9 @@ var PrivyWalletProvider = ({
17618
17870
  clauses.push(
17619
17871
  sdkCore.Clause.callFunction(
17620
17872
  sdkCore.Address.of(
17621
- chunkRUIC653T_cjs.getConfig(network.type).accountFactoryAddress
17873
+ chunk5YN7CZ5H_cjs.getConfig(network.type).accountFactoryAddress
17622
17874
  ),
17623
- sdkCore.ABIContract.ofAbi(chunkFID67WC3_cjs.SimpleAccountFactoryABI).getFunction(
17875
+ sdkCore.ABIContract.ofAbi(chunkA4NZ5AVL_cjs.SimpleAccountFactoryABI).getFunction(
17624
17876
  "createAccount"
17625
17877
  ),
17626
17878
  [connectedWallet.address ?? ""]
@@ -17632,7 +17884,7 @@ var PrivyWalletProvider = ({
17632
17884
  clauses.push(
17633
17885
  sdkCore.Clause.callFunction(
17634
17886
  sdkCore.Address.of(smartAccount.address ?? ""),
17635
- sdkCore.ABIContract.ofAbi(chunkFID67WC3_cjs.SimpleAccountABI).getFunction(
17887
+ sdkCore.ABIContract.ofAbi(chunkA4NZ5AVL_cjs.SimpleAccountABI).getFunction(
17636
17888
  "executeWithAuthorization"
17637
17889
  ),
17638
17890
  [
@@ -17667,10 +17919,10 @@ var PrivyWalletProvider = ({
17667
17919
  [
17668
17920
  {
17669
17921
  privateKey: Buffer.from(
17670
- chunkRUIC653T_cjs.randomTransactionUser.privateKey.slice(2),
17922
+ chunk5YN7CZ5H_cjs.randomTransactionUser.privateKey.slice(2),
17671
17923
  "hex"
17672
17924
  ),
17673
- address: chunkRUIC653T_cjs.randomTransactionUser.address
17925
+ address: chunk5YN7CZ5H_cjs.randomTransactionUser.address
17674
17926
  }
17675
17927
  ],
17676
17928
  { delegator: { delegatorUrl } }
@@ -17681,11 +17933,11 @@ var PrivyWalletProvider = ({
17681
17933
  true
17682
17934
  );
17683
17935
  const signer = await providerWithDelegationEnabled.getSigner(
17684
- chunkRUIC653T_cjs.randomTransactionUser.address
17936
+ chunk5YN7CZ5H_cjs.randomTransactionUser.address
17685
17937
  );
17686
17938
  const txInput = sdkNetwork.signerUtils.transactionBodyToTransactionRequestInput(
17687
17939
  txBody,
17688
- chunkRUIC653T_cjs.randomTransactionUser.address
17940
+ chunk5YN7CZ5H_cjs.randomTransactionUser.address
17689
17941
  );
17690
17942
  const rawDelegateSigned = await signer.signTransaction(txInput);
17691
17943
  const { id } = await fetch(`${nodeUrl}/transactions`, {
@@ -17724,7 +17976,7 @@ var PrivyWalletProvider = ({
17724
17976
  PrivyWalletProviderContext.Provider,
17725
17977
  {
17726
17978
  value: {
17727
- accountFactory: chunkRUIC653T_cjs.getConfig(network.type).accountFactoryAddress,
17979
+ accountFactory: chunk5YN7CZ5H_cjs.getConfig(network.type).accountFactoryAddress,
17728
17980
  sendTransaction,
17729
17981
  signMessage,
17730
17982
  signTypedData,
@@ -17772,14 +18024,6 @@ var initializeI18n = (i18nInstance) => {
17772
18024
  }
17773
18025
  });
17774
18026
  };
17775
- var DEFAULT_PRIVY_ECOSYSTEM_APP_IDS = [
17776
- "clz41gcg00e4ay75dmq3uzzgr",
17777
- //cleanify
17778
- "cm153hrup0817axti38avlfyg",
17779
- //greencart
17780
- "clv9sfos20j6x1431ga80d95f"
17781
- //mughsot
17782
- ];
17783
18027
  var VeChainKitContext = React10.createContext(null);
17784
18028
  var useVeChainKitConfig = () => {
17785
18029
  const context = React10.useContext(VeChainKitContext);
@@ -17855,7 +18099,7 @@ var VeChainKitProvider = (props) => {
17855
18099
  const userEcosystemMethods = validatedLoginMethods?.find(
17856
18100
  (method35) => method35.method === "ecosystem"
17857
18101
  );
17858
- return userEcosystemMethods?.allowedApps ?? DEFAULT_PRIVY_ECOSYSTEM_APP_IDS;
18102
+ return userEcosystemMethods?.allowedApps ?? chunk5YN7CZ5H_cjs.DEFAULT_PRIVY_ECOSYSTEM_APPS.map((app) => app.id);
17859
18103
  }, [validatedLoginMethods]);
17860
18104
  let privyAppId, privyClientId;
17861
18105
  if (!privy) {
@@ -17932,8 +18176,8 @@ var VeChainKitProvider = (props) => {
17932
18176
  children: /* @__PURE__ */ jsxRuntime.jsx(
17933
18177
  dappKitReact.DAppKitProvider,
17934
18178
  {
17935
- nodeUrl: network.nodeUrl ?? chunkRUIC653T_cjs.getConfig(network.type).nodeUrl,
17936
- genesis: chunkRUIC653T_cjs.getConfig(network.type).network.genesis,
18179
+ nodeUrl: network.nodeUrl ?? chunk5YN7CZ5H_cjs.getConfig(network.type).nodeUrl,
18180
+ genesis: chunk5YN7CZ5H_cjs.getConfig(network.type).network.genesis,
17937
18181
  i18n: i18nConfig,
17938
18182
  language,
17939
18183
  logLevel: dappKit.logLevel,
@@ -17948,7 +18192,7 @@ var VeChainKitProvider = (props) => {
17948
18192
  "--vdk-modal-width": "22rem",
17949
18193
  "--vdk-modal-backdrop-filter": "blur(3px)",
17950
18194
  "--vdk-border-dark-source-card": `1px solid ${"#ffffff0a"}`,
17951
- "--vdk-border-light-source-card": `1px solid ${"#ebebeb"}`,
18195
+ "--vdk-border-light-source-card": `1px solid ${"#ebebeb"} !important`,
17952
18196
  // Dark mode colors
17953
18197
  "--vdk-color-dark-primary": "transparent",
17954
18198
  "--vdk-color-dark-primary-hover": "rgba(255, 255, 255, 0.05)",
@@ -17968,7 +18212,7 @@ var VeChainKitProvider = (props) => {
17968
18212
  children: /* @__PURE__ */ jsxRuntime.jsx(
17969
18213
  PrivyWalletProvider,
17970
18214
  {
17971
- nodeUrl: network.nodeUrl ?? chunkRUIC653T_cjs.getConfig(network.type).nodeUrl,
18215
+ nodeUrl: network.nodeUrl ?? chunk5YN7CZ5H_cjs.getConfig(network.type).nodeUrl,
17972
18216
  delegatorUrl: feeDelegation?.delegatorUrl ?? "",
17973
18217
  delegateAllTransactions: feeDelegation?.delegateAllTransactions ?? false,
17974
18218
  children: /* @__PURE__ */ jsxRuntime.jsx(ModalProvider, { children })
@@ -17991,7 +18235,7 @@ var variants = {
17991
18235
  overflowX: "hidden",
17992
18236
  maxHeight: "550px",
17993
18237
  borderRadius: "24px",
17994
- backgroundColor: props.colorMode === "dark" ? "#18181b" : "white"
18238
+ backgroundColor: props.colorMode === "dark" ? "#1f1f1e" : "white"
17995
18239
  },
17996
18240
  closeButton: {
17997
18241
  borderRadius: "50%"
@@ -18017,7 +18261,7 @@ var variants = {
18017
18261
  pointerEvents: "auto",
18018
18262
  boxShadow: "0px 0px 10px 0px rgba(0, 0, 0, 0.1)",
18019
18263
  py: "10px",
18020
- backgroundColor: props.colorMode === "dark" ? "#18181b" : "white"
18264
+ backgroundColor: props.colorMode === "dark" ? "#1f1f1e" : "white"
18021
18265
  },
18022
18266
  closeButton: {
18023
18267
  borderRadius: "50%",
@@ -18033,17 +18277,27 @@ var modalTheme = defineMultiStyleConfig({
18033
18277
  variant: "vechainKitBase"
18034
18278
  }
18035
18279
  });
18036
- var { definePartsStyle: definePartsStyle2, defineMultiStyleConfig: defineMultiStyleConfig2 } = react.createMultiStyleConfigHelpers(anatomy.modalAnatomy.keys);
18280
+ var { definePartsStyle: definePartsStyle2, defineMultiStyleConfig: defineMultiStyleConfig2 } = react.createMultiStyleConfigHelpers(anatomy.cardAnatomy.keys);
18037
18281
  var variants2 = {
18038
18282
  vechainKitBase: (props) => definePartsStyle2({
18283
+ container: {
18284
+ backgroundColor: props.colorMode === "dark" ? "#1c1c1b" : "#f5f5f5",
18285
+ borderRadius: "14px",
18286
+ width: "full",
18287
+ border: "none"
18288
+ },
18039
18289
  body: {
18040
- borderRadius: "12px",
18041
- backgroundColor: props.colorMode === "dark" ? "#1f1f1e" : "white",
18042
- border: props.colorMode === "dark" ? "1px solid #2d2d2d" : "1px solid #eaeaea",
18043
- p: 5
18290
+ p: 5,
18291
+ width: "full"
18292
+ },
18293
+ header: {
18294
+ p: 5,
18295
+ width: "full",
18296
+ borderRadius: "14px 14px 0 0"
18044
18297
  },
18045
18298
  footer: {
18046
- p: 5
18299
+ width: "full",
18300
+ borderRadius: "0 0 14px 14px"
18047
18301
  }
18048
18302
  }),
18049
18303
  featureAnnouncement: (props) => definePartsStyle2({
@@ -18159,28 +18413,22 @@ var variants3 = {
18159
18413
  },
18160
18414
  transition: "all 0.2s"
18161
18415
  })),
18162
- vechainKitSecondary: react.defineStyle(() => ({
18416
+ vechainKitSecondary: react.defineStyle(({ colorMode }) => ({
18163
18417
  fontSize: "md",
18164
18418
  px: 4,
18165
18419
  width: "full",
18166
18420
  height: "60px",
18167
18421
  borderRadius: "xl",
18168
- bg: "transparent",
18169
- border: "1px solid",
18170
- borderColor: "gray.200",
18171
- color: "gray.700",
18422
+ backgroundColor: colorMode === "dark" ? "#ffffff0a" : "blackAlpha.50",
18172
18423
  _hover: {
18173
- bg: "gray.50",
18174
- _disabled: {
18175
- bg: "transparent"
18176
- }
18424
+ backgroundColor: colorMode === "dark" ? "#ffffff12" : "blackAlpha.200"
18177
18425
  },
18426
+ border: "1px solid",
18427
+ borderColor: "gray.200",
18428
+ color: "blackAlpha.900",
18178
18429
  _dark: {
18179
18430
  borderColor: "whiteAlpha.200",
18180
- color: "whiteAlpha.900",
18181
- _hover: {
18182
- bg: "whiteAlpha.50"
18183
- }
18431
+ color: "whiteAlpha.900"
18184
18432
  },
18185
18433
  transition: "all 0.2s"
18186
18434
  })),
@@ -18193,6 +18441,17 @@ var variants3 = {
18193
18441
  _hover: {
18194
18442
  backgroundColor: colorMode === "dark" ? "#ffffff12" : "blackAlpha.200"
18195
18443
  }
18444
+ })),
18445
+ actionButton: react.defineStyle(({ colorMode }) => ({
18446
+ width: "full",
18447
+ minHeight: "70px",
18448
+ height: "fit-content",
18449
+ backgroundColor: colorMode === "dark" ? "#ffffff0a" : "blackAlpha.50",
18450
+ borderRadius: "xl",
18451
+ _hover: {
18452
+ backgroundColor: colorMode === "dark" ? "#ffffff12" : "blackAlpha.200"
18453
+ },
18454
+ transition: "all 0.2s"
18196
18455
  }))
18197
18456
  };
18198
18457
  var buttonTheme = react.defineStyleConfig({
@@ -18291,7 +18550,7 @@ var VechainKitThemeProvider = ({
18291
18550
 
18292
18551
  Object.defineProperty(exports, "getConfig", {
18293
18552
  enumerable: true,
18294
- get: function () { return chunkRUIC653T_cjs.getConfig; }
18553
+ get: function () { return chunk5YN7CZ5H_cjs.getConfig; }
18295
18554
  });
18296
18555
  Object.defineProperty(exports, "useMfaEnrollment", {
18297
18556
  enumerable: true,
@@ -18348,6 +18607,7 @@ exports.ConnectModal = ConnectModal;
18348
18607
  exports.ConnectModalProvider = ConnectModalProvider;
18349
18608
  exports.ConnectPopover = ConnectPopover;
18350
18609
  exports.ConnectionButton = ConnectionButton;
18610
+ exports.CrossAppConnectionSecurityCard = CrossAppConnectionSecurityCard;
18351
18611
  exports.CustomizationContent = CustomizationContent;
18352
18612
  exports.CustomizationSummaryContent = CustomizationSummaryContent;
18353
18613
  exports.DappKitButton = DappKitButton;
@@ -18448,6 +18708,7 @@ exports.getAppsEligibleInNextRound = getAppsEligibleInNextRound;
18448
18708
  exports.getAppsEligibleInNextRoundQueryKey = getAppsEligibleInNextRoundQueryKey;
18449
18709
  exports.getAppsShareClauses = getAppsShareClauses;
18450
18710
  exports.getAvatar = getAvatar;
18711
+ exports.getAvatarOfAddressQueryKey = getAvatarOfAddressQueryKey;
18451
18712
  exports.getAvatarQueryKey = getAvatarQueryKey;
18452
18713
  exports.getB3trBalance = getB3trBalance;
18453
18714
  exports.getB3trBalanceQueryKey = getB3trBalanceQueryKey;
@@ -18604,6 +18865,7 @@ exports.useGMbalance = useGMbalance;
18604
18865
  exports.useGetAccountAddress = useGetAccountAddress;
18605
18866
  exports.useGetAccountVersion = useGetAccountVersion;
18606
18867
  exports.useGetAvatar = useGetAvatar;
18868
+ exports.useGetAvatarOfAddress = useGetAvatarOfAddress;
18607
18869
  exports.useGetB3trBalance = useGetB3trBalance;
18608
18870
  exports.useGetChainId = useGetChainId;
18609
18871
  exports.useGetCumulativeScoreWithDecay = useGetCumulativeScoreWithDecay;