@ensnode/ensdb-sdk 1.11.1 → 1.12.0

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.
@@ -1,4 +1,4 @@
1
- export { b as account, c as account_relations, d as domain, e as domainEvent, f as domainResolverRelation, g as domainResolverRelation_relations, h as domainType, i as event, j as internal_registrarActionMetadata, k as internal_registrarActionMetadataType, l as label, m as label_relations, n as latestRegistrationIndex, o as latestRegistrationIndex_relations, p as latestRenewalIndex, q as latestRenewalIndex_relations, r as migratedNodeByNode, s as migratedNodeByParent, t as nameSales, u as nameTokens, v as permissions, w as permissionsEvent, x as permissionsResource, y as permissionsUser, z as permissionsUserEvent, A as registrarActionRelations, B as registrarActionType, C as registrarActions, D as registration, E as registrationLifecycleRelations, F as registrationLifecycles, G as registrationType, H as registration_relations, I as registry, J as registryCanonicalDomain, K as registryType, L as relations_domain, M as relations_permissions, N as relations_permissionsResource, O as relations_permissionsUser, P as relations_registry, Q as renewal, R as renewal_relations, S as resolver, T as resolverAddressRecord, U as resolverAddressRecordRelations, V as resolverEvent, W as resolverRecords, X as resolverRecords_relations, Y as resolverTextRecord, Z as resolverTextRecordRelations, _ as resolver_relations, $ as reverseNameRecord, a0 as subgraph_abiChanged, a1 as subgraph_abiChangedRelations, a2 as subgraph_account, a3 as subgraph_accountRelations, a4 as subgraph_addrChanged, a5 as subgraph_addrChangedRelations, a6 as subgraph_authorisationChanged, a7 as subgraph_authorisationChangedRelations, a8 as subgraph_contenthashChanged, a9 as subgraph_contenthashChangedRelations, aa as subgraph_domain, ab as subgraph_domainRelations, ac as subgraph_expiryExtended, ad as subgraph_expiryExtendedRelations, ae as subgraph_fusesSet, af as subgraph_fusesSetRelations, ag as subgraph_interfaceChanged, ah as subgraph_interfaceChangedRelations, ai as subgraph_multicoinAddrChanged, aj as subgraph_multicoinAddrChangedRelations, ak as subgraph_nameChanged, al as subgraph_nameChangedRelations, am as subgraph_nameRegistered, an as subgraph_nameRegisteredRelations, ao as subgraph_nameRenewed, ap as subgraph_nameRenewedRelations, aq as subgraph_nameTransferred, ar as subgraph_nameTransferredRelations, as as subgraph_nameUnwrapped, at as subgraph_nameUnwrappedRelations, au as subgraph_nameWrapped, av as subgraph_nameWrappedRelations, aw as subgraph_newOwner, ax as subgraph_newOwnerRelations, ay as subgraph_newResolver, az as subgraph_newResolverRelations, aA as subgraph_newTTL, aB as subgraph_newTTLRelations, aC as subgraph_pubkeyChanged, aD as subgraph_pubkeyChangedRelations, aE as subgraph_registration, aF as subgraph_registrationRelations, aG as subgraph_resolver, aH as subgraph_resolverRelations, aI as subgraph_textChanged, aJ as subgraph_textChangedRelations, aK as subgraph_transfer, aL as subgraph_transferRelations, aM as subgraph_versionChanged, aN as subgraph_versionChangedRelations, aO as subgraph_wrappedDomain, aP as subgraph_wrappedDomainRelations, aQ as subgraph_wrappedTransfer, aR as subgraph_wrappedTransferRelations, aS as subregistries, aT as subregistryRelations } from '../index-C0lByZGy.js';
1
+ export { b as account, c as account_relations, d as domain, e as domainEvent, f as domainResolverRelation, g as domainResolverRelation_relations, h as domainType, i as event, j as internal_registrarActionMetadata, k as internal_registrarActionMetadataType, l as label, m as label_relations, n as latestRegistrationIndex, o as latestRegistrationIndex_relations, p as latestRenewalIndex, q as latestRenewalIndex_relations, r as migratedNodeByNode, s as migratedNodeByParent, t as nameSales, u as nameTokens, v as permissions, w as permissionsEvent, x as permissionsResource, y as permissionsUser, z as permissionsUserEvent, A as registrarActionRelations, B as registrarActionType, C as registrarActions, D as registration, E as registrationLifecycleRelations, F as registrationLifecycles, G as registrationType, H as registration_relations, I as registry, J as registryType, K as relations_domain, L as relations_permissions, M as relations_permissionsResource, N as relations_permissionsUser, O as relations_registry, P as renewal, Q as renewal_relations, R as resolver, S as resolverAddressRecord, T as resolverAddressRecordRelations, U as resolverEvent, V as resolverRecords, W as resolverRecords_relations, X as resolverTextRecord, Y as resolverTextRecordRelations, Z as resolver_relations, _ as reverseNameRecord, $ as subgraph_abiChanged, a0 as subgraph_abiChangedRelations, a1 as subgraph_account, a2 as subgraph_accountRelations, a3 as subgraph_addrChanged, a4 as subgraph_addrChangedRelations, a5 as subgraph_authorisationChanged, a6 as subgraph_authorisationChangedRelations, a7 as subgraph_contenthashChanged, a8 as subgraph_contenthashChangedRelations, a9 as subgraph_domain, aa as subgraph_domainRelations, ab as subgraph_expiryExtended, ac as subgraph_expiryExtendedRelations, ad as subgraph_fusesSet, ae as subgraph_fusesSetRelations, af as subgraph_interfaceChanged, ag as subgraph_interfaceChangedRelations, ah as subgraph_multicoinAddrChanged, ai as subgraph_multicoinAddrChangedRelations, aj as subgraph_nameChanged, ak as subgraph_nameChangedRelations, al as subgraph_nameRegistered, am as subgraph_nameRegisteredRelations, an as subgraph_nameRenewed, ao as subgraph_nameRenewedRelations, ap as subgraph_nameTransferred, aq as subgraph_nameTransferredRelations, ar as subgraph_nameUnwrapped, as as subgraph_nameUnwrappedRelations, at as subgraph_nameWrapped, au as subgraph_nameWrappedRelations, av as subgraph_newOwner, aw as subgraph_newOwnerRelations, ax as subgraph_newResolver, ay as subgraph_newResolverRelations, az as subgraph_newTTL, aA as subgraph_newTTLRelations, aB as subgraph_pubkeyChanged, aC as subgraph_pubkeyChangedRelations, aD as subgraph_registration, aE as subgraph_registrationRelations, aF as subgraph_resolver, aG as subgraph_resolverRelations, aH as subgraph_textChanged, aI as subgraph_textChangedRelations, aJ as subgraph_transfer, aK as subgraph_transferRelations, aL as subgraph_versionChanged, aM as subgraph_versionChangedRelations, aN as subgraph_wrappedDomain, aO as subgraph_wrappedDomainRelations, aP as subgraph_wrappedTransfer, aQ as subgraph_wrappedTransferRelations, aR as subregistries, aS as subregistryRelations } from '../index-CVAtPcO6.js';
2
2
  import 'drizzle-orm/pg-core';
