@ensnode/ensnode-sdk 0.0.0-next-20260220210218 → 0.0.0-next-20260223140405

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
@@ -57,6 +57,7 @@ __export(index_exports, {
57
57
  EnsApiIndexingStatusResponseCodes: () => EnsApiIndexingStatusResponseCodes,
58
58
  EnsIndexerClient: () => EnsIndexerClient,
59
59
  EnsIndexerIndexingStatusResponseCodes: () => EnsIndexerIndexingStatusResponseCodes,
60
+ EnsNodeMetadataKeys: () => EnsNodeMetadataKeys,
60
61
  ForwardResolutionProtocolStep: () => ForwardResolutionProtocolStep,
61
62
  IndexingStatusResponseCodes: () => IndexingStatusResponseCodes,
62
63
  LINEANAMES_NODE: () => LINEANAMES_NODE,
@@ -254,6 +255,8 @@ __export(index_exports, {
254
255
  serializeChainId: () => serializeChainId,
255
256
  serializeChainIndexingSnapshots: () => serializeChainIndexingSnapshots,
256
257
  serializeConfigResponse: () => serializeConfigResponse,
258
+ serializeCrossChainIndexingStatusSnapshot: () => serializeCrossChainIndexingStatusSnapshot,
259
+ serializeCrossChainIndexingStatusSnapshotOmnichain: () => serializeCrossChainIndexingStatusSnapshotOmnichain,
257
260
  serializeDatetime: () => serializeDatetime,
258
261
  serializeDomainAssetId: () => serializeDomainAssetId,
259
262
  serializeENSApiPublicConfig: () => serializeENSApiPublicConfig,
@@ -287,6 +290,7 @@ __export(index_exports, {
287
290
  uniq: () => uniq,
288
291
  validateChainIndexingStatusSnapshot: () => validateChainIndexingStatusSnapshot,
289
292
  validateCrossChainIndexingStatusSnapshot: () => validateCrossChainIndexingStatusSnapshot,
293
+ validateEnsIndexerPublicConfigCompatibility: () => validateEnsIndexerPublicConfigCompatibility,
290
294
  validateOmnichainIndexingStatusSnapshot: () => validateOmnichainIndexingStatusSnapshot,
291
295
  validateRealtimeIndexingStatusProjection: () => validateRealtimeIndexingStatusProjection,
292
296
  validateSupportedLabelSetAndVersion: () => validateSupportedLabelSetAndVersion
@@ -1965,6 +1969,12 @@ function serializeCrossChainIndexingStatusSnapshotOmnichain({
1965
1969
  omnichainSnapshot: serializeOmnichainIndexingStatusSnapshot(omnichainSnapshot)
1966
1970
  };
1967
1971
  }
1972
+ function serializeCrossChainIndexingStatusSnapshot(snapshot) {
1973
+ switch (snapshot.strategy) {
1974
+ case CrossChainIndexingStrategyIds.Omnichain:
1975
+ return serializeCrossChainIndexingStatusSnapshotOmnichain(snapshot);
1976
+ }
1977
+ }
1968
1978
 
1969
1979
  // src/indexing-status/serialize/realtime-indexing-status-projection.ts
1970
1980
  function serializeRealtimeIndexingStatusProjection(indexingProjection) {
@@ -3651,6 +3661,13 @@ var EnsApiClient = class _EnsApiClient {
3651
3661
  var ENSNodeClient = class extends EnsApiClient {
3652
3662
  };
3653
3663
 
3664
+ // src/ensdb/ensnode-metadata.ts
3665
+ var EnsNodeMetadataKeys = {
3666
+ EnsDbVersion: "ensdb_version",
3667
+ EnsIndexerPublicConfig: "ensindexer_public_config",
3668
+ EnsIndexerIndexingStatus: "ensindexer_indexing_status"
3669
+ };
3670
+
3654
3671
  // src/ensindexer/api/config/deserialize.ts
3655
3672
  function deserializeEnsIndexerConfigResponse(maybeResponse) {
3656
3673
  return deserializeEnsIndexerPublicConfig(maybeResponse, "EnsIndexerConfigResponse");
@@ -3828,6 +3845,66 @@ var EnsIndexerClient = class {
3828
3845
  }
3829
3846
  };
3830
3847
 
3848
+ // src/ensindexer/config/compatibility.ts
3849
+ function validateEnsIndexerPublicConfigCompatibility(configA, configB) {
3850
+ if (configA.indexedChainIds.symmetricDifference(configB.indexedChainIds).size > 0) {
3851
+ throw new Error(
3852
+ [
3853
+ `'indexedChainIds' must be compatible.`,
3854
+ `Stored Config 'indexedChainIds': '${Array.from(configA.indexedChainIds).join(", ")}'.`,
3855
+ `Current Config 'indexedChainIds': '${Array.from(configB.indexedChainIds).join(", ")}'.`
3856
+ ].join(" ")
3857
+ );
3858
+ }
3859
+ if (configA.isSubgraphCompatible !== configB.isSubgraphCompatible) {
3860
+ throw new Error(
3861
+ [
3862
+ `'isSubgraphCompatible' flag must be compatible.`,
3863
+ `Stored Config 'isSubgraphCompatible' flag: '${configA.isSubgraphCompatible}'.`,
3864
+ `Current Config 'isSubgraphCompatible' flag: '${configB.isSubgraphCompatible}'.`
3865
+ ].join(" ")
3866
+ );
3867
+ }
3868
+ if (configA.namespace !== configB.namespace) {
3869
+ throw new Error(
3870
+ [
3871
+ `'namespace' must be compatible.`,
3872
+ `Stored Config 'namespace': '${configA.namespace}'.`,
3873
+ `Current Config 'namespace': '${configB.namespace}'.`
3874
+ ].join(" ")
3875
+ );
3876
+ }
3877
+ if (configA.labelSet.labelSetId !== configB.labelSet.labelSetId) {
3878
+ throw new Error(
3879
+ [
3880
+ `'labelSet.labelSetId' must be compatible.`,
3881
+ `Stored Config 'labelSet.labelSetId': '${configA.labelSet.labelSetId}'.`,
3882
+ `Current Config 'labelSet.labelSetId': '${configB.labelSet.labelSetId}'.`
3883
+ ].join(" ")
3884
+ );
3885
+ }
3886
+ if (configA.labelSet.labelSetVersion !== configB.labelSet.labelSetVersion) {
3887
+ throw new Error(
3888
+ [
3889
+ `'labelSet.labelSetVersion' must be compatible.`,
3890
+ `Stored Config 'labelSet.labelSetVersion': '${configA.labelSet.labelSetVersion}'.`,
3891
+ `Current Config 'labelSet.labelSetVersion': '${configB.labelSet.labelSetVersion}'.`
3892
+ ].join(" ")
3893
+ );
3894
+ }
3895
+ const configAPluginsSet = new Set(configA.plugins);
3896
+ const configBPluginsSet = new Set(configB.plugins);
3897
+ if (configAPluginsSet.symmetricDifference(configBPluginsSet).size > 0) {
3898
+ throw new Error(
3899
+ [
3900
+ `'plugins' must be compatible.`,
3901
+ `Stored Config 'plugins': '${configA.plugins.join(", ")}'.`,
3902
+ `Current Config 'plugins': '${configB.plugins.join(", ")}'.`
3903
+ ].join(" ")
3904
+ );
3905
+ }
3906
+ }
3907
+
3831
3908
  // src/ensindexer/config/label-utils.ts
3832
3909
  var import_viem15 = require("viem");
3833
3910
  function labelHashToBytes(labelHash) {