@vechain/vechain-kit 1.5.11 → 1.5.13

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 chunkDBQR2OKX_cjs = require('./chunk-DBQR2OKX.cjs');
5
- var chunkA4NZ5AVL_cjs = require('./chunk-A4NZ5AVL.cjs');
4
+ var chunkQRYVPUVY_cjs = require('./chunk-QRYVPUVY.cjs');
5
+ var chunkTV24UEQU_cjs = require('./chunk-TV24UEQU.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(chunkDBQR2OKX_cjs.getConfig(network).oracleContractAddress).method(JSON.parse(functionFragment2)).call(PRICE_FEED_IDS[token]);
95
+ const res = await thor.account(chunkQRYVPUVY_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(chunkDBQR2OKX_cjs.getConfig(network).b3trContractAddress).method(JSON.parse(functionFragment2)).call(address);
114
+ const res = await thor.account(chunkQRYVPUVY_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" : chunkDBQR2OKX_cjs.humanNumber(scaled);
118
+ const formatted = scaled === "0" ? "0" : chunkQRYVPUVY_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(chunkDBQR2OKX_cjs.getConfig(network).vot3ContractAddress).method(JSON.parse(functionFragment2)).call(address);
141
+ const res = await thor.account(chunkQRYVPUVY_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" : chunkDBQR2OKX_cjs.humanNumber(scaled);
145
+ const formatted = scaled === "0" ? "0" : chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network.type).galaxyMemberContractAddress;
171
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
187
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
218
+ const contractAddress = chunkQRYVPUVY_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: chunkDBQR2OKX_cjs.NodeStrengthLevelToImage[Number(firstNode.nodeLevel)],
240
- name: chunkDBQR2OKX_cjs.allNodeStrengthLevelToName[Number(firstNode.nodeLevel)]
239
+ image: chunkQRYVPUVY_cjs.NodeStrengthLevelToImage[Number(firstNode.nodeLevel)],
240
+ name: chunkQRYVPUVY_cjs.allNodeStrengthLevelToName[Number(firstNode.nodeLevel)]
241
241
  } : void 0;
242
242
  const xNodeName = xNode?.name ?? t("Not available");
243
- const xNodeImage = xNode?.image ?? chunkDBQR2OKX_cjs.notFoundImage;
243
+ const xNodeImage = xNode?.image ?? chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).nodeManagementContractAddress;
284
+ const contractAddress = chunkQRYVPUVY_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: chunkDBQR2OKX_cjs.NodeStrengthLevelToImage[Number(levels[index])],
311
- name: chunkDBQR2OKX_cjs.allNodeStrengthLevelToName[Number(levels[index])]
310
+ image: chunkQRYVPUVY_cjs.NodeStrengthLevelToImage[Number(levels[index])],
311
+ name: chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).nodeManagementContractAddress;
338
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).x2EarnAppsContractAddress;
354
+ const X2EARNAPPS_CONTRACT = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network.type).x2EarnAppsContractAddress;
382
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).x2EarnAppsContractAddress;
392
+ const X2EARNAPPS_CONTRACT = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).xAllocationVotingContractAddress;
413
+ const xAllocationVotingContract = chunkQRYVPUVY_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 ?? chunkDBQR2OKX_cjs.getConfig(network.type).nodeUrl;
444
+ const nodeUrl = network.nodeUrl ?? chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network).xAllocationVotingContractAddress;
572
+ const xAllocationVotingContract = chunkQRYVPUVY_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: chunkDBQR2OKX_cjs.getConfig(network).nodeUrl
596
+ nodeUrl: chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).x2EarnAppsContractAddress;
667
+ const x2EarnAppsContract = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).x2EarnAppsContractAddress;
750
+ const X2EARNAPPS_CONTRACT = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.convertUriToUrl(uri, networkType);
778
+ const url = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).xAllocationVotingContractAddress;
810
+ const ALLOCATION_VOTING_CONTRACT = chunkQRYVPUVY_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: chunkDBQR2OKX_cjs.getConfig(network.type).xAllocationVotingContractAddress,
821
+ contractAddress: chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).xAllocationVotingContractAddress;
832
+ const ALLOCATION_VOTING_CONTRACT = chunkQRYVPUVY_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: chunkDBQR2OKX_cjs.getConfig(network.type).xAllocationVotingContractAddress,
846
+ contractAddress: chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).xAllocationPoolContractAddress;
920
+ const allocationPoolContract = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).galaxyMemberContractAddress;
977
+ const galaxyMemberContract = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network).galaxyMemberContractAddress;
1000
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).galaxyMemberContractAddress;
1032
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network.type).galaxyMemberContractAddress;
1059
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.convertUriToUrl(uri, networkType);
1070
+ const newUri = chunkQRYVPUVY_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(chunkDBQR2OKX_cjs.convertUriToUrl(uri, networkType) ?? "", {
1094
+ const response = await fetch(chunkQRYVPUVY_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: chunkDBQR2OKX_cjs.resolveMediaTypeFromMimeType(blob.type)
1126
+ mediaType: chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network.type).galaxyMemberContractAddress;
1282
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network.type).voterRewardsContractAddress;
1299
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network.type).galaxyMemberContractAddress;
1315
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network.type).galaxyMemberContractAddress;
1330
+ const contractAddress = chunkQRYVPUVY_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 || chunkDBQR2OKX_cjs.gmNfts[Number(gmLevel) - 1]?.image || chunkDBQR2OKX_cjs.notFoundImage;
1415
- const nftName = nftMetadata?.name || chunkDBQR2OKX_cjs.gmNfts[Number(gmLevel) - 1]?.name;
1414
+ const gmImage = gmNftImage?.image || imageData?.image || chunkQRYVPUVY_cjs.gmNfts[Number(gmLevel) - 1]?.image || chunkQRYVPUVY_cjs.notFoundImage;
1415
+ const nftName = nftMetadata?.name || chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network.type).galaxyMemberContractAddress;
1443
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network.type).galaxyMemberContractAddress;
1458
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network.type).galaxyMemberContractAddress;
1490
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network.type).galaxyMemberContractAddress;
1507
+ const contractAddress = chunkQRYVPUVY_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(chunkDBQR2OKX_cjs.gmNfts.map((gm) => [Number(gm.level), gm]));
1539
+ const gmLevelMap = new Map(chunkQRYVPUVY_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(chunkDBQR2OKX_cjs.getConfig(networkType).xAllocationVotingContractAddress).method(currentRoundAbi).call();
1560
+ const res = await thor.account(chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).emissionsContractAddress;
1578
+ const emissionsContract = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).xAllocationVotingContractAddress;
1616
+ const xAllocationVotingContract = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).xAllocationVotingContractAddress;
1640
+ const xAllocationVotingContract = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).xAllocationVotingContractAddress;
1661
+ const xAllocationVotingContract = chunkQRYVPUVY_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: chunkDBQR2OKX_cjs.getConfig(networkType).nodeUrl
1676
+ nodeUrl: chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network.type).network.blockTime;
1746
+ const blockTime = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).xAllocationPoolContractAddress;
1825
+ const xAllocationPoolContract = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
1873
+ const xAllocationPoolContract = chunkQRYVPUVY_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: chunkDBQR2OKX_cjs.getConfig(networkType).xAllocationPoolContractAddress,
1909
+ to: chunkQRYVPUVY_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" : chunkDBQR2OKX_cjs.humanNumber(scaled);
1980
+ const formatted = scaled === "0" ? "0" : chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
1996
+ const x2EarnRewardsPoolContract = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2013
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2035
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2055
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2075
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2095
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2116
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2160
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2180
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2217
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2239
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2266
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2283
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2305
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 (chunkDBQR2OKX_cjs.compareAddresses(delegator2, viem.zeroAddress)) return null;
2315
+ if (chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2330
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2352
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2374
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2401
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2424
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2448
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2501
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2537
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2559
+ const veBetterPassportContractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(networkType).voterRewardsContractAddress;
2572
+ const contractAddress = chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(network.type).voterRewardsContractAddress;
2604
+ const contractAddress = chunkQRYVPUVY_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: chunkDBQR2OKX_cjs.getConfig(networkType).voterRewardsContractAddress,
2659
+ to: chunkQRYVPUVY_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 = chunkDBQR2OKX_cjs.getConfig(
2694
+ const contractAddress = chunkQRYVPUVY_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(chunkDBQR2OKX_cjs.getConfig(network).veDelegateTokenContractAddress).method(JSON.parse(functionFragment2)).call(address);
2708
+ const res = await thor.account(chunkQRYVPUVY_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" : chunkDBQR2OKX_cjs.humanNumber(scaled);
2712
+ const formatted = scaled === "0" ? "0" : chunkQRYVPUVY_cjs.humanNumber(scaled);
2713
2713
  return {
2714
2714
  original,
2715
2715
  scaled,
@@ -2755,7 +2755,7 @@ var useFetchAppInfo = (appIds) => {
2755
2755
  return Object.fromEntries(
2756
2756
  results.map((result, index) => {
2757
2757
  const id = normalizedIds[index];
2758
- const defaultApp = chunkDBQR2OKX_cjs.DEFAULT_PRIVY_ECOSYSTEM_APPS.find(
2758
+ const defaultApp = chunkQRYVPUVY_cjs.DEFAULT_PRIVY_ECOSYSTEM_APPS.find(
2759
2759
  (app) => app.id === id
2760
2760
  );
2761
2761
  return [
@@ -2813,49 +2813,56 @@ var fetchVechainDomain = async (thor, networkType, addressOrDomain) => {
2813
2813
  return {
2814
2814
  address: void 0,
2815
2815
  domain: void 0,
2816
- isValidAddressOrDomain: false
2816
+ isValidAddressOrDomain: false,
2817
+ isPrimaryDomain: false
2817
2818
  };
2818
2819
  }
2819
- const isValidAddress2 = ethers.isAddress(addressOrDomain);
2820
- if (isValidAddress2) {
2820
+ if (ethers.isAddress(addressOrDomain)) {
2821
2821
  try {
2822
- const res = await thor.account(chunkDBQR2OKX_cjs.getConfig(networkType).vnsResolverAddress).method(getNamesABI).call([addressOrDomain]);
2822
+ const res = await thor.account(chunkQRYVPUVY_cjs.getConfig(networkType).vnsResolverAddress).method(getNamesABI).call([addressOrDomain]);
2823
2823
  const domainName = res.decoded.names?.[0];
2824
2824
  return {
2825
2825
  address: addressOrDomain,
2826
2826
  domain: domainName || void 0,
2827
- isValidAddressOrDomain: true
2827
+ isValidAddressOrDomain: true,
2828
+ isPrimaryDomain: true
2828
2829
  };
2829
2830
  } catch (err) {
2830
2831
  console.error("Error getting domain: ", err);
2831
2832
  return {
2832
2833
  address: addressOrDomain,
2833
2834
  domain: void 0,
2834
- isValidAddressOrDomain: true
2835
+ isValidAddressOrDomain: true,
2836
+ isPrimaryDomain: false
2835
2837
  };
2836
2838
  }
2837
2839
  }
2838
2840
  try {
2839
- const res = await thor.account(chunkDBQR2OKX_cjs.getConfig(networkType).vnsResolverAddress).method(getAddressesABI).call([addressOrDomain]);
2841
+ const res = await thor.account(chunkQRYVPUVY_cjs.getConfig(networkType).vnsResolverAddress).method(getAddressesABI).call([addressOrDomain]);
2840
2842
  const domainAddress = res.decoded.addresses?.[0];
2841
2843
  if (domainAddress === "0x0000000000000000000000000000000000000000") {
2842
2844
  return {
2843
2845
  address: void 0,
2844
2846
  domain: void 0,
2845
- isValidAddressOrDomain: false
2847
+ isValidAddressOrDomain: false,
2848
+ isPrimaryDomain: false
2846
2849
  };
2847
2850
  }
2851
+ const primaryDomainRes = await thor.account(chunkQRYVPUVY_cjs.getConfig(networkType).vnsResolverAddress).method(getNamesABI).call([domainAddress]);
2852
+ const primaryDomain = primaryDomainRes.decoded.names?.[0];
2848
2853
  return {
2849
2854
  address: domainAddress,
2850
2855
  domain: addressOrDomain,
2851
- isValidAddressOrDomain: true
2856
+ isValidAddressOrDomain: true,
2857
+ isPrimaryDomain: primaryDomain === addressOrDomain
2852
2858
  };
2853
2859
  } catch (err) {
2854
2860
  console.error("Error getting address: ", err);
2855
2861
  return {
2856
2862
  address: void 0,
2857
2863
  domain: void 0,
2858
- isValidAddressOrDomain: false
2864
+ isValidAddressOrDomain: false,
2865
+ isPrimaryDomain: false
2859
2866
  };
2860
2867
  }
2861
2868
  };
@@ -2869,11 +2876,7 @@ var useVechainDomain = (addressOrDomain) => {
2869
2876
  return reactQuery.useQuery({
2870
2877
  queryKey: getVechainDomainQueryKey(addressOrDomain),
2871
2878
  queryFn: () => fetchVechainDomain(thor, network.type, addressOrDomain),
2872
- enabled: !!thor && !!addressOrDomain,
2873
- staleTime: 24 * 60 * 60 * 1e3,
2874
- // 24 hours
2875
- gcTime: 24 * 60 * 60 * 1e3
2876
- // 24 hours
2879
+ enabled: !!thor && !!addressOrDomain
2877
2880
  });
2878
2881
  };
2879
2882
  var MockENSInterface = chunk5GZ7N47F_cjs.MockENS__factory.createInterface();
@@ -2882,7 +2885,7 @@ var getEnsRecordExists = async (thor, network, name) => {
2882
2885
  const labelHash = viem.keccak256(viem.toBytes(name));
2883
2886
  const subnode = viem.keccak256(viem.concat([hashedNode, labelHash]));
2884
2887
  const functionFragment2 = MockENSInterface.getFunction("recordExists").format("json");
2885
- const res = await thor.account(chunkDBQR2OKX_cjs.getConfig(network).vetDomainsContractAddress).method(JSON.parse(functionFragment2)).call(subnode);
2888
+ const res = await thor.account(chunkQRYVPUVY_cjs.getConfig(network).vetDomainsContractAddress).method(JSON.parse(functionFragment2)).call(subnode);
2886
2889
  if (res.reverted) throw new Error("Reverted");
2887
2890
  return res.decoded[0];
2888
2891
  };
@@ -2899,6 +2902,83 @@ var useEnsRecordExists = (name) => {
2899
2902
  enabled: !!name
2900
2903
  });
2901
2904
  };
2905
+ var useRefreshMetadata = (domain, address) => {
2906
+ const queryClient = reactQuery.useQueryClient();
2907
+ const { network } = useVeChainKitConfig();
2908
+ const refresh = async () => {
2909
+ await queryClient.invalidateQueries({
2910
+ queryKey: getAvatarQueryKey(domain ?? "", network.type)
2911
+ });
2912
+ await queryClient.refetchQueries({
2913
+ queryKey: getAvatarQueryKey(domain ?? "", network.type)
2914
+ });
2915
+ await queryClient.invalidateQueries({
2916
+ queryKey: getTextRecordsQueryKey(domain, network.type)
2917
+ });
2918
+ await queryClient.refetchQueries({
2919
+ queryKey: getTextRecordsQueryKey(domain, network.type)
2920
+ });
2921
+ await queryClient.invalidateQueries({
2922
+ queryKey: getAvatarOfAddressQueryKey(address)
2923
+ });
2924
+ await queryClient.refetchQueries({
2925
+ queryKey: getAvatarOfAddressQueryKey(address)
2926
+ });
2927
+ };
2928
+ return { refresh };
2929
+ };
2930
+
2931
+ // src/hooks/api/vetDomains/utils/domainQueryUtils.ts
2932
+ var invalidateAndRefetchDomainQueries = async (queryClient, address, fullDomain, subdomain, domain, networkType) => {
2933
+ await Promise.all([
2934
+ queryClient.invalidateQueries({
2935
+ queryKey: getVechainDomainQueryKey(address)
2936
+ }),
2937
+ queryClient.invalidateQueries({
2938
+ queryKey: getVechainDomainQueryKey(fullDomain)
2939
+ }),
2940
+ queryClient.invalidateQueries({
2941
+ queryKey: getEnsRecordExistsQueryKey(subdomain)
2942
+ }),
2943
+ queryClient.invalidateQueries({
2944
+ queryKey: getDomainsOfAddressQueryKey(address, ".vet")
2945
+ }),
2946
+ queryClient.invalidateQueries({
2947
+ queryKey: getDomainsOfAddressQueryKey(address, ".veworld.vet")
2948
+ }),
2949
+ queryClient.invalidateQueries({
2950
+ queryKey: getTextRecordsQueryKey(fullDomain)
2951
+ })
2952
+ ]);
2953
+ await Promise.all([
2954
+ queryClient.refetchQueries({
2955
+ queryKey: getVechainDomainQueryKey(address)
2956
+ }),
2957
+ queryClient.refetchQueries({
2958
+ queryKey: getVechainDomainQueryKey(fullDomain)
2959
+ }),
2960
+ queryClient.refetchQueries({
2961
+ queryKey: getDomainsOfAddressQueryKey(address, ".vet")
2962
+ }),
2963
+ queryClient.refetchQueries({
2964
+ queryKey: getDomainsOfAddressQueryKey(address, ".veworld.vet")
2965
+ }),
2966
+ queryClient.refetchQueries({
2967
+ queryKey: getAvatarQueryKey(subdomain + "." + domain, networkType)
2968
+ }),
2969
+ queryClient.refetchQueries({
2970
+ queryKey: getTextRecordsQueryKey(fullDomain)
2971
+ }),
2972
+ queryClient.refetchQueries({
2973
+ queryKey: getEnsRecordExistsQueryKey(subdomain)
2974
+ }),
2975
+ queryClient.refetchQueries({
2976
+ queryKey: getAvatarOfAddressQueryKey(address)
2977
+ })
2978
+ ]);
2979
+ };
2980
+
2981
+ // src/hooks/api/vetDomains/useClaimVeWorldSubdomain.ts
2902
2982
  var SubdomainClaimerInterface = chunk5GZ7N47F_cjs.SubdomainClaimer__factory.createInterface();
2903
2983
  var ReverseRegistrarInterface = chunk5GZ7N47F_cjs.IReverseRegistrar__factory.createInterface();
2904
2984
  var useClaimVeWorldSubdomain = ({
@@ -2911,102 +2991,209 @@ var useClaimVeWorldSubdomain = ({
2911
2991
  const queryClient = reactQuery.useQueryClient();
2912
2992
  const { account } = useWallet();
2913
2993
  const { network } = useVeChainKitConfig();
2994
+ const { refresh: refreshMetadata } = useRefreshMetadata(
2995
+ subdomain + "." + domain,
2996
+ account?.address ?? ""
2997
+ );
2914
2998
  const buildClauses = React10.useCallback(async () => {
2915
- if (!subdomain) throw new Error("Invalid subdomain");
2916
2999
  const clausesArray = [];
3000
+ if (!subdomain) throw new Error("Invalid subdomain");
3001
+ const fullDomain = `${subdomain}.${domain}`;
2917
3002
  clausesArray.push({
2918
- to: chunkDBQR2OKX_cjs.getConfig(network.type).vetDomainsReverseRegistrarAddress,
3003
+ to: chunkQRYVPUVY_cjs.getConfig(network.type).vetDomainsReverseRegistrarAddress,
2919
3004
  value: "0x0",
2920
3005
  data: ReverseRegistrarInterface.encodeFunctionData("setName", [""]),
2921
- comment: `Unsetting your current VeChain nickname of the account ${chunkDBQR2OKX_cjs.humanAddress(
3006
+ comment: `Unsetting your current VeChain nickname of the account ${chunkQRYVPUVY_cjs.humanAddress(
2922
3007
  account?.address ?? "",
2923
3008
  4,
2924
3009
  4
2925
3010
  )}`,
2926
3011
  abi: ReverseRegistrarInterface.getFunction("setName")
2927
3012
  });
2928
- if (!alreadyOwned) {
3013
+ if (alreadyOwned) {
3014
+ clausesArray.push({
3015
+ to: chunkQRYVPUVY_cjs.getConfig(network.type).vetDomainsReverseRegistrarAddress,
3016
+ value: "0x0",
3017
+ data: ReverseRegistrarInterface.encodeFunctionData("setName", [
3018
+ fullDomain
3019
+ ]),
3020
+ comment: `Setting your VeChain nickname to ${fullDomain}`,
3021
+ abi: ReverseRegistrarInterface.getFunction("setName")
3022
+ });
3023
+ const PublicResolverInterface = new ethers.ethers.Interface([
3024
+ "function setAddr(bytes32 node, address addr)"
3025
+ ]);
3026
+ const domainNode = ethers.ethers.namehash(fullDomain);
2929
3027
  clausesArray.push({
2930
- to: chunkDBQR2OKX_cjs.getConfig(network.type).veWorldSubdomainClaimerContractAddress,
3028
+ to: chunkQRYVPUVY_cjs.getConfig(network.type).vetDomainsPublicResolverAddress,
2931
3029
  value: "0x0",
2932
- data: SubdomainClaimerInterface.encodeFunctionData("claim", [
2933
- subdomain,
2934
- chunkDBQR2OKX_cjs.getConfig(network.type).vetDomainsPublicResolverAddress
3030
+ data: PublicResolverInterface.encodeFunctionData("setAddr", [
3031
+ domainNode,
3032
+ account?.address || ""
2935
3033
  ]),
2936
- comment: `Claim VeChain subdomain: ${subdomain}.${domain}`,
2937
- abi: SubdomainClaimerInterface.getFunction("claim")
3034
+ comment: `Setting the address for ${fullDomain} to ${chunkQRYVPUVY_cjs.humanAddress(
3035
+ account?.address ?? "",
3036
+ 4,
3037
+ 4
3038
+ )}`,
3039
+ abi: PublicResolverInterface.getFunction("setAddr")
2938
3040
  });
3041
+ } else {
3042
+ if (isVeWorldDomain(domain)) {
3043
+ clausesArray.push({
3044
+ to: chunkQRYVPUVY_cjs.getConfig(network.type).veWorldSubdomainClaimerContractAddress,
3045
+ value: "0x0",
3046
+ data: SubdomainClaimerInterface.encodeFunctionData(
3047
+ "claim",
3048
+ [
3049
+ subdomain,
3050
+ chunkQRYVPUVY_cjs.getConfig(network.type).vetDomainsPublicResolverAddress
3051
+ ]
3052
+ ),
3053
+ comment: `Claim VeChain subdomain: ${subdomain}.${domain}`,
3054
+ abi: SubdomainClaimerInterface.getFunction("claim")
3055
+ });
3056
+ clausesArray.push({
3057
+ to: chunkQRYVPUVY_cjs.getConfig(network.type).vetDomainsReverseRegistrarAddress,
3058
+ value: "0x0",
3059
+ data: ReverseRegistrarInterface.encodeFunctionData(
3060
+ "setName",
3061
+ [subdomain + "." + domain]
3062
+ ),
3063
+ comment: `Set ${subdomain}.${domain} as the VeChain nickname of the account ${chunkQRYVPUVY_cjs.humanAddress(
3064
+ account?.address ?? "",
3065
+ 4,
3066
+ 4
3067
+ )}`,
3068
+ abi: ReverseRegistrarInterface.getFunction("setName")
3069
+ });
3070
+ } else {
3071
+ throw new Error(
3072
+ "This hook only supports .veworld.vet subdomains"
3073
+ );
3074
+ }
2939
3075
  }
2940
- clausesArray.push({
2941
- to: chunkDBQR2OKX_cjs.getConfig(network.type).vetDomainsReverseRegistrarAddress,
2942
- value: "0x0",
2943
- data: ReverseRegistrarInterface.encodeFunctionData("setName", [
2944
- subdomain + "." + domain
2945
- ]),
2946
- comment: `Set ${subdomain}.${domain} as the VeChain nickname of the account ${chunkDBQR2OKX_cjs.humanAddress(
2947
- account?.address ?? "",
2948
- 4,
2949
- 4
2950
- )}`,
2951
- abi: ReverseRegistrarInterface.getFunction("setName")
2952
- });
2953
3076
  return clausesArray;
2954
- }, [subdomain, domain, account?.address, alreadyOwned]);
3077
+ }, [subdomain, domain, alreadyOwned, account?.address, network.type]);
2955
3078
  const handleOnSuccess = React10.useCallback(async () => {
2956
- queryClient.cancelQueries({
2957
- queryKey: getVechainDomainQueryKey(account?.address ?? ""),
2958
- refetchType: "none"
2959
- });
2960
- queryClient.cancelQueries({
2961
- queryKey: getVechainDomainQueryKey(subdomain + "." + domain),
2962
- refetchType: "none"
2963
- });
2964
- queryClient.cancelQueries({
2965
- queryKey: getEnsRecordExistsQueryKey(subdomain),
2966
- refetchType: "none"
2967
- });
2968
- queryClient.cancelQueries({
2969
- queryKey: getDomainsOfAddressQueryKey(
2970
- account?.address ?? "",
2971
- domain
2972
- ),
2973
- refetchType: "none"
2974
- });
2975
- setTimeout(() => {
2976
- queryClient.invalidateQueries({
2977
- queryKey: getVechainDomainQueryKey(account?.address ?? ""),
2978
- refetchType: "none"
2979
- });
2980
- queryClient.invalidateQueries({
2981
- queryKey: getVechainDomainQueryKey(subdomain + "." + domain),
2982
- refetchType: "none"
2983
- });
2984
- queryClient.refetchQueries({
2985
- queryKey: getVechainDomainQueryKey(account?.address ?? "")
2986
- });
2987
- queryClient.refetchQueries({
2988
- queryKey: getVechainDomainQueryKey(subdomain + "." + domain)
2989
- });
2990
- queryClient.invalidateQueries({
2991
- queryKey: getEnsRecordExistsQueryKey(subdomain)
2992
- });
2993
- queryClient.refetchQueries({
2994
- queryKey: getEnsRecordExistsQueryKey(subdomain)
3079
+ const fullDomain = `${subdomain}.${domain}`;
3080
+ const address = account?.address ?? "";
3081
+ await invalidateAndRefetchDomainQueries(
3082
+ queryClient,
3083
+ address,
3084
+ fullDomain,
3085
+ subdomain,
3086
+ domain,
3087
+ network.type
3088
+ );
3089
+ refreshMetadata();
3090
+ onSuccess?.();
3091
+ }, [
3092
+ onSuccess,
3093
+ subdomain,
3094
+ domain,
3095
+ queryClient,
3096
+ account,
3097
+ network.type,
3098
+ refreshMetadata
3099
+ ]);
3100
+ const result = useSendTransaction({
3101
+ signerAccountAddress: account?.address ?? "",
3102
+ privyUIOptions: {
3103
+ title: "Sign to claim your VeChain nickname",
3104
+ description: `Claim ${subdomain}.${domain} as your VeChain nickname`,
3105
+ buttonText: "Sign to continue"
3106
+ },
3107
+ onTxConfirmed: handleOnSuccess,
3108
+ onTxFailedOrCancelled: onError
3109
+ });
3110
+ return {
3111
+ ...result,
3112
+ sendTransaction: async () => {
3113
+ return result.sendTransaction(await buildClauses());
3114
+ }
3115
+ };
3116
+ };
3117
+ var isVeWorldDomain = (domain) => {
3118
+ return domain.endsWith("veworld.vet");
3119
+ };
3120
+ var ReverseRegistrarInterface2 = chunk5GZ7N47F_cjs.IReverseRegistrar__factory.createInterface();
3121
+ var useClaimVetDomain = ({
3122
+ domain,
3123
+ onSuccess,
3124
+ onError,
3125
+ alreadyOwned = false
3126
+ }) => {
3127
+ const queryClient = reactQuery.useQueryClient();
3128
+ const { account } = useWallet();
3129
+ const { network } = useVeChainKitConfig();
3130
+ const { refresh: refreshMetadata } = useRefreshMetadata(
3131
+ domain,
3132
+ account?.address ?? ""
3133
+ );
3134
+ const buildClauses = React10.useCallback(async () => {
3135
+ const clausesArray = [];
3136
+ if (!domain) throw new Error("Invalid domain");
3137
+ const fullDomain = `${domain}.vet`;
3138
+ if (alreadyOwned) {
3139
+ clausesArray.push({
3140
+ to: chunkQRYVPUVY_cjs.getConfig(network.type).vetDomainsReverseRegistrarAddress,
3141
+ value: "0x0",
3142
+ data: ReverseRegistrarInterface2.encodeFunctionData("setName", [
3143
+ fullDomain
3144
+ ]),
3145
+ comment: `Setting your VeChain nickname to ${fullDomain}`,
3146
+ abi: ReverseRegistrarInterface2.getFunction("setName")
2995
3147
  });
2996
- queryClient.refetchQueries({
2997
- queryKey: getDomainsOfAddressQueryKey(
3148
+ const PublicResolverInterface = new ethers.ethers.Interface([
3149
+ "function setAddr(bytes32 node, address addr)"
3150
+ ]);
3151
+ const domainNode = ethers.ethers.namehash(fullDomain);
3152
+ clausesArray.push({
3153
+ to: chunkQRYVPUVY_cjs.getConfig(network.type).vetDomainsPublicResolverAddress,
3154
+ value: "0x0",
3155
+ data: PublicResolverInterface.encodeFunctionData("setAddr", [
3156
+ domainNode,
3157
+ account?.address || ""
3158
+ ]),
3159
+ comment: `Setting the address for ${fullDomain} to ${chunkQRYVPUVY_cjs.humanAddress(
2998
3160
  account?.address ?? "",
2999
- domain
3000
- )
3161
+ 4,
3162
+ 4
3163
+ )}`,
3164
+ abi: PublicResolverInterface.getFunction("setAddr")
3001
3165
  });
3002
- }, 2e3);
3166
+ } else {
3167
+ throw new Error("Primary .vet domains are not supported yet");
3168
+ }
3169
+ return clausesArray;
3170
+ }, [domain, alreadyOwned, account?.address, network.type]);
3171
+ const handleOnSuccess = React10.useCallback(async () => {
3172
+ const address = account?.address ?? "";
3173
+ await invalidateAndRefetchDomainQueries(
3174
+ queryClient,
3175
+ address,
3176
+ domain,
3177
+ "",
3178
+ // No subdomain for primary domains
3179
+ domain.endsWith(".vet") ? domain : `${domain}.vet`,
3180
+ network.type
3181
+ );
3182
+ refreshMetadata();
3003
3183
  onSuccess?.();
3004
- }, [onSuccess, subdomain, domain, queryClient, account?.address]);
3184
+ }, [
3185
+ onSuccess,
3186
+ domain,
3187
+ queryClient,
3188
+ account,
3189
+ network.type,
3190
+ refreshMetadata
3191
+ ]);
3005
3192
  const result = useSendTransaction({
3006
3193
  signerAccountAddress: account?.address ?? "",
3007
3194
  privyUIOptions: {
3008
3195
  title: "Sign to claim your VeChain nickname",
3009
- description: `Claim ${subdomain} as your VeChain nickname`,
3196
+ description: `Claim ${domain} as your VeChain nickname`,
3010
3197
  buttonText: "Sign to continue"
3011
3198
  },
3012
3199
  onTxConfirmed: handleOnSuccess,
@@ -3026,7 +3213,7 @@ var method34 = "isDomainProtected";
3026
3213
  var getIsDomainProtectedQueryKey = (domain) => getCallKey({ method: method34, keyArgs: [domain] });
3027
3214
  var useIsDomainProtected = (domain, enabled = true) => {
3028
3215
  const { network } = useVeChainKitConfig();
3029
- const contractAddress = chunkDBQR2OKX_cjs.getConfig(
3216
+ const contractAddress = chunkQRYVPUVY_cjs.getConfig(
3030
3217
  network.type
3031
3218
  ).veWorldSubdomainClaimerContractAddress;
3032
3219
  return useCall({
@@ -3046,7 +3233,7 @@ var DomainsResponseSchema = zod.z.object({
3046
3233
  });
3047
3234
  var getDomainsOfAddress = async (networkType, address, parentDomain = "vet") => {
3048
3235
  if (!address) throw new Error("Address is required");
3049
- const graphQlIndexerUrl = chunkDBQR2OKX_cjs.getConfig(networkType).graphQlIndexerUrl;
3236
+ const graphQlIndexerUrl = chunkQRYVPUVY_cjs.getConfig(networkType).graphQlIndexerUrl;
3050
3237
  const query = `query Registrations {
3051
3238
  domains(
3052
3239
  where: {owner: "${address.toLowerCase()}", parent_: {name: "${parentDomain}"}}
@@ -3081,173 +3268,48 @@ var useGetDomainsOfAddress = (address, parentDomain) => {
3081
3268
  enabled: !!address && !!network.type
3082
3269
  });
3083
3270
  };
3084
- var nameInterface = new ethers.Interface([
3085
- "function resolver(bytes32 node) returns (address resolverAddress)",
3086
- "function text(bytes32 node, string key) returns (string avatar)"
3087
- ]);
3088
- var erc721Interface = new ethers.Interface([
3089
- "function tokenURI(uint256 tokenId) view returns (string)",
3090
- "function uri(uint256 id) view returns (string)"
3091
- ]);
3092
- var getAvatar = async (networkType, nodeUrl, name) => {
3271
+ var getAvatar = async (name, networkType) => {
3093
3272
  if (!name) throw new Error("Name is required");
3094
- const node = ethers.namehash(name);
3095
3273
  try {
3096
- const resolverResponse = await fetch(`${nodeUrl}/accounts/*`, {
3097
- method: "POST",
3098
- headers: {
3099
- "content-type": "application/json"
3100
- },
3101
- body: JSON.stringify({
3102
- clauses: [
3103
- {
3104
- to: chunkDBQR2OKX_cjs.getConfig(networkType).vetDomainsContractAddress,
3105
- data: nameInterface.encodeFunctionData("resolver", [
3106
- node
3107
- ])
3108
- }
3109
- ]
3110
- })
3111
- });
3112
- const [{ data: resolverData, reverted: noResolver }] = await resolverResponse.json();
3113
- if (noResolver) {
3114
- return null;
3115
- }
3116
- const { resolverAddress } = nameInterface.decodeFunctionResult(
3117
- "resolver",
3118
- resolverData
3274
+ const response = await fetch(
3275
+ `${chunkQRYVPUVY_cjs.getConfig(networkType).vetDomainAvatarUrl}/${name}`
3119
3276
  );
3120
- const avatarResponse = await fetch(`${nodeUrl}/accounts/*`, {
3121
- method: "POST",
3122
- headers: {
3123
- "content-type": "application/json"
3124
- },
3125
- body: JSON.stringify({
3126
- clauses: [
3127
- {
3128
- to: resolverAddress,
3129
- data: nameInterface.encodeFunctionData("text", [
3130
- node,
3131
- "avatar"
3132
- ])
3133
- }
3134
- ]
3135
- })
3136
- });
3137
- const [{ data: lookupData, reverted: noLookup }] = await avatarResponse.json();
3138
- if (noLookup || lookupData === "0x") {
3139
- return null;
3140
- }
3141
- try {
3142
- const { avatar } = nameInterface.decodeFunctionResult(
3143
- "text",
3144
- lookupData
3145
- );
3146
- return avatar === "" ? null : avatar;
3147
- } catch (decodeError) {
3148
- console.error("Failed to decode avatar data:", decodeError);
3277
+ if (!response.ok) {
3149
3278
  return null;
3150
3279
  }
3280
+ const blob = await response.blob();
3281
+ return new Promise((resolve) => {
3282
+ const reader = new FileReader();
3283
+ reader.readAsDataURL(blob);
3284
+ reader.onloadend = () => {
3285
+ resolve(reader.result);
3286
+ };
3287
+ });
3151
3288
  } catch (error) {
3152
3289
  console.error("Error fetching avatar:", error);
3153
- throw error;
3290
+ return null;
3154
3291
  }
3155
3292
  };
3156
- var getAvatarQueryKey = (name) => [
3293
+ var getAvatarQueryKey = (name, networkType) => [
3157
3294
  "VECHAIN_KIT",
3158
3295
  "VET_DOMAINS",
3159
3296
  "AVATAR",
3160
- name
3297
+ name,
3298
+ networkType
3161
3299
  ];
3162
- async function parseAvatarRecord(record, networkType, nodeUrl) {
3163
- try {
3164
- if (record.startsWith("http") || record.startsWith("ipfs://") || record.startsWith("ar://")) {
3165
- return chunkDBQR2OKX_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 = chunkDBQR2OKX_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 chunkDBQR2OKX_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
- }
3232
3300
  var useGetAvatar = (name) => {
3233
3301
  const { network } = useVeChainKitConfig();
3234
- const nodeUrl = network.nodeUrl ?? chunkDBQR2OKX_cjs.getConfig(network.type).nodeUrl;
3235
3302
  const avatarQuery = reactQuery.useQuery({
3236
- queryKey: getAvatarQueryKey(name ?? ""),
3303
+ queryKey: getAvatarQueryKey(name ?? "", network.type),
3237
3304
  queryFn: async () => {
3238
3305
  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);
3306
+ return getAvatar(name, network.type);
3242
3307
  },
3243
- enabled: !!name && !!nodeUrl && !!network.type,
3244
- // Use the same caching strategy as the avatar query
3245
- staleTime: 5 * 60 * 1e3
3246
- // 5 minutes
3308
+ enabled: !!name && !!network.type
3247
3309
  });
3248
3310
  return avatarQuery;
3249
3311
  };
3250
- var nameInterface2 = new ethers.Interface([
3312
+ var nameInterface = new ethers.Interface([
3251
3313
  "function resolver(bytes32 node) returns (address resolverAddress)",
3252
3314
  "function text(bytes32 node, string key) view returns (string)"
3253
3315
  ]);
@@ -3263,8 +3325,8 @@ var getTextRecords = async (nodeUrl, network, domain) => {
3263
3325
  body: JSON.stringify({
3264
3326
  clauses: [
3265
3327
  {
3266
- to: chunkDBQR2OKX_cjs.getConfig(network).vetDomainsContractAddress,
3267
- data: nameInterface2.encodeFunctionData("resolver", [
3328
+ to: chunkQRYVPUVY_cjs.getConfig(network).vetDomainsContractAddress,
3329
+ data: nameInterface.encodeFunctionData("resolver", [
3268
3330
  node
3269
3331
  ])
3270
3332
  }
@@ -3275,7 +3337,7 @@ var getTextRecords = async (nodeUrl, network, domain) => {
3275
3337
  if (noResolver) {
3276
3338
  return {};
3277
3339
  }
3278
- const { resolverAddress } = nameInterface2.decodeFunctionResult(
3340
+ const { resolverAddress } = nameInterface.decodeFunctionResult(
3279
3341
  "resolver",
3280
3342
  resolverData
3281
3343
  );
@@ -3287,7 +3349,7 @@ var getTextRecords = async (nodeUrl, network, domain) => {
3287
3349
  body: JSON.stringify({
3288
3350
  clauses: ENS_TEXT_RECORDS.map((key) => ({
3289
3351
  to: resolverAddress,
3290
- data: nameInterface2.encodeFunctionData("text", [node, key])
3352
+ data: nameInterface.encodeFunctionData("text", [node, key])
3291
3353
  }))
3292
3354
  })
3293
3355
  });
@@ -3296,7 +3358,7 @@ var getTextRecords = async (nodeUrl, network, domain) => {
3296
3358
  (acc, { data, reverted }, index) => {
3297
3359
  if (!reverted && data && data !== "0x") {
3298
3360
  try {
3299
- const value = nameInterface2.decodeFunctionResult(
3361
+ const value = nameInterface.decodeFunctionResult(
3300
3362
  "text",
3301
3363
  data
3302
3364
  )[0];
@@ -3322,7 +3384,7 @@ var getTextRecords = async (nodeUrl, network, domain) => {
3322
3384
  var getTextRecordsQueryKey = (domain, network) => ["VECHAIN_KIT_TEXT_RECORDS", domain, network];
3323
3385
  var useGetTextRecords = (domain) => {
3324
3386
  const { network } = useVeChainKitConfig();
3325
- const nodeUrl = network.nodeUrl ?? chunkDBQR2OKX_cjs.getConfig(network.type).nodeUrl;
3387
+ const nodeUrl = network.nodeUrl ?? chunkQRYVPUVY_cjs.getConfig(network.type).nodeUrl;
3326
3388
  return reactQuery.useQuery({
3327
3389
  queryKey: getTextRecordsQueryKey(domain, network.type),
3328
3390
  queryFn: () => getTextRecords(nodeUrl, network.type, domain),
@@ -3553,7 +3615,7 @@ var useSendTransaction = ({
3553
3615
  };
3554
3616
 
3555
3617
  // src/hooks/api/vetDomains/useUpdateTextRecord.ts
3556
- var nameInterface3 = new ethers.Interface([
3618
+ var nameInterface2 = new ethers.Interface([
3557
3619
  "function resolver(bytes32 node) returns (address resolverAddress)",
3558
3620
  "function setText(bytes32 node, string key, string value) external"
3559
3621
  ]);
@@ -3573,7 +3635,7 @@ var useUpdateTextRecord = ({
3573
3635
  const node = ethers.namehash(domain);
3574
3636
  clauses.push({
3575
3637
  to: resolverAddress,
3576
- data: nameInterface3.encodeFunctionData("setText", [
3638
+ data: nameInterface2.encodeFunctionData("setText", [
3577
3639
  node,
3578
3640
  key,
3579
3641
  value
@@ -3582,98 +3644,308 @@ var useUpdateTextRecord = ({
3582
3644
  comment: `Update ${key} record`
3583
3645
  });
3584
3646
  }
3585
- return clauses;
3647
+ return clauses;
3648
+ },
3649
+ [resolverAddress]
3650
+ );
3651
+ const result = useSendTransaction({
3652
+ signerAccountAddress,
3653
+ onTxConfirmed: onSuccess,
3654
+ onTxFailedOrCancelled: async () => {
3655
+ onError?.();
3656
+ },
3657
+ privyUIOptions: {
3658
+ title: "Update Profile Information",
3659
+ description: "Update the profile information associated with your domain",
3660
+ buttonText: "Sign to continue"
3661
+ }
3662
+ });
3663
+ return {
3664
+ ...result,
3665
+ sendTransaction: async (params) => {
3666
+ return result.sendTransaction(await buildClauses(params));
3667
+ }
3668
+ };
3669
+ };
3670
+ var nameInterface3 = new ethers.Interface([
3671
+ "function resolver(bytes32 node) returns (address resolverAddress)"
3672
+ ]);
3673
+ var getResolverAddress = async (nodeUrl, network, domain) => {
3674
+ if (!domain) throw new Error("Domain is required");
3675
+ const node = ethers.namehash(domain);
3676
+ const resolverResponse = await fetch(`${nodeUrl}/accounts/*`, {
3677
+ method: "POST",
3678
+ headers: { "content-type": "application/json" },
3679
+ body: JSON.stringify({
3680
+ clauses: [
3681
+ {
3682
+ to: chunkQRYVPUVY_cjs.getConfig(network).vetDomainsContractAddress,
3683
+ data: nameInterface3.encodeFunctionData("resolver", [node])
3684
+ }
3685
+ ]
3686
+ })
3687
+ });
3688
+ const [{ data: resolverData, reverted: noResolver }] = await resolverResponse.json();
3689
+ if (noResolver) throw new Error("Failed to get resolver address");
3690
+ const { resolverAddress } = nameInterface3.decodeFunctionResult(
3691
+ "resolver",
3692
+ resolverData
3693
+ );
3694
+ return resolverAddress;
3695
+ };
3696
+ var getResolverAddressQueryKey = (domain) => [
3697
+ "VECHAIN_KIT",
3698
+ "RESOLVER_ADDRESS",
3699
+ domain
3700
+ ];
3701
+ var useGetResolverAddress = (domain) => {
3702
+ const { network } = useVeChainKitConfig();
3703
+ const nodeUrl = network.nodeUrl ?? chunkQRYVPUVY_cjs.getConfig(network.type).nodeUrl;
3704
+ return reactQuery.useQuery({
3705
+ queryKey: getResolverAddressQueryKey(domain),
3706
+ queryFn: () => getResolverAddress(nodeUrl, network.type, domain),
3707
+ enabled: !!domain && !!nodeUrl && !!network.type
3708
+ });
3709
+ };
3710
+ var getAvatarOfAddressQueryKey = (address) => [
3711
+ "VECHAIN_KIT",
3712
+ "VET_DOMAINS",
3713
+ "AVATAR_OF_ADDRESS",
3714
+ address
3715
+ ];
3716
+ var useGetAvatarOfAddress = (address) => {
3717
+ const domainsQuery = useVechainDomain(address);
3718
+ const primaryDomain = domainsQuery.data?.domain;
3719
+ const avatarQuery = useGetAvatar(primaryDomain ?? "");
3720
+ return reactQuery.useQuery({
3721
+ queryKey: getAvatarOfAddressQueryKey(address),
3722
+ queryFn: async () => {
3723
+ if (!address) return chunkQRYVPUVY_cjs.getPicassoImage(address ?? "");
3724
+ const domains = await domainsQuery.refetch();
3725
+ if (!domains.data?.domain) return chunkQRYVPUVY_cjs.getPicassoImage(address);
3726
+ if (domains.data.domain && avatarQuery.data)
3727
+ return avatarQuery.data;
3728
+ return chunkQRYVPUVY_cjs.getPicassoImage(address);
3729
+ },
3730
+ enabled: !!address && domainsQuery.isSuccess && (primaryDomain ? avatarQuery.isSuccess : true)
3731
+ });
3732
+ };
3733
+ var nameInterface4 = new ethers.Interface([
3734
+ "function resolver(bytes32 node) returns (address resolverAddress)",
3735
+ "function text(bytes32 node, string key) returns (string avatar)"
3736
+ ]);
3737
+ var erc721Interface = new ethers.Interface([
3738
+ "function tokenURI(uint256 tokenId) view returns (string)",
3739
+ "function uri(uint256 id) view returns (string)"
3740
+ ]);
3741
+ var getAvatarLegacy = async (networkType, nodeUrl, name) => {
3742
+ if (!name) throw new Error("Name is required");
3743
+ const node = ethers.namehash(name);
3744
+ try {
3745
+ const resolverResponse = await fetch(`${nodeUrl}/accounts/*`, {
3746
+ method: "POST",
3747
+ headers: {
3748
+ "content-type": "application/json"
3749
+ },
3750
+ body: JSON.stringify({
3751
+ clauses: [
3752
+ {
3753
+ to: chunkQRYVPUVY_cjs.getConfig(networkType).vetDomainsContractAddress,
3754
+ data: nameInterface4.encodeFunctionData("resolver", [
3755
+ node
3756
+ ])
3757
+ }
3758
+ ]
3759
+ })
3760
+ });
3761
+ const [{ data: resolverData, reverted: noResolver }] = await resolverResponse.json();
3762
+ if (noResolver) {
3763
+ return null;
3764
+ }
3765
+ const { resolverAddress } = nameInterface4.decodeFunctionResult(
3766
+ "resolver",
3767
+ resolverData
3768
+ );
3769
+ const avatarResponse = await fetch(`${nodeUrl}/accounts/*`, {
3770
+ method: "POST",
3771
+ headers: {
3772
+ "content-type": "application/json"
3773
+ },
3774
+ body: JSON.stringify({
3775
+ clauses: [
3776
+ {
3777
+ to: resolverAddress,
3778
+ data: nameInterface4.encodeFunctionData("text", [
3779
+ node,
3780
+ "avatar"
3781
+ ])
3782
+ }
3783
+ ]
3784
+ })
3785
+ });
3786
+ const [{ data: lookupData, reverted: noLookup }] = await avatarResponse.json();
3787
+ if (noLookup || lookupData === "0x") {
3788
+ return null;
3789
+ }
3790
+ try {
3791
+ const { avatar } = nameInterface4.decodeFunctionResult(
3792
+ "text",
3793
+ lookupData
3794
+ );
3795
+ const avatarRecord = avatar === "" ? null : avatar;
3796
+ if (!avatarRecord) return null;
3797
+ return parseAvatarRecord(avatarRecord, networkType, nodeUrl);
3798
+ } catch (decodeError) {
3799
+ console.error("Failed to decode avatar data:", decodeError);
3800
+ return null;
3801
+ }
3802
+ } catch (error) {
3803
+ console.error("Error fetching avatar:", error);
3804
+ throw error;
3805
+ }
3806
+ };
3807
+ var getAvatarLegacyQueryKey = (name, networkType) => ["VECHAIN_KIT", "VET_DOMAINS", "AVATAR", "LEGACY", name, networkType];
3808
+ async function parseAvatarRecord(record, networkType, nodeUrl) {
3809
+ try {
3810
+ if (record.startsWith("http") || record.startsWith("ipfs://") || record.startsWith("ar://")) {
3811
+ return chunkQRYVPUVY_cjs.convertUriToUrl(record, networkType) || null;
3812
+ }
3813
+ const match = record.match(
3814
+ /eip155:(\d+)\/(?:erc721|erc1155):([^/]+)\/(\d+)/
3815
+ );
3816
+ if (match) {
3817
+ const [, chainId, contractAddress, tokenId] = match;
3818
+ const isErc1155 = record.includes("erc1155");
3819
+ if (!chainId || !contractAddress || tokenId === void 0) {
3820
+ return null;
3821
+ }
3822
+ const clauses = [
3823
+ {
3824
+ to: contractAddress,
3825
+ data: erc721Interface.encodeFunctionData(
3826
+ isErc1155 ? "uri" : "tokenURI",
3827
+ [BigInt(tokenId)]
3828
+ )
3829
+ }
3830
+ ];
3831
+ const [{ data, reverted }] = await fetch(`${nodeUrl}/accounts/*`, {
3832
+ method: "POST",
3833
+ headers: {
3834
+ "content-type": "application/json"
3835
+ },
3836
+ body: JSON.stringify({ clauses })
3837
+ }).then((res) => res.json());
3838
+ if (reverted) {
3839
+ console.error("Failed to fetch tokenURI");
3840
+ return null;
3841
+ }
3842
+ let tokenUri = "";
3843
+ try {
3844
+ tokenUri = erc721Interface.decodeFunctionResult(
3845
+ isErc1155 ? "uri" : "tokenURI",
3846
+ data
3847
+ )[0];
3848
+ } catch (e) {
3849
+ console.error("Failed to decode avatar data:", e);
3850
+ tokenUri = ethers.toUtf8String(data);
3851
+ }
3852
+ tokenUri = chunkQRYVPUVY_cjs.convertUriToUrl(tokenUri, networkType) || tokenUri;
3853
+ if (isErc1155) {
3854
+ tokenUri = tokenUri.replace(
3855
+ "{id}",
3856
+ ethers.zeroPadValue(ethers.toBeHex(BigInt(tokenId)), 32).slice(2)
3857
+ );
3858
+ }
3859
+ const metadataResponse = await fetch(tokenUri);
3860
+ if (!metadataResponse.ok) {
3861
+ console.error("Failed to fetch metadata");
3862
+ return null;
3863
+ }
3864
+ const metadata = await metadataResponse.json();
3865
+ const imageUrl = metadata.image || metadata.image_url || metadata.image_data;
3866
+ if (!imageUrl) {
3867
+ console.error("No image URL in metadata");
3868
+ return null;
3869
+ }
3870
+ return chunkQRYVPUVY_cjs.convertUriToUrl(imageUrl, networkType) || imageUrl;
3871
+ }
3872
+ return null;
3873
+ } catch (error) {
3874
+ console.error("Error parsing avatar record:", error);
3875
+ return null;
3876
+ }
3877
+ }
3878
+ var useGetAvatarLegacy = (name) => {
3879
+ const { network } = useVeChainKitConfig();
3880
+ const nodeUrl = network.nodeUrl ?? chunkQRYVPUVY_cjs.getConfig(network.type).nodeUrl;
3881
+ const avatarQuery = reactQuery.useQuery({
3882
+ queryKey: getAvatarLegacyQueryKey(name ?? "", network.type),
3883
+ queryFn: async () => {
3884
+ if (!name) return null;
3885
+ return getAvatarLegacy(network.type, nodeUrl, name);
3586
3886
  },
3587
- [resolverAddress]
3588
- );
3887
+ enabled: !!name && !!nodeUrl && !!network.type
3888
+ });
3889
+ return avatarQuery;
3890
+ };
3891
+ var ReverseRegistrarInterface3 = chunk5GZ7N47F_cjs.IReverseRegistrar__factory.createInterface();
3892
+ var useUnsetDomain = ({
3893
+ onSuccess,
3894
+ onError
3895
+ }) => {
3896
+ const queryClient = reactQuery.useQueryClient();
3897
+ const { account } = useWallet();
3898
+ const { network } = useVeChainKitConfig();
3899
+ const buildClauses = React10.useCallback(async () => {
3900
+ const clausesArray = [];
3901
+ clausesArray.push({
3902
+ to: chunkQRYVPUVY_cjs.getConfig(network.type).vetDomainsReverseRegistrarAddress,
3903
+ value: "0x0",
3904
+ data: ReverseRegistrarInterface3.encodeFunctionData("setName", [""]),
3905
+ comment: `Unsetting your current VeChain nickname of the account ${chunkQRYVPUVY_cjs.humanAddress(
3906
+ account?.address ?? "",
3907
+ 4,
3908
+ 4
3909
+ )}`,
3910
+ abi: ReverseRegistrarInterface3.getFunction("setName")
3911
+ });
3912
+ return clausesArray;
3913
+ }, [account?.address, network.type]);
3914
+ const handleOnSuccess = React10.useCallback(async () => {
3915
+ const address = account?.address ?? "";
3916
+ await invalidateAndRefetchDomainQueries(
3917
+ queryClient,
3918
+ address,
3919
+ "",
3920
+ // No domain being set
3921
+ "",
3922
+ // No subdomain
3923
+ "",
3924
+ // No full domain
3925
+ network.type
3926
+ );
3927
+ onSuccess?.();
3928
+ }, [onSuccess, queryClient, account, network.type]);
3589
3929
  const result = useSendTransaction({
3590
- signerAccountAddress,
3591
- onTxConfirmed: onSuccess,
3592
- onTxFailedOrCancelled: async () => {
3593
- onError?.();
3594
- },
3930
+ signerAccountAddress: account?.address ?? "",
3595
3931
  privyUIOptions: {
3596
- title: "Update Profile Information",
3597
- description: "Update the profile information associated with your domain",
3932
+ title: "Sign to unset your VeChain nickname",
3933
+ description: "Unset your current VeChain nickname",
3598
3934
  buttonText: "Sign to continue"
3599
- }
3935
+ },
3936
+ onTxConfirmed: handleOnSuccess,
3937
+ onTxFailedOrCancelled: onError
3600
3938
  });
3601
3939
  return {
3602
3940
  ...result,
3603
- sendTransaction: async (params) => {
3604
- return result.sendTransaction(await buildClauses(params));
3941
+ sendTransaction: async () => {
3942
+ return result.sendTransaction(await buildClauses());
3605
3943
  }
3606
3944
  };
3607
3945
  };
3608
- var nameInterface4 = new ethers.Interface([
3609
- "function resolver(bytes32 node) returns (address resolverAddress)"
3610
- ]);
3611
- var getResolverAddress = async (nodeUrl, network, domain) => {
3612
- if (!domain) throw new Error("Domain is required");
3613
- const node = ethers.namehash(domain);
3614
- const resolverResponse = await fetch(`${nodeUrl}/accounts/*`, {
3615
- method: "POST",
3616
- headers: { "content-type": "application/json" },
3617
- body: JSON.stringify({
3618
- clauses: [
3619
- {
3620
- to: chunkDBQR2OKX_cjs.getConfig(network).vetDomainsContractAddress,
3621
- data: nameInterface4.encodeFunctionData("resolver", [node])
3622
- }
3623
- ]
3624
- })
3625
- });
3626
- const [{ data: resolverData, reverted: noResolver }] = await resolverResponse.json();
3627
- if (noResolver) throw new Error("Failed to get resolver address");
3628
- const { resolverAddress } = nameInterface4.decodeFunctionResult(
3629
- "resolver",
3630
- resolverData
3631
- );
3632
- return resolverAddress;
3633
- };
3634
- var getResolverAddressQueryKey = (domain) => [
3635
- "VECHAIN_KIT",
3636
- "RESOLVER_ADDRESS",
3637
- domain
3638
- ];
3639
- var useGetResolverAddress = (domain) => {
3640
- const { network } = useVeChainKitConfig();
3641
- const nodeUrl = network.nodeUrl ?? chunkDBQR2OKX_cjs.getConfig(network.type).nodeUrl;
3642
- return reactQuery.useQuery({
3643
- queryKey: getResolverAddressQueryKey(domain),
3644
- queryFn: () => getResolverAddress(nodeUrl, network.type, domain),
3645
- enabled: !!domain && !!nodeUrl && !!network.type
3646
- });
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 chunkDBQR2OKX_cjs.getPicassoImage(address ?? "");
3662
- const domains = await domainsQuery.refetch();
3663
- if (!domains.data?.domain) return chunkDBQR2OKX_cjs.getPicassoImage(address);
3664
- if (domains.data.domain && avatarQuery.data)
3665
- return avatarQuery.data;
3666
- return chunkDBQR2OKX_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
- };
3674
3946
  var useBalances = ({ address = "" }) => {
3675
3947
  const { network } = useVeChainKitConfig();
3676
- const config = chunkDBQR2OKX_cjs.getConfig(network.type);
3948
+ const config = chunkQRYVPUVY_cjs.getConfig(network.type);
3677
3949
  const { data: vetData, isLoading: vetLoading } = useAccountBalance(address);
3678
3950
  const { data: vetUsdPrice, isLoading: vetUsdPriceLoading } = useGetTokenUsdPrice("VET");
3679
3951
  const { data: vthoUsdPrice, isLoading: vthoUsdPriceLoading } = useGetTokenUsdPrice("VTHO");
@@ -3834,7 +4106,7 @@ var vechain = viem.defineChain({
3834
4106
  });
3835
4107
  var vechainConnector = () => {
3836
4108
  return rainbowKit.toPrivyWalletConnector({
3837
- id: chunkDBQR2OKX_cjs.VECHAIN_PRIVY_APP_ID,
4109
+ id: chunkQRYVPUVY_cjs.VECHAIN_PRIVY_APP_ID,
3838
4110
  name: "VeChain",
3839
4111
  iconUrl: "https://imagedelivery.net/oHBRUd2clqykxgDWmeAyLg/661dd77c-2f9d-40e7-baa1-f4e24fd7bf00/icon",
3840
4112
  smartWalletMode: false
@@ -3889,7 +4161,7 @@ var usePrivyCrossAppSdk = () => {
3889
4161
  setIsConnecting(true);
3890
4162
  setConnectionError(null);
3891
4163
  const connector = connectors.find(
3892
- (c) => c.id === (appID || chunkDBQR2OKX_cjs.VECHAIN_PRIVY_APP_ID)
4164
+ (c) => c.id === (appID || chunkQRYVPUVY_cjs.VECHAIN_PRIVY_APP_ID)
3893
4165
  );
3894
4166
  if (!connector) {
3895
4167
  throw new Error("Connector not found");
@@ -3949,12 +4221,14 @@ var usePrivyCrossAppSdk = () => {
3949
4221
  // src/hooks/api/wallet/useWalletMetadata.ts
3950
4222
  var useWalletMetadata = (address, networkType) => {
3951
4223
  const { data: domain, isLoading: isLoadingVechainDomain } = useVechainDomain(address ?? "");
3952
- const { data: avatar, isLoading: isLoadingMetadata } = useGetAvatarOfAddress(address ?? "");
4224
+ const { data: avatar, isLoading: isLoadingMetadata } = useGetAvatar(
4225
+ domain?.domain ?? ""
4226
+ );
3953
4227
  const { data: textRecords, isLoading: isLoadingRecords } = useGetTextRecords(domain?.domain ?? "");
3954
- const headerUrl = textRecords?.header ? chunkDBQR2OKX_cjs.convertUriToUrl(textRecords.header, networkType) : null;
4228
+ const headerUrl = textRecords?.header ? chunkQRYVPUVY_cjs.convertUriToUrl(textRecords.header, networkType) : null;
3955
4229
  return {
3956
4230
  domain: domain?.domain,
3957
- image: avatar,
4231
+ image: avatar ?? chunkQRYVPUVY_cjs.getPicassoImage(address ?? ""),
3958
4232
  records: {
3959
4233
  ...textRecords,
3960
4234
  header: headerUrl
@@ -3983,7 +4257,7 @@ var useWallet = () => {
3983
4257
  const isConnectedWithDappKit = !!dappKitAccount;
3984
4258
  const isConnectedWithSocialLogin = authenticated && !!user;
3985
4259
  const isConnectedWithPrivy = isConnectedWithSocialLogin || isConnectedWithCrossApp;
3986
- const isConnectedWithVeChain = isConnectedWithSocialLogin && privy?.appId === chunkDBQR2OKX_cjs.VECHAIN_PRIVY_APP_ID || isConnectedWithCrossApp && connectionCache?.ecosystemApp?.appId === chunkDBQR2OKX_cjs.VECHAIN_PRIVY_APP_ID;
4260
+ const isConnectedWithVeChain = isConnectedWithSocialLogin && privy?.appId === chunkQRYVPUVY_cjs.VECHAIN_PRIVY_APP_ID || isConnectedWithCrossApp && connectionCache?.ecosystemApp?.appId === chunkQRYVPUVY_cjs.VECHAIN_PRIVY_APP_ID;
3987
4261
  const isLoading = isConnectingWithCrossApp || isReconnectingWithCrossApp || isLoadingLoginOAuth || !ready;
3988
4262
  const [isConnected, setIsConnected] = React10.useState(false);
3989
4263
  const connectionSource = isConnectedWithCrossApp ? {
@@ -4019,10 +4293,9 @@ var useWallet = () => {
4019
4293
  const connectedWalletAddress = isConnectedWithDappKit ? dappKitAccount : isConnectedWithCrossApp ? crossAppAddress : privyEmbeddedWalletAddress;
4020
4294
  const { data: smartAccount } = useSmartAccount(connectedWalletAddress);
4021
4295
  const activeAddress = isConnectedWithDappKit ? dappKitAccount : smartAccount?.address;
4022
- const activeAccountDomain = useVechainDomain(activeAddress ?? "");
4023
- const activeAccountAvatar = useGetAvatarOfAddress(activeAddress ?? "");
4024
- const activeAccountTextRecords = useGetTextRecords(
4025
- activeAccountDomain?.data?.domain
4296
+ const activeAccountMetadata = useWalletMetadata(
4297
+ activeAddress ?? "",
4298
+ network.type
4026
4299
  );
4027
4300
  const connectedMetadata = useWalletMetadata(
4028
4301
  connectedWalletAddress ?? "",
@@ -4034,10 +4307,10 @@ var useWallet = () => {
4034
4307
  );
4035
4308
  const account = activeAddress ? {
4036
4309
  address: activeAddress,
4037
- domain: activeAccountDomain?.data?.domain,
4038
- image: activeAccountAvatar.data,
4039
- isLoadingMetadata: activeAccountAvatar?.isLoading || activeAccountDomain?.isLoading || activeAccountTextRecords?.isLoading,
4040
- metadata: activeAccountTextRecords?.data
4310
+ domain: activeAccountMetadata.domain,
4311
+ image: activeAccountMetadata.image,
4312
+ isLoadingMetadata: activeAccountMetadata.isLoading,
4313
+ metadata: activeAccountMetadata.records
4041
4314
  } : null;
4042
4315
  const connectedWallet = connectedWalletAddress ? {
4043
4316
  address: connectedWalletAddress,
@@ -4049,7 +4322,7 @@ var useWallet = () => {
4049
4322
  const { data: smartAccountVersion } = useSmartAccountVersion(
4050
4323
  smartAccount?.address ?? ""
4051
4324
  );
4052
- const hasActiveSmartAccount = !!smartAccount?.address && !!account?.address && chunkDBQR2OKX_cjs.compareAddresses(smartAccount?.address, account?.address);
4325
+ const hasActiveSmartAccount = !!smartAccount?.address && !!account?.address && chunkQRYVPUVY_cjs.compareAddresses(smartAccount?.address, account?.address);
4053
4326
  const disconnect = React10.useCallback(async () => {
4054
4327
  try {
4055
4328
  setIsConnected(false);
@@ -4173,17 +4446,17 @@ var useCustomTokens = () => {
4173
4446
  };
4174
4447
  const isTokenIncluded = (address) => {
4175
4448
  return customTokens.some(
4176
- (t) => chunkDBQR2OKX_cjs.compareAddresses(t.address, address)
4449
+ (t) => chunkQRYVPUVY_cjs.compareAddresses(t.address, address)
4177
4450
  );
4178
4451
  };
4179
4452
  const isDefaultToken = (address) => {
4180
4453
  const contractAddresses = {
4181
4454
  vet: "0x",
4182
4455
  // VET has no contract address since it's the native token
4183
- vtho: chunkDBQR2OKX_cjs.getConfig(network.type).vthoContractAddress,
4184
- b3tr: chunkDBQR2OKX_cjs.getConfig(network.type).b3trContractAddress,
4185
- vot3: chunkDBQR2OKX_cjs.getConfig(network.type).vot3ContractAddress,
4186
- veDelegate: chunkDBQR2OKX_cjs.getConfig(network.type).veDelegate
4456
+ vtho: chunkQRYVPUVY_cjs.getConfig(network.type).vthoContractAddress,
4457
+ b3tr: chunkQRYVPUVY_cjs.getConfig(network.type).b3trContractAddress,
4458
+ vot3: chunkQRYVPUVY_cjs.getConfig(network.type).vot3ContractAddress,
4459
+ veDelegate: chunkQRYVPUVY_cjs.getConfig(network.type).veDelegate
4187
4460
  };
4188
4461
  return Object.values(contractAddresses).includes(address);
4189
4462
  };
@@ -4278,40 +4551,15 @@ var useAccountBalance = (address) => {
4278
4551
  return reactQuery.useQuery({
4279
4552
  queryKey: getAccountBalanceQueryKey(address),
4280
4553
  queryFn: () => getAccountBalance(thor, address),
4281
- enabled: !!address && chunkDBQR2OKX_cjs.isValidAddress(address),
4554
+ enabled: !!address && chunkQRYVPUVY_cjs.isValidAddress(address),
4282
4555
  refetchInterval: 1e4
4283
4556
  });
4284
4557
  };
4285
- var useRefreshMetadata = (domain, address) => {
4286
- const queryClient = reactQuery.useQueryClient();
4287
- const { network } = useVeChainKitConfig();
4288
- const refresh = async () => {
4289
- await queryClient.invalidateQueries({
4290
- queryKey: getAvatarQueryKey(domain ?? "")
4291
- });
4292
- await queryClient.refetchQueries({
4293
- queryKey: getAvatarQueryKey(domain ?? "")
4294
- });
4295
- await queryClient.invalidateQueries({
4296
- queryKey: getTextRecordsQueryKey(domain, network.type)
4297
- });
4298
- await queryClient.refetchQueries({
4299
- queryKey: getTextRecordsQueryKey(domain, network.type)
4300
- });
4301
- await queryClient.invalidateQueries({
4302
- queryKey: getAvatarOfAddressQueryKey(address)
4303
- });
4304
- await queryClient.refetchQueries({
4305
- queryKey: getAvatarOfAddressQueryKey(address)
4306
- });
4307
- };
4308
- return { refresh };
4309
- };
4310
4558
 
4311
4559
  // src/hooks/api/utility/useGetNodeUrl.ts
4312
4560
  var useGetNodeUrl = () => {
4313
4561
  const { network } = useVeChainKitConfig();
4314
- return network.nodeUrl ?? chunkDBQR2OKX_cjs.getConfig(network.type).nodeUrl;
4562
+ return network.nodeUrl ?? chunkQRYVPUVY_cjs.getConfig(network.type).nodeUrl;
4315
4563
  };
4316
4564
 
4317
4565
  // src/hooks/api/utility/useGetChainId.ts
@@ -4339,7 +4587,7 @@ var getCustomTokenBalance = async (thor, token, address) => {
4339
4587
  if (res.reverted) throw new Error("Reverted");
4340
4588
  const original = res.decoded[0];
4341
4589
  const scaled = viem.formatEther(original);
4342
- const formatted = scaled === "0" ? "0" : chunkDBQR2OKX_cjs.humanNumber(scaled);
4590
+ const formatted = scaled === "0" ? "0" : chunkQRYVPUVY_cjs.humanNumber(scaled);
4343
4591
  return {
4344
4592
  ...token,
4345
4593
  original,
@@ -4489,7 +4737,7 @@ var useDecodeFunctionSignature = (input) => {
4489
4737
  };
4490
4738
  var getNFTMetadataUri = async (networkType, thor, tokenID) => {
4491
4739
  if (!tokenID) return Promise.reject(new Error("tokenID not provided"));
4492
- const galaxyMemberContract = chunkDBQR2OKX_cjs.getConfig(networkType).galaxyMemberContractAddress;
4740
+ const galaxyMemberContract = chunkQRYVPUVY_cjs.getConfig(networkType).galaxyMemberContractAddress;
4493
4741
  const functionFragment2 = chunk5GZ7N47F_cjs.GalaxyMember__factory.createInterface().getFunction("tokenURI").format("json");
4494
4742
  const res = await thor.account(galaxyMemberContract).method(JSON.parse(functionFragment2)).call(tokenID);
4495
4743
  if (res.vmError) return Promise.reject(new Error(res.vmError));
@@ -4553,7 +4801,7 @@ var getAccountAddress = async (thor, ownerAddress, networkType) => {
4553
4801
  const functionFragment2 = SimpleAccountFactoryInterface.getFunction("getAccountAddress").format(
4554
4802
  "json"
4555
4803
  );
4556
- const res = await thor.account(chunkDBQR2OKX_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(ownerAddress);
4804
+ const res = await thor.account(chunkQRYVPUVY_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(ownerAddress);
4557
4805
  if (res.reverted) throw new Error("Reverted");
4558
4806
  return res.decoded[0];
4559
4807
  };
@@ -4579,7 +4827,7 @@ var getUpgradeRequiredForAccount = async (thor, contractAddress, targetVersion,
4579
4827
  const functionFragment2 = SimpleAccountFactoryInterface2.getFunction(
4580
4828
  "upgradeRequiredForAccount"
4581
4829
  ).format("json");
4582
- const res = await thor.account(chunkDBQR2OKX_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(contractAddress, targetVersion);
4830
+ const res = await thor.account(chunkQRYVPUVY_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(contractAddress, targetVersion);
4583
4831
  if (res.reverted) throw new Error("Reverted");
4584
4832
  return res.decoded[0];
4585
4833
  };
@@ -4634,7 +4882,7 @@ var getAccountImplementationAddress = async (thor, version, networkType) => {
4634
4882
  default:
4635
4883
  throw new Error("Invalid version, must be between 1 and 3");
4636
4884
  }
4637
- const res = await thor.account(chunkDBQR2OKX_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call();
4885
+ const res = await thor.account(chunkQRYVPUVY_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call();
4638
4886
  if (res.reverted) throw new Error("Reverted");
4639
4887
  return res.decoded[0];
4640
4888
  };
@@ -4665,7 +4913,7 @@ var getHasV1SmartAccount = async (thor, ownerAddress, networkType) => {
4665
4913
  const functionFragment2 = SimpleAccountFactoryInterface4.getFunction("hasLegacyAccount").format(
4666
4914
  "json"
4667
4915
  );
4668
- const res = await thor.account(chunkDBQR2OKX_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(ownerAddress);
4916
+ const res = await thor.account(chunkQRYVPUVY_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(ownerAddress);
4669
4917
  if (res.reverted) throw new Error("Reverted");
4670
4918
  return res.decoded[0];
4671
4919
  };
@@ -4690,7 +4938,7 @@ var getUpgradeRequired = async (thor, accountAddress, ownerAddress, targetVersio
4690
4938
  const functionFragment2 = SimpleAccountFactoryInterface5.getFunction("upgradeRequired").format(
4691
4939
  "json"
4692
4940
  );
4693
- const res = await thor.account(chunkDBQR2OKX_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(accountAddress, ownerAddress, targetVersion);
4941
+ const res = await thor.account(chunkQRYVPUVY_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(accountAddress, ownerAddress, targetVersion);
4694
4942
  if (res.reverted) throw new Error("Reverted");
4695
4943
  return res.decoded[0];
4696
4944
  };
@@ -4729,7 +4977,7 @@ var getAccountVersion = async (thor, accountAddress, ownerAddress, networkType)
4729
4977
  const functionFragment2 = SimpleAccountFactoryInterface6.getFunction("getAccountVersion").format(
4730
4978
  "json"
4731
4979
  );
4732
- const res = await thor.account(chunkDBQR2OKX_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(accountAddress, ownerAddress);
4980
+ const res = await thor.account(chunkQRYVPUVY_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call(accountAddress, ownerAddress);
4733
4981
  if (res.reverted) throw new Error("Reverted");
4734
4982
  return {
4735
4983
  version: res.decoded[0],
@@ -4764,7 +5012,7 @@ var getCurrentAccountImplementationVersion = async (thor, networkType) => {
4764
5012
  const functionFragment2 = SimpleAccountFactoryInterface7.getFunction(
4765
5013
  "currentAccountImplementationVersion"
4766
5014
  ).format("json");
4767
- const res = await thor.account(chunkDBQR2OKX_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call();
5015
+ const res = await thor.account(chunkQRYVPUVY_cjs.getConfig(networkType).accountFactoryAddress).method(JSON.parse(functionFragment2)).call();
4768
5016
  if (res.reverted) throw new Error("Reverted");
4769
5017
  return parseInt(res.decoded[0]);
4770
5018
  };
@@ -4789,8 +5037,8 @@ var getSmartAccount = async (thor, network, ownerAddress) => {
4789
5037
  return { address: void 0 };
4790
5038
  }
4791
5039
  const account = await thor.contracts.executeCall(
4792
- chunkDBQR2OKX_cjs.getConfig(network).accountFactoryAddress,
4793
- sdkCore.ABIContract.ofAbi(chunkA4NZ5AVL_cjs.SimpleAccountFactoryABI).getFunction(
5040
+ chunkQRYVPUVY_cjs.getConfig(network).accountFactoryAddress,
5041
+ sdkCore.ABIContract.ofAbi(chunkTV24UEQU_cjs.SimpleAccountFactoryABI).getFunction(
4794
5042
  "getAccountAddress"
4795
5043
  ),
4796
5044
  [ownerAddress]
@@ -5007,7 +5255,7 @@ var useUpgradeSmartAccount = ({
5007
5255
  const { refresh: refreshSmartAccountQueries } = useRefreshSmartAccountQueries();
5008
5256
  const { data: newImplementationAddress } = useAccountImplementationAddress(targetVersion);
5009
5257
  const buildClauses = React10.useCallback(async () => {
5010
- if (!smartAccountAddress || !chunkDBQR2OKX_cjs.isValidAddress(smartAccountAddress)) {
5258
+ if (!smartAccountAddress || !chunkQRYVPUVY_cjs.isValidAddress(smartAccountAddress)) {
5011
5259
  throw new Error("Invalid smart account address");
5012
5260
  }
5013
5261
  if (!newImplementationAddress) {
@@ -5038,7 +5286,7 @@ var useUpgradeSmartAccount = ({
5038
5286
  const result = useSendTransaction({
5039
5287
  privyUIOptions: {
5040
5288
  title: "Upgrade Smart Account",
5041
- description: `Upgrading your account at ${chunkDBQR2OKX_cjs.humanAddress(
5289
+ description: `Upgrading your account at ${chunkQRYVPUVY_cjs.humanAddress(
5042
5290
  smartAccountAddress
5043
5291
  )} to version ${targetVersion}`,
5044
5292
  buttonText: "Sign to continue"
@@ -5064,7 +5312,7 @@ var getErc20Balance = async (thor, tokenAddress, address) => {
5064
5312
  if (res.reverted) throw new Error("Reverted");
5065
5313
  const original = res.decoded[0];
5066
5314
  const scaled = ethers.formatEther(original);
5067
- const formatted = scaled === "0" ? "0" : chunkDBQR2OKX_cjs.humanNumber(scaled);
5315
+ const formatted = scaled === "0" ? "0" : chunkQRYVPUVY_cjs.humanNumber(scaled);
5068
5316
  return {
5069
5317
  original,
5070
5318
  scaled,
@@ -5205,7 +5453,7 @@ var AddressDisplay = ({
5205
5453
  react.Input,
5206
5454
  {
5207
5455
  cursor: "pointer",
5208
- value: showHumanAddress ? chunkDBQR2OKX_cjs.humanAddress(
5456
+ value: showHumanAddress ? chunkQRYVPUVY_cjs.humanAddress(
5209
5457
  wallet.address ?? "",
5210
5458
  8,
5211
5459
  7
@@ -5238,7 +5486,7 @@ var AddressDisplay = ({
5238
5486
  react.Input,
5239
5487
  {
5240
5488
  cursor: "pointer",
5241
- value: showHumanAddress ? chunkDBQR2OKX_cjs.humanAddress(wallet?.address ?? "", 6, 4) : wallet?.address,
5489
+ value: showHumanAddress ? chunkQRYVPUVY_cjs.humanAddress(wallet?.address ?? "", 6, 4) : wallet?.address,
5242
5490
  readOnly: true,
5243
5491
  fontSize: "sm",
5244
5492
  fontWeight: "700",
@@ -5267,7 +5515,7 @@ var AddressDisplay = ({
5267
5515
  // package.json
5268
5516
  var package_default = {
5269
5517
  name: "@vechain/vechain-kit",
5270
- version: "1.5.11",
5518
+ version: "1.5.13",
5271
5519
  private: false,
5272
5520
  homepage: "https://github.com/vechain/vechain-kit",
5273
5521
  repository: "github:vechain/vechain-kit",
@@ -5397,7 +5645,7 @@ var VersionFooter = ({ ...props }) => {
5397
5645
  ...props,
5398
5646
  children: [
5399
5647
  /* @__PURE__ */ jsxRuntime.jsx(
5400
- chunkA4NZ5AVL_cjs.VechainLogo,
5648
+ chunkTV24UEQU_cjs.VechainLogo,
5401
5649
  {
5402
5650
  isDark,
5403
5651
  w: "70px",
@@ -5574,13 +5822,13 @@ var AssetButton = ({
5574
5822
  ...buttonProps,
5575
5823
  children: [
5576
5824
  /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { children: [
5577
- chunkDBQR2OKX_cjs.TOKEN_LOGO_COMPONENTS[symbol] ? React10__default.default.cloneElement(chunkDBQR2OKX_cjs.TOKEN_LOGO_COMPONENTS[symbol], {
5825
+ chunkQRYVPUVY_cjs.TOKEN_LOGO_COMPONENTS[symbol] ? React10__default.default.cloneElement(chunkQRYVPUVY_cjs.TOKEN_LOGO_COMPONENTS[symbol], {
5578
5826
  boxSize: "24px",
5579
5827
  borderRadius: "full"
5580
5828
  }) : /* @__PURE__ */ jsxRuntime.jsx(
5581
5829
  react.Image,
5582
5830
  {
5583
- src: chunkDBQR2OKX_cjs.TOKEN_LOGOS[symbol],
5831
+ src: chunkQRYVPUVY_cjs.TOKEN_LOGOS[symbol],
5584
5832
  alt: `${symbol} logo`,
5585
5833
  boxSize: "24px",
5586
5834
  borderRadius: "full",
@@ -5665,8 +5913,8 @@ var AddressDisplayCard = ({
5665
5913
  ),
5666
5914
  /* @__PURE__ */ jsxRuntime.jsx(react.VStack, { align: "start", spacing: 0, children: domain ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
5667
5915
  /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontWeight: "medium", fontSize: "sm", children: domain }),
5668
- !hideAddress && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "xs", opacity: 0.5, children: chunkDBQR2OKX_cjs.humanAddress(address, 6, 4) })
5669
- ] }) : /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontWeight: "medium", fontSize: "sm", children: chunkDBQR2OKX_cjs.humanAddress(address, 6, 4) }) })
5916
+ !hideAddress && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "xs", opacity: 0.5, children: chunkQRYVPUVY_cjs.humanAddress(address, 6, 4) })
5917
+ ] }) : /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontWeight: "medium", fontSize: "sm", children: chunkQRYVPUVY_cjs.humanAddress(address, 6, 4) }) })
5670
5918
  ] }),
5671
5919
  /* @__PURE__ */ jsxRuntime.jsxs(
5672
5920
  react.VStack,
@@ -5721,16 +5969,23 @@ var ScrollToTopWrapper = ({ children, ...props }) => {
5721
5969
  return /* @__PURE__ */ jsxRuntime.jsx(react.VStack, { ...props, children });
5722
5970
  };
5723
5971
  var AccountAvatar = ({ wallet, props }) => {
5724
- if (wallet?.isLoadingMetadata) {
5972
+ const previousImageRef = React10.useRef(wallet?.image);
5973
+ React10.useEffect(() => {
5974
+ if (wallet?.image && !wallet.isLoadingMetadata) {
5975
+ previousImageRef.current = wallet.image;
5976
+ }
5977
+ }, [wallet?.image, wallet?.isLoadingMetadata]);
5978
+ if (wallet?.isLoadingMetadata && !previousImageRef.current) {
5725
5979
  return /* @__PURE__ */ jsxRuntime.jsx(react.Spinner, { size: "sm" });
5726
5980
  }
5727
5981
  return /* @__PURE__ */ jsxRuntime.jsx(
5728
5982
  react.Image,
5729
5983
  {
5730
- src: props?.src || wallet?.image,
5984
+ src: props?.src || wallet?.image || previousImageRef.current,
5731
5985
  alt: props?.alt || wallet?.domain,
5732
5986
  objectFit: "cover",
5733
5987
  rounded: "full",
5988
+ fallbackSrc: chunkQRYVPUVY_cjs.getPicassoImage(wallet?.address ?? ""),
5734
5989
  ...props
5735
5990
  }
5736
5991
  );
@@ -5782,7 +6037,7 @@ var TransactionButtonAndStatus = ({
5782
6037
  color: isDark ? "whiteAlpha.600" : "blackAlpha.600",
5783
6038
  textAlign: "center",
5784
6039
  width: "full",
5785
- href: `${chunkDBQR2OKX_cjs.getConfig(network.type).explorerUrl}/${txReceipt?.meta.txID}`,
6040
+ href: `${chunkQRYVPUVY_cjs.getConfig(network.type).explorerUrl}/${txReceipt?.meta.txID}`,
5786
6041
  target: "_blank",
5787
6042
  rel: "noopener noreferrer",
5788
6043
  children: t("View transaction on the explorer")
@@ -6073,7 +6328,7 @@ var VeChainWithPrivyLoginButton = ({ isDark, gridColumn }) => {
6073
6328
  {
6074
6329
  isDark,
6075
6330
  onClick: viewMoreLogin,
6076
- icon: isDark ? chunkA4NZ5AVL_cjs.VechainLogoLight : chunkA4NZ5AVL_cjs.VechainLogoDark,
6331
+ icon: isDark ? chunkTV24UEQU_cjs.VechainLogoLight : chunkTV24UEQU_cjs.VechainLogoDark,
6077
6332
  text: t("Use social login with VeChain"),
6078
6333
  variant: "loginWithVechain",
6079
6334
  rightIcon: /* @__PURE__ */ jsxRuntime.jsx(SocialIcons, {})
@@ -6104,7 +6359,7 @@ var VeChainLoginButton = ({ isDark, gridColumn }) => {
6104
6359
  {
6105
6360
  isDark,
6106
6361
  onClick: handleLoginWithVeChain,
6107
- icon: isDark ? chunkA4NZ5AVL_cjs.VechainLogoLight : chunkA4NZ5AVL_cjs.VechainLogoDark,
6362
+ icon: isDark ? chunkTV24UEQU_cjs.VechainLogoLight : chunkTV24UEQU_cjs.VechainLogoDark,
6108
6363
  text: t("Use social login with VeChain"),
6109
6364
  variant: "loginWithVechain",
6110
6365
  rightIcon: /* @__PURE__ */ jsxRuntime.jsx(SocialIcons, {})
@@ -6499,7 +6754,7 @@ var AccountDetailsButton = ({
6499
6754
  wordBreak: "break-word",
6500
6755
  whiteSpace: "normal",
6501
6756
  w: "full",
6502
- children: wallet?.domain ? chunkDBQR2OKX_cjs.humanDomain(wallet?.domain ?? "", 18, 0) : chunkDBQR2OKX_cjs.humanAddress(wallet?.address ?? "", 6, 4)
6757
+ children: wallet?.domain ? chunkQRYVPUVY_cjs.humanDomain(wallet?.domain ?? "", 18, 0) : chunkQRYVPUVY_cjs.humanAddress(wallet?.address ?? "", 6, 4)
6503
6758
  }
6504
6759
  )
6505
6760
  ] }),
@@ -6625,7 +6880,7 @@ var AccountSelector = ({
6625
6880
  props: { width: 7, height: 7 }
6626
6881
  }
6627
6882
  ),
6628
- /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: size, fontWeight: "500", children: chunkDBQR2OKX_cjs.humanDomain(wallet?.domain ?? "", 22, 0) || chunkDBQR2OKX_cjs.humanAddress(wallet?.address ?? "", 6, 4) })
6883
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: size, fontWeight: "500", children: chunkQRYVPUVY_cjs.humanDomain(wallet?.domain ?? "", 22, 0) || chunkQRYVPUVY_cjs.humanAddress(wallet?.address ?? "", 6, 4) })
6629
6884
  ] }),
6630
6885
  /* @__PURE__ */ jsxRuntime.jsx(
6631
6886
  react.Icon,
@@ -6690,17 +6945,17 @@ var AssetIcons = ({
6690
6945
  border: "2px solid #00000024",
6691
6946
  alignItems: "center",
6692
6947
  justifyContent: "center",
6693
- children: chunkDBQR2OKX_cjs.TOKEN_LOGO_COMPONENTS[token.symbol] ? React10__default.default.cloneElement(
6694
- chunkDBQR2OKX_cjs.TOKEN_LOGO_COMPONENTS[token.symbol],
6948
+ children: chunkQRYVPUVY_cjs.TOKEN_LOGO_COMPONENTS[token.symbol] ? React10__default.default.cloneElement(
6949
+ chunkQRYVPUVY_cjs.TOKEN_LOGO_COMPONENTS[token.symbol],
6695
6950
  {
6696
6951
  width: `${iconSize * 0.8}px`,
6697
6952
  height: `${iconSize * 0.8}px`,
6698
6953
  rounded: "full"
6699
6954
  }
6700
- ) : chunkDBQR2OKX_cjs.TOKEN_LOGOS[token.symbol] ? /* @__PURE__ */ jsxRuntime.jsx(
6955
+ ) : chunkQRYVPUVY_cjs.TOKEN_LOGOS[token.symbol] ? /* @__PURE__ */ jsxRuntime.jsx(
6701
6956
  react.Image,
6702
6957
  {
6703
- src: chunkDBQR2OKX_cjs.TOKEN_LOGOS[token.symbol],
6958
+ src: chunkQRYVPUVY_cjs.TOKEN_LOGOS[token.symbol],
6704
6959
  alt: `${token.symbol} logo`,
6705
6960
  width: `${iconSize * 0.8}px`,
6706
6961
  height: `${iconSize * 0.8}px`,
@@ -7060,7 +7315,7 @@ var QuickActionsSection = ({ mt, setCurrentContent }) => {
7060
7315
  const hasUnreadNotifications = notifications.some((n) => !n.isRead);
7061
7316
  const showRedDot = connection.isConnectedWithPrivy && upgradeRequired || hasUnreadNotifications;
7062
7317
  return /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { w: "full", mt, spacing: 4, children: [
7063
- /* @__PURE__ */ jsxRuntime.jsx(react.Heading, { size: "xs", fontWeight: "500", w: "full", opacity: 0.5, children: t("Activities") }),
7318
+ /* @__PURE__ */ jsxRuntime.jsx(react.Heading, { size: "xs", fontWeight: "500", w: "full", opacity: 0.5, children: t("Tools") }),
7064
7319
  /* @__PURE__ */ jsxRuntime.jsx(react.Grid, { templateColumns: "repeat(3, 1fr)", gap: 2, w: "full", children: QUICK_ACTIONS.map((action) => /* @__PURE__ */ jsxRuntime.jsx(
7065
7320
  QuickActionButton,
7066
7321
  {
@@ -7872,7 +8127,7 @@ var NetworkInfo = () => {
7872
8127
  InfoRow,
7873
8128
  {
7874
8129
  label: t("Node URL"),
7875
- value: network.nodeUrl || chunkDBQR2OKX_cjs.getConfig(network.type).nodeUrl
8130
+ value: network.nodeUrl || chunkQRYVPUVY_cjs.getConfig(network.type).nodeUrl
7876
8131
  }
7877
8132
  ),
7878
8133
  connection.isConnectedWithPrivy ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
@@ -8073,10 +8328,10 @@ var WalletSecuredBy = () => {
8073
8328
  children: [
8074
8329
  /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "xs", fontWeight: "800", children: t("Wallet secured by") }),
8075
8330
  /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { justify: "center", children: [
8076
- /* @__PURE__ */ jsxRuntime.jsx(chunkA4NZ5AVL_cjs.PrivyLogo, { isDark, w: "50px" }),
8331
+ /* @__PURE__ */ jsxRuntime.jsx(chunkTV24UEQU_cjs.PrivyLogo, { isDark, w: "50px" }),
8077
8332
  /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: pi.PiLineVertical, ml: 3 }),
8078
8333
  connection.isConnectedWithVeChain ? /* @__PURE__ */ jsxRuntime.jsx(
8079
- chunkA4NZ5AVL_cjs.VechainLogo,
8334
+ chunkTV24UEQU_cjs.VechainLogo,
8080
8335
  {
8081
8336
  isDark,
8082
8337
  w: "80px",
@@ -8109,7 +8364,7 @@ var WalletSecuredBy = () => {
8109
8364
  var EmbeddedWalletContent = ({ setCurrentContent }) => {
8110
8365
  const { t } = reactI18next.useTranslation();
8111
8366
  const { connectedWallet, connection } = useWallet();
8112
- const walletImage = chunkDBQR2OKX_cjs.getPicassoImage(connectedWallet?.address ?? "");
8367
+ const walletImage = chunkQRYVPUVY_cjs.getPicassoImage(connectedWallet?.address ?? "");
8113
8368
  const { getConnectionCache } = useCrossAppConnectionCache();
8114
8369
  const connectionCache = getConnectionCache();
8115
8370
  const { darkMode: isDark } = useVeChainKitConfig();
@@ -8347,7 +8602,7 @@ var SendTokenContent = ({
8347
8602
  mode: "onChange"
8348
8603
  });
8349
8604
  const { toAddressOrDomain } = watch();
8350
- const { domain: resolvedDomain, address: resolvedAddress } = dappKitReact.useVechainDomain({ addressOrDomain: toAddressOrDomain });
8605
+ const { data: resolvedDomainData } = useVechainDomain(toAddressOrDomain);
8351
8606
  const handleSetMaxAmount = () => {
8352
8607
  if (selectedToken) {
8353
8608
  setValue("amount", selectedToken.numericBalance);
@@ -8355,7 +8610,7 @@ var SendTokenContent = ({
8355
8610
  };
8356
8611
  const onSubmit = async (data) => {
8357
8612
  if (!selectedToken) return;
8358
- const isValidReceiver = !chunkDBQR2OKX_cjs.compareAddresses(resolvedAddress ?? ethers.ZeroAddress, ethers.ZeroAddress) || chunkDBQR2OKX_cjs.isValidAddress(data.toAddressOrDomain);
8613
+ const isValidReceiver = resolvedDomainData?.isValidAddressOrDomain && (!resolvedDomainData?.domain || resolvedDomainData?.domain && resolvedDomainData?.isPrimaryDomain);
8359
8614
  if (!isValidReceiver) {
8360
8615
  setError("toAddressOrDomain", {
8361
8616
  type: "manual",
@@ -8379,8 +8634,8 @@ var SendTokenContent = ({
8379
8634
  type: "send-token-summary",
8380
8635
  props: {
8381
8636
  toAddressOrDomain: data.toAddressOrDomain,
8382
- resolvedDomain,
8383
- resolvedAddress,
8637
+ resolvedDomain: resolvedDomainData?.domain,
8638
+ resolvedAddress: resolvedDomainData?.address,
8384
8639
  amount: data.amount,
8385
8640
  selectedToken,
8386
8641
  setCurrentContent
@@ -8468,8 +8723,8 @@ var SendTokenContent = ({
8468
8723
  bg: isDark ? "whiteAlpha.300" : "blackAlpha.300"
8469
8724
  },
8470
8725
  onClick: () => setIsSelectingToken(true),
8471
- leftIcon: chunkDBQR2OKX_cjs.TOKEN_LOGO_COMPONENTS[selectedToken.symbol] ? React10__default.default.cloneElement(
8472
- chunkDBQR2OKX_cjs.TOKEN_LOGO_COMPONENTS[selectedToken.symbol],
8726
+ leftIcon: chunkQRYVPUVY_cjs.TOKEN_LOGO_COMPONENTS[selectedToken.symbol] ? React10__default.default.cloneElement(
8727
+ chunkQRYVPUVY_cjs.TOKEN_LOGO_COMPONENTS[selectedToken.symbol],
8473
8728
  {
8474
8729
  boxSize: "20px",
8475
8730
  borderRadius: "full"
@@ -8477,7 +8732,7 @@ var SendTokenContent = ({
8477
8732
  ) : /* @__PURE__ */ jsxRuntime.jsx(
8478
8733
  react.Image,
8479
8734
  {
8480
- src: chunkDBQR2OKX_cjs.TOKEN_LOGOS[selectedToken.symbol],
8735
+ src: chunkQRYVPUVY_cjs.TOKEN_LOGOS[selectedToken.symbol],
8481
8736
  alt: `${selectedToken.symbol} logo`,
8482
8737
  boxSize: "20px",
8483
8738
  borderRadius: "full",
@@ -8653,7 +8908,7 @@ var SendTokenSummaryContent = ({
8653
8908
  }) => {
8654
8909
  const { t } = reactI18next.useTranslation();
8655
8910
  const { account, connection, connectedWallet } = useWallet();
8656
- const { data: avatar } = useGetAvatar(resolvedDomain ?? "");
8911
+ const { data: avatar } = useGetAvatarOfAddress(resolvedAddress ?? "");
8657
8912
  const { network } = useVeChainKitConfig();
8658
8913
  const { data: upgradeRequired } = useUpgradeRequired(
8659
8914
  account?.address ?? "",
@@ -8665,7 +8920,7 @@ var SendTokenSummaryContent = ({
8665
8920
  if (avatar) {
8666
8921
  return avatar;
8667
8922
  }
8668
- return chunkDBQR2OKX_cjs.getPicassoImage(resolvedAddress || toAddressOrDomain);
8923
+ return chunkQRYVPUVY_cjs.getPicassoImage(resolvedAddress || toAddressOrDomain);
8669
8924
  }, [avatar, network.type, resolvedAddress, toAddressOrDomain]);
8670
8925
  const {
8671
8926
  sendTransaction: transferERC20,
@@ -9001,7 +9256,7 @@ var DomainListItem = ({
9001
9256
  props: {
9002
9257
  width: "40px",
9003
9258
  height: "40px",
9004
- src: metadata.image ?? chunkDBQR2OKX_cjs.getPicassoImage(domain.name),
9259
+ src: metadata.image ?? chunkQRYVPUVY_cjs.getPicassoImage(domain.name),
9005
9260
  alt: domain.name
9006
9261
  }
9007
9262
  }
@@ -9042,9 +9297,76 @@ var DomainListItem = ({
9042
9297
  domain.name
9043
9298
  );
9044
9299
  };
9300
+ var UnsetDomainListItem = ({ onUnset }) => {
9301
+ const { darkMode: isDark } = useVeChainKitConfig();
9302
+ const { t } = reactI18next.useTranslation();
9303
+ return /* @__PURE__ */ jsxRuntime.jsx(
9304
+ react.ListItem,
9305
+ {
9306
+ p: 4,
9307
+ bg: isDark ? "#1f1f1e" : "white",
9308
+ borderRadius: "xl",
9309
+ cursor: "pointer",
9310
+ opacity: 1,
9311
+ border: `1px solid ${isDark ? "#2d2d2d" : "#eaeaea"}`,
9312
+ _hover: {
9313
+ bg: isDark ? "#252525" : "gray.50",
9314
+ borderColor: isDark ? "#3d3d3d" : "#dedede",
9315
+ color: "red.400"
9316
+ },
9317
+ onClick: onUnset,
9318
+ transition: "all 0.2s",
9319
+ role: "button",
9320
+ "aria-label": t("Unset current domain"),
9321
+ children: /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { spacing: 3, align: "center", children: [
9322
+ /* @__PURE__ */ jsxRuntime.jsx(
9323
+ react.Box,
9324
+ {
9325
+ width: "40px",
9326
+ height: "40px",
9327
+ borderRadius: "full",
9328
+ display: "flex",
9329
+ alignItems: "center",
9330
+ justifyContent: "center",
9331
+ bg: isDark ? "whiteAlpha.100" : "gray.100",
9332
+ children: /* @__PURE__ */ jsxRuntime.jsx(
9333
+ react.Icon,
9334
+ {
9335
+ as: io5.IoTrashOutline,
9336
+ fontSize: "18px",
9337
+ color: isDark ? "red.300" : "red.500"
9338
+ }
9339
+ )
9340
+ }
9341
+ ),
9342
+ /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { align: "start", spacing: 0, flex: 1, children: [
9343
+ /* @__PURE__ */ jsxRuntime.jsx(
9344
+ react.Text,
9345
+ {
9346
+ color: isDark ? "whiteAlpha.900" : "gray.700",
9347
+ fontSize: "md",
9348
+ fontWeight: "500",
9349
+ children: t("Unset current domain")
9350
+ }
9351
+ ),
9352
+ /* @__PURE__ */ jsxRuntime.jsx(
9353
+ react.Text,
9354
+ {
9355
+ fontSize: "sm",
9356
+ color: isDark ? "whiteAlpha.600" : "blackAlpha.600",
9357
+ children: t("Remove your current domain name")
9358
+ }
9359
+ )
9360
+ ] })
9361
+ ] })
9362
+ },
9363
+ "unset-domain-list-item"
9364
+ );
9365
+ };
9045
9366
  var ExistingDomainsList = ({
9046
9367
  domains,
9047
9368
  onDomainSelect,
9369
+ onUnsetDomain,
9048
9370
  isLoading
9049
9371
  }) => {
9050
9372
  const { t } = reactI18next.useTranslation();
@@ -9078,15 +9400,23 @@ var ExistingDomainsList = ({
9078
9400
  ]
9079
9401
  }
9080
9402
  ),
9081
- /* @__PURE__ */ jsxRuntime.jsx(react.AccordionPanel, { pb: 4, pt: 2, children: /* @__PURE__ */ jsxRuntime.jsx(react.List, { spacing: 2, children: domains.map((domain) => /* @__PURE__ */ jsxRuntime.jsx(
9082
- DomainListItem,
9083
- {
9084
- domain,
9085
- isCurrentDomain: domain.name === account?.domain,
9086
- onSelect: onDomainSelect
9087
- },
9088
- domain.name
9089
- )) }) })
9403
+ /* @__PURE__ */ jsxRuntime.jsx(react.AccordionPanel, { pb: 4, pt: 2, children: /* @__PURE__ */ jsxRuntime.jsxs(react.List, { spacing: 2, children: [
9404
+ domains.map((domain) => /* @__PURE__ */ jsxRuntime.jsx(
9405
+ DomainListItem,
9406
+ {
9407
+ domain,
9408
+ isCurrentDomain: domain.name === account?.domain,
9409
+ onSelect: onDomainSelect
9410
+ },
9411
+ domain.name
9412
+ )),
9413
+ account?.domain && /* @__PURE__ */ jsxRuntime.jsx(
9414
+ UnsetDomainListItem,
9415
+ {
9416
+ onUnset: onUnsetDomain
9417
+ }
9418
+ )
9419
+ ] }) })
9090
9420
  ] }) }) });
9091
9421
  };
9092
9422
  var ChooseNameSearchContent = ({
@@ -9168,17 +9498,33 @@ var ChooseNameSearchContent = ({
9168
9498
  }
9169
9499
  };
9170
9500
  const handleDomainSelect = (selectedDomain) => {
9171
- const baseName = selectedDomain.split(".")[0];
9501
+ const parts3 = selectedDomain.split(".");
9502
+ const baseName = parts3[0];
9503
+ const domainType = parts3.length > 2 ? `${parts3[1]}.${parts3[2]}` : "vet";
9172
9504
  setCurrentContent({
9173
9505
  type: "choose-name-summary",
9174
9506
  props: {
9175
9507
  name: baseName,
9508
+ domainType,
9176
9509
  isOwnDomain: true,
9177
9510
  setCurrentContent,
9178
9511
  initialContentSource
9179
9512
  }
9180
9513
  });
9181
9514
  };
9515
+ const handleUnsetDomain = () => {
9516
+ setCurrentContent({
9517
+ type: "choose-name-summary",
9518
+ props: {
9519
+ name: "",
9520
+ domainType: "",
9521
+ isOwnDomain: false,
9522
+ isUnsetting: true,
9523
+ setCurrentContent,
9524
+ initialContentSource
9525
+ }
9526
+ });
9527
+ };
9182
9528
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9183
9529
  /* @__PURE__ */ jsxRuntime.jsxs(StickyHeaderContainer, { children: [
9184
9530
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalHeader, { children: t("Choose Name") }),
@@ -9196,6 +9542,7 @@ var ChooseNameSearchContent = ({
9196
9542
  {
9197
9543
  domains: allUserDomains,
9198
9544
  onDomainSelect: handleDomainSelect,
9545
+ onUnsetDomain: handleUnsetDomain,
9199
9546
  isLoading: isLoadingOwnedDomains
9200
9547
  }
9201
9548
  ),
@@ -9267,7 +9614,9 @@ var ChooseNameSearchContent = ({
9267
9614
  var ChooseNameSummaryContent = ({
9268
9615
  setCurrentContent,
9269
9616
  name,
9617
+ domainType = "veworld.vet",
9270
9618
  isOwnDomain,
9619
+ isUnsetting = false,
9271
9620
  initialContentSource = "settings"
9272
9621
  }) => {
9273
9622
  const { t } = reactI18next.useTranslation();
@@ -9278,34 +9627,45 @@ var ChooseNameSummaryContent = ({
9278
9627
  3
9279
9628
  );
9280
9629
  const { open: openUpgradeSmartAccountModal } = useUpgradeSmartAccountModal();
9630
+ const unsetDomainHook = useUnsetDomain({
9631
+ onSuccess: () => handleSuccess()
9632
+ });
9633
+ const isVeWorldSubdomain = domainType.endsWith("veworld.vet");
9634
+ const veWorldSubdomainHook = useClaimVeWorldSubdomain({
9635
+ subdomain: name,
9636
+ domain: domainType,
9637
+ alreadyOwned: isOwnDomain,
9638
+ onSuccess: () => handleSuccess()
9639
+ });
9640
+ const vetDomainHook = useClaimVetDomain({
9641
+ domain: name,
9642
+ alreadyOwned: isOwnDomain,
9643
+ onSuccess: () => handleSuccess()
9644
+ });
9281
9645
  const {
9282
9646
  sendTransaction,
9283
9647
  txReceipt,
9284
9648
  error: txError,
9285
9649
  isWaitingForWalletConfirmation,
9286
9650
  isTransactionPending
9287
- } = useClaimVeWorldSubdomain({
9288
- subdomain: name,
9289
- domain: "veworld.vet",
9290
- alreadyOwned: isOwnDomain,
9291
- onSuccess: () => {
9292
- setCurrentContent({
9293
- type: "successful-operation",
9294
- props: {
9295
- setCurrentContent,
9296
- txId: txReceipt?.meta.txID,
9297
- title: t("Name claimed"),
9298
- description: t(
9299
- `Your {{name}}.veworld.vet name has been claimed successfully.`,
9300
- { name }
9301
- ),
9302
- onDone: () => {
9303
- setCurrentContent(initialContentSource);
9304
- }
9651
+ } = isUnsetting ? unsetDomainHook : isVeWorldSubdomain ? veWorldSubdomainHook : vetDomainHook;
9652
+ const handleSuccess = () => {
9653
+ setCurrentContent({
9654
+ type: "successful-operation",
9655
+ props: {
9656
+ setCurrentContent,
9657
+ txId: txReceipt?.meta.txID,
9658
+ title: isUnsetting ? t("Domain unset") : t("Domain set"),
9659
+ description: isUnsetting ? t("Your domain has been unset successfully.") : t(
9660
+ `Your address has been successfully set to {{name}}.{{domainType}}.`,
9661
+ { name, domainType }
9662
+ ),
9663
+ onDone: () => {
9664
+ setCurrentContent(initialContentSource);
9305
9665
  }
9306
- });
9307
- }
9308
- });
9666
+ }
9667
+ });
9668
+ };
9309
9669
  const handleConfirm = async () => {
9310
9670
  if (upgradeRequired) {
9311
9671
  openUpgradeSmartAccountModal();
@@ -9319,7 +9679,7 @@ var ChooseNameSummaryContent = ({
9319
9679
  };
9320
9680
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
9321
9681
  /* @__PURE__ */ jsxRuntime.jsxs(StickyHeaderContainer, { children: [
9322
- /* @__PURE__ */ jsxRuntime.jsx(react.ModalHeader, { children: t("Confirm Name") }),
9682
+ /* @__PURE__ */ jsxRuntime.jsx(react.ModalHeader, { children: isUnsetting ? t("Confirm Unset Domain") : t("Confirm Name") }),
9323
9683
  /* @__PURE__ */ jsxRuntime.jsx(
9324
9684
  ModalBackButton,
9325
9685
  {
@@ -9337,8 +9697,12 @@ var ChooseNameSummaryContent = ({
9337
9697
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalCloseButton, { isDisabled: isTransactionPending })
9338
9698
  ] }),
9339
9699
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalBody, { children: /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { spacing: 4, w: "full", textAlign: "center", children: [
9340
- /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "lg", children: t("Are you sure you want to set your domain name to") }),
9341
- /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "xl", fontWeight: "bold", color: "blue.500", children: `${name}.veworld.vet` })
9700
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "lg", children: isUnsetting ? t(
9701
+ "Are you sure you want to unset your current domain?"
9702
+ ) : t(
9703
+ "Are you sure you want to set your domain name to"
9704
+ ) }),
9705
+ !isUnsetting && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "xl", fontWeight: "bold", color: "blue.500", children: `${name}.${domainType}` })
9342
9706
  ] }) }),
9343
9707
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalFooter, { gap: 4, w: "full", children: /* @__PURE__ */ jsxRuntime.jsx(
9344
9708
  TransactionButtonAndStatus,
@@ -9347,7 +9711,7 @@ var ChooseNameSummaryContent = ({
9347
9711
  isSubmitting: isTransactionPending,
9348
9712
  isTxWaitingConfirmation: isWaitingForWalletConfirmation,
9349
9713
  onConfirm: handleConfirm,
9350
- transactionPendingText: t("Claiming name..."),
9714
+ transactionPendingText: isUnsetting ? t("Unsetting current domain...") : t("Claiming name..."),
9351
9715
  txReceipt,
9352
9716
  buttonText: t("Confirm"),
9353
9717
  isDisabled: isTransactionPending
@@ -9560,6 +9924,7 @@ var en_default = {
9560
9924
  "Are you sure you want to disconnect your wallet?": "Are you sure you want to disconnect your wallet?",
9561
9925
  "Are you sure you want to set your domain name to": "Are you sure you want to set your domain name to",
9562
9926
  "Are you sure you want to unlink {{accountType}} as a login method linked to {{accountDescription}}?": "Are you sure you want to unlink {{accountType}} as a login method linked to {{accountDescription}}?",
9927
+ "Are you sure you want to unset your current domain?": "Are you sure you want to unset your current domain?",
9563
9928
  Assets: "Assets",
9564
9929
  At: "At",
9565
9930
  "B3TR is the incentive token of VeBetterDAO, built on VechainThor blockchain. It has a capped supply of 1 billion tokens, emitted weekly over 12 years. B3TR is used for rewards, governance, and backing VOT3 tokens 1:1. It supports sustainability applications and DAO treasury management.": "B3TR is the incentive token of VeBetterDAO, built on VechainThor blockchain. It has a capped supply of 1 billion tokens, emitted weekly over 12 years. B3TR is used for rewards, governance, and backing VOT3 tokens 1:1. It supports sustainability applications and DAO treasury management.",
@@ -9599,6 +9964,7 @@ var en_default = {
9599
9964
  Confirm: "Confirm",
9600
9965
  "Confirm Changes": "Confirm Changes",
9601
9966
  "Confirm Name": "Confirm Name",
9967
+ "Confirm Unset Domain": "Confirm Unset Domain",
9602
9968
  "Confirm the transaction in your wallet to complete it.": "Confirm the transaction in your wallet to complete it.",
9603
9969
  "Confirm transaction": "Confirm transaction",
9604
9970
  "Connect Wallet": "Connect Wallet",
@@ -9652,6 +10018,8 @@ var en_default = {
9652
10018
  Discord: "Discord",
9653
10019
  "Display Name": "Display Name",
9654
10020
  "Display name must be less than 25 characters": "Display name must be less than 25 characters",
10021
+ "Domain set": "Domain set",
10022
+ "Domain unset": "Domain unset",
9655
10023
  Done: "Done",
9656
10024
  Ecosystem: "Ecosystem",
9657
10025
  "Ecosystem Login": "Ecosystem Login",
@@ -9809,6 +10177,7 @@ var en_default = {
9809
10177
  Remove: "Remove",
9810
10178
  "Remove Login Method": "Remove Login Method",
9811
10179
  "Remove from shortcuts": "Remove from shortcuts",
10180
+ "Remove your current domain name": "Remove your current domain name",
9812
10181
  "Resend code": "Resend code",
9813
10182
  Retry: "Retry",
9814
10183
  "Safari blocked the login window. Please try again, it should work now.": "Safari blocked the login window. Please try again, it should work now.",
@@ -9888,6 +10257,7 @@ var en_default = {
9888
10257
  "Token Contract Address": "Token Contract Address",
9889
10258
  "Token already added": "Token already added",
9890
10259
  "Tokens transferred successfully.": "Tokens transferred successfully.",
10260
+ Tools: "Tools",
9891
10261
  "Total balance": "Total balance",
9892
10262
  "Transaction completed!": "Transaction completed!",
9893
10263
  "Transaction failed": "Transaction failed",
@@ -9907,6 +10277,11 @@ var en_default = {
9907
10277
  "Unknown error": "Unknown error",
9908
10278
  "Unknown status": "Unknown status",
9909
10279
  "Unlink Login Method": "Unlink Login Method",
10280
+ "Unset current domain": "Unset current domain",
10281
+ "Unsetting current domain": "Unsetting current domain",
10282
+ "Unsetting current domain...": "Unsetting current domain...",
10283
+ "Unsetting your current VeChain nickname": "Unsetting your current VeChain nickname",
10284
+ "Unsetting your current domain": "Unsetting your current domain",
9910
10285
  "Update profile image": "Update profile image",
9911
10286
  "Upgrade Now": "Upgrade Now",
9912
10287
  "Upgrade Smart Account to V3": "Upgrade Smart Account to V3",
@@ -9974,8 +10349,10 @@ var en_default = {
9974
10349
  "You own a Smart Account and it has priority over your wallet.": "You own a Smart Account and it has priority over your wallet.",
9975
10350
  "Your account has been successfully upgraded to the latest version. You can now enjoy a better user experience, lower gas costs, and enhanced security.": "Your account has been successfully upgraded to the latest version. You can now enjoy a better user experience, lower gas costs, and enhanced security.",
9976
10351
  "Your accounts": "Your accounts",
10352
+ "Your address has been successfully set to {{name}}.{{domainType}}.": "Your address has been successfully set to {{name}}.{{domainType}}.",
9977
10353
  "Your changes have been saved successfully.": "Your changes have been saved successfully.",
9978
10354
  "Your customizations are linked to your .vet domain name, making them portable across different applications.": "Your customizations are linked to your .vet domain name, making them portable across different applications.",
10355
+ "Your domain has been unset successfully.": "Your domain has been unset successfully.",
9979
10356
  "Your embedded wallet": "Your embedded wallet",
9980
10357
  "Your existing domains": "Your existing domains",
9981
10358
  "Your mobile browser blocked the login window.": "Your mobile browser blocked the login window.",
@@ -9992,6 +10369,7 @@ var en_default = {
9992
10369
  "Your wallet is secured by a private key. The private key is a unique code that allows you to access your wallet. It is stored in your browser and is used to sign transactions. The private key is never shared with anyone, including the VeChain Foundation.": "Your wallet is secured by a private key. The private key is a unique code that allows you to access your wallet. It is stored in your browser and is used to sign transactions. The private key is never shared with anyone, including the VeChain Foundation.",
9993
10370
  "Your wallet security depends on how you access it. With self-custody options like the VeWorld extension, mobile app, or hardware wallet, you have complete control over your private keys. This extension itself has no access to your private keys. When logging in with social accounts or VeChain, your wallet is created and secured by Privy and managed by VeChain, providing an easier onboarding experience while maintaining security.": "Your wallet security depends on how you access it. With self-custody options like the VeWorld extension, mobile app, or hardware wallet, you have complete control over your private keys. This extension itself has no access to your private keys. When logging in with social accounts or VeChain, your wallet is created and secured by Privy and managed by VeChain, providing an easier onboarding experience while maintaining security.",
9994
10371
  "Your {{name}}.veworld.vet name has been claimed successfully.": "Your {{name}}.veworld.vet name has been claimed successfully.",
10372
+ "Your {{name}}.{{domainType}} name has been claimed successfully.": "Your {{name}}.{{domainType}} name has been claimed successfully.",
9995
10373
  here: "here",
9996
10374
  of: "of",
9997
10375
  on: "on",
@@ -10048,6 +10426,7 @@ var de_default = {
10048
10426
  "Are you sure you want to disconnect your wallet?": "Sind Sie sicher, dass Sie Ihr Wallet trennen m\xF6chten?",
10049
10427
  "Are you sure you want to set your domain name to": "Sind Sie sicher, dass Sie Ihren Domainnamen auf",
10050
10428
  "Are you sure you want to unlink {{accountType}} as a login method linked to {{accountDescription}}?": "Sind Sie sicher, dass Sie {{accountType}} als Anmeldemethode, die mit {{accountDescription}} verkn\xFCpft ist, trennen m\xF6chten?",
10429
+ "Are you sure you want to unset your current domain?": "Sind Sie sicher, dass Sie Ihre aktuelle Domain aufheben m\xF6chten?",
10051
10430
  Assets: "Verm\xF6genswerte",
10052
10431
  At: "Am",
10053
10432
  "B3TR is the incentive token of VeBetterDAO, built on VechainThor blockchain. It has a capped supply of 1 billion tokens, emitted weekly over 12 years. B3TR is used for rewards, governance, and backing VOT3 tokens 1:1. It supports sustainability applications and DAO treasury management.": "B3TR ist der Anreiz-Token von VeBetterDAO, aufgebaut auf der VechainThor-Blockchain. Es gibt eine Obergrenze von 1 Milliarde Tokens, die w\xF6chentlich \xFCber 12 Jahre hinweg ausgegeben werden. B3TR wird f\xFCr Belohnungen, Governance und die Unterst\xFCtzung von VOT3-Token im Verh\xE4ltnis 1:1 verwendet. Es unterst\xFCtzt Nachhaltigkeitsanwendungen und das Verwaltung der DAO-Kasse.",
@@ -10087,6 +10466,7 @@ var de_default = {
10087
10466
  Confirm: "Best\xE4tigen",
10088
10467
  "Confirm Changes": "\xC4nderungen best\xE4tigen",
10089
10468
  "Confirm Name": "Name best\xE4tigen",
10469
+ "Confirm Unset Domain": "L\xF6schung der Domain best\xE4tigen",
10090
10470
  "Confirm the transaction in your wallet to complete it.": "Best\xE4tigen Sie die Transaktion in Ihrer Wallet, um sie abzuschlie\xDFen.",
10091
10471
  "Confirm transaction": "Transaktion best\xE4tigen",
10092
10472
  "Connect Wallet": "Wallet verbinden",
@@ -10140,6 +10520,8 @@ var de_default = {
10140
10520
  Discord: "Discord",
10141
10521
  "Display Name": "Anzeigename",
10142
10522
  "Display name must be less than 25 characters": "Der Anzeigename muss weniger als 25 Zeichen umfassen",
10523
+ "Domain set": "Domain eingerichtet",
10524
+ "Domain unset": "Domain aufgehoben",
10143
10525
  Done: "Fertig",
10144
10526
  Ecosystem: "\xD6kosystem",
10145
10527
  "Ecosystem Login": "\xD6kosystem-Anmeldung",
@@ -10297,6 +10679,7 @@ var de_default = {
10297
10679
  Remove: "Entfernen",
10298
10680
  "Remove Login Method": "Anmeldemethode entfernen",
10299
10681
  "Remove from shortcuts": "Aus den Verkn\xFCpfungen entfernen",
10682
+ "Remove your current domain name": "Entfernen Sie Ihren aktuellen Domainnamen",
10300
10683
  "Resend code": "Code erneut senden",
10301
10684
  Retry: "Erneut versuchen",
10302
10685
  "Safari blocked the login window. Please try again, it should work now.": "Safari hat das Anmeldefenster blockiert. Bitte versuchen Sie es erneut, jetzt sollte es funktionieren.",
@@ -10376,6 +10759,7 @@ var de_default = {
10376
10759
  "Token Contract Address": "Token-Vertragsadresse",
10377
10760
  "Token already added": "Token bereits hinzugef\xFCgt",
10378
10761
  "Tokens transferred successfully.": "Tokens erfolgreich \xFCbertragen.",
10762
+ Tools: "Werkzeuge",
10379
10763
  "Total balance": "Gesamtguthaben",
10380
10764
  "Transaction completed!": "Transaktion abgeschlossen!",
10381
10765
  "Transaction failed": "Transaktion fehlgeschlagen",
@@ -10395,6 +10779,11 @@ var de_default = {
10395
10779
  "Unknown error": "Unbekannter Fehler",
10396
10780
  "Unknown status": "Unbekannter Status",
10397
10781
  "Unlink Login Method": "Anmeldemethode entfernen",
10782
+ "Unset current domain": "Aktuelle Domain aufheben",
10783
+ "Unsetting current domain": "Aufheben der aktuellen Domain",
10784
+ "Unsetting current domain...": "Aktuelle Domain wird aufgehoben...",
10785
+ "Unsetting your current VeChain nickname": "Aufheben Ihres aktuellen VeChain-Spitznamens",
10786
+ "Unsetting your current domain": "Aufheben Ihrer aktuellen Domain",
10398
10787
  "Update profile image": "Profilbild aktualisieren",
10399
10788
  "Upgrade Now": "Jetzt upgraden",
10400
10789
  "Upgrade Smart Account to V3": "Smart Account auf V3 upgraden",
@@ -10462,8 +10851,10 @@ var de_default = {
10462
10851
  "You own a Smart Account and it has priority over your wallet.": "Sie besitzen einen Smart Account und dieser hat Vorrang vor Ihrer Wallet.",
10463
10852
  "Your account has been successfully upgraded to the latest version. You can now enjoy a better user experience, lower gas costs, and enhanced security.": "Ihr Konto wurde erfolgreich auf die neueste Version aktualisiert. Sie k\xF6nnen nun eine bessere Benutzererfahrung, niedrigere Gaskosten und erh\xF6hte Sicherheit genie\xDFen.",
10464
10853
  "Your accounts": "Ihre Konten",
10854
+ "Your address has been successfully set to {{name}}.{{domainType}}.": "Ihre Adresse wurde erfolgreich auf {{name}}.{{domainType}} gesetzt.",
10465
10855
  "Your changes have been saved successfully.": "Ihre \xC4nderungen wurden erfolgreich gespeichert.",
10466
10856
  "Your customizations are linked to your .vet domain name, making them portable across different applications.": "Ihre Anpassungen sind mit Ihrem .vet-Domainnamen verkn\xFCpft, wodurch sie in verschiedenen Anwendungen tragbar sind.",
10857
+ "Your domain has been unset successfully.": "Ihre Domain wurde erfolgreich aufgehoben.",
10467
10858
  "Your embedded wallet": "Ihr eingebettetes Portemonnaie",
10468
10859
  "Your existing domains": "Ihre vorhandenen Domains",
10469
10860
  "Your mobile browser blocked the login window.": "Ihr mobiler Browser hat das Anmeldefenster blockiert.",
@@ -10480,6 +10871,7 @@ var de_default = {
10480
10871
  "Your wallet is secured by a private key. The private key is a unique code that allows you to access your wallet. It is stored in your browser and is used to sign transactions. The private key is never shared with anyone, including the VeChain Foundation.": "Ihr Wallet ist durch einen privaten Schl\xFCssel gesichert. Der private Schl\xFCssel ist ein einzigartiger Code, der es Ihnen erm\xF6glicht, auf Ihr Wallet zuzugreifen. Er wird in Ihrem Browser gespeichert und wird verwendet, um Transaktionen zu signieren. Der private Schl\xFCssel wird niemals mit jemandem geteilt, einschlie\xDFlich der VeChain Foundation.",
10481
10872
  "Your wallet security depends on how you access it. With self-custody options like the VeWorld extension, mobile app, or hardware wallet, you have complete control over your private keys. This extension itself has no access to your private keys. When logging in with social accounts or VeChain, your wallet is created and secured by Privy and managed by VeChain, providing an easier onboarding experience while maintaining security.": "Die Sicherheit Ihres Wallets h\xE4ngt davon ab, wie Sie darauf zugreifen. Mit Selbstverwaltungsoptionen wie der VeWorld-Erweiterung, der mobilen App oder einer Hardware-Wallet haben Sie die vollst\xE4ndige Kontrolle \xFCber Ihre privaten Schl\xFCssel. Diese Erweiterung selbst hat keinen Zugriff auf Ihre privaten Schl\xFCssel. Beim Einloggen mit sozialen Konten oder VeChain wird Ihr Wallet von Privy erstellt und gesichert und von VeChain verwaltet, was ein einfacheres Onboarding-Erlebnis bietet und gleichzeitig die Sicherheit gew\xE4hrleistet.",
10482
10873
  "Your {{name}}.veworld.vet name has been claimed successfully.": "Ihr {{name}}.veworld.vet-Name wurde erfolgreich beansprucht.",
10874
+ "Your {{name}}.{{domainType}} name has been claimed successfully.": "Ihr {{name}}.{{domainType}}-Name wurde erfolgreich beansprucht.",
10483
10875
  here: "hier",
10484
10876
  of: "von",
10485
10877
  on: "am",
@@ -10536,6 +10928,7 @@ var it_default = {
10536
10928
  "Are you sure you want to disconnect your wallet?": "Sei sicuro di voler disconnettere il tuo portafoglio?",
10537
10929
  "Are you sure you want to set your domain name to": "Sei sicuro di voler impostare il tuo nome di dominio su",
10538
10930
  "Are you sure you want to unlink {{accountType}} as a login method linked to {{accountDescription}}?": "Sei sicuro di voler scollegare {{accountType}} come metodo di accesso collegato a {{accountDescription}}?",
10931
+ "Are you sure you want to unset your current domain?": "Sei sicuro di voler rimuovere il tuo attuale dominio?",
10539
10932
  Assets: "Risorse",
10540
10933
  At: "Alle",
10541
10934
  "B3TR is the incentive token of VeBetterDAO, built on VechainThor blockchain. It has a capped supply of 1 billion tokens, emitted weekly over 12 years. B3TR is used for rewards, governance, and backing VOT3 tokens 1:1. It supports sustainability applications and DAO treasury management.": "B3TR \xE8 il token incentivo di VeBetterDAO, creato sulla blockchain VechainThor. Ha una fornitura massima di 1 miliardo di token, emessi settimanalmente per 12 anni. B3TR viene utilizzato per ricompense, governance e supporto dei token VOT3 1:1. Supporta applicazioni di sostenibilit\xE0 e gestione del tesoro del DAO.",
@@ -10575,6 +10968,7 @@ var it_default = {
10575
10968
  Confirm: "Conferma",
10576
10969
  "Confirm Changes": "Conferma Modifiche",
10577
10970
  "Confirm Name": "Conferma Nome",
10971
+ "Confirm Unset Domain": "Conferma Rimozione Dominio",
10578
10972
  "Confirm the transaction in your wallet to complete it.": "Conferma la transazione nel tuo portafoglio per completarla.",
10579
10973
  "Confirm transaction": "Conferma transazione",
10580
10974
  "Connect Wallet": "Collega Portafoglio",
@@ -10628,6 +11022,8 @@ var it_default = {
10628
11022
  Discord: "Discord",
10629
11023
  "Display Name": "Nome da visualizzare",
10630
11024
  "Display name must be less than 25 characters": "Il nome da visualizzare deve contenere meno di 25 caratteri",
11025
+ "Domain set": "Dominio impostato",
11026
+ "Domain unset": "Dominio rimosso",
10631
11027
  Done: "Fatto",
10632
11028
  Ecosystem: "Ecosistema",
10633
11029
  "Ecosystem Login": "Accesso Ecosistema",
@@ -10785,6 +11181,7 @@ var it_default = {
10785
11181
  Remove: "Rimuovi",
10786
11182
  "Remove Login Method": "Rimuovi metodo di accesso",
10787
11183
  "Remove from shortcuts": "Rimuovi dai collegamenti",
11184
+ "Remove your current domain name": "Rimuovi il tuo attuale nome di dominio",
10788
11185
  "Resend code": "Reinvia codice",
10789
11186
  Retry: "Riprova",
10790
11187
  "Safari blocked the login window. Please try again, it should work now.": "Safari ha bloccato la finestra di accesso. Si prega di riprovare, dovrebbe funzionare ora.",
@@ -10864,6 +11261,7 @@ var it_default = {
10864
11261
  "Token Contract Address": "Indirizzo del Contratto del Token",
10865
11262
  "Token already added": "Token gi\xE0 aggiunto",
10866
11263
  "Tokens transferred successfully.": "Token trasferiti con successo.",
11264
+ Tools: "Strumenti",
10867
11265
  "Total balance": "Saldo totale",
10868
11266
  "Transaction completed!": "Transazione completata!",
10869
11267
  "Transaction failed": "Transazione fallita",
@@ -10883,6 +11281,11 @@ var it_default = {
10883
11281
  "Unknown error": "Errore sconosciuto",
10884
11282
  "Unknown status": "Stato sconosciuto",
10885
11283
  "Unlink Login Method": "Scollega metodo di accesso",
11284
+ "Unset current domain": "Rimuovi dominio attuale",
11285
+ "Unsetting current domain": "Rimozione del dominio attuale",
11286
+ "Unsetting current domain...": "Rimozione del dominio attuale in corso...",
11287
+ "Unsetting your current VeChain nickname": "Rimozione del tuo attuale soprannome VeChain",
11288
+ "Unsetting your current domain": "Rimozione del tuo attuale dominio",
10886
11289
  "Update profile image": "Aggiorna immagine del profilo",
10887
11290
  "Upgrade Now": "Aggiorna Ora",
10888
11291
  "Upgrade Smart Account to V3": "Aggiorna Conto Smart a V3",
@@ -10950,8 +11353,10 @@ var it_default = {
10950
11353
  "You own a Smart Account and it has priority over your wallet.": "Possiedi un Account Smart e ha priorit\xE0 sul tuo portafoglio.",
10951
11354
  "Your account has been successfully upgraded to the latest version. You can now enjoy a better user experience, lower gas costs, and enhanced security.": "Il tuo account \xE8 stato aggiornato con successo all'ultima versione. Ora puoi godere di un'esperienza utente migliorata, costi del gas ridotti e maggiore sicurezza.",
10952
11355
  "Your accounts": "I tuoi account",
11356
+ "Your address has been successfully set to {{name}}.{{domainType}}.": "Il tuo indirizzo \xE8 stato impostato correttamente su {{name}}.{{domainType}}.",
10953
11357
  "Your changes have been saved successfully.": "Le tue modifiche sono state salvate con successo.",
10954
11358
  "Your customizations are linked to your .vet domain name, making them portable across different applications.": "Le tue personalizzazioni sono collegate al tuo nome di dominio .vet, rendendole portabili tra diverse applicazioni.",
11359
+ "Your domain has been unset successfully.": "Il tuo dominio \xE8 stato rimosso con successo.",
10955
11360
  "Your embedded wallet": "Il tuo portafoglio integrato",
10956
11361
  "Your existing domains": "I tuoi domini esistenti",
10957
11362
  "Your mobile browser blocked the login window.": "Il tuo browser mobile ha bloccato la finestra di accesso.",
@@ -10968,6 +11373,7 @@ var it_default = {
10968
11373
  "Your wallet is secured by a private key. The private key is a unique code that allows you to access your wallet. It is stored in your browser and is used to sign transactions. The private key is never shared with anyone, including the VeChain Foundation.": "Il tuo portafoglio \xE8 protetto da una chiave privata. La chiave privata \xE8 un codice unico che ti consente di accedere al tuo portafoglio. \xC8 memorizzata nel tuo browser e viene utilizzata per firmare le transazioni. La chiave privata non viene mai condivisa con nessuno, inclusa la Fondazione VeChain.",
10969
11374
  "Your wallet security depends on how you access it. With self-custody options like the VeWorld extension, mobile app, or hardware wallet, you have complete control over your private keys. This extension itself has no access to your private keys. When logging in with social accounts or VeChain, your wallet is created and secured by Privy and managed by VeChain, providing an easier onboarding experience while maintaining security.": "La sicurezza del tuo portafoglio dipende da come vi accedi. Con opzioni di autocustodia come l'estensione VeWorld, l'app mobile o il portafoglio hardware, hai il controllo completo sulle tue chiavi private. Questa estensione stessa non ha accesso alle tue chiavi private. Quando accedi con i social account o VeChain, il tuo portafoglio viene creato e protetto da Privy e gestito da VeChain, offrendo un'esperienza di onboarding pi\xF9 semplice mantenendo la sicurezza.",
10970
11375
  "Your {{name}}.veworld.vet name has been claimed successfully.": "Il tuo nome {{name}}.veworld.vet \xE8 stato rivendicato con successo.",
11376
+ "Your {{name}}.{{domainType}} name has been claimed successfully.": "Il tuo nome {{name}}.{{domainType}} \xE8 stato rivendicato con successo.",
10971
11377
  here: "qui",
10972
11378
  of: "di",
10973
11379
  on: "su",
@@ -11024,6 +11430,7 @@ var fr_default = {
11024
11430
  "Are you sure you want to disconnect your wallet?": "\xCAtes-vous s\xFBr de vouloir d\xE9connecter votre portefeuille ?",
11025
11431
  "Are you sure you want to set your domain name to": "\xCAtes-vous s\xFBr de vouloir d\xE9finir votre nom de domaine sur",
11026
11432
  "Are you sure you want to unlink {{accountType}} as a login method linked to {{accountDescription}}?": "\xCAtes-vous s\xFBr de vouloir dissocier {{accountType}} en tant que m\xE9thode de connexion li\xE9e \xE0 {{accountDescription}} ?",
11433
+ "Are you sure you want to unset your current domain?": "\xCAtes-vous s\xFBr de vouloir d\xE9s\xE9lectionner votre domaine actuel ?",
11027
11434
  Assets: "Actifs",
11028
11435
  At: "\xC0",
11029
11436
  "B3TR is the incentive token of VeBetterDAO, built on VechainThor blockchain. It has a capped supply of 1 billion tokens, emitted weekly over 12 years. B3TR is used for rewards, governance, and backing VOT3 tokens 1:1. It supports sustainability applications and DAO treasury management.": "B3TR est le token incitatif de VeBetterDAO, construit sur la blockchain VechainThor. Il a un approvisionnement limit\xE9 \xE0 1 milliard de tokens, \xE9mis de fa\xE7on hebdomadaire sur 12 ans. B3TR est utilis\xE9 pour les r\xE9compenses, la gouvernance et pour soutenir les tokens VOT3 \xE0 un taux de 1:1. Il soutient les applications de durabilit\xE9 et la gestion de la tr\xE9sorerie DAO.",
@@ -11063,6 +11470,7 @@ var fr_default = {
11063
11470
  Confirm: "Confirmer",
11064
11471
  "Confirm Changes": "Confirmer les modifications",
11065
11472
  "Confirm Name": "Confirmer le nom",
11473
+ "Confirm Unset Domain": "Confirmer la d\xE9s\xE9lection du domaine",
11066
11474
  "Confirm the transaction in your wallet to complete it.": "Confirmez la transaction dans votre portefeuille pour la terminer.",
11067
11475
  "Confirm transaction": "Confirmer la transaction",
11068
11476
  "Connect Wallet": "Connecter le portefeuille",
@@ -11116,6 +11524,8 @@ var fr_default = {
11116
11524
  Discord: "Discord",
11117
11525
  "Display Name": "Nom affich\xE9",
11118
11526
  "Display name must be less than 25 characters": "Le nom affich\xE9 doit comporter moins de 25 caract\xE8res",
11527
+ "Domain set": "Domaine d\xE9fini",
11528
+ "Domain unset": "Domaine d\xE9s\xE9lectionn\xE9",
11119
11529
  Done: "Fait",
11120
11530
  Ecosystem: "\xC9cosyst\xE8me",
11121
11531
  "Ecosystem Login": "Connexion \xE0 l'\xE9cosyst\xE8me",
@@ -11273,6 +11683,7 @@ var fr_default = {
11273
11683
  Remove: "Supprimer",
11274
11684
  "Remove Login Method": "Supprimer la m\xE9thode de connexion",
11275
11685
  "Remove from shortcuts": "Retirer des raccourcis",
11686
+ "Remove your current domain name": "Supprimer votre nom de domaine actuel",
11276
11687
  "Resend code": "Renvoyer le code",
11277
11688
  Retry: "R\xE9essayer",
11278
11689
  "Safari blocked the login window. Please try again, it should work now.": "Safari a bloqu\xE9 la fen\xEAtre de connexion. Veuillez r\xE9essayer, cela devrait fonctionner maintenant.",
@@ -11352,6 +11763,7 @@ var fr_default = {
11352
11763
  "Token Contract Address": "Adresse du contrat du jeton",
11353
11764
  "Token already added": "Jeton d\xE9j\xE0 ajout\xE9",
11354
11765
  "Tokens transferred successfully.": "Jetons transf\xE9r\xE9s avec succ\xE8s.",
11766
+ Tools: "Outils",
11355
11767
  "Total balance": "Solde total",
11356
11768
  "Transaction completed!": "Transaction termin\xE9e !",
11357
11769
  "Transaction failed": "La transaction a \xE9chou\xE9",
@@ -11371,6 +11783,11 @@ var fr_default = {
11371
11783
  "Unknown error": "Erreur inconnue",
11372
11784
  "Unknown status": "Statut inconnu",
11373
11785
  "Unlink Login Method": "Dissocier la m\xE9thode de connexion",
11786
+ "Unset current domain": "D\xE9s\xE9lectionner le domaine actuel",
11787
+ "Unsetting current domain": "D\xE9s\xE9lection du domaine actuel",
11788
+ "Unsetting current domain...": "D\xE9s\xE9lection du domaine actuel...",
11789
+ "Unsetting your current VeChain nickname": "D\xE9s\xE9lection de votre surnom VeChain actuel",
11790
+ "Unsetting your current domain": "D\xE9s\xE9lection de votre domaine actuel",
11374
11791
  "Update profile image": "Mettre \xE0 jour l'image de profil",
11375
11792
  "Upgrade Now": "Mettre \xE0 niveau maintenant",
11376
11793
  "Upgrade Smart Account to V3": "Mettre \xE0 niveau le compte intelligent vers V3",
@@ -11438,8 +11855,10 @@ var fr_default = {
11438
11855
  "You own a Smart Account and it has priority over your wallet.": "Vous poss\xE9dez un Smart Account et il a la priorit\xE9 sur votre portefeuille.",
11439
11856
  "Your account has been successfully upgraded to the latest version. You can now enjoy a better user experience, lower gas costs, and enhanced security.": "Votre compte a \xE9t\xE9 mis \xE0 niveau avec succ\xE8s vers la derni\xE8re version. Vous pouvez d\xE9sormais profiter d'une meilleure exp\xE9rience utilisateur, de co\xFBts de gaz r\xE9duits et d'une s\xE9curit\xE9 renforc\xE9e.",
11440
11857
  "Your accounts": "Vos comptes",
11858
+ "Your address has been successfully set to {{name}}.{{domainType}}.": "Votre adresse a \xE9t\xE9 d\xE9finie avec succ\xE8s sur {{name}}.{{domainType}}.",
11441
11859
  "Your changes have been saved successfully.": "Vos modifications ont \xE9t\xE9 enregistr\xE9es avec succ\xE8s.",
11442
11860
  "Your customizations are linked to your .vet domain name, making them portable across different applications.": "Vos personnalisations sont li\xE9es \xE0 votre nom de domaine .vet, ce qui les rend portables \xE0 travers diff\xE9rentes applications.",
11861
+ "Your domain has been unset successfully.": "Votre domaine a \xE9t\xE9 d\xE9s\xE9lectionn\xE9 avec succ\xE8s.",
11443
11862
  "Your embedded wallet": "Votre portefeuille int\xE9gr\xE9",
11444
11863
  "Your existing domains": "Vos domaines existants",
11445
11864
  "Your mobile browser blocked the login window.": "Votre navigateur mobile a bloqu\xE9 la fen\xEAtre de connexion.",
@@ -11456,6 +11875,7 @@ var fr_default = {
11456
11875
  "Your wallet is secured by a private key. The private key is a unique code that allows you to access your wallet. It is stored in your browser and is used to sign transactions. The private key is never shared with anyone, including the VeChain Foundation.": "Votre portefeuille est s\xE9curis\xE9 par une cl\xE9 priv\xE9e. La cl\xE9 priv\xE9e est un code unique qui vous permet d'acc\xE9der \xE0 votre portefeuille. Elle est stock\xE9e dans votre navigateur et est utilis\xE9e pour signer des transactions. La cl\xE9 priv\xE9e n'est jamais partag\xE9e avec qui que ce soit, y compris la Fondation VeChain.",
11457
11876
  "Your wallet security depends on how you access it. With self-custody options like the VeWorld extension, mobile app, or hardware wallet, you have complete control over your private keys. This extension itself has no access to your private keys. When logging in with social accounts or VeChain, your wallet is created and secured by Privy and managed by VeChain, providing an easier onboarding experience while maintaining security.": "La s\xE9curit\xE9 de votre portefeuille d\xE9pend de la fa\xE7on dont vous y acc\xE9dez. Avec des options d'auto-gardiennage comme l'extension VeWorld, l'application mobile ou le portefeuille mat\xE9riel, vous avez un contr\xF4le complet sur vos cl\xE9s priv\xE9es. Cette extension en elle-m\xEAme n'a pas acc\xE8s \xE0 vos cl\xE9s priv\xE9es. Lors de la connexion avec des comptes sociaux ou VeChain, votre portefeuille est cr\xE9\xE9 et s\xE9curis\xE9 par Privy et g\xE9r\xE9 par VeChain, offrant une exp\xE9rience d'int\xE9gration plus facile tout en maintenant la s\xE9curit\xE9.",
11458
11877
  "Your {{name}}.veworld.vet name has been claimed successfully.": "Votre nom {{name}}.veworld.vet a \xE9t\xE9 revendiqu\xE9 avec succ\xE8s.",
11878
+ "Your {{name}}.{{domainType}} name has been claimed successfully.": "Votre nom {{name}}.{{domainType}} a \xE9t\xE9 revendiqu\xE9 avec succ\xE8s.",
11459
11879
  here: "ici",
11460
11880
  of: "de",
11461
11881
  on: "le",
@@ -11512,6 +11932,7 @@ var es_default = {
11512
11932
  "Are you sure you want to disconnect your wallet?": "\xBFEst\xE1s seguro de que quieres desconectar tu billetera?",
11513
11933
  "Are you sure you want to set your domain name to": "\xBFEst\xE1s seguro de que quieres establecer tu nombre de dominio en",
11514
11934
  "Are you sure you want to unlink {{accountType}} as a login method linked to {{accountDescription}}?": "\xBFEst\xE1 seguro de que desea desvincular {{accountType}} como m\xE9todo de inicio de sesi\xF3n vinculado a {{accountDescription}}?",
11935
+ "Are you sure you want to unset your current domain?": "\xBFEst\xE1 seguro de que desea desactivar su dominio actual?",
11515
11936
  Assets: "Activos",
11516
11937
  At: "En",
11517
11938
  "B3TR is the incentive token of VeBetterDAO, built on VechainThor blockchain. It has a capped supply of 1 billion tokens, emitted weekly over 12 years. B3TR is used for rewards, governance, and backing VOT3 tokens 1:1. It supports sustainability applications and DAO treasury management.": "B3TR es el token de incentivo de VeBetterDAO, construido sobre la blockchain VechainThor. Tiene un suministro limitado de 1 mil millones de tokens, emitidos semanalmente durante 12 a\xF1os. B3TR se utiliza para recompensas, gobernanza y respaldar tokens VOT3 en una proporci\xF3n de 1:1. Apoya aplicaciones sostenibles y la gesti\xF3n del tesoro del DAO.",
@@ -11551,6 +11972,7 @@ var es_default = {
11551
11972
  Confirm: "Confirmar",
11552
11973
  "Confirm Changes": "Confirmar cambios",
11553
11974
  "Confirm Name": "Confirmar Nombre",
11975
+ "Confirm Unset Domain": "Confirmar desactivaci\xF3n de dominio",
11554
11976
  "Confirm the transaction in your wallet to complete it.": "Confirme la transacci\xF3n en su monedero para completarla.",
11555
11977
  "Confirm transaction": "Confirmar transacci\xF3n",
11556
11978
  "Connect Wallet": "Conectar Monedero",
@@ -11604,6 +12026,8 @@ var es_default = {
11604
12026
  Discord: "Discord",
11605
12027
  "Display Name": "Nombre para mostrar",
11606
12028
  "Display name must be less than 25 characters": "El nombre para mostrar debe tener menos de 25 caracteres",
12029
+ "Domain set": "Dominio configurado",
12030
+ "Domain unset": "Dominio desactivado",
11607
12031
  Done: "Hecho",
11608
12032
  Ecosystem: "Ecosistema",
11609
12033
  "Ecosystem Login": "Inicio de sesi\xF3n en el ecosistema",
@@ -11761,6 +12185,7 @@ var es_default = {
11761
12185
  Remove: "Eliminar",
11762
12186
  "Remove Login Method": "Eliminar m\xE9todo de inicio de sesi\xF3n",
11763
12187
  "Remove from shortcuts": "Eliminar de los accesos directos",
12188
+ "Remove your current domain name": "Eliminar su nombre de dominio actual",
11764
12189
  "Resend code": "Reenviar c\xF3digo",
11765
12190
  Retry: "Reintentar",
11766
12191
  "Safari blocked the login window. Please try again, it should work now.": "Safari bloque\xF3 la ventana de inicio de sesi\xF3n. Por favor, int\xE9ntelo de nuevo, deber\xEDa funcionar ahora.",
@@ -11840,6 +12265,7 @@ var es_default = {
11840
12265
  "Token Contract Address": "Direcci\xF3n del contrato del token",
11841
12266
  "Token already added": "Token ya agregado",
11842
12267
  "Tokens transferred successfully.": "Tokens transferidos exitosamente.",
12268
+ Tools: "Herramientas",
11843
12269
  "Total balance": "Saldo total",
11844
12270
  "Transaction completed!": "\xA1Transacci\xF3n completada!",
11845
12271
  "Transaction failed": "Transacci\xF3n fallida",
@@ -11859,6 +12285,11 @@ var es_default = {
11859
12285
  "Unknown error": "Error desconocido",
11860
12286
  "Unknown status": "Estado desconocido",
11861
12287
  "Unlink Login Method": "Desvincular m\xE9todo de inicio de sesi\xF3n",
12288
+ "Unset current domain": "Desactivar dominio actual",
12289
+ "Unsetting current domain": "Desactivando dominio actual",
12290
+ "Unsetting current domain...": "Desactivando dominio actual...",
12291
+ "Unsetting your current VeChain nickname": "Desactivando su apodo de VeChain actual",
12292
+ "Unsetting your current domain": "Desactivando su dominio actual",
11862
12293
  "Update profile image": "Actualizar imagen de perfil",
11863
12294
  "Upgrade Now": "Actualizar ahora",
11864
12295
  "Upgrade Smart Account to V3": "Actualizar cuenta inteligente a V3",
@@ -11926,8 +12357,10 @@ var es_default = {
11926
12357
  "You own a Smart Account and it has priority over your wallet.": "Posees una Smart Account y tiene prioridad sobre tu billetera.",
11927
12358
  "Your account has been successfully upgraded to the latest version. You can now enjoy a better user experience, lower gas costs, and enhanced security.": "Su cuenta ha sido actualizada exitosamente a la \xFAltima versi\xF3n. Ahora puede disfrutar de una mejor experiencia de usuario, menores costos de gas y mayor seguridad.",
11928
12359
  "Your accounts": "Tus cuentas",
12360
+ "Your address has been successfully set to {{name}}.{{domainType}}.": "Su direcci\xF3n ha sido configurada exitosamente a {{name}}.{{domainType}}.",
11929
12361
  "Your changes have been saved successfully.": "Tus cambios han sido guardados exitosamente.",
11930
12362
  "Your customizations are linked to your .vet domain name, making them portable across different applications.": "Tus personalizaciones est\xE1n vinculadas a tu nombre de dominio .vet, lo que las hace port\xE1tiles a trav\xE9s de diferentes aplicaciones.",
12363
+ "Your domain has been unset successfully.": "Su dominio ha sido desactivado exitosamente.",
11931
12364
  "Your embedded wallet": "Su billetera integrada",
11932
12365
  "Your existing domains": "Tus dominios existentes",
11933
12366
  "Your mobile browser blocked the login window.": "Tu navegador m\xF3vil bloque\xF3 la ventana de inicio de sesi\xF3n.",
@@ -11944,6 +12377,7 @@ var es_default = {
11944
12377
  "Your wallet is secured by a private key. The private key is a unique code that allows you to access your wallet. It is stored in your browser and is used to sign transactions. The private key is never shared with anyone, including the VeChain Foundation.": "Tu billetera est\xE1 protegida por una clave privada. La clave privada es un c\xF3digo \xFAnico que te permite acceder a tu billetera. Se almacena en tu navegador y se utiliza para firmar transacciones. La clave privada nunca se comparte con nadie, incluida la Fundaci\xF3n VeChain.",
11945
12378
  "Your wallet security depends on how you access it. With self-custody options like the VeWorld extension, mobile app, or hardware wallet, you have complete control over your private keys. This extension itself has no access to your private keys. When logging in with social accounts or VeChain, your wallet is created and secured by Privy and managed by VeChain, providing an easier onboarding experience while maintaining security.": "La seguridad de tu billetera depende de c\xF3mo accedas a ella. Con opciones de autocustodia como la extensi\xF3n VeWorld, la aplicaci\xF3n m\xF3vil o la billetera de hardware, tienes control total sobre tus claves privadas. Esta extensi\xF3n no tiene acceso a tus claves privadas. Al iniciar sesi\xF3n con cuentas sociales o VeChain, tu billetera es creada y asegurada por Privy y gestionada por VeChain, ofreciendo una experiencia de integraci\xF3n m\xE1s sencilla mientras se mantiene la seguridad.",
11946
12379
  "Your {{name}}.veworld.vet name has been claimed successfully.": "Tu nombre {{name}}.veworld.vet ha sido reclamado exitosamente.",
12380
+ "Your {{name}}.{{domainType}} name has been claimed successfully.": "Su nombre {{name}}.{{domainType}} ha sido reclamado exitosamente.",
11947
12381
  here: "aqu\xED",
11948
12382
  of: "de",
11949
12383
  on: "en",
@@ -12000,6 +12434,7 @@ var zh_default = {
12000
12434
  "Are you sure you want to disconnect your wallet?": "\u60A8\u786E\u5B9A\u8981\u65AD\u5F00\u94B1\u5305\u8FDE\u63A5\u5417\uFF1F",
12001
12435
  "Are you sure you want to set your domain name to": "\u60A8\u786E\u5B9A\u8981\u5C06\u60A8\u7684\u57DF\u540D\u8BBE\u7F6E\u4E3A",
12002
12436
  "Are you sure you want to unlink {{accountType}} as a login method linked to {{accountDescription}}?": "\u60A8\u786E\u5B9A\u8981\u53D6\u6D88\u94FE\u63A5 {{accountDescription}} \u4E2D\u4F5C\u4E3A\u767B\u5F55\u65B9\u5F0F\u4E4B\u4E00\u7684 {{accountType}} \u5417\uFF1F",
12437
+ "Are you sure you want to unset your current domain?": "\u60A8\u786E\u5B9A\u8981\u53D6\u6D88\u8BBE\u7F6E\u5F53\u524D\u57DF\u540D\u5417\uFF1F",
12003
12438
  Assets: "\u8D44\u4EA7",
12004
12439
  At: "\u5728",
12005
12440
  "B3TR is the incentive token of VeBetterDAO, built on VechainThor blockchain. It has a capped supply of 1 billion tokens, emitted weekly over 12 years. B3TR is used for rewards, governance, and backing VOT3 tokens 1:1. It supports sustainability applications and DAO treasury management.": "B3TR \u662F VeBetterDAO \u7684\u6FC0\u52B1\u6027\u4EE3\u5E01\uFF0C\u57FA\u4E8E VechainThor \u533A\u5757\u94FE\u6784\u5EFA\u3002\u5176\u4F9B\u5E94\u91CF\u4E0A\u9650\u4E3A 10 \u4EBF\u4E2A\u4EE3\u5E01\uFF0C\u5206 12 \u5E74\u6BCF\u5468\u53D1\u653E\u3002B3TR \u7528\u4E8E\u5956\u52B1\u3001\u6CBB\u7406\u4EE5\u53CA 1:1 \u652F\u6301 VOT3 \u4EE3\u5E01\u3002\u5B83\u652F\u6301\u53EF\u6301\u7EED\u6027\u5E94\u7528\u548C DAO \u8D22\u52A1\u7BA1\u7406\u3002",
@@ -12039,6 +12474,7 @@ var zh_default = {
12039
12474
  Confirm: "\u786E\u8BA4",
12040
12475
  "Confirm Changes": "\u786E\u8BA4\u66F4\u6539",
12041
12476
  "Confirm Name": "\u786E\u8BA4\u59D3\u540D",
12477
+ "Confirm Unset Domain": "\u786E\u8BA4\u53D6\u6D88\u8BBE\u7F6E\u57DF\u540D",
12042
12478
  "Confirm the transaction in your wallet to complete it.": "\u5728\u60A8\u7684\u94B1\u5305\u4E2D\u786E\u8BA4\u4EA4\u6613\u4EE5\u5B8C\u6210\u5B83\u3002",
12043
12479
  "Confirm transaction": "\u786E\u8BA4\u4EA4\u6613",
12044
12480
  "Connect Wallet": "\u8FDE\u63A5\u94B1\u5305",
@@ -12092,6 +12528,8 @@ var zh_default = {
12092
12528
  Discord: "Discord",
12093
12529
  "Display Name": "\u663E\u793A\u540D\u79F0",
12094
12530
  "Display name must be less than 25 characters": "\u663E\u793A\u540D\u79F0\u5FC5\u987B\u5C11\u4E8E25\u4E2A\u5B57\u7B26",
12531
+ "Domain set": "\u57DF\u540D\u5DF2\u8BBE\u7F6E",
12532
+ "Domain unset": "\u57DF\u540D\u5DF2\u53D6\u6D88\u8BBE\u7F6E",
12095
12533
  Done: "\u5B8C\u6210",
12096
12534
  Ecosystem: "\u751F\u6001\u7CFB\u7EDF",
12097
12535
  "Ecosystem Login": "\u751F\u6001\u7CFB\u7EDF\u767B\u5F55",
@@ -12249,6 +12687,7 @@ var zh_default = {
12249
12687
  Remove: "\u79FB\u9664",
12250
12688
  "Remove Login Method": "\u79FB\u9664\u767B\u5F55\u65B9\u5F0F",
12251
12689
  "Remove from shortcuts": "\u4ECE\u5FEB\u6377\u65B9\u5F0F\u4E2D\u79FB\u9664",
12690
+ "Remove your current domain name": "\u79FB\u9664\u5F53\u524D\u57DF\u540D",
12252
12691
  "Resend code": "\u91CD\u65B0\u53D1\u9001\u4EE3\u7801",
12253
12692
  Retry: "\u91CD\u8BD5",
12254
12693
  "Safari blocked the login window. Please try again, it should work now.": "Safari \u963B\u6B62\u4E86\u767B\u5F55\u7A97\u53E3\u3002\u8BF7\u518D\u6B21\u5C1D\u8BD5\uFF0C\u73B0\u5728\u5E94\u8BE5\u53EF\u4EE5\u6B63\u5E38\u5DE5\u4F5C\u3002",
@@ -12328,6 +12767,7 @@ var zh_default = {
12328
12767
  "Token Contract Address": "\u4EE3\u5E01\u5408\u7EA6\u5730\u5740",
12329
12768
  "Token already added": "\u4EE3\u5E01\u5DF2\u6DFB\u52A0",
12330
12769
  "Tokens transferred successfully.": "\u4EE3\u5E01\u8F6C\u79FB\u6210\u529F\u3002",
12770
+ Tools: "\u5DE5\u5177",
12331
12771
  "Total balance": "\u603B\u4F59\u989D",
12332
12772
  "Transaction completed!": "\u4EA4\u6613\u5B8C\u6210\uFF01",
12333
12773
  "Transaction failed": "\u4EA4\u6613\u5931\u8D25",
@@ -12347,6 +12787,11 @@ var zh_default = {
12347
12787
  "Unknown error": "\u672A\u77E5\u9519\u8BEF",
12348
12788
  "Unknown status": "\u672A\u77E5\u72B6\u6001",
12349
12789
  "Unlink Login Method": "\u53D6\u6D88\u94FE\u63A5\u767B\u5F55\u65B9\u5F0F",
12790
+ "Unset current domain": "\u53D6\u6D88\u8BBE\u7F6E\u5F53\u524D\u57DF\u540D",
12791
+ "Unsetting current domain": "\u6B63\u5728\u53D6\u6D88\u8BBE\u7F6E\u5F53\u524D\u57DF\u540D",
12792
+ "Unsetting current domain...": "\u6B63\u5728\u53D6\u6D88\u8BBE\u7F6E\u5F53\u524D\u57DF\u540D...",
12793
+ "Unsetting your current VeChain nickname": "\u53D6\u6D88\u8BBE\u7F6E\u60A8\u5F53\u524D\u7684VeChain\u6635\u79F0",
12794
+ "Unsetting your current domain": "\u53D6\u6D88\u8BBE\u7F6E\u60A8\u5F53\u524D\u7684\u57DF\u540D",
12350
12795
  "Update profile image": "\u66F4\u65B0\u8D44\u6599\u56FE\u7247",
12351
12796
  "Upgrade Now": "\u7ACB\u5373\u5347\u7EA7",
12352
12797
  "Upgrade Smart Account to V3": "\u5C06\u667A\u80FD\u8D26\u6237\u5347\u7EA7\u5230V3",
@@ -12414,8 +12859,10 @@ var zh_default = {
12414
12859
  "You own a Smart Account and it has priority over your wallet.": "\u60A8\u62E5\u6709\u4E00\u4E2A\u667A\u80FD\u8D26\u6237\uFF0C\u5B83\u4F18\u5148\u4E8E\u60A8\u7684\u94B1\u5305\u3002",
12415
12860
  "Your account has been successfully upgraded to the latest version. You can now enjoy a better user experience, lower gas costs, and enhanced security.": "\u60A8\u7684\u8D26\u6237\u5DF2\u6210\u529F\u5347\u7EA7\u5230\u6700\u65B0\u7248\u672C\u3002\u60A8\u73B0\u5728\u53EF\u4EE5\u4EAB\u53D7\u66F4\u597D\u7684\u7528\u6237\u4F53\u9A8C\u3001\u66F4\u4F4E\u7684\u71C3\u6C14\u8D39\u7528\u548C\u589E\u5F3A\u7684\u5B89\u5168\u6027\u3002",
12416
12861
  "Your accounts": "\u60A8\u7684\u8D26\u6237",
12862
+ "Your address has been successfully set to {{name}}.{{domainType}}.": "\u60A8\u7684\u5730\u5740\u5DF2\u6210\u529F\u8BBE\u7F6E\u4E3A{{name}}.{{domainType}}\u3002",
12417
12863
  "Your changes have been saved successfully.": "\u60A8\u7684\u66F4\u6539\u5DF2\u6210\u529F\u4FDD\u5B58\u3002",
12418
12864
  "Your customizations are linked to your .vet domain name, making them portable across different applications.": "\u60A8\u7684\u81EA\u5B9A\u4E49\u8BBE\u7F6E\u4E0E\u60A8\u7684.vet\u57DF\u540D\u76F8\u5173\u8054\uFF0C\u4F7F\u5176\u80FD\u591F\u5728\u4E0D\u540C\u7684\u5E94\u7528\u7A0B\u5E8F\u4E2D\u6D41\u7545\u4F7F\u7528\u3002",
12865
+ "Your domain has been unset successfully.": "\u60A8\u7684\u57DF\u540D\u5DF2\u6210\u529F\u53D6\u6D88\u8BBE\u7F6E\u3002",
12419
12866
  "Your embedded wallet": "\u60A8\u7684\u5D4C\u5165\u94B1\u5305",
12420
12867
  "Your existing domains": "\u60A8\u73B0\u6709\u7684\u57DF\u540D",
12421
12868
  "Your mobile browser blocked the login window.": "\u60A8\u7684\u79FB\u52A8\u6D4F\u89C8\u5668\u963B\u6B62\u4E86\u767B\u5F55\u7A97\u53E3\u3002",
@@ -12432,6 +12879,7 @@ var zh_default = {
12432
12879
  "Your wallet is secured by a private key. The private key is a unique code that allows you to access your wallet. It is stored in your browser and is used to sign transactions. The private key is never shared with anyone, including the VeChain Foundation.": "\u60A8\u7684\u94B1\u5305\u7531\u79C1\u94A5\u4FDD\u62A4\u3002\u79C1\u94A5\u662F\u4E00\u4E2A\u72EC\u7279\u7684\u4EE3\u7801\uFF0C\u5141\u8BB8\u60A8\u8BBF\u95EE\u60A8\u7684\u94B1\u5305\u3002\u5B83\u5B58\u50A8\u5728\u60A8\u7684\u6D4F\u89C8\u5668\u4E2D\uFF0C\u7528\u4E8E\u7B7E\u7F72\u4EA4\u6613\u3002\u79C1\u94A5\u4E0D\u4F1A\u4E0E\u4EFB\u4F55\u4EBA\u5171\u4EAB\uFF0C\u5305\u62EC\u552F\u94FE\u57FA\u91D1\u4F1A\u3002",
12433
12880
  "Your wallet security depends on how you access it. With self-custody options like the VeWorld extension, mobile app, or hardware wallet, you have complete control over your private keys. This extension itself has no access to your private keys. When logging in with social accounts or VeChain, your wallet is created and secured by Privy and managed by VeChain, providing an easier onboarding experience while maintaining security.": "\u60A8\u7684\u94B1\u5305\u5B89\u5168\u6027\u53D6\u51B3\u4E8E\u60A8\u5982\u4F55\u8BBF\u95EE\u5B83\u3002\u901A\u8FC7 VeWorld \u63D2\u4EF6\u3001\u79FB\u52A8\u5E94\u7528\u6216\u786C\u4EF6\u94B1\u5305\u7B49\u81EA\u6211\u6258\u7BA1\u9009\u9879\uFF0C\u60A8\u53EF\u4EE5\u5B8C\u5168\u63A7\u5236\u60A8\u7684\u79C1\u94A5\u3002\u6B64\u63D2\u4EF6\u672C\u8EAB\u65E0\u6CD5\u8BBF\u95EE\u60A8\u7684\u79C1\u94A5\u3002\u4F7F\u7528\u793E\u4EA4\u8D26\u6237\u6216\u552F\u94FE\u767B\u5F55\u65F6\uFF0C\u60A8\u7684\u94B1\u5305\u7531 Privy \u521B\u5EFA\u548C\u4FDD\u62A4\uFF0C\u5E76\u7531\u552F\u94FE\u7BA1\u7406\uFF0C\u63D0\u4F9B\u66F4\u7B80\u5355\u7684\u5165\u95E8\u4F53\u9A8C\uFF0C\u540C\u65F6\u4FDD\u6301\u5B89\u5168\u6027\u3002",
12434
12881
  "Your {{name}}.veworld.vet name has been claimed successfully.": "\u60A8\u7684 {{name}}.veworld.vet \u540D\u5B57\u5DF2\u6210\u529F\u6CE8\u518C\u3002",
12882
+ "Your {{name}}.{{domainType}} name has been claimed successfully.": "\u60A8\u7684{{name}}.{{domainType}}\u540D\u79F0\u5DF2\u6210\u529F\u7533\u8BF7\u3002",
12435
12883
  here: "\u8FD9\u91CC",
12436
12884
  of: "\u7684",
12437
12885
  on: "\u5F00\u542F",
@@ -12488,6 +12936,7 @@ var ja_default = {
12488
12936
  "Are you sure you want to disconnect your wallet?": "\u30A6\u30A9\u30EC\u30C3\u30C8\u3092\u5207\u65AD\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F",
12489
12937
  "Are you sure you want to set your domain name to": "\u30C9\u30E1\u30A4\u30F3\u540D\u3092\u8A2D\u5B9A\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B",
12490
12938
  "Are you sure you want to unlink {{accountType}} as a login method linked to {{accountDescription}}?": "{{accountDescription}}\u306B\u30EA\u30F3\u30AF\u3055\u308C\u305F\u30ED\u30B0\u30A4\u30F3\u65B9\u6CD5\u3068\u3057\u3066{{accountType}}\u306E\u30EA\u30F3\u30AF\u3092\u89E3\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F",
12939
+ "Are you sure you want to unset your current domain?": "\u73FE\u5728\u306E\u30C9\u30E1\u30A4\u30F3\u3092\u89E3\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F",
12491
12940
  Assets: "\u8CC7\u7523",
12492
12941
  At: "\u3067",
12493
12942
  "B3TR is the incentive token of VeBetterDAO, built on VechainThor blockchain. It has a capped supply of 1 billion tokens, emitted weekly over 12 years. B3TR is used for rewards, governance, and backing VOT3 tokens 1:1. It supports sustainability applications and DAO treasury management.": "B3TR\u306FVeBetterDAO\u306E\u30A4\u30F3\u30BB\u30F3\u30C6\u30A3\u30D6\u30C8\u30FC\u30AF\u30F3\u3067\u3042\u308A\u3001VechainThor\u30D6\u30ED\u30C3\u30AF\u30C1\u30A7\u30FC\u30F3\u4E0A\u306B\u69CB\u7BC9\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u7DCF\u4F9B\u7D66\u91CF\u306F10\u5104\u30C8\u30FC\u30AF\u30F3\u306B\u9650\u5B9A\u3055\u308C\u300112\u5E74\u9593\u306B\u308F\u305F\u3063\u3066\u6BCE\u9031\u767A\u884C\u3055\u308C\u307E\u3059\u3002B3TR\u306F\u5831\u916C\u3001\u30AC\u30D0\u30CA\u30F3\u30B9\u3001\u304A\u3088\u3073VOT3\u30C8\u30FC\u30AF\u30F3\u306E1:1\u306E\u4FDD\u8B77\u306B\u4F7F\u7528\u3055\u308C\u307E\u3059\u3002\u305D\u308C\u306F\u30B5\u30B9\u30C6\u30CA\u30D3\u30EA\u30C6\u30A3\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u3068DAO\u30C8\u30EC\u30B8\u30E3\u30EA\u7BA1\u7406\u3092\u30B5\u30DD\u30FC\u30C8\u3057\u307E\u3059\u3002",
@@ -12527,6 +12976,7 @@ var ja_default = {
12527
12976
  Confirm: "\u78BA\u8A8D",
12528
12977
  "Confirm Changes": "\u5909\u66F4\u3092\u78BA\u8A8D",
12529
12978
  "Confirm Name": "\u540D\u524D\u3092\u78BA\u8A8D",
12979
+ "Confirm Unset Domain": "\u30C9\u30E1\u30A4\u30F3\u89E3\u9664\u3092\u78BA\u8A8D",
12530
12980
  "Confirm the transaction in your wallet to complete it.": "\u30A6\u30A9\u30EC\u30C3\u30C8\u3067\u30C8\u30E9\u30F3\u30B6\u30AF\u30B7\u30E7\u30F3\u3092\u78BA\u8A8D\u3057\u3066\u5B8C\u4E86\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
12531
12981
  "Confirm transaction": "\u53D6\u5F15\u3092\u78BA\u8A8D",
12532
12982
  "Connect Wallet": "\u30A6\u30A9\u30EC\u30C3\u30C8\u3092\u63A5\u7D9A",
@@ -12580,6 +13030,8 @@ var ja_default = {
12580
13030
  Discord: "\u30C7\u30A3\u30B9\u30B3\u30FC\u30C9",
12581
13031
  "Display Name": "\u8868\u793A\u540D",
12582
13032
  "Display name must be less than 25 characters": "\u8868\u793A\u540D\u306F25\u6587\u5B57\u672A\u6E80\u3067\u306A\u3051\u308C\u3070\u306A\u308A\u307E\u305B\u3093",
13033
+ "Domain set": "\u30C9\u30E1\u30A4\u30F3\u304C\u8A2D\u5B9A\u3055\u308C\u307E\u3057\u305F",
13034
+ "Domain unset": "\u30C9\u30E1\u30A4\u30F3\u304C\u89E3\u9664\u3055\u308C\u307E\u3057\u305F",
12583
13035
  Done: "\u5B8C\u4E86",
12584
13036
  Ecosystem: "\u30A8\u30B3\u30B7\u30B9\u30C6\u30E0",
12585
13037
  "Ecosystem Login": "\u30A8\u30B3\u30B7\u30B9\u30C6\u30E0\u306B\u30ED\u30B0\u30A4\u30F3",
@@ -12737,6 +13189,7 @@ var ja_default = {
12737
13189
  Remove: "\u524A\u9664",
12738
13190
  "Remove Login Method": "\u30ED\u30B0\u30A4\u30F3\u65B9\u6CD5\u306E\u524A\u9664",
12739
13191
  "Remove from shortcuts": "\u30B7\u30E7\u30FC\u30C8\u30AB\u30C3\u30C8\u304B\u3089\u524A\u9664",
13192
+ "Remove your current domain name": "\u73FE\u5728\u306E\u30C9\u30E1\u30A4\u30F3\u540D\u3092\u524A\u9664\u3059\u308B",
12740
13193
  "Resend code": "\u30B3\u30FC\u30C9\u3092\u518D\u9001\u4FE1",
12741
13194
  Retry: "\u518D\u8A66\u884C",
12742
13195
  "Safari blocked the login window. Please try again, it should work now.": "Safari\u304C\u30ED\u30B0\u30A4\u30F3\u30A6\u30A3\u30F3\u30C9\u30A6\u3092\u30D6\u30ED\u30C3\u30AF\u3057\u307E\u3057\u305F\u3002\u3082\u3046\u4E00\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002\u4ECA\u5EA6\u306F\u3046\u307E\u304F\u3044\u304F\u306F\u305A\u3067\u3059\u3002",
@@ -12816,6 +13269,7 @@ var ja_default = {
12816
13269
  "Token Contract Address": "\u30C8\u30FC\u30AF\u30F3\u5951\u7D04\u30A2\u30C9\u30EC\u30B9",
12817
13270
  "Token already added": "\u30C8\u30FC\u30AF\u30F3\u306F\u65E2\u306B\u8FFD\u52A0\u3055\u308C\u3066\u3044\u307E\u3059",
12818
13271
  "Tokens transferred successfully.": "\u30C8\u30FC\u30AF\u30F3\u306E\u8EE2\u9001\u304C\u6210\u529F\u3057\u307E\u3057\u305F\u3002",
13272
+ Tools: "\u30C4\u30FC\u30EB",
12819
13273
  "Total balance": "\u7DCF\u6B8B\u9AD8",
12820
13274
  "Transaction completed!": "\u53D6\u5F15\u304C\u5B8C\u4E86\u3057\u307E\u3057\u305F\uFF01",
12821
13275
  "Transaction failed": "\u53D6\u5F15\u306B\u5931\u6557\u3057\u307E\u3057\u305F",
@@ -12835,6 +13289,11 @@ var ja_default = {
12835
13289
  "Unknown error": "\u4E0D\u660E\u306A\u30A8\u30E9\u30FC",
12836
13290
  "Unknown status": "\u4E0D\u660E\u306A\u72B6\u614B",
12837
13291
  "Unlink Login Method": "\u30ED\u30B0\u30A4\u30F3\u65B9\u6CD5\u306E\u30EA\u30F3\u30AF\u89E3\u9664",
13292
+ "Unset current domain": "\u73FE\u5728\u306E\u30C9\u30E1\u30A4\u30F3\u3092\u89E3\u9664\u3059\u308B",
13293
+ "Unsetting current domain": "\u73FE\u5728\u306E\u30C9\u30E1\u30A4\u30F3\u3092\u89E3\u9664\u4E2D",
13294
+ "Unsetting current domain...": "\u73FE\u5728\u306E\u30C9\u30E1\u30A4\u30F3\u3092\u89E3\u9664\u4E2D...",
13295
+ "Unsetting your current VeChain nickname": "\u73FE\u5728\u306EVeChain\u30CB\u30C3\u30AF\u30CD\u30FC\u30E0\u3092\u89E3\u9664\u4E2D",
13296
+ "Unsetting your current domain": "\u73FE\u5728\u306E\u30C9\u30E1\u30A4\u30F3\u3092\u89E3\u9664\u4E2D",
12838
13297
  "Update profile image": "\u30D7\u30ED\u30D5\u30A3\u30FC\u30EB\u753B\u50CF\u3092\u66F4\u65B0",
12839
13298
  "Upgrade Now": "\u4ECA\u3059\u3050\u30A2\u30C3\u30D7\u30B0\u30EC\u30FC\u30C9",
12840
13299
  "Upgrade Smart Account to V3": "\u30B9\u30DE\u30FC\u30C8\u30A2\u30AB\u30A6\u30F3\u30C8\u3092V3\u306B\u30A2\u30C3\u30D7\u30B0\u30EC\u30FC\u30C9",
@@ -12902,8 +13361,10 @@ var ja_default = {
12902
13361
  "You own a Smart Account and it has priority over your wallet.": "\u3042\u306A\u305F\u306F\u30B9\u30DE\u30FC\u30C8\u30A2\u30AB\u30A6\u30F3\u30C8\u3092\u6240\u6709\u3057\u3066\u304A\u308A\u3001\u305D\u308C\u306F\u3042\u306A\u305F\u306E\u30A6\u30A9\u30EC\u30C3\u30C8\u3088\u308A\u512A\u5148\u3055\u308C\u307E\u3059\u3002",
12903
13362
  "Your account has been successfully upgraded to the latest version. You can now enjoy a better user experience, lower gas costs, and enhanced security.": "\u3042\u306A\u305F\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u306F\u6700\u65B0\u30D0\u30FC\u30B8\u30E7\u30F3\u306B\u6B63\u5E38\u306B\u30A2\u30C3\u30D7\u30B0\u30EC\u30FC\u30C9\u3055\u308C\u307E\u3057\u305F\u3002\u3088\u308A\u826F\u3044\u30E6\u30FC\u30B6\u30FC\u4F53\u9A13\u3001\u4F4E\u3044\u30AC\u30B9\u30B3\u30B9\u30C8\u3001\u5F37\u5316\u3055\u308C\u305F\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u3092\u304A\u697D\u3057\u307F\u304F\u3060\u3055\u3044\u3002",
12904
13363
  "Your accounts": "\u3042\u306A\u305F\u306E\u30A2\u30AB\u30A6\u30F3\u30C8",
13364
+ "Your address has been successfully set to {{name}}.{{domainType}}.": "\u3042\u306A\u305F\u306E\u30A2\u30C9\u30EC\u30B9\u306F{{name}}.{{domainType}}\u306B\u6B63\u5E38\u306B\u8A2D\u5B9A\u3055\u308C\u307E\u3057\u305F\u3002",
12905
13365
  "Your changes have been saved successfully.": "\u5909\u66F4\u306F\u6B63\u5E38\u306B\u4FDD\u5B58\u3055\u308C\u307E\u3057\u305F\u3002",
12906
13366
  "Your customizations are linked to your .vet domain name, making them portable across different applications.": "\u30AB\u30B9\u30BF\u30DE\u30A4\u30BA\u306F.vet\u30C9\u30E1\u30A4\u30F3\u540D\u306B\u30EA\u30F3\u30AF\u3055\u308C\u3066\u3044\u308B\u305F\u3081\u3001\u7570\u306A\u308B\u30A2\u30D7\u30EA\u30B1\u30FC\u30B7\u30E7\u30F3\u9593\u3067\u6301\u3061\u904B\u3079\u307E\u3059\u3002",
13367
+ "Your domain has been unset successfully.": "\u3042\u306A\u305F\u306E\u30C9\u30E1\u30A4\u30F3\u306F\u6B63\u5E38\u306B\u89E3\u9664\u3055\u308C\u307E\u3057\u305F\u3002",
12907
13368
  "Your embedded wallet": "\u3042\u306A\u305F\u306E\u57CB\u3081\u8FBC\u307F\u30A6\u30A9\u30EC\u30C3\u30C8",
12908
13369
  "Your existing domains": "\u65E2\u5B58\u306E\u30C9\u30E1\u30A4\u30F3",
12909
13370
  "Your mobile browser blocked the login window.": "\u30E2\u30D0\u30A4\u30EB\u30D6\u30E9\u30A6\u30B6\u304C\u30ED\u30B0\u30A4\u30F3\u30A6\u30A3\u30F3\u30C9\u30A6\u3092\u30D6\u30ED\u30C3\u30AF\u3057\u307E\u3057\u305F\u3002",
@@ -12920,6 +13381,7 @@ var ja_default = {
12920
13381
  "Your wallet is secured by a private key. The private key is a unique code that allows you to access your wallet. It is stored in your browser and is used to sign transactions. The private key is never shared with anyone, including the VeChain Foundation.": "\u30A6\u30A9\u30EC\u30C3\u30C8\u306F\u79D8\u5BC6\u9375\u306B\u3088\u3063\u3066\u4FDD\u8B77\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u79D8\u5BC6\u9375\u306F\u30A6\u30A9\u30EC\u30C3\u30C8\u3078\u306E\u30A2\u30AF\u30BB\u30B9\u3092\u53EF\u80FD\u306B\u3059\u308B\u4E00\u610F\u306E\u30B3\u30FC\u30C9\u3067\u3059\u3002\u3053\u308C\u306F\u30D6\u30E9\u30A6\u30B6\u306B\u4FDD\u5B58\u3055\u308C\u3001\u30C8\u30E9\u30F3\u30B6\u30AF\u30B7\u30E7\u30F3\u306E\u7F72\u540D\u306B\u4F7F\u7528\u3055\u308C\u307E\u3059\u3002\u79D8\u5BC6\u9375\u306F\u3001VeChain\u306E\u8CA1\u56E3\u3092\u542B\u3080\u8AB0\u3068\u3082\u5171\u6709\u3055\u308C\u307E\u305B\u3093\u3002",
12921
13382
  "Your wallet security depends on how you access it. With self-custody options like the VeWorld extension, mobile app, or hardware wallet, you have complete control over your private keys. This extension itself has no access to your private keys. When logging in with social accounts or VeChain, your wallet is created and secured by Privy and managed by VeChain, providing an easier onboarding experience while maintaining security.": "\u30A6\u30A9\u30EC\u30C3\u30C8\u306E\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u306F\u3001\u30A2\u30AF\u30BB\u30B9\u65B9\u6CD5\u306B\u4F9D\u5B58\u3057\u307E\u3059\u3002VeWorld\u62E1\u5F35\u6A5F\u80FD\u3084\u30E2\u30D0\u30A4\u30EB\u30A2\u30D7\u30EA\u3001\u30CF\u30FC\u30C9\u30A6\u30A7\u30A2\u30A6\u30A9\u30EC\u30C3\u30C8\u306A\u3069\u306E\u81EA\u5DF1\u7BA1\u7406\u30AA\u30D7\u30B7\u30E7\u30F3\u3092\u4F7F\u7528\u3059\u308B\u3053\u3068\u3067\u3001\u79D8\u5BC6\u9375\u3092\u5B8C\u5168\u306B\u7BA1\u7406\u3067\u304D\u307E\u3059\u3002\u3053\u306E\u62E1\u5F35\u6A5F\u80FD\u81EA\u4F53\u306F\u3042\u306A\u305F\u306E\u79D8\u5BC6\u9375\u306B\u30A2\u30AF\u30BB\u30B9\u3059\u308B\u3053\u3068\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u30BD\u30FC\u30B7\u30E3\u30EB\u30A2\u30AB\u30A6\u30F3\u30C8\u3084VeChain\u3092\u4F7F\u7528\u3057\u3066\u30ED\u30B0\u30A4\u30F3\u3059\u308B\u5834\u5408\u3001\u30A6\u30A9\u30EC\u30C3\u30C8\u306FPrivy\u306B\u3088\u3063\u3066\u4F5C\u6210\u3055\u308C\u3001\u4FDD\u8B77\u3055\u308C\u3001VeChain\u306B\u3088\u3063\u3066\u7BA1\u7406\u3055\u308C\u3001\u30BB\u30AD\u30E5\u30EA\u30C6\u30A3\u3092\u7DAD\u6301\u3057\u3064\u3064\u5BB9\u6613\u306A\u30AA\u30F3\u30DC\u30FC\u30C7\u30A3\u30F3\u30B0\u4F53\u9A13\u3092\u63D0\u4F9B\u3057\u307E\u3059\u3002",
12922
13383
  "Your {{name}}.veworld.vet name has been claimed successfully.": "\u3042\u306A\u305F\u306E{{name}}.veworld.vet\u540D\u304C\u6B63\u5E38\u306B\u8ACB\u6C42\u3055\u308C\u307E\u3057\u305F\u3002",
13384
+ "Your {{name}}.{{domainType}} name has been claimed successfully.": "\u3042\u306A\u305F\u306E{{name}}.{{domainType}}\u540D\u306F\u6B63\u5E38\u306B\u53D6\u5F97\u3055\u308C\u307E\u3057\u305F\u3002",
12923
13385
  here: "\u3053\u3061\u3089",
12924
13386
  of: "\u306E",
12925
13387
  on: "\u4E0A",
@@ -12998,7 +13460,7 @@ var FAQContent = ({ onGoBack }) => {
12998
13460
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalBody, { children: /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { spacing: 6, align: "stretch", children: [
12999
13461
  /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { children: [
13000
13462
  /* @__PURE__ */ jsxRuntime.jsx(react.HStack, { justify: "center", children: /* @__PURE__ */ jsxRuntime.jsx(
13001
- chunkA4NZ5AVL_cjs.VechainLogo,
13463
+ chunkTV24UEQU_cjs.VechainLogo,
13002
13464
  {
13003
13465
  isDark,
13004
13466
  w: "200px",
@@ -13134,7 +13596,7 @@ var CustomizationContent = ({
13134
13596
  setPreviewImageUrl(newPreviewUrl);
13135
13597
  const uploadedImage = await onUpload(file);
13136
13598
  if (!uploadedImage) throw new Error("Failed to compress image");
13137
- const ipfsHash = await chunkDBQR2OKX_cjs.uploadBlobToIPFS(
13599
+ const ipfsHash = await chunkQRYVPUVY_cjs.uploadBlobToIPFS(
13138
13600
  uploadedImage.file,
13139
13601
  file.name,
13140
13602
  network.type
@@ -13204,7 +13666,7 @@ var CustomizationContent = ({
13204
13666
  backgroundPosition: "center",
13205
13667
  position: "relative",
13206
13668
  h: "80px",
13207
- background: `no-repeat url('${chunkDBQR2OKX_cjs.getPicassoImage(
13669
+ background: `no-repeat url('${chunkQRYVPUVY_cjs.getPicassoImage(
13208
13670
  account?.address ?? ""
13209
13671
  )}')`,
13210
13672
  w: "100%",
@@ -14092,7 +14554,7 @@ var ManageCustomTokenContent = ({
14092
14554
  /* @__PURE__ */ jsxRuntime.jsx(
14093
14555
  react.Image,
14094
14556
  {
14095
- src: chunkDBQR2OKX_cjs.TOKEN_LOGOS[token?.symbol],
14557
+ src: chunkQRYVPUVY_cjs.TOKEN_LOGOS[token?.symbol],
14096
14558
  alt: `${token.symbol} logo`,
14097
14559
  boxSize: "20px",
14098
14560
  borderRadius: "full",
@@ -14122,7 +14584,7 @@ var ManageCustomTokenContent = ({
14122
14584
  ),
14123
14585
  /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontWeight: "medium", children: token.symbol ?? "Unknown" })
14124
14586
  ] }),
14125
- /* @__PURE__ */ jsxRuntime.jsx(react.Text, { opacity: 0.7, children: chunkDBQR2OKX_cjs.humanAddress(
14587
+ /* @__PURE__ */ jsxRuntime.jsx(react.Text, { opacity: 0.7, children: chunkQRYVPUVY_cjs.humanAddress(
14126
14588
  token.address ?? "",
14127
14589
  4,
14128
14590
  4
@@ -14168,7 +14630,7 @@ var BridgeContent = ({ setCurrentContent }) => {
14168
14630
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalCloseButton, {})
14169
14631
  ] }),
14170
14632
  /* @__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: [
14171
- /* @__PURE__ */ jsxRuntime.jsx(chunkA4NZ5AVL_cjs.VechainEnergy, { isDark, borderRadius: "xl" }),
14633
+ /* @__PURE__ */ jsxRuntime.jsx(chunkTV24UEQU_cjs.VechainEnergy, { isDark, borderRadius: "xl" }),
14172
14634
  /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", textAlign: "center", children: t(
14173
14635
  "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."
14174
14636
  ) })
@@ -14413,7 +14875,7 @@ var PrivyLinkedAccounts = ({ onBack }) => {
14413
14875
  case "phone":
14414
14876
  return account.number;
14415
14877
  case "wallet":
14416
- return `${chunkDBQR2OKX_cjs.humanAddress(account.address)} - ${account.walletClientType}`;
14878
+ return `${chunkQRYVPUVY_cjs.humanAddress(account.address)} - ${account.walletClientType}`;
14417
14879
  default:
14418
14880
  return "";
14419
14881
  }
@@ -14928,7 +15390,7 @@ var SharedAppCard = ({
14928
15390
  react.Image,
14929
15391
  {
14930
15392
  src: imageUrl,
14931
- fallbackSrc: chunkDBQR2OKX_cjs.notFoundImage,
15393
+ fallbackSrc: chunkQRYVPUVY_cjs.notFoundImage,
14932
15394
  alt: name,
14933
15395
  height: "90px",
14934
15396
  objectFit: "contain",
@@ -15028,7 +15490,7 @@ var ShortcutsSection = ({}) => {
15028
15490
  react.Image,
15029
15491
  {
15030
15492
  src: shortcut.image,
15031
- fallbackSrc: chunkDBQR2OKX_cjs.notFoundImage,
15493
+ fallbackSrc: chunkQRYVPUVY_cjs.notFoundImage,
15032
15494
  alt: shortcut.name,
15033
15495
  objectFit: "contain",
15034
15496
  rounded: "full"
@@ -15415,7 +15877,7 @@ var TransactionModalContent = ({
15415
15877
  }
15416
15878
  };
15417
15879
  const statusConfig = getStatusConfig();
15418
- const socialDescription = `${chunkDBQR2OKX_cjs.getConfig(network.type).explorerUrl}/${txReceipt?.meta.txID}`;
15880
+ const socialDescription = `${chunkQRYVPUVY_cjs.getConfig(network.type).explorerUrl}/${txReceipt?.meta.txID}`;
15419
15881
  return /* @__PURE__ */ jsxRuntime.jsxs(react.Box, { children: [
15420
15882
  /* @__PURE__ */ jsxRuntime.jsxs(StickyHeaderContainer, { children: [
15421
15883
  /* @__PURE__ */ jsxRuntime.jsx(react.ModalHeader, { children: statusConfig.title }),
@@ -15493,7 +15955,7 @@ var TransactionModalContent = ({
15493
15955
  uiConfig?.showExplorerButton && txReceipt?.meta.txID && /* @__PURE__ */ jsxRuntime.jsx(
15494
15956
  react.Link,
15495
15957
  {
15496
- href: `${chunkDBQR2OKX_cjs.getConfig(network.type).explorerUrl}/${txReceipt?.meta.txID}`,
15958
+ href: `${chunkQRYVPUVY_cjs.getConfig(network.type).explorerUrl}/${txReceipt?.meta.txID}`,
15497
15959
  isExternal: true,
15498
15960
  opacity: 0.5,
15499
15961
  fontSize: "14px",
@@ -15556,7 +16018,7 @@ var SuccessfulOperationContent = ({
15556
16018
  }) => {
15557
16019
  const { t } = reactI18next.useTranslation();
15558
16020
  const { network, darkMode } = useVeChainKitConfig();
15559
- const explorerUrl = chunkDBQR2OKX_cjs.getConfig(network.type).explorerUrl;
16021
+ const explorerUrl = chunkQRYVPUVY_cjs.getConfig(network.type).explorerUrl;
15560
16022
  const socialDescription = `${explorerUrl}/${txId}`;
15561
16023
  return /* @__PURE__ */ jsxRuntime.jsxs(react.Box, { children: [
15562
16024
  /* @__PURE__ */ jsxRuntime.jsxs(StickyHeaderContainer, { children: [
@@ -15891,28 +16353,23 @@ var ConnectPopover = ({
15891
16353
  };
15892
16354
  var WalletDisplay = ({ variant }) => {
15893
16355
  const { account } = useWallet();
15894
- const [isSmallMobile] = react.useMediaQuery("(max-width: 480px)");
15895
- const accountDomain = React10.useMemo(() => {
15896
- const isLongDomain = account?.domain && account.domain.length > 18;
15897
- return isSmallMobile && isLongDomain ? chunkDBQR2OKX_cjs.humanDomain(account?.domain ?? "", 18, 0) : account?.domain;
15898
- }, [isSmallMobile, account?.domain]);
15899
16356
  if (!account) return /* @__PURE__ */ jsxRuntime.jsx(react.Spinner, {});
15900
16357
  if (variant === "icon") {
15901
16358
  return null;
15902
16359
  }
15903
16360
  if (variant === "iconAndDomain") {
15904
- return account.domain ? /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", children: accountDomain }) : /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", children: chunkDBQR2OKX_cjs.humanAddress(account.address ?? "", 6, 4) });
16361
+ return account.domain ? /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", children: chunkQRYVPUVY_cjs.humanDomain(account?.domain ?? "", 16, 0) }) : /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", children: chunkQRYVPUVY_cjs.humanAddress(account.address ?? "", 6, 4) });
15905
16362
  }
15906
16363
  if (variant === "iconDomainAndAssets") {
15907
16364
  return /* @__PURE__ */ jsxRuntime.jsxs(react.HStack, { spacing: 4, children: [
15908
16365
  /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { spacing: 0, alignItems: "flex-start", children: [
15909
- account.domain && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", fontWeight: "bold", children: accountDomain }),
16366
+ account.domain && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", fontWeight: "bold", children: chunkQRYVPUVY_cjs.humanDomain(account?.domain ?? "", 16, 0) }),
15910
16367
  /* @__PURE__ */ jsxRuntime.jsx(
15911
16368
  react.Text,
15912
16369
  {
15913
16370
  fontSize: account.domain ? "xs" : "sm",
15914
16371
  opacity: account.domain ? 0.5 : 1,
15915
- children: chunkDBQR2OKX_cjs.humanAddress(account.address ?? "", 4, 4)
16372
+ children: chunkQRYVPUVY_cjs.humanAddress(account.address ?? "", 4, 4)
15916
16373
  }
15917
16374
  )
15918
16375
  ] }),
@@ -15920,13 +16377,13 @@ var WalletDisplay = ({ variant }) => {
15920
16377
  ] });
15921
16378
  }
15922
16379
  return /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { spacing: 0, alignItems: "flex-start", children: [
15923
- account.domain && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", fontWeight: "bold", children: accountDomain }),
16380
+ account.domain && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", fontWeight: "bold", children: chunkQRYVPUVY_cjs.humanDomain(account?.domain ?? "", 16, 0) }),
15924
16381
  /* @__PURE__ */ jsxRuntime.jsx(
15925
16382
  react.Text,
15926
16383
  {
15927
16384
  fontSize: account.domain ? "xs" : "sm",
15928
16385
  opacity: account.domain ? 0.5 : 1,
15929
- children: chunkDBQR2OKX_cjs.humanAddress(account.address ?? "", 4, 4)
16386
+ children: chunkQRYVPUVY_cjs.humanAddress(account.address ?? "", 4, 4)
15930
16387
  }
15931
16388
  )
15932
16389
  ] });
@@ -16100,7 +16557,7 @@ var TransactionToastContent = ({
16100
16557
  }) => {
16101
16558
  const { t } = reactI18next.useTranslation();
16102
16559
  const { network } = useVeChainKitConfig();
16103
- const explorerUrl = chunkDBQR2OKX_cjs.getConfig(network.type).explorerUrl;
16560
+ const explorerUrl = chunkQRYVPUVY_cjs.getConfig(network.type).explorerUrl;
16104
16561
  const errorMessage = React10.useMemo(() => {
16105
16562
  if (!txError) return null;
16106
16563
  return txError.reason || t("Something went wrong. Please try again.");
@@ -16547,14 +17004,11 @@ var ProfileCard = ({
16547
17004
  }) => {
16548
17005
  const { t } = reactI18next.useTranslation();
16549
17006
  const { account } = useWallet();
16550
- const activeAccountDomain = useVechainDomain(address);
16551
- const activeAccountAvatar = useGetAvatarOfAddress(address);
16552
- const activeAccountTextRecords = useGetTextRecords(
16553
- activeAccountDomain?.data?.domain
16554
- );
16555
- const headerImageSvg = chunkDBQR2OKX_cjs.getPicassoImage(address);
17007
+ const { network } = useVeChainKitConfig();
17008
+ const metadata = useWalletMetadata(address, network.type);
17009
+ const headerImageSvg = chunkQRYVPUVY_cjs.getPicassoImage(address);
16556
17010
  const isConnectedAccount = address === account?.address;
16557
- const hasLinks = activeAccountTextRecords?.data?.url || activeAccountTextRecords?.data?.["com.x"] || activeAccountTextRecords?.data?.email;
17011
+ const hasLinks = metadata?.records?.url || metadata?.records?.["com.x"] || metadata?.records?.email;
16558
17012
  return /* @__PURE__ */ jsxRuntime.jsxs(react.Card, { variant: "vechainKitBase", ...style?.card, children: [
16559
17013
  /* @__PURE__ */ jsxRuntime.jsx(
16560
17014
  react.Box,
@@ -16581,14 +17035,14 @@ var ProfileCard = ({
16581
17035
  {
16582
17036
  wallet: {
16583
17037
  address,
16584
- domain: activeAccountDomain?.data?.domain,
16585
- image: activeAccountAvatar.data,
16586
- isLoadingMetadata: activeAccountAvatar?.isLoading || activeAccountDomain?.isLoading || activeAccountTextRecords?.isLoading,
16587
- metadata: activeAccountTextRecords?.data
17038
+ domain: metadata?.domain,
17039
+ image: metadata?.image,
17040
+ isLoadingMetadata: metadata?.isLoading,
17041
+ metadata: metadata?.records
16588
17042
  },
16589
17043
  props: {
16590
- width: "100px",
16591
- height: "100px"
17044
+ width: "120px",
17045
+ height: "120px"
16592
17046
  // boxShadow: '0px 0px 3px 2px #00000024',
16593
17047
  }
16594
17048
  }
@@ -16598,12 +17052,12 @@ var ProfileCard = ({
16598
17052
  /* @__PURE__ */ jsxRuntime.jsx(
16599
17053
  react.CardBody,
16600
17054
  {
16601
- mt: 10,
17055
+ mt: "60px",
16602
17056
  backgroundColor: "none",
16603
17057
  border: "none",
16604
17058
  ...style?.body,
16605
17059
  children: /* @__PURE__ */ jsxRuntime.jsxs(react.VStack, { w: "full", spacing: 2, children: [
16606
- showDisplayName && activeAccountTextRecords?.data?.display && /* @__PURE__ */ jsxRuntime.jsx(
17060
+ showDisplayName && metadata?.records?.display && /* @__PURE__ */ jsxRuntime.jsx(
16607
17061
  react.Text,
16608
17062
  {
16609
17063
  fontSize: "xl",
@@ -16611,10 +17065,19 @@ var ProfileCard = ({
16611
17065
  w: "full",
16612
17066
  textAlign: "center",
16613
17067
  mt: 2,
16614
- children: activeAccountTextRecords?.data?.display
17068
+ children: metadata?.records?.display
17069
+ }
17070
+ ),
17071
+ showDescription && metadata?.records?.description && /* @__PURE__ */ jsxRuntime.jsx(
17072
+ react.Text,
17073
+ {
17074
+ fontSize: "sm",
17075
+ opacity: 0.7,
17076
+ w: "full",
17077
+ textAlign: "center",
17078
+ children: metadata?.records?.description
16615
17079
  }
16616
17080
  ),
16617
- showDescription && activeAccountTextRecords?.data?.description && /* @__PURE__ */ jsxRuntime.jsx(react.Text, { fontSize: "sm", opacity: 0.7, children: activeAccountTextRecords?.data?.description }),
16618
17081
  showLinks && hasLinks && /* @__PURE__ */ jsxRuntime.jsxs(
16619
17082
  react.HStack,
16620
17083
  {
@@ -16623,26 +17086,26 @@ var ProfileCard = ({
16623
17086
  spacing: 5,
16624
17087
  mt: 4,
16625
17088
  children: [
16626
- activeAccountTextRecords?.data?.email && /* @__PURE__ */ jsxRuntime.jsx(
17089
+ metadata?.records?.email && /* @__PURE__ */ jsxRuntime.jsx(
16627
17090
  react.Link,
16628
17091
  {
16629
- href: `mailto:${activeAccountTextRecords?.data?.email}`,
17092
+ href: `mailto:${metadata?.records?.email}`,
16630
17093
  target: "_blank",
16631
17094
  children: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: fa.FaEnvelope })
16632
17095
  }
16633
17096
  ),
16634
- activeAccountTextRecords?.data?.url && /* @__PURE__ */ jsxRuntime.jsx(
17097
+ metadata?.records?.url && /* @__PURE__ */ jsxRuntime.jsx(
16635
17098
  react.Link,
16636
17099
  {
16637
- href: activeAccountTextRecords?.data?.url,
17100
+ href: metadata?.records?.url,
16638
17101
  target: "_blank",
16639
17102
  children: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: fa.FaGlobe })
16640
17103
  }
16641
17104
  ),
16642
- activeAccountTextRecords?.data?.["com.x"] && /* @__PURE__ */ jsxRuntime.jsx(
17105
+ metadata?.records?.["com.x"] && /* @__PURE__ */ jsxRuntime.jsx(
16643
17106
  react.Link,
16644
17107
  {
16645
- href: `https://x.com/${activeAccountTextRecords?.data?.["com.x"]}`,
17108
+ href: `https://x.com/${metadata?.records?.["com.x"]}`,
16646
17109
  target: "_blank",
16647
17110
  children: /* @__PURE__ */ jsxRuntime.jsx(react.Icon, { as: fa6.FaXTwitter })
16648
17111
  }
@@ -16655,10 +17118,10 @@ var ProfileCard = ({
16655
17118
  {
16656
17119
  wallet: {
16657
17120
  address,
16658
- domain: activeAccountDomain?.data?.domain,
16659
- image: activeAccountAvatar.data,
16660
- isLoadingMetadata: activeAccountAvatar?.isLoading || activeAccountDomain?.isLoading || activeAccountTextRecords?.isLoading,
16661
- metadata: activeAccountTextRecords?.data
17121
+ domain: metadata?.domain,
17122
+ image: metadata?.image,
17123
+ isLoadingMetadata: metadata?.isLoading,
17124
+ metadata: metadata?.records
16662
17125
  },
16663
17126
  style: { mt: 4 }
16664
17127
  }
@@ -16708,7 +17171,7 @@ var SuccessfulOperationContent2 = ({
16708
17171
  }) => {
16709
17172
  const { t } = reactI18next.useTranslation();
16710
17173
  const { network, darkMode } = useVeChainKitConfig();
16711
- const explorerUrl = chunkDBQR2OKX_cjs.getConfig(network.type).explorerUrl;
17174
+ const explorerUrl = chunkQRYVPUVY_cjs.getConfig(network.type).explorerUrl;
16712
17175
  const socialDescription = `${explorerUrl}/${txId}`;
16713
17176
  return /* @__PURE__ */ jsxRuntime.jsxs(react.Box, { children: [
16714
17177
  /* @__PURE__ */ jsxRuntime.jsxs(StickyHeaderContainer, { children: [
@@ -17333,7 +17796,7 @@ var useReceiveModal = () => {
17333
17796
  var ReceiveModalProvider = ({ children }) => /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
17334
17797
  var useLoginModalContent = () => {
17335
17798
  const { privy, loginMethods } = useVeChainKitConfig();
17336
- const isVeChainApp = privy?.appId === chunkDBQR2OKX_cjs.VECHAIN_PRIVY_APP_ID;
17799
+ const isVeChainApp = privy?.appId === chunkQRYVPUVY_cjs.VECHAIN_PRIVY_APP_ID;
17337
17800
  const isLoginMethodEnabled = (method35) => {
17338
17801
  if (!loginMethods) return true;
17339
17802
  if (Array.isArray(method35)) {
@@ -17439,7 +17902,7 @@ var useTransferERC20 = ({
17439
17902
  const queryClient = reactQuery.useQueryClient();
17440
17903
  const { refresh } = useRefreshBalances();
17441
17904
  const buildClauses = React10.useCallback(async () => {
17442
- if (!receiverAddress || !amount || !chunkDBQR2OKX_cjs.isValidAddress(receiverAddress))
17905
+ if (!receiverAddress || !amount || !chunkQRYVPUVY_cjs.isValidAddress(receiverAddress))
17443
17906
  throw new Error("Invalid receiver address or amount");
17444
17907
  const clausesArray = [];
17445
17908
  clausesArray.push({
@@ -17462,7 +17925,7 @@ var useTransferERC20 = ({
17462
17925
  signerAccountAddress: fromAddress,
17463
17926
  privyUIOptions: {
17464
17927
  title: "Confirm Transfer",
17465
- description: `Transfer ${amount} ${tokenName} to ${chunkDBQR2OKX_cjs.humanAddress(
17928
+ description: `Transfer ${amount} ${tokenName} to ${chunkQRYVPUVY_cjs.humanAddress(
17466
17929
  receiverAddress
17467
17930
  )}`,
17468
17931
  buttonText: "Sign to continue"
@@ -17488,7 +17951,7 @@ var useTransferVET = ({
17488
17951
  }) => {
17489
17952
  const { refresh } = useRefreshBalances();
17490
17953
  const buildClauses = React10.useCallback(async () => {
17491
- if (!receiverAddress || !amount || !chunkDBQR2OKX_cjs.isValidAddress(receiverAddress))
17954
+ if (!receiverAddress || !amount || !chunkQRYVPUVY_cjs.isValidAddress(receiverAddress))
17492
17955
  throw new Error("Invalid receiver address or amount");
17493
17956
  if (isNaN(Number(amount))) {
17494
17957
  throw new Error("Invalid amount");
@@ -17512,7 +17975,7 @@ var useTransferVET = ({
17512
17975
  signerAccountAddress: fromAddress,
17513
17976
  privyUIOptions: {
17514
17977
  title: "Confirm Transfer",
17515
- description: `Transfer ${amount} VET to ${chunkDBQR2OKX_cjs.humanAddress(
17978
+ description: `Transfer ${amount} VET to ${chunkQRYVPUVY_cjs.humanAddress(
17516
17979
  receiverAddress
17517
17980
  )}`,
17518
17981
  buttonText: "Sign to continue"
@@ -17590,7 +18053,7 @@ var useSignTypedData2 = () => {
17590
18053
  const privyWalletProvider = usePrivyWalletProvider();
17591
18054
  const { signTypedData: signTypedDataDappKit } = dappKitReact.useWallet();
17592
18055
  const signTypedData = React10.useCallback(
17593
- async (data) => {
18056
+ async (data, options) => {
17594
18057
  setIsSigningPending(true);
17595
18058
  setError(null);
17596
18059
  setSignature(null);
@@ -17604,7 +18067,8 @@ var useSignTypedData2 = () => {
17604
18067
  sig = await signTypedDataDappKit(
17605
18068
  domain,
17606
18069
  data.types,
17607
- data.message
18070
+ data.message,
18071
+ options
17608
18072
  );
17609
18073
  } else {
17610
18074
  sig = await privyWalletProvider.signTypedData(data);
@@ -17612,7 +18076,16 @@ var useSignTypedData2 = () => {
17612
18076
  setSignature(sig);
17613
18077
  return sig;
17614
18078
  } catch (err) {
17615
- const error2 = err instanceof Error ? err : new Error(String(err));
18079
+ if (err && typeof err === "object" && "statusCode" in err && err.statusCode === 4001) {
18080
+ const userRejectionError = new Error(
18081
+ "User denied signature request"
18082
+ );
18083
+ setError(userRejectionError);
18084
+ throw userRejectionError;
18085
+ }
18086
+ const error2 = err instanceof Error ? err : new Error(
18087
+ typeof err === "object" ? JSON.stringify(err) : String(err)
18088
+ );
17616
18089
  setError(error2);
17617
18090
  throw error2;
17618
18091
  } finally {
@@ -17689,14 +18162,14 @@ var useCrossAppConnectionCache = () => {
17689
18162
  var useLoginWithVeChain = () => {
17690
18163
  const { login: loginWithVeChain } = usePrivyCrossAppSdk();
17691
18164
  const { setConnectionCache } = useCrossAppConnectionCache();
17692
- const { data: appsInfo } = useFetchAppInfo([chunkDBQR2OKX_cjs.VECHAIN_PRIVY_APP_ID]);
18165
+ const { data: appsInfo } = useFetchAppInfo([chunkQRYVPUVY_cjs.VECHAIN_PRIVY_APP_ID]);
17693
18166
  const login = async () => {
17694
18167
  try {
17695
- await loginWithVeChain(chunkDBQR2OKX_cjs.VECHAIN_PRIVY_APP_ID);
18168
+ await loginWithVeChain(chunkQRYVPUVY_cjs.VECHAIN_PRIVY_APP_ID);
17696
18169
  setConnectionCache({
17697
18170
  name: "VeChain",
17698
- logoUrl: appsInfo?.[chunkDBQR2OKX_cjs.VECHAIN_PRIVY_APP_ID]?.logo_url,
17699
- appId: chunkDBQR2OKX_cjs.VECHAIN_PRIVY_APP_ID,
18171
+ logoUrl: appsInfo?.[chunkQRYVPUVY_cjs.VECHAIN_PRIVY_APP_ID]?.logo_url,
18172
+ appId: chunkQRYVPUVY_cjs.VECHAIN_PRIVY_APP_ID,
17700
18173
  website: "https://governance.vebetterdao.org"
17701
18174
  });
17702
18175
  } catch (error) {
@@ -17960,9 +18433,9 @@ var PrivyWalletProvider = ({
17960
18433
  clauses.push(
17961
18434
  sdkCore.Clause.callFunction(
17962
18435
  sdkCore.Address.of(
17963
- chunkDBQR2OKX_cjs.getConfig(network.type).accountFactoryAddress
18436
+ chunkQRYVPUVY_cjs.getConfig(network.type).accountFactoryAddress
17964
18437
  ),
17965
- sdkCore.ABIContract.ofAbi(chunkA4NZ5AVL_cjs.SimpleAccountFactoryABI).getFunction(
18438
+ sdkCore.ABIContract.ofAbi(chunkTV24UEQU_cjs.SimpleAccountFactoryABI).getFunction(
17966
18439
  "createAccount"
17967
18440
  ),
17968
18441
  [connectedWallet.address ?? ""]
@@ -17972,7 +18445,7 @@ var PrivyWalletProvider = ({
17972
18445
  clauses.push(
17973
18446
  sdkCore.Clause.callFunction(
17974
18447
  sdkCore.Address.of(smartAccount.address),
17975
- sdkCore.ABIContract.ofAbi(chunkA4NZ5AVL_cjs.SimpleAccountABI).getFunction(
18448
+ sdkCore.ABIContract.ofAbi(chunkTV24UEQU_cjs.SimpleAccountABI).getFunction(
17976
18449
  "executeBatchWithAuthorization"
17977
18450
  ),
17978
18451
  [
@@ -18035,9 +18508,9 @@ var PrivyWalletProvider = ({
18035
18508
  clauses.push(
18036
18509
  sdkCore.Clause.callFunction(
18037
18510
  sdkCore.Address.of(
18038
- chunkDBQR2OKX_cjs.getConfig(network.type).accountFactoryAddress
18511
+ chunkQRYVPUVY_cjs.getConfig(network.type).accountFactoryAddress
18039
18512
  ),
18040
- sdkCore.ABIContract.ofAbi(chunkA4NZ5AVL_cjs.SimpleAccountFactoryABI).getFunction(
18513
+ sdkCore.ABIContract.ofAbi(chunkTV24UEQU_cjs.SimpleAccountFactoryABI).getFunction(
18041
18514
  "createAccount"
18042
18515
  ),
18043
18516
  [connectedWallet.address ?? ""]
@@ -18049,7 +18522,7 @@ var PrivyWalletProvider = ({
18049
18522
  clauses.push(
18050
18523
  sdkCore.Clause.callFunction(
18051
18524
  sdkCore.Address.of(smartAccount.address ?? ""),
18052
- sdkCore.ABIContract.ofAbi(chunkA4NZ5AVL_cjs.SimpleAccountABI).getFunction(
18525
+ sdkCore.ABIContract.ofAbi(chunkTV24UEQU_cjs.SimpleAccountABI).getFunction(
18053
18526
  "executeWithAuthorization"
18054
18527
  ),
18055
18528
  [
@@ -18084,10 +18557,10 @@ var PrivyWalletProvider = ({
18084
18557
  [
18085
18558
  {
18086
18559
  privateKey: Buffer.from(
18087
- chunkDBQR2OKX_cjs.randomTransactionUser.privateKey.slice(2),
18560
+ chunkQRYVPUVY_cjs.randomTransactionUser.privateKey.slice(2),
18088
18561
  "hex"
18089
18562
  ),
18090
- address: chunkDBQR2OKX_cjs.randomTransactionUser.address
18563
+ address: chunkQRYVPUVY_cjs.randomTransactionUser.address
18091
18564
  }
18092
18565
  ],
18093
18566
  { delegator: { delegatorUrl } }
@@ -18098,11 +18571,11 @@ var PrivyWalletProvider = ({
18098
18571
  true
18099
18572
  );
18100
18573
  const signer = await providerWithDelegationEnabled.getSigner(
18101
- chunkDBQR2OKX_cjs.randomTransactionUser.address
18574
+ chunkQRYVPUVY_cjs.randomTransactionUser.address
18102
18575
  );
18103
18576
  const txInput = sdkNetwork.signerUtils.transactionBodyToTransactionRequestInput(
18104
18577
  txBody,
18105
- chunkDBQR2OKX_cjs.randomTransactionUser.address
18578
+ chunkQRYVPUVY_cjs.randomTransactionUser.address
18106
18579
  );
18107
18580
  const rawDelegateSigned = await signer.signTransaction(txInput);
18108
18581
  const { id } = await fetch(`${nodeUrl}/transactions`, {
@@ -18141,7 +18614,7 @@ var PrivyWalletProvider = ({
18141
18614
  PrivyWalletProviderContext.Provider,
18142
18615
  {
18143
18616
  value: {
18144
- accountFactory: chunkDBQR2OKX_cjs.getConfig(network.type).accountFactoryAddress,
18617
+ accountFactory: chunkQRYVPUVY_cjs.getConfig(network.type).accountFactoryAddress,
18145
18618
  sendTransaction,
18146
18619
  signMessage,
18147
18620
  signTypedData,
@@ -18264,7 +18737,7 @@ var VeChainKitProvider = (props) => {
18264
18737
  const userEcosystemMethods = validatedLoginMethods?.find(
18265
18738
  (method35) => method35.method === "ecosystem"
18266
18739
  );
18267
- return userEcosystemMethods?.allowedApps ?? chunkDBQR2OKX_cjs.DEFAULT_PRIVY_ECOSYSTEM_APPS.map((app) => app.id);
18740
+ return userEcosystemMethods?.allowedApps ?? chunkQRYVPUVY_cjs.DEFAULT_PRIVY_ECOSYSTEM_APPS.map((app) => app.id);
18268
18741
  }, [validatedLoginMethods]);
18269
18742
  let privyAppId, privyClientId;
18270
18743
  if (!privy) {
@@ -18341,8 +18814,8 @@ var VeChainKitProvider = (props) => {
18341
18814
  children: /* @__PURE__ */ jsxRuntime.jsx(
18342
18815
  dappKitReact.DAppKitProvider,
18343
18816
  {
18344
- nodeUrl: network.nodeUrl ?? chunkDBQR2OKX_cjs.getConfig(network.type).nodeUrl,
18345
- genesis: chunkDBQR2OKX_cjs.getConfig(network.type).network.genesis,
18817
+ nodeUrl: network.nodeUrl ?? chunkQRYVPUVY_cjs.getConfig(network.type).nodeUrl,
18818
+ genesis: chunkQRYVPUVY_cjs.getConfig(network.type).network.genesis,
18346
18819
  i18n: i18nConfig,
18347
18820
  language,
18348
18821
  logLevel: dappKit.logLevel,
@@ -18377,7 +18850,7 @@ var VeChainKitProvider = (props) => {
18377
18850
  children: /* @__PURE__ */ jsxRuntime.jsx(
18378
18851
  PrivyWalletProvider,
18379
18852
  {
18380
- nodeUrl: network.nodeUrl ?? chunkDBQR2OKX_cjs.getConfig(network.type).nodeUrl,
18853
+ nodeUrl: network.nodeUrl ?? chunkQRYVPUVY_cjs.getConfig(network.type).nodeUrl,
18381
18854
  delegatorUrl: feeDelegation?.delegatorUrl ?? "",
18382
18855
  delegateAllTransactions: feeDelegation?.delegateAllTransactions ?? false,
18383
18856
  children: /* @__PURE__ */ jsxRuntime.jsx(ModalProvider, { children })
@@ -18715,7 +19188,7 @@ var VechainKitThemeProvider = ({
18715
19188
 
18716
19189
  Object.defineProperty(exports, "getConfig", {
18717
19190
  enumerable: true,
18718
- get: function () { return chunkDBQR2OKX_cjs.getConfig; }
19191
+ get: function () { return chunkQRYVPUVY_cjs.getConfig; }
18719
19192
  });
18720
19193
  Object.defineProperty(exports, "useMfaEnrollment", {
18721
19194
  enumerable: true,
@@ -18874,6 +19347,8 @@ exports.getAppsEligibleInNextRound = getAppsEligibleInNextRound;
18874
19347
  exports.getAppsEligibleInNextRoundQueryKey = getAppsEligibleInNextRoundQueryKey;
18875
19348
  exports.getAppsShareClauses = getAppsShareClauses;
18876
19349
  exports.getAvatar = getAvatar;
19350
+ exports.getAvatarLegacy = getAvatarLegacy;
19351
+ exports.getAvatarLegacyQueryKey = getAvatarLegacyQueryKey;
18877
19352
  exports.getAvatarOfAddressQueryKey = getAvatarOfAddressQueryKey;
18878
19353
  exports.getAvatarQueryKey = getAvatarQueryKey;
18879
19354
  exports.getB3trBalance = getB3trBalance;
@@ -19015,6 +19490,7 @@ exports.useBalances = useBalances;
19015
19490
  exports.useCall = useCall;
19016
19491
  exports.useChooseNameModal = useChooseNameModal;
19017
19492
  exports.useClaimVeWorldSubdomain = useClaimVeWorldSubdomain;
19493
+ exports.useClaimVetDomain = useClaimVetDomain;
19018
19494
  exports.useConnectModal = useConnectModal;
19019
19495
  exports.useCrossAppConnectionCache = useCrossAppConnectionCache;
19020
19496
  exports.useCurrentAccountImplementationVersion = useCurrentAccountImplementationVersion;
@@ -19034,6 +19510,7 @@ exports.useGMbalance = useGMbalance;
19034
19510
  exports.useGetAccountAddress = useGetAccountAddress;
19035
19511
  exports.useGetAccountVersion = useGetAccountVersion;
19036
19512
  exports.useGetAvatar = useGetAvatar;
19513
+ exports.useGetAvatarLegacy = useGetAvatarLegacy;
19037
19514
  exports.useGetAvatarOfAddress = useGetAvatarOfAddress;
19038
19515
  exports.useGetB3trBalance = useGetB3trBalance;
19039
19516
  exports.useGetChainId = useGetChainId;
@@ -19126,6 +19603,7 @@ exports.useTransactionToast = useTransactionToast;
19126
19603
  exports.useTransferERC20 = useTransferERC20;
19127
19604
  exports.useTransferVET = useTransferVET;
19128
19605
  exports.useTxReceipt = useTxReceipt;
19606
+ exports.useUnsetDomain = useUnsetDomain;
19129
19607
  exports.useUpdateTextRecord = useUpdateTextRecord;
19130
19608
  exports.useUpgradeRequired = useUpgradeRequired;
19131
19609
  exports.useUpgradeRequiredForAccount = useUpgradeRequiredForAccount;