3
3
  import 'drizzle-orm';
4
4
  import 'ponder';
@@ -92,7 +92,18 @@ var registry = onchainTable(
92
92
  address: t.hex().notNull().$type(),
93
93
  // If this is an ENSv1VirtualRegistry, `node` is the namehash of the parent ENSv1 domain that
94
94
  // owns it, otherwise null.
95
- node: t.hex().$type()
95
+ node: t.hex().$type(),
96
+ // the Registry's declared Canonical Domain (uni-directional)
97
+ canonicalDomainId: t.text().$type(),
98
+ // Whether this Registry is part of the canonical nametree. See canonicality-db-helpers.ts.
99
+ canonical: t.boolean().notNull().default(false),
100
+ // Synthetic monotonic sentinel: flipped to true the first time a child Domain is registered
101
+ // under this Registry (see `ensureDomainInRegistry`). Read by `cascadeCanonicality` to skip
102
+ // the raw-SQL recursive-CTE walk (and its associated Ponder cache flush) when the start
103
+ // registry provably has no descendants — the dominant case for fresh ENSv1 virtual
104
+ // registries on first wire-up. Double-underscore prefix marks it as an internal-only
105
+ // bookkeeping field, not part of the on-chain protocol surface.
106
+ __hasChildren: t.boolean().notNull().default(false)
96
107
  }),
97
108
  (t) => ({
98
109
  // NOTE: non-unique index because multiple rows can share (chainId, address) across virtual registries
@@ -120,7 +131,7 @@ var domain = onchainTable(
120
131
  type: domainType().notNull(),
121
132
  // belongs to a registry
122
133
  registryId: t.text().notNull().$type(),
123
- // may have a subregistry
134
+ // the Domain's declared Subregistry (uni-directional)
124
135
  subregistryId: t.text().$type(),
125
136
  // If this is an ENSv2Domain, the TokenId within the ENSv2Registry, otherwise null.
126
137
  tokenId: t.bigint().$type(),
@@ -132,9 +143,10 @@ var domain = onchainTable(
132
143
  // If this is an ENSv2Domain, this is the on-chain owner address (the HCA account address if used).
133
144
  ownerId: t.hex().$type(),
134
145
  // If this is an ENSv1Domain, may have a `rootRegistryOwner`, otherwise null.
135
- rootRegistryOwnerId: t.hex().$type()
146
+ rootRegistryOwnerId: t.hex().$type(),
147
+ // Whether this Domain is part of the canonical nametree. Mirrors the parent Registry's flag.
148
+ canonical: t.boolean().notNull().default(false)
136
149
  // NOTE: Domain-Resolver Relations tracked via Protocol Acceleration plugin
137
- // NOTE: parent is derived via registryCanonicalDomain, not stored on the domain row
138
150
  }),
139
151
  (t) => ({
140
152
  byType: index().on(t.type),
@@ -395,10 +407,6 @@ var label = onchainTable(
395
407
  var label_relations = relations(label, ({ many }) => ({
396
408
  domains: many(domain)
397
409
  }));
398
- var registryCanonicalDomain = onchainTable("registry_canonical_domains", (t) => ({
399
- registryId: t.text().primaryKey().$type(),
400
- domainId: t.text().notNull().$type()
401
- }));
402
410
 
403
411
  // src/ensindexer-abstract/migrated-nodes.schema.ts
404
412
  import { onchainTable as onchainTable2, primaryKey as primaryKey2 } from "ponder";
@@ -1881,7 +1889,6 @@ export {
1881
1889
  registrationType,
1882
1890
  registration_relations,
1883
1891
  registry,
1884
- registryCanonicalDomain,
1885
1892
  registryType,
1886
1893
  relations_domain,
1887
1894
  relations_permissions,