@ensnode/ensnode-sdk 0.0.0-next-20260116185203 → 0.0.0-next-20260119132859
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 +21 -608
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +60 -346
- package/dist/index.d.ts +60 -346
- package/dist/index.js +11 -598
- package/dist/index.js.map +1 -1
- package/package.json +3 -4
package/dist/index.cjs
CHANGED
|
@@ -43,11 +43,14 @@ __export(index_exports, {
|
|
|
43
43
|
CurrencyIds: () => CurrencyIds,
|
|
44
44
|
DEFAULT_EVM_CHAIN_ID: () => DEFAULT_EVM_CHAIN_ID,
|
|
45
45
|
DEFAULT_EVM_COIN_TYPE: () => DEFAULT_EVM_COIN_TYPE,
|
|
46
|
+
ENCODED_REFERRER_BYTE_LENGTH: () => ENCODED_REFERRER_BYTE_LENGTH,
|
|
47
|
+
ENCODED_REFERRER_BYTE_OFFSET: () => ENCODED_REFERRER_BYTE_OFFSET,
|
|
46
48
|
ENSNamespaceIds: () => import_datasources.ENSNamespaceIds,
|
|
47
49
|
ENSNodeClient: () => ENSNodeClient,
|
|
48
50
|
ENS_ROOT: () => ENS_ROOT,
|
|
49
51
|
ETH_COIN_TYPE: () => ETH_COIN_TYPE,
|
|
50
52
|
ETH_NODE: () => ETH_NODE,
|
|
53
|
+
EXPECTED_ENCODED_REFERRER_PADDING: () => EXPECTED_ENCODED_REFERRER_PADDING,
|
|
51
54
|
ForwardResolutionProtocolStep: () => ForwardResolutionProtocolStep,
|
|
52
55
|
IndexingStatusResponseCodes: () => IndexingStatusResponseCodes,
|
|
53
56
|
LINEANAMES_NODE: () => LINEANAMES_NODE,
|
|
@@ -65,8 +68,6 @@ __export(index_exports, {
|
|
|
65
68
|
RECORDS_PER_PAGE_MAX: () => RECORDS_PER_PAGE_MAX,
|
|
66
69
|
ROOT_NODE: () => ROOT_NODE,
|
|
67
70
|
ROOT_RESOURCE: () => ROOT_RESOURCE,
|
|
68
|
-
ReferrerDetailResponseCodes: () => ReferrerDetailResponseCodes,
|
|
69
|
-
ReferrerLeaderboardPageResponseCodes: () => ReferrerLeaderboardPageResponseCodes,
|
|
70
71
|
RegistrarActionTypes: () => RegistrarActionTypes,
|
|
71
72
|
RegistrarActionsFilterTypes: () => RegistrarActionsFilterTypes,
|
|
72
73
|
RegistrarActionsOrders: () => RegistrarActionsOrders,
|
|
@@ -88,6 +89,7 @@ __export(index_exports, {
|
|
|
88
89
|
bigIntToNumber: () => bigIntToNumber,
|
|
89
90
|
bigintToCoinType: () => bigintToCoinType,
|
|
90
91
|
buildAssetId: () => buildAssetId,
|
|
92
|
+
buildEncodedReferrer: () => buildEncodedReferrer,
|
|
91
93
|
buildEnsRainbowClientLabelSet: () => buildEnsRainbowClientLabelSet,
|
|
92
94
|
buildLabelSetId: () => buildLabelSetId,
|
|
93
95
|
buildLabelSetVersion: () => buildLabelSetVersion,
|
|
@@ -120,8 +122,6 @@ __export(index_exports, {
|
|
|
120
122
|
deserializeIndexingStatusResponse: () => deserializeIndexingStatusResponse,
|
|
121
123
|
deserializeOmnichainIndexingStatusSnapshot: () => deserializeOmnichainIndexingStatusSnapshot,
|
|
122
124
|
deserializeRealtimeIndexingStatusProjection: () => deserializeRealtimeIndexingStatusProjection,
|
|
123
|
-
deserializeReferrerDetailResponse: () => deserializeReferrerDetailResponse,
|
|
124
|
-
deserializeReferrerLeaderboardPageResponse: () => deserializeReferrerLeaderboardPageResponse,
|
|
125
125
|
deserializeRegistrarActionsResponse: () => deserializeRegistrarActionsResponse,
|
|
126
126
|
deserializeUnixTimestamp: () => deserializeUnixTimestamp,
|
|
127
127
|
deserializeUrl: () => deserializeUrl,
|
|
@@ -239,8 +239,6 @@ __export(index_exports, {
|
|
|
239
239
|
serializePrice: () => serializePrice,
|
|
240
240
|
serializePriceEth: () => serializePriceEth,
|
|
241
241
|
serializeRealtimeIndexingStatusProjection: () => serializeRealtimeIndexingStatusProjection,
|
|
242
|
-
serializeReferrerDetailResponse: () => serializeReferrerDetailResponse,
|
|
243
|
-
serializeReferrerLeaderboardPageResponse: () => serializeReferrerLeaderboardPageResponse,
|
|
244
242
|
serializeRegisteredNameTokens: () => serializeRegisteredNameTokens,
|
|
245
243
|
serializeRegistrarAction: () => serializeRegistrarAction,
|
|
246
244
|
serializeRegistrarActionPricing: () => serializeRegistrarActionPricing,
|
|
@@ -611,13 +609,6 @@ function reinterpretName(name) {
|
|
|
611
609
|
}
|
|
612
610
|
|
|
613
611
|
// src/shared/zod-schemas.ts
|
|
614
|
-
var makeFiniteNonNegativeNumberSchema = (valueLabel = "Value") => import_v4.z.number({
|
|
615
|
-
// NOTE: Zod's implementation of `number` automatically rejects NaN and Infinity values.
|
|
616
|
-
// and therefore the finite check is implicit.
|
|
617
|
-
error: `${valueLabel} must be a finite number.`
|
|
618
|
-
}).nonnegative({
|
|
619
|
-
error: `${valueLabel} must be a non-negative number (>=0).`
|
|
620
|
-
});
|
|
621
612
|
var makeIntegerSchema = (valueLabel = "Value") => import_v4.z.int({
|
|
622
613
|
error: `${valueLabel} must be an integer.`
|
|
623
614
|
});
|
|
@@ -2812,60 +2803,43 @@ var import_v420 = require("zod/v4");
|
|
|
2812
2803
|
var import_ens10 = require("viem/ens");
|
|
2813
2804
|
var import_v419 = __toESM(require("zod/v4"), 1);
|
|
2814
2805
|
|
|
2815
|
-
//
|
|
2816
|
-
var
|
|
2806
|
+
// src/registrars/zod-schemas.ts
|
|
2807
|
+
var import_v417 = require("zod/v4");
|
|
2817
2808
|
|
|
2818
|
-
//
|
|
2819
|
-
var
|
|
2809
|
+
// src/registrars/encoded-referrer.ts
|
|
2810
|
+
var import_viem18 = require("viem");
|
|
2820
2811
|
var ENCODED_REFERRER_BYTE_OFFSET = 12;
|
|
2821
2812
|
var ENCODED_REFERRER_BYTE_LENGTH = 32;
|
|
2822
|
-
var EXPECTED_ENCODED_REFERRER_PADDING = (0,
|
|
2813
|
+
var EXPECTED_ENCODED_REFERRER_PADDING = (0, import_viem18.pad)("0x", {
|
|
2823
2814
|
size: ENCODED_REFERRER_BYTE_OFFSET,
|
|
2824
2815
|
dir: "left"
|
|
2825
2816
|
});
|
|
2826
|
-
var ZERO_ENCODED_REFERRER = (0,
|
|
2817
|
+
var ZERO_ENCODED_REFERRER = (0, import_viem18.pad)("0x", {
|
|
2827
2818
|
size: ENCODED_REFERRER_BYTE_LENGTH,
|
|
2828
2819
|
dir: "left"
|
|
2829
2820
|
});
|
|
2821
|
+
function buildEncodedReferrer(address) {
|
|
2822
|
+
const lowercaseAddress = address.toLowerCase();
|
|
2823
|
+
return (0, import_viem18.pad)(lowercaseAddress, { size: ENCODED_REFERRER_BYTE_LENGTH, dir: "left" });
|
|
2824
|
+
}
|
|
2830
2825
|
function decodeEncodedReferrer(encodedReferrer) {
|
|
2831
|
-
if ((0,
|
|
2826
|
+
if ((0, import_viem18.size)(encodedReferrer) !== ENCODED_REFERRER_BYTE_LENGTH) {
|
|
2832
2827
|
throw new Error(
|
|
2833
2828
|
`Encoded referrer value must be represented by ${ENCODED_REFERRER_BYTE_LENGTH} bytes.`
|
|
2834
2829
|
);
|
|
2835
2830
|
}
|
|
2836
|
-
const padding = (0,
|
|
2831
|
+
const padding = (0, import_viem18.slice)(encodedReferrer, 0, ENCODED_REFERRER_BYTE_OFFSET);
|
|
2837
2832
|
if (padding !== EXPECTED_ENCODED_REFERRER_PADDING) {
|
|
2838
|
-
return
|
|
2833
|
+
return import_viem18.zeroAddress;
|
|
2839
2834
|
}
|
|
2840
|
-
const decodedReferrer = (0,
|
|
2835
|
+
const decodedReferrer = (0, import_viem18.slice)(encodedReferrer, ENCODED_REFERRER_BYTE_OFFSET);
|
|
2841
2836
|
try {
|
|
2842
|
-
return (0,
|
|
2837
|
+
return (0, import_viem18.getAddress)(decodedReferrer);
|
|
2843
2838
|
} catch {
|
|
2844
2839
|
throw new Error(`Decoded referrer value must be a valid EVM address.`);
|
|
2845
2840
|
}
|
|
2846
2841
|
}
|
|
2847
2842
|
|
|
2848
|
-
// ../ens-referrals/src/leaderboard-page.ts
|
|
2849
|
-
var REFERRERS_PER_LEADERBOARD_PAGE_MAX = 100;
|
|
2850
|
-
|
|
2851
|
-
// ../ens-referrals/src/link.ts
|
|
2852
|
-
var import_viem20 = require("viem");
|
|
2853
|
-
|
|
2854
|
-
// ../ens-referrals/src/referrer-detail.ts
|
|
2855
|
-
var ReferrerDetailTypeIds = {
|
|
2856
|
-
/**
|
|
2857
|
-
* Represents a referrer who is ranked on the leaderboard.
|
|
2858
|
-
*/
|
|
2859
|
-
Ranked: "ranked",
|
|
2860
|
-
/**
|
|
2861
|
-
* Represents a referrer who is not ranked on the leaderboard.
|
|
2862
|
-
*/
|
|
2863
|
-
Unranked: "unranked"
|
|
2864
|
-
};
|
|
2865
|
-
|
|
2866
|
-
// src/registrars/zod-schemas.ts
|
|
2867
|
-
var import_v417 = require("zod/v4");
|
|
2868
|
-
|
|
2869
2843
|
// src/registrars/registrar-action.ts
|
|
2870
2844
|
var RegistrarActionTypes = {
|
|
2871
2845
|
Registration: "registration",
|
|
@@ -3433,409 +3407,6 @@ var ClientError = class _ClientError extends Error {
|
|
|
3433
3407
|
}
|
|
3434
3408
|
};
|
|
3435
3409
|
|
|
3436
|
-
// src/ensanalytics/deserialize.ts
|
|
3437
|
-
var import_v423 = require("zod/v4");
|
|
3438
|
-
|
|
3439
|
-
// src/ensanalytics/zod-schemas.ts
|
|
3440
|
-
var import_v422 = __toESM(require("zod/v4"), 1);
|
|
3441
|
-
|
|
3442
|
-
// src/ensanalytics/types.ts
|
|
3443
|
-
var ReferrerLeaderboardPageResponseCodes = {
|
|
3444
|
-
/**
|
|
3445
|
-
* Represents that the requested referrer leaderboard page is available.
|
|
3446
|
-
*/
|
|
3447
|
-
Ok: "ok",
|
|
3448
|
-
/**
|
|
3449
|
-
* Represents that the referrer leaderboard data is not available.
|
|
3450
|
-
*/
|
|
3451
|
-
Error: "error"
|
|
3452
|
-
};
|
|
3453
|
-
var ReferrerDetailResponseCodes = {
|
|
3454
|
-
/**
|
|
3455
|
-
* Represents that the referrer detail data is available.
|
|
3456
|
-
*/
|
|
3457
|
-
Ok: "ok",
|
|
3458
|
-
/**
|
|
3459
|
-
* Represents that an error occurred while fetching the data.
|
|
3460
|
-
*/
|
|
3461
|
-
Error: "error"
|
|
3462
|
-
};
|
|
3463
|
-
|
|
3464
|
-
// src/ensanalytics/zod-schemas.ts
|
|
3465
|
-
var makeRevenueContributionSchema = (valueLabel = "RevenueContribution") => import_v422.default.coerce.bigint({
|
|
3466
|
-
error: `${valueLabel} must represent a bigint.`
|
|
3467
|
-
}).nonnegative({
|
|
3468
|
-
error: `${valueLabel} must not be negative.`
|
|
3469
|
-
});
|
|
3470
|
-
var makeReferralProgramRulesSchema = (valueLabel = "ReferralProgramRules") => import_v422.default.object({
|
|
3471
|
-
totalAwardPoolValue: makeFiniteNonNegativeNumberSchema(`${valueLabel}.totalAwardPoolValue`),
|
|
3472
|
-
maxQualifiedReferrers: makeNonNegativeIntegerSchema(`${valueLabel}.maxQualifiedReferrers`),
|
|
3473
|
-
startTime: makeUnixTimestampSchema(`${valueLabel}.startTime`),
|
|
3474
|
-
endTime: makeUnixTimestampSchema(`${valueLabel}.endTime`),
|
|
3475
|
-
subregistryId: makeAccountIdSchema(`${valueLabel}.subregistryId`)
|
|
3476
|
-
});
|
|
3477
|
-
var makeAwardedReferrerMetricsSchema = (valueLabel = "AwardedReferrerMetrics") => import_v422.default.object({
|
|
3478
|
-
referrer: makeLowercaseAddressSchema(`${valueLabel}.referrer`),
|
|
3479
|
-
totalReferrals: makeNonNegativeIntegerSchema(`${valueLabel}.totalReferrals`),
|
|
3480
|
-
totalIncrementalDuration: makeDurationSchema(`${valueLabel}.totalIncrementalDuration`),
|
|
3481
|
-
totalRevenueContribution: makeRevenueContributionSchema(
|
|
3482
|
-
`${valueLabel}.totalRevenueContribution`
|
|
3483
|
-
),
|
|
3484
|
-
score: makeFiniteNonNegativeNumberSchema(`${valueLabel}.score`),
|
|
3485
|
-
rank: makePositiveIntegerSchema(`${valueLabel}.rank`),
|
|
3486
|
-
isQualified: import_v422.default.boolean(),
|
|
3487
|
-
finalScoreBoost: makeFiniteNonNegativeNumberSchema(`${valueLabel}.finalScoreBoost`).max(
|
|
3488
|
-
1,
|
|
3489
|
-
`${valueLabel}.finalScoreBoost must be <= 1`
|
|
3490
|
-
),
|
|
3491
|
-
finalScore: makeFiniteNonNegativeNumberSchema(`${valueLabel}.finalScore`),
|
|
3492
|
-
awardPoolShare: makeFiniteNonNegativeNumberSchema(`${valueLabel}.awardPoolShare`).max(
|
|
3493
|
-
1,
|
|
3494
|
-
`${valueLabel}.awardPoolShare must be <= 1`
|
|
3495
|
-
),
|
|
3496
|
-
awardPoolApproxValue: makeFiniteNonNegativeNumberSchema(`${valueLabel}.awardPoolApproxValue`)
|
|
3497
|
-
});
|
|
3498
|
-
var makeUnrankedReferrerMetricsSchema = (valueLabel = "UnrankedReferrerMetrics") => import_v422.default.object({
|
|
3499
|
-
referrer: makeLowercaseAddressSchema(`${valueLabel}.referrer`),
|
|
3500
|
-
totalReferrals: makeNonNegativeIntegerSchema(`${valueLabel}.totalReferrals`),
|
|
3501
|
-
totalIncrementalDuration: makeDurationSchema(`${valueLabel}.totalIncrementalDuration`),
|
|
3502
|
-
totalRevenueContribution: makeRevenueContributionSchema(
|
|
3503
|
-
`${valueLabel}.totalRevenueContribution`
|
|
3504
|
-
),
|
|
3505
|
-
score: makeFiniteNonNegativeNumberSchema(`${valueLabel}.score`),
|
|
3506
|
-
rank: import_v422.default.null(),
|
|
3507
|
-
isQualified: import_v422.default.literal(false),
|
|
3508
|
-
finalScoreBoost: makeFiniteNonNegativeNumberSchema(`${valueLabel}.finalScoreBoost`).max(
|
|
3509
|
-
1,
|
|
3510
|
-
`${valueLabel}.finalScoreBoost must be <= 1`
|
|
3511
|
-
),
|
|
3512
|
-
finalScore: makeFiniteNonNegativeNumberSchema(`${valueLabel}.finalScore`),
|
|
3513
|
-
awardPoolShare: makeFiniteNonNegativeNumberSchema(`${valueLabel}.awardPoolShare`).max(
|
|
3514
|
-
1,
|
|
3515
|
-
`${valueLabel}.awardPoolShare must be <= 1`
|
|
3516
|
-
),
|
|
3517
|
-
awardPoolApproxValue: makeFiniteNonNegativeNumberSchema(`${valueLabel}.awardPoolApproxValue`)
|
|
3518
|
-
});
|
|
3519
|
-
var makeAggregatedReferrerMetricsSchema = (valueLabel = "AggregatedReferrerMetrics") => import_v422.default.object({
|
|
3520
|
-
grandTotalReferrals: makeNonNegativeIntegerSchema(`${valueLabel}.grandTotalReferrals`),
|
|
3521
|
-
grandTotalIncrementalDuration: makeDurationSchema(
|
|
3522
|
-
`${valueLabel}.grandTotalIncrementalDuration`
|
|
3523
|
-
),
|
|
3524
|
-
grandTotalRevenueContribution: makeRevenueContributionSchema(
|
|
3525
|
-
`${valueLabel}.grandTotalRevenueContribution`
|
|
3526
|
-
),
|
|
3527
|
-
grandTotalQualifiedReferrersFinalScore: makeFiniteNonNegativeNumberSchema(
|
|
3528
|
-
`${valueLabel}.grandTotalQualifiedReferrersFinalScore`
|
|
3529
|
-
),
|
|
3530
|
-
minFinalScoreToQualify: makeFiniteNonNegativeNumberSchema(
|
|
3531
|
-
`${valueLabel}.minFinalScoreToQualify`
|
|
3532
|
-
)
|
|
3533
|
-
});
|
|
3534
|
-
var makeReferrerLeaderboardPageContextSchema = (valueLabel = "ReferrerLeaderboardPageContext") => import_v422.default.object({
|
|
3535
|
-
page: makePositiveIntegerSchema(`${valueLabel}.page`),
|
|
3536
|
-
recordsPerPage: makePositiveIntegerSchema(`${valueLabel}.recordsPerPage`).max(
|
|
3537
|
-
REFERRERS_PER_LEADERBOARD_PAGE_MAX,
|
|
3538
|
-
`${valueLabel}.recordsPerPage must not exceed ${REFERRERS_PER_LEADERBOARD_PAGE_MAX}`
|
|
3539
|
-
),
|
|
3540
|
-
totalRecords: makeNonNegativeIntegerSchema(`${valueLabel}.totalRecords`),
|
|
3541
|
-
totalPages: makePositiveIntegerSchema(`${valueLabel}.totalPages`),
|
|
3542
|
-
hasNext: import_v422.default.boolean(),
|
|
3543
|
-
hasPrev: import_v422.default.boolean(),
|
|
3544
|
-
startIndex: import_v422.default.optional(makeNonNegativeIntegerSchema(`${valueLabel}.startIndex`)),
|
|
3545
|
-
endIndex: import_v422.default.optional(makeNonNegativeIntegerSchema(`${valueLabel}.endIndex`))
|
|
3546
|
-
});
|
|
3547
|
-
var makeReferrerLeaderboardPageSchema = (valueLabel = "ReferrerLeaderboardPage") => import_v422.default.object({
|
|
3548
|
-
rules: makeReferralProgramRulesSchema(`${valueLabel}.rules`),
|
|
3549
|
-
referrers: import_v422.default.array(makeAwardedReferrerMetricsSchema(`${valueLabel}.referrers[record]`)),
|
|
3550
|
-
aggregatedMetrics: makeAggregatedReferrerMetricsSchema(`${valueLabel}.aggregatedMetrics`),
|
|
3551
|
-
pageContext: makeReferrerLeaderboardPageContextSchema(`${valueLabel}.pageContext`),
|
|
3552
|
-
accurateAsOf: makeUnixTimestampSchema(`${valueLabel}.accurateAsOf`)
|
|
3553
|
-
});
|
|
3554
|
-
var makeReferrerLeaderboardPageResponseOkSchema = (valueLabel = "ReferrerLeaderboardPageResponseOk") => import_v422.default.object({
|
|
3555
|
-
responseCode: import_v422.default.literal(ReferrerLeaderboardPageResponseCodes.Ok),
|
|
3556
|
-
data: makeReferrerLeaderboardPageSchema(`${valueLabel}.data`)
|
|
3557
|
-
});
|
|
3558
|
-
var makeReferrerLeaderboardPageResponseErrorSchema = (_valueLabel = "ReferrerLeaderboardPageResponseError") => import_v422.default.object({
|
|
3559
|
-
responseCode: import_v422.default.literal(ReferrerLeaderboardPageResponseCodes.Error),
|
|
3560
|
-
error: import_v422.default.string(),
|
|
3561
|
-
errorMessage: import_v422.default.string()
|
|
3562
|
-
});
|
|
3563
|
-
var makeReferrerLeaderboardPageResponseSchema = (valueLabel = "ReferrerLeaderboardPageResponse") => import_v422.default.union([
|
|
3564
|
-
makeReferrerLeaderboardPageResponseOkSchema(valueLabel),
|
|
3565
|
-
makeReferrerLeaderboardPageResponseErrorSchema(valueLabel)
|
|
3566
|
-
]);
|
|
3567
|
-
var makeReferrerDetailRankedSchema = (valueLabel = "ReferrerDetailRanked") => import_v422.default.object({
|
|
3568
|
-
type: import_v422.default.literal(ReferrerDetailTypeIds.Ranked),
|
|
3569
|
-
rules: makeReferralProgramRulesSchema(`${valueLabel}.rules`),
|
|
3570
|
-
referrer: makeAwardedReferrerMetricsSchema(`${valueLabel}.referrer`),
|
|
3571
|
-
aggregatedMetrics: makeAggregatedReferrerMetricsSchema(`${valueLabel}.aggregatedMetrics`),
|
|
3572
|
-
accurateAsOf: makeUnixTimestampSchema(`${valueLabel}.accurateAsOf`)
|
|
3573
|
-
});
|
|
3574
|
-
var makeReferrerDetailUnrankedSchema = (valueLabel = "ReferrerDetailUnranked") => import_v422.default.object({
|
|
3575
|
-
type: import_v422.default.literal(ReferrerDetailTypeIds.Unranked),
|
|
3576
|
-
rules: makeReferralProgramRulesSchema(`${valueLabel}.rules`),
|
|
3577
|
-
referrer: makeUnrankedReferrerMetricsSchema(`${valueLabel}.referrer`),
|
|
3578
|
-
aggregatedMetrics: makeAggregatedReferrerMetricsSchema(`${valueLabel}.aggregatedMetrics`),
|
|
3579
|
-
accurateAsOf: makeUnixTimestampSchema(`${valueLabel}.accurateAsOf`)
|
|
3580
|
-
});
|
|
3581
|
-
var makeReferrerDetailResponseOkSchema = (valueLabel = "ReferrerDetailResponse") => import_v422.default.object({
|
|
3582
|
-
responseCode: import_v422.default.literal(ReferrerDetailResponseCodes.Ok),
|
|
3583
|
-
data: import_v422.default.union([
|
|
3584
|
-
makeReferrerDetailRankedSchema(`${valueLabel}.data`),
|
|
3585
|
-
makeReferrerDetailUnrankedSchema(`${valueLabel}.data`)
|
|
3586
|
-
])
|
|
3587
|
-
});
|
|
3588
|
-
var makeReferrerDetailResponseErrorSchema = (_valueLabel = "ReferrerDetailResponse") => import_v422.default.object({
|
|
3589
|
-
responseCode: import_v422.default.literal(ReferrerDetailResponseCodes.Error),
|
|
3590
|
-
error: import_v422.default.string(),
|
|
3591
|
-
errorMessage: import_v422.default.string()
|
|
3592
|
-
});
|
|
3593
|
-
var makeReferrerDetailResponseSchema = (valueLabel = "ReferrerDetailResponse") => import_v422.default.union([
|
|
3594
|
-
makeReferrerDetailResponseOkSchema(valueLabel),
|
|
3595
|
-
makeReferrerDetailResponseErrorSchema(valueLabel)
|
|
3596
|
-
]);
|
|
3597
|
-
|
|
3598
|
-
// src/ensanalytics/deserialize.ts
|
|
3599
|
-
function deserializeRevenueContribution(value) {
|
|
3600
|
-
return BigInt(value);
|
|
3601
|
-
}
|
|
3602
|
-
function deserializeReferralProgramRules(rules) {
|
|
3603
|
-
return rules;
|
|
3604
|
-
}
|
|
3605
|
-
function deserializeAwardedReferrerMetrics(metrics) {
|
|
3606
|
-
return {
|
|
3607
|
-
referrer: metrics.referrer,
|
|
3608
|
-
totalReferrals: metrics.totalReferrals,
|
|
3609
|
-
totalIncrementalDuration: metrics.totalIncrementalDuration,
|
|
3610
|
-
totalRevenueContribution: deserializeRevenueContribution(metrics.totalRevenueContribution),
|
|
3611
|
-
score: metrics.score,
|
|
3612
|
-
rank: metrics.rank,
|
|
3613
|
-
isQualified: metrics.isQualified,
|
|
3614
|
-
finalScoreBoost: metrics.finalScoreBoost,
|
|
3615
|
-
finalScore: metrics.finalScore,
|
|
3616
|
-
awardPoolShare: metrics.awardPoolShare,
|
|
3617
|
-
awardPoolApproxValue: metrics.awardPoolApproxValue
|
|
3618
|
-
};
|
|
3619
|
-
}
|
|
3620
|
-
function deserializeUnrankedReferrerMetrics(metrics) {
|
|
3621
|
-
return {
|
|
3622
|
-
referrer: metrics.referrer,
|
|
3623
|
-
totalReferrals: metrics.totalReferrals,
|
|
3624
|
-
totalIncrementalDuration: metrics.totalIncrementalDuration,
|
|
3625
|
-
totalRevenueContribution: deserializeRevenueContribution(metrics.totalRevenueContribution),
|
|
3626
|
-
score: metrics.score,
|
|
3627
|
-
rank: metrics.rank,
|
|
3628
|
-
isQualified: metrics.isQualified,
|
|
3629
|
-
finalScoreBoost: metrics.finalScoreBoost,
|
|
3630
|
-
finalScore: metrics.finalScore,
|
|
3631
|
-
awardPoolShare: metrics.awardPoolShare,
|
|
3632
|
-
awardPoolApproxValue: metrics.awardPoolApproxValue
|
|
3633
|
-
};
|
|
3634
|
-
}
|
|
3635
|
-
function deserializeAggregatedReferrerMetrics(metrics) {
|
|
3636
|
-
return {
|
|
3637
|
-
grandTotalReferrals: metrics.grandTotalReferrals,
|
|
3638
|
-
grandTotalIncrementalDuration: metrics.grandTotalIncrementalDuration,
|
|
3639
|
-
grandTotalRevenueContribution: deserializeRevenueContribution(
|
|
3640
|
-
metrics.grandTotalRevenueContribution
|
|
3641
|
-
),
|
|
3642
|
-
grandTotalQualifiedReferrersFinalScore: metrics.grandTotalQualifiedReferrersFinalScore,
|
|
3643
|
-
minFinalScoreToQualify: metrics.minFinalScoreToQualify
|
|
3644
|
-
};
|
|
3645
|
-
}
|
|
3646
|
-
function deserializeReferrerLeaderboardPage(page) {
|
|
3647
|
-
return {
|
|
3648
|
-
rules: deserializeReferralProgramRules(page.rules),
|
|
3649
|
-
referrers: page.referrers.map(deserializeAwardedReferrerMetrics),
|
|
3650
|
-
aggregatedMetrics: deserializeAggregatedReferrerMetrics(page.aggregatedMetrics),
|
|
3651
|
-
pageContext: page.pageContext,
|
|
3652
|
-
accurateAsOf: page.accurateAsOf
|
|
3653
|
-
};
|
|
3654
|
-
}
|
|
3655
|
-
function deserializeReferrerDetailRanked(detail) {
|
|
3656
|
-
return {
|
|
3657
|
-
type: detail.type,
|
|
3658
|
-
rules: deserializeReferralProgramRules(detail.rules),
|
|
3659
|
-
referrer: deserializeAwardedReferrerMetrics(detail.referrer),
|
|
3660
|
-
aggregatedMetrics: deserializeAggregatedReferrerMetrics(detail.aggregatedMetrics),
|
|
3661
|
-
accurateAsOf: detail.accurateAsOf
|
|
3662
|
-
};
|
|
3663
|
-
}
|
|
3664
|
-
function deserializeReferrerDetailUnranked(detail) {
|
|
3665
|
-
return {
|
|
3666
|
-
type: detail.type,
|
|
3667
|
-
rules: deserializeReferralProgramRules(detail.rules),
|
|
3668
|
-
referrer: deserializeUnrankedReferrerMetrics(detail.referrer),
|
|
3669
|
-
aggregatedMetrics: deserializeAggregatedReferrerMetrics(detail.aggregatedMetrics),
|
|
3670
|
-
accurateAsOf: detail.accurateAsOf
|
|
3671
|
-
};
|
|
3672
|
-
}
|
|
3673
|
-
function deserializeReferrerLeaderboardPageResponse(maybeResponse, valueLabel) {
|
|
3674
|
-
let deserialized;
|
|
3675
|
-
switch (maybeResponse.responseCode) {
|
|
3676
|
-
case "ok": {
|
|
3677
|
-
deserialized = {
|
|
3678
|
-
responseCode: maybeResponse.responseCode,
|
|
3679
|
-
data: deserializeReferrerLeaderboardPage(maybeResponse.data)
|
|
3680
|
-
};
|
|
3681
|
-
break;
|
|
3682
|
-
}
|
|
3683
|
-
case "error":
|
|
3684
|
-
deserialized = maybeResponse;
|
|
3685
|
-
break;
|
|
3686
|
-
}
|
|
3687
|
-
const schema = makeReferrerLeaderboardPageResponseSchema(valueLabel);
|
|
3688
|
-
const parsed = schema.safeParse(deserialized);
|
|
3689
|
-
if (parsed.error) {
|
|
3690
|
-
throw new Error(
|
|
3691
|
-
`Cannot deserialize SerializedReferrerLeaderboardPageResponse:
|
|
3692
|
-
${(0, import_v423.prettifyError)(parsed.error)}
|
|
3693
|
-
`
|
|
3694
|
-
);
|
|
3695
|
-
}
|
|
3696
|
-
return parsed.data;
|
|
3697
|
-
}
|
|
3698
|
-
function deserializeReferrerDetailResponse(maybeResponse, valueLabel) {
|
|
3699
|
-
let deserialized;
|
|
3700
|
-
switch (maybeResponse.responseCode) {
|
|
3701
|
-
case "ok": {
|
|
3702
|
-
switch (maybeResponse.data.type) {
|
|
3703
|
-
case "ranked":
|
|
3704
|
-
deserialized = {
|
|
3705
|
-
responseCode: maybeResponse.responseCode,
|
|
3706
|
-
data: deserializeReferrerDetailRanked(maybeResponse.data)
|
|
3707
|
-
};
|
|
3708
|
-
break;
|
|
3709
|
-
case "unranked":
|
|
3710
|
-
deserialized = {
|
|
3711
|
-
responseCode: maybeResponse.responseCode,
|
|
3712
|
-
data: deserializeReferrerDetailUnranked(maybeResponse.data)
|
|
3713
|
-
};
|
|
3714
|
-
break;
|
|
3715
|
-
}
|
|
3716
|
-
break;
|
|
3717
|
-
}
|
|
3718
|
-
case "error":
|
|
3719
|
-
deserialized = maybeResponse;
|
|
3720
|
-
break;
|
|
3721
|
-
}
|
|
3722
|
-
const schema = makeReferrerDetailResponseSchema(valueLabel);
|
|
3723
|
-
const parsed = schema.safeParse(deserialized);
|
|
3724
|
-
if (parsed.error) {
|
|
3725
|
-
throw new Error(`Cannot deserialize ReferrerDetailResponse:
|
|
3726
|
-
${(0, import_v423.prettifyError)(parsed.error)}
|
|
3727
|
-
`);
|
|
3728
|
-
}
|
|
3729
|
-
return parsed.data;
|
|
3730
|
-
}
|
|
3731
|
-
|
|
3732
|
-
// src/ensanalytics/serialize.ts
|
|
3733
|
-
function serializeRevenueContribution(revenueContribution) {
|
|
3734
|
-
return revenueContribution.toString();
|
|
3735
|
-
}
|
|
3736
|
-
function serializeReferralProgramRules(rules) {
|
|
3737
|
-
return rules;
|
|
3738
|
-
}
|
|
3739
|
-
function serializeAwardedReferrerMetrics(metrics) {
|
|
3740
|
-
return {
|
|
3741
|
-
referrer: metrics.referrer,
|
|
3742
|
-
totalReferrals: metrics.totalReferrals,
|
|
3743
|
-
totalIncrementalDuration: metrics.totalIncrementalDuration,
|
|
3744
|
-
totalRevenueContribution: serializeRevenueContribution(metrics.totalRevenueContribution),
|
|
3745
|
-
score: metrics.score,
|
|
3746
|
-
rank: metrics.rank,
|
|
3747
|
-
isQualified: metrics.isQualified,
|
|
3748
|
-
finalScoreBoost: metrics.finalScoreBoost,
|
|
3749
|
-
finalScore: metrics.finalScore,
|
|
3750
|
-
awardPoolShare: metrics.awardPoolShare,
|
|
3751
|
-
awardPoolApproxValue: metrics.awardPoolApproxValue
|
|
3752
|
-
};
|
|
3753
|
-
}
|
|
3754
|
-
function serializeUnrankedReferrerMetrics(metrics) {
|
|
3755
|
-
return {
|
|
3756
|
-
referrer: metrics.referrer,
|
|
3757
|
-
totalReferrals: metrics.totalReferrals,
|
|
3758
|
-
totalIncrementalDuration: metrics.totalIncrementalDuration,
|
|
3759
|
-
totalRevenueContribution: serializeRevenueContribution(metrics.totalRevenueContribution),
|
|
3760
|
-
score: metrics.score,
|
|
3761
|
-
rank: metrics.rank,
|
|
3762
|
-
isQualified: metrics.isQualified,
|
|
3763
|
-
finalScoreBoost: metrics.finalScoreBoost,
|
|
3764
|
-
finalScore: metrics.finalScore,
|
|
3765
|
-
awardPoolShare: metrics.awardPoolShare,
|
|
3766
|
-
awardPoolApproxValue: metrics.awardPoolApproxValue
|
|
3767
|
-
};
|
|
3768
|
-
}
|
|
3769
|
-
function serializeAggregatedReferrerMetrics(metrics) {
|
|
3770
|
-
return {
|
|
3771
|
-
grandTotalReferrals: metrics.grandTotalReferrals,
|
|
3772
|
-
grandTotalIncrementalDuration: metrics.grandTotalIncrementalDuration,
|
|
3773
|
-
grandTotalRevenueContribution: serializeRevenueContribution(
|
|
3774
|
-
metrics.grandTotalRevenueContribution
|
|
3775
|
-
),
|
|
3776
|
-
grandTotalQualifiedReferrersFinalScore: metrics.grandTotalQualifiedReferrersFinalScore,
|
|
3777
|
-
minFinalScoreToQualify: metrics.minFinalScoreToQualify
|
|
3778
|
-
};
|
|
3779
|
-
}
|
|
3780
|
-
function serializeReferrerLeaderboardPage(page) {
|
|
3781
|
-
return {
|
|
3782
|
-
rules: serializeReferralProgramRules(page.rules),
|
|
3783
|
-
referrers: page.referrers.map(serializeAwardedReferrerMetrics),
|
|
3784
|
-
aggregatedMetrics: serializeAggregatedReferrerMetrics(page.aggregatedMetrics),
|
|
3785
|
-
pageContext: page.pageContext,
|
|
3786
|
-
accurateAsOf: page.accurateAsOf
|
|
3787
|
-
};
|
|
3788
|
-
}
|
|
3789
|
-
function serializeReferrerDetailRanked(detail) {
|
|
3790
|
-
return {
|
|
3791
|
-
type: detail.type,
|
|
3792
|
-
rules: serializeReferralProgramRules(detail.rules),
|
|
3793
|
-
referrer: serializeAwardedReferrerMetrics(detail.referrer),
|
|
3794
|
-
aggregatedMetrics: serializeAggregatedReferrerMetrics(detail.aggregatedMetrics),
|
|
3795
|
-
accurateAsOf: detail.accurateAsOf
|
|
3796
|
-
};
|
|
3797
|
-
}
|
|
3798
|
-
function serializeReferrerDetailUnranked(detail) {
|
|
3799
|
-
return {
|
|
3800
|
-
type: detail.type,
|
|
3801
|
-
rules: serializeReferralProgramRules(detail.rules),
|
|
3802
|
-
referrer: serializeUnrankedReferrerMetrics(detail.referrer),
|
|
3803
|
-
aggregatedMetrics: serializeAggregatedReferrerMetrics(detail.aggregatedMetrics),
|
|
3804
|
-
accurateAsOf: detail.accurateAsOf
|
|
3805
|
-
};
|
|
3806
|
-
}
|
|
3807
|
-
function serializeReferrerLeaderboardPageResponse(response) {
|
|
3808
|
-
switch (response.responseCode) {
|
|
3809
|
-
case ReferrerLeaderboardPageResponseCodes.Ok:
|
|
3810
|
-
return {
|
|
3811
|
-
responseCode: response.responseCode,
|
|
3812
|
-
data: serializeReferrerLeaderboardPage(response.data)
|
|
3813
|
-
};
|
|
3814
|
-
case ReferrerLeaderboardPageResponseCodes.Error:
|
|
3815
|
-
return response;
|
|
3816
|
-
}
|
|
3817
|
-
}
|
|
3818
|
-
function serializeReferrerDetailResponse(response) {
|
|
3819
|
-
switch (response.responseCode) {
|
|
3820
|
-
case ReferrerDetailResponseCodes.Ok:
|
|
3821
|
-
switch (response.data.type) {
|
|
3822
|
-
case "ranked":
|
|
3823
|
-
return {
|
|
3824
|
-
responseCode: response.responseCode,
|
|
3825
|
-
data: serializeReferrerDetailRanked(response.data)
|
|
3826
|
-
};
|
|
3827
|
-
case "unranked":
|
|
3828
|
-
return {
|
|
3829
|
-
responseCode: response.responseCode,
|
|
3830
|
-
data: serializeReferrerDetailUnranked(response.data)
|
|
3831
|
-
};
|
|
3832
|
-
}
|
|
3833
|
-
break;
|
|
3834
|
-
case ReferrerDetailResponseCodes.Error:
|
|
3835
|
-
return response;
|
|
3836
|
-
}
|
|
3837
|
-
}
|
|
3838
|
-
|
|
3839
3410
|
// src/client.ts
|
|
3840
3411
|
var DEFAULT_ENSNODE_API_URL = "https://api.alpha.ensnode.io";
|
|
3841
3412
|
var ENSNodeClient = class _ENSNodeClient {
|
|
@@ -4072,164 +3643,6 @@ var ENSNodeClient = class _ENSNodeClient {
|
|
|
4072
3643
|
}
|
|
4073
3644
|
return deserializeIndexingStatusResponse(responseData);
|
|
4074
3645
|
}
|
|
4075
|
-
/**
|
|
4076
|
-
* Fetch Referrer Leaderboard Page
|
|
4077
|
-
*
|
|
4078
|
-
* Retrieves a paginated list of referrer leaderboard metrics with contribution percentages.
|
|
4079
|
-
* Each referrer's contribution is calculated as a percentage of the grand totals across all referrers.
|
|
4080
|
-
*
|
|
4081
|
-
* @param request - Pagination parameters
|
|
4082
|
-
* @param request.page - The page number to retrieve (1-indexed, default: 1)
|
|
4083
|
-
* @param request.recordsPerPage - Number of records per page (default: 25, max: 100)
|
|
4084
|
-
* @returns {ReferrerLeaderboardPageResponse}
|
|
4085
|
-
*
|
|
4086
|
-
* @throws if the ENSNode request fails
|
|
4087
|
-
* @throws if the ENSNode API returns an error response
|
|
4088
|
-
* @throws if the ENSNode response breaks required invariants
|
|
4089
|
-
*
|
|
4090
|
-
* @example
|
|
4091
|
-
* ```typescript
|
|
4092
|
-
* // Get first page with default page size (25 records)
|
|
4093
|
-
* const response = await client.getReferrerLeaderboardPage();
|
|
4094
|
-
* if (response.responseCode === ReferrerLeaderboardPageResponseCodes.Ok) {
|
|
4095
|
-
* const {
|
|
4096
|
-
* aggregatedMetrics,
|
|
4097
|
-
* referrers,
|
|
4098
|
-
* rules,
|
|
4099
|
-
* pageContext,
|
|
4100
|
-
* updatedAt
|
|
4101
|
-
* } = response.data;
|
|
4102
|
-
* console.log(aggregatedMetrics);
|
|
4103
|
-
* console.log(referrers);
|
|
4104
|
-
* console.log(rules);
|
|
4105
|
-
* console.log(updatedAt);
|
|
4106
|
-
* console.log(`Page ${pageContext.page} of ${pageContext.totalPages}`);
|
|
4107
|
-
* }
|
|
4108
|
-
* ```
|
|
4109
|
-
*
|
|
4110
|
-
* @example
|
|
4111
|
-
* ```typescript
|
|
4112
|
-
* // Get second page with 50 records per page
|
|
4113
|
-
* const response = await client.getReferrerLeaderboardPage({ page: 2, recordsPerPage: 50 });
|
|
4114
|
-
* ```
|
|
4115
|
-
*
|
|
4116
|
-
* @example
|
|
4117
|
-
* ```typescript
|
|
4118
|
-
* // Handle error response, ie. when Referrer Leaderboard is not currently available.
|
|
4119
|
-
* const response = await client.getReferrerLeaderboardPage();
|
|
4120
|
-
*
|
|
4121
|
-
* if (response.responseCode === ReferrerLeaderboardPageResponseCodes.Error) {
|
|
4122
|
-
* console.error(response.error);
|
|
4123
|
-
* console.error(response.errorMessage);
|
|
4124
|
-
* }
|
|
4125
|
-
* ```
|
|
4126
|
-
*/
|
|
4127
|
-
async getReferrerLeaderboardPage(request) {
|
|
4128
|
-
const url = new URL(`/ensanalytics/referrers`, this.options.url);
|
|
4129
|
-
if (request?.page) url.searchParams.set("page", request.page.toString());
|
|
4130
|
-
if (request?.recordsPerPage)
|
|
4131
|
-
url.searchParams.set("recordsPerPage", request.recordsPerPage.toString());
|
|
4132
|
-
const response = await fetch(url);
|
|
4133
|
-
let responseData;
|
|
4134
|
-
try {
|
|
4135
|
-
responseData = await response.json();
|
|
4136
|
-
} catch {
|
|
4137
|
-
throw new Error("Malformed response data: invalid JSON");
|
|
4138
|
-
}
|
|
4139
|
-
return deserializeReferrerLeaderboardPageResponse(
|
|
4140
|
-
responseData
|
|
4141
|
-
);
|
|
4142
|
-
}
|
|
4143
|
-
/**
|
|
4144
|
-
* Fetch Referrer Detail
|
|
4145
|
-
*
|
|
4146
|
-
* Retrieves detailed information about a specific referrer, whether they are on the
|
|
4147
|
-
* leaderboard or not.
|
|
4148
|
-
*
|
|
4149
|
-
* The response data is a discriminated union type with a `type` field:
|
|
4150
|
-
*
|
|
4151
|
-
* **For referrers on the leaderboard** (`ReferrerDetailRanked`):
|
|
4152
|
-
* - `type`: {@link ReferrerDetailTypeIds.Ranked}
|
|
4153
|
-
* - `referrer`: The `AwardedReferrerMetrics` from @namehash/ens-referrals
|
|
4154
|
-
* - `rules`: The referral program rules
|
|
4155
|
-
* - `aggregatedMetrics`: Aggregated metrics for all referrers on the leaderboard
|
|
4156
|
-
* - `accurateAsOf`: Unix timestamp indicating when the data was last updated
|
|
4157
|
-
*
|
|
4158
|
-
* **For referrers NOT on the leaderboard** (`ReferrerDetailUnranked`):
|
|
4159
|
-
* - `type`: {@link ReferrerDetailTypeIds.Unranked}
|
|
4160
|
-
* - `referrer`: The `UnrankedReferrerMetrics` from @namehash/ens-referrals
|
|
4161
|
-
* - `rules`: The referral program rules
|
|
4162
|
-
* - `aggregatedMetrics`: Aggregated metrics for all referrers on the leaderboard
|
|
4163
|
-
* - `accurateAsOf`: Unix timestamp indicating when the data was last updated
|
|
4164
|
-
*
|
|
4165
|
-
* @see {@link https://www.npmjs.com/package/@namehash/ens-referrals|@namehash/ens-referrals} for calculation details
|
|
4166
|
-
*
|
|
4167
|
-
* @param request The referrer address to query
|
|
4168
|
-
* @returns {ReferrerDetailResponse} Returns the referrer detail response
|
|
4169
|
-
*
|
|
4170
|
-
* @throws if the ENSNode request fails
|
|
4171
|
-
* @throws if the response data is malformed
|
|
4172
|
-
*
|
|
4173
|
-
* @example
|
|
4174
|
-
* ```typescript
|
|
4175
|
-
* // Get referrer detail for a specific address
|
|
4176
|
-
* const response = await client.getReferrerDetail({
|
|
4177
|
-
* referrer: "0x1234567890123456789012345678901234567890"
|
|
4178
|
-
* });
|
|
4179
|
-
* if (response.responseCode === ReferrerDetailResponseCodes.Ok) {
|
|
4180
|
-
* const { type, referrer, rules, aggregatedMetrics, accurateAsOf } = response.data;
|
|
4181
|
-
* console.log(type); // ReferrerDetailTypeIds.Ranked or ReferrerDetailTypeIds.Unranked
|
|
4182
|
-
* console.log(referrer);
|
|
4183
|
-
* console.log(accurateAsOf);
|
|
4184
|
-
* }
|
|
4185
|
-
* ```
|
|
4186
|
-
*
|
|
4187
|
-
* @example
|
|
4188
|
-
* ```typescript
|
|
4189
|
-
* // Use discriminated union to check if referrer is ranked
|
|
4190
|
-
* const response = await client.getReferrerDetail({
|
|
4191
|
-
* referrer: "0x1234567890123456789012345678901234567890"
|
|
4192
|
-
* });
|
|
4193
|
-
* if (response.responseCode === ReferrerDetailResponseCodes.Ok) {
|
|
4194
|
-
* if (response.data.type === ReferrerDetailTypeIds.Ranked) {
|
|
4195
|
-
* // TypeScript knows this is ReferrerDetailRanked
|
|
4196
|
-
* console.log(`Rank: ${response.data.referrer.rank}`);
|
|
4197
|
-
* console.log(`Qualified: ${response.data.referrer.isQualified}`);
|
|
4198
|
-
* console.log(`Award Pool Share: ${response.data.referrer.awardPoolShare * 100}%`);
|
|
4199
|
-
* } else {
|
|
4200
|
-
* // TypeScript knows this is ReferrerDetailUnranked
|
|
4201
|
-
* console.log("Referrer is not on the leaderboard (no referrals yet)");
|
|
4202
|
-
* }
|
|
4203
|
-
* }
|
|
4204
|
-
* ```
|
|
4205
|
-
*
|
|
4206
|
-
* @example
|
|
4207
|
-
* ```typescript
|
|
4208
|
-
* // Handle error response, ie. when Referrer Detail is not currently available.
|
|
4209
|
-
* const response = await client.getReferrerDetail({
|
|
4210
|
-
* referrer: "0x1234567890123456789012345678901234567890"
|
|
4211
|
-
* });
|
|
4212
|
-
*
|
|
4213
|
-
* if (response.responseCode === ReferrerDetailResponseCodes.Error) {
|
|
4214
|
-
* console.error(response.error);
|
|
4215
|
-
* console.error(response.errorMessage);
|
|
4216
|
-
* }
|
|
4217
|
-
* ```
|
|
4218
|
-
*/
|
|
4219
|
-
async getReferrerDetail(request) {
|
|
4220
|
-
const url = new URL(
|
|
4221
|
-
`/api/ensanalytics/referrers/${encodeURIComponent(request.referrer)}`,
|
|
4222
|
-
this.options.url
|
|
4223
|
-
);
|
|
4224
|
-
const response = await fetch(url);
|
|
4225
|
-
let responseData;
|
|
4226
|
-
try {
|
|
4227
|
-
responseData = await response.json();
|
|
4228
|
-
} catch {
|
|
4229
|
-
throw new Error("Malformed response data: invalid JSON");
|
|
4230
|
-
}
|
|
4231
|
-
return deserializeReferrerDetailResponse(responseData);
|
|
4232
|
-
}
|
|
4233
3646
|
/**
|
|
4234
3647
|
* Fetch ENSNode Registrar Actions
|
|
4235
3648
|
*
|
|
@@ -4463,7 +3876,7 @@ var ENSNodeClient = class _ENSNodeClient {
|
|
|
4463
3876
|
};
|
|
4464
3877
|
|
|
4465
3878
|
// src/ensv2/ids-lib.ts
|
|
4466
|
-
var
|
|
3879
|
+
var import_viem19 = require("viem");
|
|
4467
3880
|
var makeRegistryId = (accountId) => formatAccountId(accountId);
|
|
4468
3881
|
var makeENSv1DomainId = (node) => node;
|
|
4469
3882
|
var makeENSv2DomainId = (registry, canonicalId) => formatAssetId({
|
|
@@ -4474,7 +3887,7 @@ var makeENSv2DomainId = (registry, canonicalId) => formatAssetId({
|
|
|
4474
3887
|
var maskLower32Bits = (num) => num ^ num & 0xffffffffn;
|
|
4475
3888
|
var getCanonicalId = (input) => {
|
|
4476
3889
|
if (typeof input === "bigint") return maskLower32Bits(input);
|
|
4477
|
-
return getCanonicalId((0,
|
|
3890
|
+
return getCanonicalId((0, import_viem19.hexToBigInt)(input));
|
|
4478
3891
|
};
|
|
4479
3892
|
var makePermissionsId = (contract) => formatAccountId(contract);
|
|
4480
3893
|
var makePermissionsResourceId = (contract, resource) => `${makePermissionsId(contract)}/${resource}`;
|