@ensnode/ensnode-sdk 0.0.0-next-20260227185030 → 0.0.0-next-20260227190633
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 +86 -53
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +39 -1
- package/dist/index.d.ts +39 -1
- package/dist/index.js +37 -4
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.cjs
CHANGED
|
@@ -237,7 +237,10 @@ __export(index_exports, {
|
|
|
237
237
|
parseAccountId: () => parseAccountId,
|
|
238
238
|
parseAssetId: () => parseAssetId,
|
|
239
239
|
parseDai: () => parseDai,
|
|
240
|
+
parseEncodedLabelHash: () => parseEncodedLabelHash,
|
|
240
241
|
parseEth: () => parseEth,
|
|
242
|
+
parseLabelHash: () => parseLabelHash,
|
|
243
|
+
parseLabelHashOrEncodedLabelHash: () => parseLabelHashOrEncodedLabelHash,
|
|
241
244
|
parseNonNegativeInteger: () => parseNonNegativeInteger,
|
|
242
245
|
parsePartialInterpretedName: () => parsePartialInterpretedName,
|
|
243
246
|
parseReverseName: () => parseReverseName,
|
|
@@ -425,8 +428,38 @@ var beautifyName = (name) => {
|
|
|
425
428
|
return beautifiedLabels.join(".");
|
|
426
429
|
};
|
|
427
430
|
|
|
428
|
-
// src/ens/parse-
|
|
431
|
+
// src/ens/parse-labelhash.ts
|
|
429
432
|
var import_viem4 = require("viem");
|
|
433
|
+
function parseLabelHash(maybeLabelHash) {
|
|
434
|
+
const hexPart = maybeLabelHash.startsWith("0x") ? maybeLabelHash.slice(2) : maybeLabelHash;
|
|
435
|
+
if (!(0, import_viem4.isHex)(`0x${hexPart}`, { strict: true })) {
|
|
436
|
+
throw new Error(`Invalid labelHash: contains non-hex characters: ${maybeLabelHash}`);
|
|
437
|
+
}
|
|
438
|
+
const normalizedHexPart = hexPart.length % 2 === 1 ? `0${hexPart}` : hexPart;
|
|
439
|
+
if (normalizedHexPart.length !== 64) {
|
|
440
|
+
throw new Error(
|
|
441
|
+
`Invalid labelHash length: expected 32 bytes (64 hex chars), got ${normalizedHexPart.length / 2} bytes: ${maybeLabelHash}`
|
|
442
|
+
);
|
|
443
|
+
}
|
|
444
|
+
return `0x${normalizedHexPart.toLowerCase()}`;
|
|
445
|
+
}
|
|
446
|
+
function parseEncodedLabelHash(maybeEncodedLabelHash) {
|
|
447
|
+
if (!maybeEncodedLabelHash.startsWith("[") || !maybeEncodedLabelHash.endsWith("]")) {
|
|
448
|
+
throw new Error(
|
|
449
|
+
`Invalid encoded labelHash: must be enclosed in square brackets: ${maybeEncodedLabelHash}`
|
|
450
|
+
);
|
|
451
|
+
}
|
|
452
|
+
return parseLabelHash(maybeEncodedLabelHash.slice(1, -1));
|
|
453
|
+
}
|
|
454
|
+
function parseLabelHashOrEncodedLabelHash(maybeLabelHash) {
|
|
455
|
+
if (maybeLabelHash.startsWith("[") && maybeLabelHash.endsWith("]")) {
|
|
456
|
+
return parseEncodedLabelHash(maybeLabelHash);
|
|
457
|
+
}
|
|
458
|
+
return parseLabelHash(maybeLabelHash);
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
// src/ens/parse-reverse-name.ts
|
|
462
|
+
var import_viem5 = require("viem");
|
|
430
463
|
|
|
431
464
|
// src/shared/address.ts
|
|
432
465
|
function asLowerCaseAddress(address) {
|
|
@@ -437,7 +470,7 @@ function asLowerCaseAddress(address) {
|
|
|
437
470
|
var REVERSE_NAME_REGEX = /^([0-9a-fA-F]+)\.([0-9a-f]{1,64}|addr|default)\.reverse$/;
|
|
438
471
|
var parseAddressLabel = (addressLabel) => {
|
|
439
472
|
const maybeAddress = `0x${addressLabel}`;
|
|
440
|
-
if (!(0,
|
|
473
|
+
if (!(0, import_viem5.isAddress)(maybeAddress)) {
|
|
441
474
|
throw new Error(`Invalid EVM address "${maybeAddress}"`);
|
|
442
475
|
}
|
|
443
476
|
return asLowerCaseAddress(maybeAddress);
|
|
@@ -445,7 +478,7 @@ var parseAddressLabel = (addressLabel) => {
|
|
|
445
478
|
var parseCoinTypeLabel = (coinTypeLabel) => {
|
|
446
479
|
if (coinTypeLabel === "default") return DEFAULT_EVM_COIN_TYPE;
|
|
447
480
|
if (coinTypeLabel === "addr") return ETH_COIN_TYPE;
|
|
448
|
-
return bigintToCoinType((0,
|
|
481
|
+
return bigintToCoinType((0, import_viem5.hexToBigInt)(`0x${coinTypeLabel}`));
|
|
449
482
|
};
|
|
450
483
|
function parseReverseName(name) {
|
|
451
484
|
const match = name.match(REVERSE_NAME_REGEX);
|
|
@@ -482,9 +515,9 @@ function reverseName(address, coinType) {
|
|
|
482
515
|
}
|
|
483
516
|
|
|
484
517
|
// src/ens/subname-helpers.ts
|
|
485
|
-
var
|
|
486
|
-
var makeSubdomainNode = (labelHash, node) => (0,
|
|
487
|
-
var uint256ToHex32 = (num) => (0,
|
|
518
|
+
var import_viem6 = require("viem");
|
|
519
|
+
var makeSubdomainNode = (labelHash, node) => (0, import_viem6.keccak256)((0, import_viem6.concat)([node, labelHash]));
|
|
520
|
+
var uint256ToHex32 = (num) => (0, import_viem6.toHex)(num, { size: 32 });
|
|
488
521
|
|
|
489
522
|
// src/ens/types.ts
|
|
490
523
|
var import_datasources = require("@ensnode/datasources");
|
|
@@ -503,11 +536,11 @@ var uniq = (arr) => [...new Set(arr)];
|
|
|
503
536
|
|
|
504
537
|
// src/shared/zod-schemas.ts
|
|
505
538
|
var import_caip = require("caip");
|
|
506
|
-
var
|
|
539
|
+
var import_viem9 = require("viem");
|
|
507
540
|
var import_v4 = require("zod/v4");
|
|
508
541
|
|
|
509
542
|
// src/shared/currencies.ts
|
|
510
|
-
var
|
|
543
|
+
var import_viem7 = require("viem");
|
|
511
544
|
|
|
512
545
|
// src/shared/numbers.ts
|
|
513
546
|
function bigIntToNumber(n) {
|
|
@@ -642,24 +675,24 @@ function validateAmountToParse(value) {
|
|
|
642
675
|
function parseEth(value) {
|
|
643
676
|
validateAmountToParse(value);
|
|
644
677
|
const currencyInfo2 = getCurrencyInfo(CurrencyIds.ETH);
|
|
645
|
-
const amount = (0,
|
|
678
|
+
const amount = (0, import_viem7.parseUnits)(value, currencyInfo2.decimals);
|
|
646
679
|
return priceEth(amount);
|
|
647
680
|
}
|
|
648
681
|
function parseUsdc(value) {
|
|
649
682
|
validateAmountToParse(value);
|
|
650
683
|
const currencyInfo2 = getCurrencyInfo(CurrencyIds.USDC);
|
|
651
|
-
const amount = (0,
|
|
684
|
+
const amount = (0, import_viem7.parseUnits)(value, currencyInfo2.decimals);
|
|
652
685
|
return priceUsdc(amount);
|
|
653
686
|
}
|
|
654
687
|
function parseDai(value) {
|
|
655
688
|
validateAmountToParse(value);
|
|
656
689
|
const currencyInfo2 = getCurrencyInfo(CurrencyIds.DAI);
|
|
657
|
-
const amount = (0,
|
|
690
|
+
const amount = (0, import_viem7.parseUnits)(value, currencyInfo2.decimals);
|
|
658
691
|
return priceDai(amount);
|
|
659
692
|
}
|
|
660
693
|
|
|
661
694
|
// src/shared/interpretation/reinterpretation.ts
|
|
662
|
-
var
|
|
695
|
+
var import_viem8 = require("viem");
|
|
663
696
|
function reinterpretLabel(label) {
|
|
664
697
|
if (label === "") {
|
|
665
698
|
throw new Error(
|
|
@@ -668,7 +701,7 @@ function reinterpretLabel(label) {
|
|
|
668
701
|
}
|
|
669
702
|
if (isEncodedLabelHash(label)) return label;
|
|
670
703
|
if (isNormalizedLabel(label)) return label;
|
|
671
|
-
return encodeLabelHash((0,
|
|
704
|
+
return encodeLabelHash((0, import_viem8.labelhash)(label));
|
|
672
705
|
}
|
|
673
706
|
function reinterpretName(name) {
|
|
674
707
|
if (name === "") return name;
|
|
@@ -694,7 +727,7 @@ var makeDurationSchema = (valueLabel = "Value") => import_v4.z.number({
|
|
|
694
727
|
var makeChainIdSchema = (valueLabel = "Chain ID") => makePositiveIntegerSchema(valueLabel).transform((val) => val);
|
|
695
728
|
var makeChainIdStringSchema = (valueLabel = "Chain ID String") => import_v4.z.string({ error: `${valueLabel} must be a string representing a chain ID.` }).pipe(import_v4.z.coerce.number({ error: `${valueLabel} must represent a positive integer (>0).` })).pipe(makeChainIdSchema(`The numeric value represented by ${valueLabel}`));
|
|
696
729
|
var makeLowercaseAddressSchema = (valueLabel = "EVM address") => import_v4.z.string().check((ctx) => {
|
|
697
|
-
if (!(0,
|
|
730
|
+
if (!(0, import_viem9.isAddress)(ctx.value)) {
|
|
698
731
|
ctx.issues.push({
|
|
699
732
|
code: "custom",
|
|
700
733
|
message: `${valueLabel} must be a valid EVM address`,
|
|
@@ -766,7 +799,7 @@ var makeAccountIdStringSchema = (valueLabel = "Account ID String") => import_v4.
|
|
|
766
799
|
};
|
|
767
800
|
}).pipe(makeAccountIdSchema(valueLabel));
|
|
768
801
|
var makeHexStringSchema = (options, valueLabel = "String representation of bytes array") => import_v4.z.string().check(function invariant_isHexEncoded(ctx) {
|
|
769
|
-
if (!(0,
|
|
802
|
+
if (!(0, import_viem9.isHex)(ctx.value)) {
|
|
770
803
|
ctx.issues.push({
|
|
771
804
|
code: "custom",
|
|
772
805
|
input: ctx.value,
|
|
@@ -775,7 +808,7 @@ var makeHexStringSchema = (options, valueLabel = "String representation of bytes
|
|
|
775
808
|
}
|
|
776
809
|
}).transform((v) => v).check(function invariant_encodesRequiredBytesCount(ctx) {
|
|
777
810
|
const expectedBytesCount = options.bytesCount;
|
|
778
|
-
const actualBytesCount = (0,
|
|
811
|
+
const actualBytesCount = (0, import_viem9.size)(ctx.value);
|
|
779
812
|
if (actualBytesCount !== expectedBytesCount) {
|
|
780
813
|
ctx.issues.push({
|
|
781
814
|
code: "custom",
|
|
@@ -2003,17 +2036,17 @@ var serializeIndexingStatusResponse = serializeEnsApiIndexingStatusResponse;
|
|
|
2003
2036
|
var import_v420 = require("zod/v4");
|
|
2004
2037
|
|
|
2005
2038
|
// src/ensapi/api/name-tokens/zod-schemas.ts
|
|
2006
|
-
var
|
|
2039
|
+
var import_viem14 = require("viem");
|
|
2007
2040
|
var import_v419 = require("zod/v4");
|
|
2008
2041
|
|
|
2009
2042
|
// src/tokenscope/name-token.ts
|
|
2010
|
-
var
|
|
2043
|
+
var import_viem13 = require("viem");
|
|
2011
2044
|
var import_datasources5 = require("@ensnode/datasources");
|
|
2012
2045
|
|
|
2013
2046
|
// src/shared/account-id.ts
|
|
2014
|
-
var
|
|
2047
|
+
var import_viem10 = require("viem");
|
|
2015
2048
|
var accountIdEqual = (a, b) => {
|
|
2016
|
-
return a.chainId === b.chainId && (0,
|
|
2049
|
+
return a.chainId === b.chainId && (0, import_viem10.isAddressEqual)(a.address, b.address);
|
|
2017
2050
|
};
|
|
2018
2051
|
|
|
2019
2052
|
// src/shared/datasource-contract.ts
|
|
@@ -2043,12 +2076,12 @@ var makeContractMatcher = (namespace, b) => (datasourceName, contractName) => {
|
|
|
2043
2076
|
};
|
|
2044
2077
|
|
|
2045
2078
|
// src/tokenscope/assets.ts
|
|
2046
|
-
var
|
|
2079
|
+
var import_viem12 = require("viem");
|
|
2047
2080
|
var import_v417 = require("zod/v4");
|
|
2048
2081
|
|
|
2049
2082
|
// src/tokenscope/zod-schemas.ts
|
|
2050
2083
|
var import_caip3 = require("caip");
|
|
2051
|
-
var
|
|
2084
|
+
var import_viem11 = require("viem");
|
|
2052
2085
|
var import_v416 = require("zod/v4");
|
|
2053
2086
|
|
|
2054
2087
|
// src/shared/types.ts
|
|
@@ -2093,7 +2126,7 @@ var makeAssetIdStringSchema = (valueLabel = "Asset ID String Schema") => import_
|
|
|
2093
2126
|
}, makeAssetIdSchema(valueLabel));
|
|
2094
2127
|
function invariant_nameTokenOwnershipHasNonZeroAddressOwner(ctx) {
|
|
2095
2128
|
const ownership = ctx.value;
|
|
2096
|
-
if (ctx.value.owner.address ===
|
|
2129
|
+
if (ctx.value.owner.address === import_viem11.zeroAddress) {
|
|
2097
2130
|
ctx.issues.push({
|
|
2098
2131
|
code: "custom",
|
|
2099
2132
|
input: ctx.value,
|
|
@@ -2119,7 +2152,7 @@ var makeNameTokenOwnershipUnknownSchema = (valueLabel = "Name Token Ownership Un
|
|
|
2119
2152
|
}).check(invariant_nameTokenOwnershipHasNonZeroAddressOwner);
|
|
2120
2153
|
function invariant_nameTokenOwnershipHasZeroAddressOwner(ctx) {
|
|
2121
2154
|
const ownership = ctx.value;
|
|
2122
|
-
if (ctx.value.owner.address !==
|
|
2155
|
+
if (ctx.value.owner.address !== import_viem11.zeroAddress) {
|
|
2123
2156
|
ctx.issues.push({
|
|
2124
2157
|
code: "custom",
|
|
2125
2158
|
input: ctx.value,
|
|
@@ -2297,11 +2330,11 @@ var NFTTransferTypes = {
|
|
|
2297
2330
|
};
|
|
2298
2331
|
var getNFTTransferType = (from, to, allowMintedRemint, metadata, currentlyIndexedOwner) => {
|
|
2299
2332
|
const isIndexed = currentlyIndexedOwner !== void 0;
|
|
2300
|
-
const isIndexedAsMinted = isIndexed && !(0,
|
|
2301
|
-
const isMint = (0,
|
|
2302
|
-
const isBurn = (0,
|
|
2303
|
-
const isSelfTransfer = (0,
|
|
2304
|
-
if (isIndexed && !(0,
|
|
2333
|
+
const isIndexedAsMinted = isIndexed && !(0, import_viem12.isAddressEqual)(currentlyIndexedOwner, import_viem12.zeroAddress);
|
|
2334
|
+
const isMint = (0, import_viem12.isAddressEqual)(from, import_viem12.zeroAddress);
|
|
2335
|
+
const isBurn = (0, import_viem12.isAddressEqual)(to, import_viem12.zeroAddress);
|
|
2336
|
+
const isSelfTransfer = (0, import_viem12.isAddressEqual)(from, to);
|
|
2337
|
+
if (isIndexed && !(0, import_viem12.isAddressEqual)(currentlyIndexedOwner, from)) {
|
|
2305
2338
|
if (isMint && allowMintedRemint) {
|
|
2306
2339
|
} else {
|
|
2307
2340
|
throw new Error(
|
|
@@ -2442,7 +2475,7 @@ function getNameTokenOwnership(namespaceId, name, owner) {
|
|
|
2442
2475
|
owner
|
|
2443
2476
|
};
|
|
2444
2477
|
}
|
|
2445
|
-
if ((0,
|
|
2478
|
+
if ((0, import_viem13.isAddressEqual)(owner.address, import_viem13.zeroAddress)) {
|
|
2446
2479
|
return {
|
|
2447
2480
|
ownershipType: NameTokenOwnershipTypes.Burned,
|
|
2448
2481
|
owner
|
|
@@ -2512,7 +2545,7 @@ var makeRegisteredNameTokenSchema = (valueLabel = "Registered Name Token", seria
|
|
|
2512
2545
|
accurateAsOf: makeUnixTimestampSchema(`${valueLabel}.accurateAsOf`)
|
|
2513
2546
|
}).check(function invariant_nameIsAssociatedWithDomainId(ctx) {
|
|
2514
2547
|
const { name, domainId } = ctx.value;
|
|
2515
|
-
if ((0,
|
|
2548
|
+
if ((0, import_viem14.namehash)(name) !== domainId) {
|
|
2516
2549
|
ctx.issues.push({
|
|
2517
2550
|
code: "custom",
|
|
2518
2551
|
input: ctx.value,
|
|
@@ -2671,34 +2704,34 @@ var import_v423 = require("zod/v4");
|
|
|
2671
2704
|
var import_v421 = require("zod/v4");
|
|
2672
2705
|
|
|
2673
2706
|
// src/registrars/encoded-referrer.ts
|
|
2674
|
-
var
|
|
2707
|
+
var import_viem15 = require("viem");
|
|
2675
2708
|
var ENCODED_REFERRER_BYTE_OFFSET = 12;
|
|
2676
2709
|
var ENCODED_REFERRER_BYTE_LENGTH = 32;
|
|
2677
|
-
var EXPECTED_ENCODED_REFERRER_PADDING = (0,
|
|
2710
|
+
var EXPECTED_ENCODED_REFERRER_PADDING = (0, import_viem15.pad)("0x", {
|
|
2678
2711
|
size: ENCODED_REFERRER_BYTE_OFFSET,
|
|
2679
2712
|
dir: "left"
|
|
2680
2713
|
});
|
|
2681
|
-
var ZERO_ENCODED_REFERRER = (0,
|
|
2714
|
+
var ZERO_ENCODED_REFERRER = (0, import_viem15.pad)("0x", {
|
|
2682
2715
|
size: ENCODED_REFERRER_BYTE_LENGTH,
|
|
2683
2716
|
dir: "left"
|
|
2684
2717
|
});
|
|
2685
2718
|
function buildEncodedReferrer(address) {
|
|
2686
2719
|
const lowercaseAddress = address.toLowerCase();
|
|
2687
|
-
return (0,
|
|
2720
|
+
return (0, import_viem15.pad)(lowercaseAddress, { size: ENCODED_REFERRER_BYTE_LENGTH, dir: "left" });
|
|
2688
2721
|
}
|
|
2689
2722
|
function decodeEncodedReferrer(encodedReferrer) {
|
|
2690
|
-
if ((0,
|
|
2723
|
+
if ((0, import_viem15.size)(encodedReferrer) !== ENCODED_REFERRER_BYTE_LENGTH) {
|
|
2691
2724
|
throw new Error(
|
|
2692
2725
|
`Encoded referrer value must be represented by ${ENCODED_REFERRER_BYTE_LENGTH} bytes.`
|
|
2693
2726
|
);
|
|
2694
2727
|
}
|
|
2695
|
-
const padding = (0,
|
|
2728
|
+
const padding = (0, import_viem15.slice)(encodedReferrer, 0, ENCODED_REFERRER_BYTE_OFFSET);
|
|
2696
2729
|
if (padding !== EXPECTED_ENCODED_REFERRER_PADDING) {
|
|
2697
|
-
return
|
|
2730
|
+
return import_viem15.zeroAddress;
|
|
2698
2731
|
}
|
|
2699
|
-
const decodedReferrer = (0,
|
|
2732
|
+
const decodedReferrer = (0, import_viem15.slice)(encodedReferrer, ENCODED_REFERRER_BYTE_OFFSET);
|
|
2700
2733
|
try {
|
|
2701
|
-
return (0,
|
|
2734
|
+
return (0, import_viem15.getAddress)(decodedReferrer);
|
|
2702
2735
|
} catch {
|
|
2703
2736
|
throw new Error(`Decoded referrer value must be a valid EVM address.`);
|
|
2704
2737
|
}
|
|
@@ -3906,7 +3939,7 @@ function validateEnsIndexerPublicConfigCompatibility(configA, configB) {
|
|
|
3906
3939
|
}
|
|
3907
3940
|
|
|
3908
3941
|
// src/ensindexer/config/label-utils.ts
|
|
3909
|
-
var
|
|
3942
|
+
var import_viem16 = require("viem");
|
|
3910
3943
|
function labelHashToBytes(labelHash) {
|
|
3911
3944
|
try {
|
|
3912
3945
|
if (labelHash.length !== 66) {
|
|
@@ -3918,7 +3951,7 @@ function labelHashToBytes(labelHash) {
|
|
|
3918
3951
|
if (!labelHash.startsWith("0x")) {
|
|
3919
3952
|
throw new Error("Labelhash must be 0x-prefixed");
|
|
3920
3953
|
}
|
|
3921
|
-
const bytes = (0,
|
|
3954
|
+
const bytes = (0, import_viem16.hexToBytes)(labelHash);
|
|
3922
3955
|
if (bytes.length !== 32) {
|
|
3923
3956
|
throw new Error(`Invalid labelHash length ${bytes.length} bytes (expected 32)`);
|
|
3924
3957
|
}
|
|
@@ -3986,7 +4019,7 @@ function parseNonNegativeInteger(maybeNumber) {
|
|
|
3986
4019
|
}
|
|
3987
4020
|
|
|
3988
4021
|
// src/ensv2/ids-lib.ts
|
|
3989
|
-
var
|
|
4022
|
+
var import_viem17 = require("viem");
|
|
3990
4023
|
var makeRegistryId = (accountId) => formatAccountId(accountId);
|
|
3991
4024
|
var makeENSv1DomainId = (node) => node;
|
|
3992
4025
|
var makeENSv2DomainId = (registry, canonicalId) => formatAssetId({
|
|
@@ -3997,7 +4030,7 @@ var makeENSv2DomainId = (registry, canonicalId) => formatAssetId({
|
|
|
3997
4030
|
var maskLower32Bits = (num) => num ^ num & 0xffffffffn;
|
|
3998
4031
|
var getCanonicalId = (input) => {
|
|
3999
4032
|
if (typeof input === "bigint") return maskLower32Bits(input);
|
|
4000
|
-
return getCanonicalId((0,
|
|
4033
|
+
return getCanonicalId((0, import_viem17.hexToBigInt)(input));
|
|
4001
4034
|
};
|
|
4002
4035
|
var makePermissionsId = (contract) => formatAccountId(contract);
|
|
4003
4036
|
var makePermissionsResourceId = (contract, resource) => `${makePermissionsId(contract)}/${resource}`;
|
|
@@ -4560,11 +4593,11 @@ var TtlCache = class {
|
|
|
4560
4593
|
};
|
|
4561
4594
|
|
|
4562
4595
|
// src/shared/interpretation/interpret-address.ts
|
|
4563
|
-
var
|
|
4564
|
-
var interpretAddress = (owner) => (0,
|
|
4596
|
+
var import_viem18 = require("viem");
|
|
4597
|
+
var interpretAddress = (owner) => (0, import_viem18.isAddressEqual)(import_viem18.zeroAddress, owner) ? null : owner;
|
|
4565
4598
|
|
|
4566
4599
|
// src/shared/interpretation/interpret-record-values.ts
|
|
4567
|
-
var
|
|
4600
|
+
var import_viem19 = require("viem");
|
|
4568
4601
|
|
|
4569
4602
|
// src/shared/null-bytes.ts
|
|
4570
4603
|
var hasNullByte = (value) => value.indexOf("\0") !== -1;
|
|
@@ -4580,8 +4613,8 @@ function interpretAddressRecordValue(value) {
|
|
|
4580
4613
|
if (hasNullByte(value)) return null;
|
|
4581
4614
|
if (value === "") return null;
|
|
4582
4615
|
if (value === "0x") return null;
|
|
4583
|
-
if (!(0,
|
|
4584
|
-
if ((0,
|
|
4616
|
+
if (!(0, import_viem19.isAddress)(value)) return value;
|
|
4617
|
+
if ((0, import_viem19.isAddressEqual)(value, import_viem19.zeroAddress)) return null;
|
|
4585
4618
|
return asLowerCaseAddress(value);
|
|
4586
4619
|
}
|
|
4587
4620
|
function interpretTextRecordKey(key) {
|
|
@@ -4600,12 +4633,12 @@ var interpretTokenIdAsLabelHash = (tokenId) => uint256ToHex32(tokenId);
|
|
|
4600
4633
|
var interpretTokenIdAsNode = (tokenId) => uint256ToHex32(tokenId);
|
|
4601
4634
|
|
|
4602
4635
|
// src/shared/interpretation/interpreted-names-and-labels.ts
|
|
4603
|
-
var
|
|
4636
|
+
var import_viem21 = require("viem");
|
|
4604
4637
|
var import_ens10 = require("viem/ens");
|
|
4605
4638
|
|
|
4606
4639
|
// src/shared/labelhash.ts
|
|
4607
|
-
var
|
|
4608
|
-
var labelhashLiteralLabel = (label) => (0,
|
|
4640
|
+
var import_viem20 = require("viem");
|
|
4641
|
+
var labelhashLiteralLabel = (label) => (0, import_viem20.keccak256)((0, import_viem20.stringToBytes)(label));
|
|
4609
4642
|
|
|
4610
4643
|
// src/shared/interpretation/interpreted-names-and-labels.ts
|
|
4611
4644
|
function literalLabelToInterpretedLabel(label) {
|
|
@@ -4629,7 +4662,7 @@ function encodedLabelToLabelhash(label) {
|
|
|
4629
4662
|
if (label.indexOf("[") !== 0) return null;
|
|
4630
4663
|
if (label.indexOf("]") !== 65) return null;
|
|
4631
4664
|
const hash = `0x${label.slice(1, 65)}`;
|
|
4632
|
-
if (!(0,
|
|
4665
|
+
if (!(0, import_viem21.isHex)(hash)) return null;
|
|
4633
4666
|
return hash;
|
|
4634
4667
|
}
|
|
4635
4668
|
function isInterpetedLabel(label) {
|