@ensforge/core 0.0.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.
- package/LICENSE +201 -0
- package/README.md +61 -0
- package/dist/action/action.d.ts +13 -0
- package/dist/action/action.d.ts.map +1 -0
- package/dist/action/action.js +18 -0
- package/dist/action/action.js.map +1 -0
- package/dist/action/block.d.ts +12 -0
- package/dist/action/block.d.ts.map +1 -0
- package/dist/action/block.js +10 -0
- package/dist/action/block.js.map +1 -0
- package/dist/action/index.d.ts +5 -0
- package/dist/action/read-request.d.ts +19 -0
- package/dist/action/read-request.d.ts.map +1 -0
- package/dist/action/read-request.js +23 -0
- package/dist/action/read-request.js.map +1 -0
- package/dist/action/write-intent.d.ts +34 -0
- package/dist/action/write-intent.d.ts.map +1 -0
- package/dist/action/write-intent.js +41 -0
- package/dist/action/write-intent.js.map +1 -0
- package/dist/actions/batch/estimate-calls.d.ts +8 -0
- package/dist/actions/batch/estimate-calls.d.ts.map +1 -0
- package/dist/actions/batch/estimate-calls.js +68 -0
- package/dist/actions/batch/estimate-calls.js.map +1 -0
- package/dist/actions/batch/execute-write-plan.d.ts +8 -0
- package/dist/actions/batch/execute-write-plan.d.ts.map +1 -0
- package/dist/actions/batch/execute-write-plan.js +145 -0
- package/dist/actions/batch/execute-write-plan.js.map +1 -0
- package/dist/actions/batch/get-calls-status.d.ts +8 -0
- package/dist/actions/batch/get-calls-status.d.ts.map +1 -0
- package/dist/actions/batch/get-calls-status.js +33 -0
- package/dist/actions/batch/get-calls-status.js.map +1 -0
- package/dist/actions/batch/get-wallet-capabilities.d.ts +10 -0
- package/dist/actions/batch/get-wallet-capabilities.d.ts.map +1 -0
- package/dist/actions/batch/get-wallet-capabilities.js +60 -0
- package/dist/actions/batch/get-wallet-capabilities.js.map +1 -0
- package/dist/actions/batch/index.d.ts +10 -0
- package/dist/actions/batch/prepare-calls.d.ts +8 -0
- package/dist/actions/batch/prepare-calls.d.ts.map +1 -0
- package/dist/actions/batch/prepare-calls.js +11 -0
- package/dist/actions/batch/prepare-calls.js.map +1 -0
- package/dist/actions/batch/read-batch.d.ts +33 -0
- package/dist/actions/batch/read-batch.d.ts.map +1 -0
- package/dist/actions/batch/read-batch.js +55 -0
- package/dist/actions/batch/read-batch.js.map +1 -0
- package/dist/actions/batch/resume-calls.d.ts +8 -0
- package/dist/actions/batch/resume-calls.d.ts.map +1 -0
- package/dist/actions/batch/resume-calls.js +17 -0
- package/dist/actions/batch/resume-calls.js.map +1 -0
- package/dist/actions/batch/send-calls.d.ts +8 -0
- package/dist/actions/batch/send-calls.d.ts.map +1 -0
- package/dist/actions/batch/send-calls.js +28 -0
- package/dist/actions/batch/send-calls.js.map +1 -0
- package/dist/actions/batch/simulate-calls.d.ts +8 -0
- package/dist/actions/batch/simulate-calls.d.ts.map +1 -0
- package/dist/actions/batch/simulate-calls.js +22 -0
- package/dist/actions/batch/simulate-calls.js.map +1 -0
- package/dist/actions/capabilities/get-name-capabilities/index.d.ts +127 -0
- package/dist/actions/capabilities/get-name-capabilities/index.d.ts.map +1 -0
- package/dist/actions/capabilities/get-name-capabilities/index.js +65 -0
- package/dist/actions/capabilities/get-name-capabilities/index.js.map +1 -0
- package/dist/actions/capabilities/get-operator-approval/index.d.ts +24 -0
- package/dist/actions/capabilities/get-operator-approval/index.d.ts.map +1 -0
- package/dist/actions/capabilities/get-operator-approval/index.js +108 -0
- package/dist/actions/capabilities/get-operator-approval/index.js.map +1 -0
- package/dist/actions/capabilities/get-record-permissions/index.d.ts +86 -0
- package/dist/actions/capabilities/get-record-permissions/index.d.ts.map +1 -0
- package/dist/actions/capabilities/get-record-permissions/index.js +160 -0
- package/dist/actions/capabilities/get-record-permissions/index.js.map +1 -0
- package/dist/actions/capabilities/get-registry-capabilities/index.d.ts +24 -0
- package/dist/actions/capabilities/get-registry-capabilities/index.d.ts.map +1 -0
- package/dist/actions/capabilities/get-registry-capabilities/index.js +64 -0
- package/dist/actions/capabilities/get-registry-capabilities/index.js.map +1 -0
- package/dist/actions/capabilities/get-registry-roles/index.d.ts +21 -0
- package/dist/actions/capabilities/get-registry-roles/index.d.ts.map +1 -0
- package/dist/actions/capabilities/get-registry-roles/index.js +32 -0
- package/dist/actions/capabilities/get-registry-roles/index.js.map +1 -0
- package/dist/actions/capabilities/get-required-authorization/index.d.ts +148 -0
- package/dist/actions/capabilities/get-required-authorization/index.d.ts.map +1 -0
- package/dist/actions/capabilities/get-required-authorization/index.js +183 -0
- package/dist/actions/capabilities/get-required-authorization/index.js.map +1 -0
- package/dist/actions/capabilities/get-resolver-capabilities/index.d.ts +29 -0
- package/dist/actions/capabilities/get-resolver-capabilities/index.d.ts.map +1 -0
- package/dist/actions/capabilities/get-resolver-capabilities/index.js +71 -0
- package/dist/actions/capabilities/get-resolver-capabilities/index.js.map +1 -0
- package/dist/actions/capabilities/get-resolver-delegate-approval/index.d.ts +26 -0
- package/dist/actions/capabilities/get-resolver-delegate-approval/index.d.ts.map +1 -0
- package/dist/actions/capabilities/get-resolver-delegate-approval/index.js +50 -0
- package/dist/actions/capabilities/get-resolver-delegate-approval/index.js.map +1 -0
- package/dist/actions/capabilities/get-resolver-roles/index.d.ts +25 -0
- package/dist/actions/capabilities/get-resolver-roles/index.d.ts.map +1 -0
- package/dist/actions/capabilities/get-resolver-roles/index.js +35 -0
- package/dist/actions/capabilities/get-resolver-roles/index.js.map +1 -0
- package/dist/actions/capabilities/get-token-approval/index.d.ts +21 -0
- package/dist/actions/capabilities/get-token-approval/index.d.ts.map +1 -0
- package/dist/actions/capabilities/get-token-approval/index.js +73 -0
- package/dist/actions/capabilities/get-token-approval/index.js.map +1 -0
- package/dist/actions/capabilities/get-wrapper-permissions/index.d.ts +41 -0
- package/dist/actions/capabilities/get-wrapper-permissions/index.d.ts.map +1 -0
- package/dist/actions/capabilities/get-wrapper-permissions/index.js +131 -0
- package/dist/actions/capabilities/get-wrapper-permissions/index.js.map +1 -0
- package/dist/actions/capabilities/get-write-target/index.d.ts +68 -0
- package/dist/actions/capabilities/get-write-target/index.d.ts.map +1 -0
- package/dist/actions/capabilities/get-write-target/index.js +94 -0
- package/dist/actions/capabilities/get-write-target/index.js.map +1 -0
- package/dist/actions/capabilities/has-registry-roles/index.d.ts +25 -0
- package/dist/actions/capabilities/has-registry-roles/index.d.ts.map +1 -0
- package/dist/actions/capabilities/has-registry-roles/index.js +37 -0
- package/dist/actions/capabilities/has-registry-roles/index.js.map +1 -0
- package/dist/actions/capabilities/has-resolver-roles/index.d.ts +27 -0
- package/dist/actions/capabilities/has-resolver-roles/index.d.ts.map +1 -0
- package/dist/actions/capabilities/has-resolver-roles/index.js +49 -0
- package/dist/actions/capabilities/has-resolver-roles/index.js.map +1 -0
- package/dist/actions/capabilities/index.d.ts +16 -0
- package/dist/actions/capabilities/types.d.ts +790 -0
- package/dist/actions/capabilities/types.d.ts.map +1 -0
- package/dist/actions/capabilities/types.js +320 -0
- package/dist/actions/capabilities/types.js.map +1 -0
- package/dist/actions/dns/claim-dns-name/index.d.ts +9 -0
- package/dist/actions/dns/claim-dns-name/index.d.ts.map +1 -0
- package/dist/actions/dns/claim-dns-name/index.js +63 -0
- package/dist/actions/dns/claim-dns-name/index.js.map +1 -0
- package/dist/actions/dns/get-dns-claim-status/index.d.ts +26 -0
- package/dist/actions/dns/get-dns-claim-status/index.d.ts.map +1 -0
- package/dist/actions/dns/get-dns-claim-status/index.js +62 -0
- package/dist/actions/dns/get-dns-claim-status/index.js.map +1 -0
- package/dist/actions/dns/get-dns-import-plan/index.d.ts +32 -0
- package/dist/actions/dns/get-dns-import-plan/index.d.ts.map +1 -0
- package/dist/actions/dns/get-dns-import-plan/index.js +53 -0
- package/dist/actions/dns/get-dns-import-plan/index.js.map +1 -0
- package/dist/actions/dns/get-dns-record/index.d.ts +14 -0
- package/dist/actions/dns/get-dns-record/index.d.ts.map +1 -0
- package/dist/actions/dns/get-dns-record/index.js +30 -0
- package/dist/actions/dns/get-dns-record/index.js.map +1 -0
- package/dist/actions/dns/get-dns-records/index.d.ts +18 -0
- package/dist/actions/dns/get-dns-records/index.d.ts.map +1 -0
- package/dist/actions/dns/get-dns-records/index.js +34 -0
- package/dist/actions/dns/get-dns-records/index.js.map +1 -0
- package/dist/actions/dns/get-zone-hash/index.d.ts +16 -0
- package/dist/actions/dns/get-zone-hash/index.d.ts.map +1 -0
- package/dist/actions/dns/get-zone-hash/index.js +58 -0
- package/dist/actions/dns/get-zone-hash/index.js.map +1 -0
- package/dist/actions/dns/has-dns-records/index.d.ts +18 -0
- package/dist/actions/dns/has-dns-records/index.d.ts.map +1 -0
- package/dist/actions/dns/has-dns-records/index.js +61 -0
- package/dist/actions/dns/has-dns-records/index.js.map +1 -0
- package/dist/actions/dns/import-dns-name/index.d.ts +9 -0
- package/dist/actions/dns/import-dns-name/index.d.ts.map +1 -0
- package/dist/actions/dns/import-dns-name/index.js +82 -0
- package/dist/actions/dns/import-dns-name/index.js.map +1 -0
- package/dist/actions/dns/index.d.ts +14 -0
- package/dist/actions/dns/set-dns-records/index.d.ts +9 -0
- package/dist/actions/dns/set-dns-records/index.d.ts.map +1 -0
- package/dist/actions/dns/set-dns-records/index.js +35 -0
- package/dist/actions/dns/set-dns-records/index.js.map +1 -0
- package/dist/actions/dns/set-dns-records/types.d.ts +12 -0
- package/dist/actions/dns/set-dns-records/types.d.ts.map +1 -0
- package/dist/actions/dns/set-zone-hash/index.d.ts +9 -0
- package/dist/actions/dns/set-zone-hash/index.d.ts.map +1 -0
- package/dist/actions/dns/set-zone-hash/index.js +35 -0
- package/dist/actions/dns/set-zone-hash/index.js.map +1 -0
- package/dist/actions/dns/set-zone-hash/types.d.ts +12 -0
- package/dist/actions/dns/set-zone-hash/types.d.ts.map +1 -0
- package/dist/actions/dns/types.d.ts +145 -0
- package/dist/actions/dns/types.d.ts.map +1 -0
- package/dist/actions/dns/types.js +87 -0
- package/dist/actions/dns/types.js.map +1 -0
- package/dist/actions/events/get-ens-events/index.d.ts +33 -0
- package/dist/actions/events/get-ens-events/index.d.ts.map +1 -0
- package/dist/actions/events/get-ens-events/index.js +30 -0
- package/dist/actions/events/get-ens-events/index.js.map +1 -0
- package/dist/actions/events/get-name-history/index.d.ts +36 -0
- package/dist/actions/events/get-name-history/index.d.ts.map +1 -0
- package/dist/actions/events/get-name-history/index.js +17 -0
- package/dist/actions/events/get-name-history/index.js.map +1 -0
- package/dist/actions/events/index.d.ts +5 -0
- package/dist/actions/events/types.d.ts +89 -0
- package/dist/actions/events/types.d.ts.map +1 -0
- package/dist/actions/events/types.js +61 -0
- package/dist/actions/events/types.js.map +1 -0
- package/dist/actions/events/watch-ens-events/index.d.ts +12 -0
- package/dist/actions/events/watch-ens-events/index.d.ts.map +1 -0
- package/dist/actions/events/watch-ens-events/index.js +59 -0
- package/dist/actions/events/watch-ens-events/index.js.map +1 -0
- package/dist/actions/index.d.ts +199 -0
- package/dist/actions/migration/get-migration-eligibility/index.d.ts +71 -0
- package/dist/actions/migration/get-migration-eligibility/index.d.ts.map +1 -0
- package/dist/actions/migration/get-migration-eligibility/index.js +88 -0
- package/dist/actions/migration/get-migration-eligibility/index.js.map +1 -0
- package/dist/actions/migration/get-migration-plan/index.d.ts +70 -0
- package/dist/actions/migration/get-migration-plan/index.d.ts.map +1 -0
- package/dist/actions/migration/get-migration-plan/index.js +73 -0
- package/dist/actions/migration/get-migration-plan/index.js.map +1 -0
- package/dist/actions/migration/get-migration-status/index.d.ts +46 -0
- package/dist/actions/migration/get-migration-status/index.d.ts.map +1 -0
- package/dist/actions/migration/get-migration-status/index.js +124 -0
- package/dist/actions/migration/get-migration-status/index.js.map +1 -0
- package/dist/actions/migration/get-migration-target/index.d.ts +22 -0
- package/dist/actions/migration/get-migration-target/index.d.ts.map +1 -0
- package/dist/actions/migration/get-migration-target/index.js +65 -0
- package/dist/actions/migration/get-migration-target/index.js.map +1 -0
- package/dist/actions/migration/index.d.ts +9 -0
- package/dist/actions/migration/migrate-name/index.d.ts +9 -0
- package/dist/actions/migration/migrate-name/index.d.ts.map +1 -0
- package/dist/actions/migration/migrate-name/index.js +145 -0
- package/dist/actions/migration/migrate-name/index.js.map +1 -0
- package/dist/actions/migration/migrate-names/index.d.ts +9 -0
- package/dist/actions/migration/migrate-names/index.d.ts.map +1 -0
- package/dist/actions/migration/migrate-names/index.js +210 -0
- package/dist/actions/migration/migrate-names/index.js.map +1 -0
- package/dist/actions/migration/mutation.d.ts +10 -0
- package/dist/actions/migration/mutation.d.ts.map +1 -0
- package/dist/actions/migration/mutation.js +210 -0
- package/dist/actions/migration/mutation.js.map +1 -0
- package/dist/actions/migration/types.d.ts +267 -0
- package/dist/actions/migration/types.d.ts.map +1 -0
- package/dist/actions/migration/types.js +145 -0
- package/dist/actions/migration/types.js.map +1 -0
- package/dist/actions/name/get-canonical-resource/index.d.ts +9 -0
- package/dist/actions/name/get-canonical-resource/index.d.ts.map +1 -0
- package/dist/actions/name/get-canonical-resource/index.js +20 -0
- package/dist/actions/name/get-canonical-resource/index.js.map +1 -0
- package/dist/actions/name/get-expiry/index.d.ts +15 -0
- package/dist/actions/name/get-expiry/index.d.ts.map +1 -0
- package/dist/actions/name/get-expiry/index.js +34 -0
- package/dist/actions/name/get-expiry/index.js.map +1 -0
- package/dist/actions/name/get-expiry/route.js +131 -0
- package/dist/actions/name/get-expiry/route.js.map +1 -0
- package/dist/actions/name/get-expiry/types.d.ts +25 -0
- package/dist/actions/name/get-expiry/types.d.ts.map +1 -0
- package/dist/actions/name/get-expiry/types.js +22 -0
- package/dist/actions/name/get-expiry/types.js.map +1 -0
- package/dist/actions/name/get-expiry/v1.js +49 -0
- package/dist/actions/name/get-expiry/v1.js.map +1 -0
- package/dist/actions/name/get-expiry/v2.js +60 -0
- package/dist/actions/name/get-expiry/v2.js.map +1 -0
- package/dist/actions/name/get-manager/index.d.ts +10 -0
- package/dist/actions/name/get-manager/index.d.ts.map +1 -0
- package/dist/actions/name/get-manager/index.js +21 -0
- package/dist/actions/name/get-manager/index.js.map +1 -0
- package/dist/actions/name/get-name-state/index.d.ts +116 -0
- package/dist/actions/name/get-name-state/index.d.ts.map +1 -0
- package/dist/actions/name/get-name-state/index.js +104 -0
- package/dist/actions/name/get-name-state/index.js.map +1 -0
- package/dist/actions/name/get-name-state/types.d.ts +240 -0
- package/dist/actions/name/get-name-state/types.d.ts.map +1 -0
- package/dist/actions/name/get-name-state/types.js +83 -0
- package/dist/actions/name/get-name-state/types.js.map +1 -0
- package/dist/actions/name/get-name-status/index.d.ts +8 -0
- package/dist/actions/name/get-name-status/index.d.ts.map +1 -0
- package/dist/actions/name/get-name-status/index.js +41 -0
- package/dist/actions/name/get-name-status/index.js.map +1 -0
- package/dist/actions/name/get-owner/index.d.ts +14 -0
- package/dist/actions/name/get-owner/index.d.ts.map +1 -0
- package/dist/actions/name/get-owner/index.js +34 -0
- package/dist/actions/name/get-owner/index.js.map +1 -0
- package/dist/actions/name/get-owner/route.js +105 -0
- package/dist/actions/name/get-owner/route.js.map +1 -0
- package/dist/actions/name/get-owner/types.d.ts +25 -0
- package/dist/actions/name/get-owner/types.d.ts.map +1 -0
- package/dist/actions/name/get-owner/types.js +22 -0
- package/dist/actions/name/get-owner/types.js.map +1 -0
- package/dist/actions/name/get-owner/v1.js +124 -0
- package/dist/actions/name/get-owner/v1.js.map +1 -0
- package/dist/actions/name/get-owner/v2.js +28 -0
- package/dist/actions/name/get-owner/v2.js.map +1 -0
- package/dist/actions/name/get-protocol/index.d.ts +10 -0
- package/dist/actions/name/get-protocol/index.d.ts.map +1 -0
- package/dist/actions/name/get-protocol/index.js +16 -0
- package/dist/actions/name/get-protocol/index.js.map +1 -0
- package/dist/actions/name/get-registrant/index.d.ts +10 -0
- package/dist/actions/name/get-registrant/index.d.ts.map +1 -0
- package/dist/actions/name/get-registrant/index.js +37 -0
- package/dist/actions/name/get-registrant/index.js.map +1 -0
- package/dist/actions/name/get-registry/index.d.ts +10 -0
- package/dist/actions/name/get-registry/index.d.ts.map +1 -0
- package/dist/actions/name/get-registry/index.js +20 -0
- package/dist/actions/name/get-registry/index.js.map +1 -0
- package/dist/actions/name/get-token-id/index.d.ts +9 -0
- package/dist/actions/name/get-token-id/index.d.ts.map +1 -0
- package/dist/actions/name/get-token-id/index.js +42 -0
- package/dist/actions/name/get-token-id/index.js.map +1 -0
- package/dist/actions/name/index.d.ts +19 -0
- package/dist/actions/name/is-available/index.d.ts +8 -0
- package/dist/actions/name/is-available/index.d.ts.map +1 -0
- package/dist/actions/name/is-available/index.js +46 -0
- package/dist/actions/name/is-available/index.js.map +1 -0
- package/dist/actions/name/is-migrated/index.d.ts +8 -0
- package/dist/actions/name/is-migrated/index.d.ts.map +1 -0
- package/dist/actions/name/is-migrated/index.js +28 -0
- package/dist/actions/name/is-migrated/index.js.map +1 -0
- package/dist/actions/name/is-renewable/index.d.ts +8 -0
- package/dist/actions/name/is-renewable/index.d.ts.map +1 -0
- package/dist/actions/name/is-renewable/index.js +44 -0
- package/dist/actions/name/is-renewable/index.js.map +1 -0
- package/dist/actions/name/is-reserved/index.d.ts +8 -0
- package/dist/actions/name/is-reserved/index.d.ts.map +1 -0
- package/dist/actions/name/is-reserved/index.js +16 -0
- package/dist/actions/name/is-reserved/index.js.map +1 -0
- package/dist/actions/name/is-wrapped/index.d.ts +8 -0
- package/dist/actions/name/is-wrapped/index.d.ts.map +1 -0
- package/dist/actions/name/is-wrapped/index.js +48 -0
- package/dist/actions/name/is-wrapped/index.js.map +1 -0
- package/dist/actions/ownership/address.js +25 -0
- package/dist/actions/ownership/address.js.map +1 -0
- package/dist/actions/ownership/authorization.js +25 -0
- package/dist/actions/ownership/authorization.js.map +1 -0
- package/dist/actions/ownership/get-ttl/index.d.ts +9 -0
- package/dist/actions/ownership/get-ttl/index.d.ts.map +1 -0
- package/dist/actions/ownership/get-ttl/index.js +38 -0
- package/dist/actions/ownership/get-ttl/index.js.map +1 -0
- package/dist/actions/ownership/index.d.ts +9 -0
- package/dist/actions/ownership/reclaim-name/index.d.ts +9 -0
- package/dist/actions/ownership/reclaim-name/index.d.ts.map +1 -0
- package/dist/actions/ownership/reclaim-name/index.js +40 -0
- package/dist/actions/ownership/reclaim-name/index.js.map +1 -0
- package/dist/actions/ownership/registrar-target.js +26 -0
- package/dist/actions/ownership/registrar-target.js.map +1 -0
- package/dist/actions/ownership/set-manager/index.d.ts +9 -0
- package/dist/actions/ownership/set-manager/index.d.ts.map +1 -0
- package/dist/actions/ownership/set-manager/index.js +49 -0
- package/dist/actions/ownership/set-manager/index.js.map +1 -0
- package/dist/actions/ownership/set-ttl/index.d.ts +9 -0
- package/dist/actions/ownership/set-ttl/index.d.ts.map +1 -0
- package/dist/actions/ownership/set-ttl/index.js +52 -0
- package/dist/actions/ownership/set-ttl/index.js.map +1 -0
- package/dist/actions/ownership/transfer-name/index.d.ts +10 -0
- package/dist/actions/ownership/transfer-name/index.d.ts.map +1 -0
- package/dist/actions/ownership/transfer-name/index.js +111 -0
- package/dist/actions/ownership/transfer-name/index.js.map +1 -0
- package/dist/actions/ownership/transfer-registrant/index.d.ts +9 -0
- package/dist/actions/ownership/transfer-registrant/index.d.ts.map +1 -0
- package/dist/actions/ownership/transfer-registrant/index.js +44 -0
- package/dist/actions/ownership/transfer-registrant/index.js.map +1 -0
- package/dist/actions/ownership/transfer-token.js +51 -0
- package/dist/actions/ownership/transfer-token.js.map +1 -0
- package/dist/actions/ownership/types.d.ts +58 -0
- package/dist/actions/ownership/types.d.ts.map +1 -0
- package/dist/actions/permissions/address.js +16 -0
- package/dist/actions/permissions/address.js.map +1 -0
- package/dist/actions/permissions/index.d.ts +13 -0
- package/dist/actions/permissions/name-approval/index.d.ts +10 -0
- package/dist/actions/permissions/name-approval/index.d.ts.map +1 -0
- package/dist/actions/permissions/name-approval/index.js +52 -0
- package/dist/actions/permissions/name-approval/index.js.map +1 -0
- package/dist/actions/permissions/name-approval/types.d.ts +19 -0
- package/dist/actions/permissions/name-approval/types.d.ts.map +1 -0
- package/dist/actions/permissions/operator-approval/index.d.ts +9 -0
- package/dist/actions/permissions/operator-approval/index.d.ts.map +1 -0
- package/dist/actions/permissions/operator-approval/index.js +48 -0
- package/dist/actions/permissions/operator-approval/index.js.map +1 -0
- package/dist/actions/permissions/operator-approval/types.d.ts +16 -0
- package/dist/actions/permissions/operator-approval/types.d.ts.map +1 -0
- package/dist/actions/permissions/registry-roles/index.d.ts +10 -0
- package/dist/actions/permissions/registry-roles/index.d.ts.map +1 -0
- package/dist/actions/permissions/registry-roles/index.js +51 -0
- package/dist/actions/permissions/registry-roles/index.js.map +1 -0
- package/dist/actions/permissions/registry-roles/types.d.ts +19 -0
- package/dist/actions/permissions/registry-roles/types.d.ts.map +1 -0
- package/dist/actions/permissions/resolver-delegate-approval/index.d.ts +9 -0
- package/dist/actions/permissions/resolver-delegate-approval/index.d.ts.map +1 -0
- package/dist/actions/permissions/resolver-delegate-approval/index.js +53 -0
- package/dist/actions/permissions/resolver-delegate-approval/index.js.map +1 -0
- package/dist/actions/permissions/resolver-delegate-approval/types.d.ts +14 -0
- package/dist/actions/permissions/resolver-delegate-approval/types.d.ts.map +1 -0
- package/dist/actions/permissions/resolver-roles/index.d.ts +12 -0
- package/dist/actions/permissions/resolver-roles/index.d.ts.map +1 -0
- package/dist/actions/permissions/resolver-roles/index.js +125 -0
- package/dist/actions/permissions/resolver-roles/index.js.map +1 -0
- package/dist/actions/permissions/resolver-roles/types.d.ts +34 -0
- package/dist/actions/permissions/resolver-roles/types.d.ts.map +1 -0
- package/dist/actions/permissions/roles.js +13 -0
- package/dist/actions/permissions/roles.js.map +1 -0
- package/dist/actions/permissions/set-record-permissions/index.d.ts +9 -0
- package/dist/actions/permissions/set-record-permissions/index.d.ts.map +1 -0
- package/dist/actions/permissions/set-record-permissions/index.js +122 -0
- package/dist/actions/permissions/set-record-permissions/index.js.map +1 -0
- package/dist/actions/permissions/set-record-permissions/types.d.ts +48 -0
- package/dist/actions/permissions/set-record-permissions/types.d.ts.map +1 -0
- package/dist/actions/records/clear-records/index.d.ts +9 -0
- package/dist/actions/records/clear-records/index.d.ts.map +1 -0
- package/dist/actions/records/clear-records/index.js +27 -0
- package/dist/actions/records/clear-records/index.js.map +1 -0
- package/dist/actions/records/clear-records/types.d.ts +10 -0
- package/dist/actions/records/clear-records/types.d.ts.map +1 -0
- package/dist/actions/records/get-abi/index.d.ts +20 -0
- package/dist/actions/records/get-abi/index.d.ts.map +1 -0
- package/dist/actions/records/get-abi/index.js +23 -0
- package/dist/actions/records/get-abi/index.js.map +1 -0
- package/dist/actions/records/get-abi/resolve.js +116 -0
- package/dist/actions/records/get-abi/resolve.js.map +1 -0
- package/dist/actions/records/get-abi/types.d.ts +30 -0
- package/dist/actions/records/get-abi/types.d.ts.map +1 -0
- package/dist/actions/records/get-abi/types.js +32 -0
- package/dist/actions/records/get-abi/types.js.map +1 -0
- package/dist/actions/records/get-address/index.d.ts +25 -0
- package/dist/actions/records/get-address/index.d.ts.map +1 -0
- package/dist/actions/records/get-address/index.js +31 -0
- package/dist/actions/records/get-address/index.js.map +1 -0
- package/dist/actions/records/get-address/resolve.js +107 -0
- package/dist/actions/records/get-address/resolve.js.map +1 -0
- package/dist/actions/records/get-address/types.d.ts +30 -0
- package/dist/actions/records/get-address/types.d.ts.map +1 -0
- package/dist/actions/records/get-address/types.js +20 -0
- package/dist/actions/records/get-address/types.js.map +1 -0
- package/dist/actions/records/get-avatar/index.d.ts +16 -0
- package/dist/actions/records/get-avatar/index.d.ts.map +1 -0
- package/dist/actions/records/get-avatar/index.js +20 -0
- package/dist/actions/records/get-avatar/index.js.map +1 -0
- package/dist/actions/records/get-avatar/resolve.js +39 -0
- package/dist/actions/records/get-avatar/resolve.js.map +1 -0
- package/dist/actions/records/get-avatar/types.d.ts +27 -0
- package/dist/actions/records/get-avatar/types.d.ts.map +1 -0
- package/dist/actions/records/get-avatar/types.js +16 -0
- package/dist/actions/records/get-avatar/types.js.map +1 -0
- package/dist/actions/records/get-content-hash/index.d.ts +16 -0
- package/dist/actions/records/get-content-hash/index.d.ts.map +1 -0
- package/dist/actions/records/get-content-hash/index.js +17 -0
- package/dist/actions/records/get-content-hash/index.js.map +1 -0
- package/dist/actions/records/get-content-hash/resolve.js +69 -0
- package/dist/actions/records/get-content-hash/resolve.js.map +1 -0
- package/dist/actions/records/get-content-hash/types.d.ts +24 -0
- package/dist/actions/records/get-content-hash/types.d.ts.map +1 -0
- package/dist/actions/records/get-content-hash/types.js +19 -0
- package/dist/actions/records/get-content-hash/types.js.map +1 -0
- package/dist/actions/records/get-data/index.d.ts +11 -0
- package/dist/actions/records/get-data/index.d.ts.map +1 -0
- package/dist/actions/records/get-data/index.js +17 -0
- package/dist/actions/records/get-data/index.js.map +1 -0
- package/dist/actions/records/get-data/resolve.js +57 -0
- package/dist/actions/records/get-data/resolve.js.map +1 -0
- package/dist/actions/records/get-data/types.d.ts +20 -0
- package/dist/actions/records/get-data/types.d.ts.map +1 -0
- package/dist/actions/records/get-data/types.js +12 -0
- package/dist/actions/records/get-data/types.js.map +1 -0
- package/dist/actions/records/get-interface/index.d.ts +11 -0
- package/dist/actions/records/get-interface/index.d.ts.map +1 -0
- package/dist/actions/records/get-interface/index.js +17 -0
- package/dist/actions/records/get-interface/index.js.map +1 -0
- package/dist/actions/records/get-interface/resolve.js +66 -0
- package/dist/actions/records/get-interface/resolve.js.map +1 -0
- package/dist/actions/records/get-interface/types.d.ts +20 -0
- package/dist/actions/records/get-interface/types.d.ts.map +1 -0
- package/dist/actions/records/get-interface/types.js +13 -0
- package/dist/actions/records/get-interface/types.js.map +1 -0
- package/dist/actions/records/get-name/index.d.ts +10 -0
- package/dist/actions/records/get-name/index.d.ts.map +1 -0
- package/dist/actions/records/get-name/index.js +17 -0
- package/dist/actions/records/get-name/index.js.map +1 -0
- package/dist/actions/records/get-name/resolve.js +47 -0
- package/dist/actions/records/get-name/resolve.js.map +1 -0
- package/dist/actions/records/get-name/types.d.ts +18 -0
- package/dist/actions/records/get-name/types.d.ts.map +1 -0
- package/dist/actions/records/get-name/types.js +8 -0
- package/dist/actions/records/get-name/types.js.map +1 -0
- package/dist/actions/records/get-pubkey/index.d.ts +11 -0
- package/dist/actions/records/get-pubkey/index.d.ts.map +1 -0
- package/dist/actions/records/get-pubkey/index.js +17 -0
- package/dist/actions/records/get-pubkey/index.js.map +1 -0
- package/dist/actions/records/get-pubkey/resolve.js +60 -0
- package/dist/actions/records/get-pubkey/resolve.js.map +1 -0
- package/dist/actions/records/get-pubkey/types.d.ts +19 -0
- package/dist/actions/records/get-pubkey/types.d.ts.map +1 -0
- package/dist/actions/records/get-pubkey/types.js +12 -0
- package/dist/actions/records/get-pubkey/types.js.map +1 -0
- package/dist/actions/records/get-records/index.d.ts +6 -0
- package/dist/actions/records/get-records/index.d.ts.map +1 -0
- package/dist/actions/records/get-records/index.js +16 -0
- package/dist/actions/records/get-records/index.js.map +1 -0
- package/dist/actions/records/get-records/resolve.js +562 -0
- package/dist/actions/records/get-records/resolve.js.map +1 -0
- package/dist/actions/records/get-records/types.d.ts +54 -0
- package/dist/actions/records/get-records/types.d.ts.map +1 -0
- package/dist/actions/records/get-text/index.d.ts +15 -0
- package/dist/actions/records/get-text/index.d.ts.map +1 -0
- package/dist/actions/records/get-text/index.js +31 -0
- package/dist/actions/records/get-text/index.js.map +1 -0
- package/dist/actions/records/get-text/resolve.js +72 -0
- package/dist/actions/records/get-text/resolve.js.map +1 -0
- package/dist/actions/records/get-text/types.d.ts +25 -0
- package/dist/actions/records/get-text/types.d.ts.map +1 -0
- package/dist/actions/records/get-text/types.js +11 -0
- package/dist/actions/records/get-text/types.js.map +1 -0
- package/dist/actions/records/index.d.ts +47 -0
- package/dist/actions/records/set-abi/index.d.ts +9 -0
- package/dist/actions/records/set-abi/index.d.ts.map +1 -0
- package/dist/actions/records/set-abi/index.js +57 -0
- package/dist/actions/records/set-abi/index.js.map +1 -0
- package/dist/actions/records/set-abi/types.d.ts +17 -0
- package/dist/actions/records/set-abi/types.d.ts.map +1 -0
- package/dist/actions/records/set-address/index.d.ts +10 -0
- package/dist/actions/records/set-address/index.d.ts.map +1 -0
- package/dist/actions/records/set-address/index.js +63 -0
- package/dist/actions/records/set-address/index.js.map +1 -0
- package/dist/actions/records/set-address/types.d.ts +22 -0
- package/dist/actions/records/set-address/types.d.ts.map +1 -0
- package/dist/actions/records/set-alias/index.d.ts +9 -0
- package/dist/actions/records/set-alias/index.d.ts.map +1 -0
- package/dist/actions/records/set-alias/index.js +32 -0
- package/dist/actions/records/set-alias/index.js.map +1 -0
- package/dist/actions/records/set-alias/types.d.ts +11 -0
- package/dist/actions/records/set-alias/types.d.ts.map +1 -0
- package/dist/actions/records/set-avatar/index.d.ts +10 -0
- package/dist/actions/records/set-avatar/index.d.ts.map +1 -0
- package/dist/actions/records/set-avatar/index.js +43 -0
- package/dist/actions/records/set-avatar/index.js.map +1 -0
- package/dist/actions/records/set-avatar/types.d.ts +16 -0
- package/dist/actions/records/set-avatar/types.d.ts.map +1 -0
- package/dist/actions/records/set-content-hash/index.d.ts +9 -0
- package/dist/actions/records/set-content-hash/index.d.ts.map +1 -0
- package/dist/actions/records/set-content-hash/index.js +32 -0
- package/dist/actions/records/set-content-hash/index.js.map +1 -0
- package/dist/actions/records/set-content-hash/types.d.ts +13 -0
- package/dist/actions/records/set-content-hash/types.d.ts.map +1 -0
- package/dist/actions/records/set-data/index.d.ts +9 -0
- package/dist/actions/records/set-data/index.d.ts.map +1 -0
- package/dist/actions/records/set-data/index.js +42 -0
- package/dist/actions/records/set-data/index.js.map +1 -0
- package/dist/actions/records/set-data/types.d.ts +13 -0
- package/dist/actions/records/set-data/types.d.ts.map +1 -0
- package/dist/actions/records/set-interface/index.d.ts +9 -0
- package/dist/actions/records/set-interface/index.d.ts.map +1 -0
- package/dist/actions/records/set-interface/index.js +50 -0
- package/dist/actions/records/set-interface/index.js.map +1 -0
- package/dist/actions/records/set-interface/types.d.ts +12 -0
- package/dist/actions/records/set-interface/types.d.ts.map +1 -0
- package/dist/actions/records/set-name/index.d.ts +9 -0
- package/dist/actions/records/set-name/index.d.ts.map +1 -0
- package/dist/actions/records/set-name/index.js +31 -0
- package/dist/actions/records/set-name/index.js.map +1 -0
- package/dist/actions/records/set-name/types.d.ts +11 -0
- package/dist/actions/records/set-name/types.d.ts.map +1 -0
- package/dist/actions/records/set-pubkey/index.d.ts +9 -0
- package/dist/actions/records/set-pubkey/index.d.ts.map +1 -0
- package/dist/actions/records/set-pubkey/index.js +39 -0
- package/dist/actions/records/set-pubkey/index.js.map +1 -0
- package/dist/actions/records/set-pubkey/types.d.ts +13 -0
- package/dist/actions/records/set-pubkey/types.d.ts.map +1 -0
- package/dist/actions/records/set-records/index.d.ts +8 -0
- package/dist/actions/records/set-records/index.d.ts.map +1 -0
- package/dist/actions/records/set-records/index.js +177 -0
- package/dist/actions/records/set-records/index.js.map +1 -0
- package/dist/actions/records/set-records/types.d.ts +70 -0
- package/dist/actions/records/set-records/types.d.ts.map +1 -0
- package/dist/actions/records/set-text/index.d.ts +9 -0
- package/dist/actions/records/set-text/index.d.ts.map +1 -0
- package/dist/actions/records/set-text/index.js +34 -0
- package/dist/actions/records/set-text/index.js.map +1 -0
- package/dist/actions/records/set-text/types.d.ts +12 -0
- package/dist/actions/records/set-text/types.d.ts.map +1 -0
- package/dist/actions/records/set-texts/index.d.ts +9 -0
- package/dist/actions/records/set-texts/index.d.ts.map +1 -0
- package/dist/actions/records/set-texts/index.js +41 -0
- package/dist/actions/records/set-texts/index.js.map +1 -0
- package/dist/actions/records/set-texts/types.d.ts +15 -0
- package/dist/actions/records/set-texts/types.d.ts.map +1 -0
- package/dist/actions/registration/get-commitment-status/index.d.ts +36 -0
- package/dist/actions/registration/get-commitment-status/index.d.ts.map +1 -0
- package/dist/actions/registration/get-commitment-status/index.js +66 -0
- package/dist/actions/registration/get-commitment-status/index.js.map +1 -0
- package/dist/actions/registration/get-registration-parameters/index.d.ts +33 -0
- package/dist/actions/registration/get-registration-parameters/index.d.ts.map +1 -0
- package/dist/actions/registration/get-registration-parameters/index.js +96 -0
- package/dist/actions/registration/get-registration-parameters/index.js.map +1 -0
- package/dist/actions/registration/get-registration-plan/index.d.ts +113 -0
- package/dist/actions/registration/get-registration-plan/index.d.ts.map +1 -0
- package/dist/actions/registration/get-registration-plan/index.js +47 -0
- package/dist/actions/registration/get-registration-plan/index.js.map +1 -0
- package/dist/actions/registration/get-registration-price/index.d.ts +41 -0
- package/dist/actions/registration/get-registration-price/index.d.ts.map +1 -0
- package/dist/actions/registration/get-registration-price/index.js +98 -0
- package/dist/actions/registration/get-registration-price/index.js.map +1 -0
- package/dist/actions/registration/get-renewal-price/index.d.ts +40 -0
- package/dist/actions/registration/get-renewal-price/index.d.ts.map +1 -0
- package/dist/actions/registration/get-renewal-price/index.js +99 -0
- package/dist/actions/registration/get-renewal-price/index.js.map +1 -0
- package/dist/actions/registration/index.d.ts +15 -0
- package/dist/actions/registration/is-payment-token-supported/index.d.ts +28 -0
- package/dist/actions/registration/is-payment-token-supported/index.d.ts.map +1 -0
- package/dist/actions/registration/is-payment-token-supported/index.js +35 -0
- package/dist/actions/registration/is-payment-token-supported/index.js.map +1 -0
- package/dist/actions/registration/make-registration-commitment/index.d.ts +13 -0
- package/dist/actions/registration/make-registration-commitment/index.d.ts.map +1 -0
- package/dist/actions/registration/make-registration-commitment/index.js +70 -0
- package/dist/actions/registration/make-registration-commitment/index.js.map +1 -0
- package/dist/actions/registration/mutation.d.ts +11 -0
- package/dist/actions/registration/mutation.d.ts.map +1 -0
- package/dist/actions/registration/mutation.js +162 -0
- package/dist/actions/registration/mutation.js.map +1 -0
- package/dist/actions/registration/register-name/index.d.ts +9 -0
- package/dist/actions/registration/register-name/index.d.ts.map +1 -0
- package/dist/actions/registration/register-name/index.js +252 -0
- package/dist/actions/registration/register-name/index.js.map +1 -0
- package/dist/actions/registration/register-names/index.d.ts +9 -0
- package/dist/actions/registration/register-names/index.d.ts.map +1 -0
- package/dist/actions/registration/register-names/index.js +36 -0
- package/dist/actions/registration/register-names/index.js.map +1 -0
- package/dist/actions/registration/renew-name/index.d.ts +6 -0
- package/dist/actions/registration/renew-name/index.d.ts.map +1 -0
- package/dist/actions/registration/renew-name/index.js +139 -0
- package/dist/actions/registration/renew-name/index.js.map +1 -0
- package/dist/actions/registration/renew-names/index.d.ts +9 -0
- package/dist/actions/registration/renew-names/index.d.ts.map +1 -0
- package/dist/actions/registration/renew-names/index.js +207 -0
- package/dist/actions/registration/renew-names/index.js.map +1 -0
- package/dist/actions/registration/renewal-mutation.d.ts +10 -0
- package/dist/actions/registration/renewal-mutation.d.ts.map +1 -0
- package/dist/actions/registration/renewal-mutation.js +220 -0
- package/dist/actions/registration/renewal-mutation.js.map +1 -0
- package/dist/actions/registration/types.d.ts +418 -0
- package/dist/actions/registration/types.d.ts.map +1 -0
- package/dist/actions/registration/types.js +185 -0
- package/dist/actions/registration/types.js.map +1 -0
- package/dist/actions/resolution/create-resolver/index.d.ts +16 -0
- package/dist/actions/resolution/create-resolver/index.d.ts.map +1 -0
- package/dist/actions/resolution/create-resolver/index.js +77 -0
- package/dist/actions/resolution/create-resolver/index.js.map +1 -0
- package/dist/actions/resolution/create-resolver/prepare.d.ts +9 -0
- package/dist/actions/resolution/create-resolver/prepare.d.ts.map +1 -0
- package/dist/actions/resolution/create-resolver/prepare.js +69 -0
- package/dist/actions/resolution/create-resolver/prepare.js.map +1 -0
- package/dist/actions/resolution/create-resolver/types.d.ts +28 -0
- package/dist/actions/resolution/create-resolver/types.d.ts.map +1 -0
- package/dist/actions/resolution/get-alias/index.d.ts +19 -0
- package/dist/actions/resolution/get-alias/index.d.ts.map +1 -0
- package/dist/actions/resolution/get-alias/index.js +56 -0
- package/dist/actions/resolution/get-alias/index.js.map +1 -0
- package/dist/actions/resolution/get-alias/types.d.ts +25 -0
- package/dist/actions/resolution/get-alias/types.d.ts.map +1 -0
- package/dist/actions/resolution/get-alias/types.js +22 -0
- package/dist/actions/resolution/get-alias/types.js.map +1 -0
- package/dist/actions/resolution/get-or-create-resolver/index.d.ts +9 -0
- package/dist/actions/resolution/get-or-create-resolver/index.d.ts.map +1 -0
- package/dist/actions/resolution/get-or-create-resolver/index.js +51 -0
- package/dist/actions/resolution/get-or-create-resolver/index.js.map +1 -0
- package/dist/actions/resolution/get-or-create-resolver/types.d.ts +33 -0
- package/dist/actions/resolution/get-or-create-resolver/types.d.ts.map +1 -0
- package/dist/actions/resolution/get-resolver/find.js +34 -0
- package/dist/actions/resolution/get-resolver/find.js.map +1 -0
- package/dist/actions/resolution/get-resolver/index.d.ts +8 -0
- package/dist/actions/resolution/get-resolver/index.d.ts.map +1 -0
- package/dist/actions/resolution/get-resolver/index.js +16 -0
- package/dist/actions/resolution/get-resolver/index.js.map +1 -0
- package/dist/actions/resolution/get-resolver/types.d.ts +15 -0
- package/dist/actions/resolution/get-resolver/types.d.ts.map +1 -0
- package/dist/actions/resolution/get-resolver-version/index.d.ts +20 -0
- package/dist/actions/resolution/get-resolver-version/index.d.ts.map +1 -0
- package/dist/actions/resolution/get-resolver-version/index.js +45 -0
- package/dist/actions/resolution/get-resolver-version/index.js.map +1 -0
- package/dist/actions/resolution/get-resolver-version/types.d.ts +23 -0
- package/dist/actions/resolution/get-resolver-version/types.d.ts.map +1 -0
- package/dist/actions/resolution/get-resolver-version/types.js +20 -0
- package/dist/actions/resolution/get-resolver-version/types.js.map +1 -0
- package/dist/actions/resolution/index.d.ts +21 -0
- package/dist/actions/resolution/resolve/execute.js +66 -0
- package/dist/actions/resolution/resolve/execute.js.map +1 -0
- package/dist/actions/resolution/resolve/index.d.ts +15 -0
- package/dist/actions/resolution/resolve/index.d.ts.map +1 -0
- package/dist/actions/resolution/resolve/index.js +28 -0
- package/dist/actions/resolution/resolve/index.js.map +1 -0
- package/dist/actions/resolution/resolve/types.d.ts +33 -0
- package/dist/actions/resolution/resolve/types.d.ts.map +1 -0
- package/dist/actions/resolution/resolve/types.js +17 -0
- package/dist/actions/resolution/resolve/types.js.map +1 -0
- package/dist/actions/resolution/resolve-batch/index.d.ts +10 -0
- package/dist/actions/resolution/resolve-batch/index.d.ts.map +1 -0
- package/dist/actions/resolution/resolve-batch/index.js +15 -0
- package/dist/actions/resolution/resolve-batch/index.js.map +1 -0
- package/dist/actions/resolution/resolve-batch/types.d.ts +22 -0
- package/dist/actions/resolution/resolve-batch/types.d.ts.map +1 -0
- package/dist/actions/resolution/set-resolver/index.d.ts +9 -0
- package/dist/actions/resolution/set-resolver/index.d.ts.map +1 -0
- package/dist/actions/resolution/set-resolver/index.js +85 -0
- package/dist/actions/resolution/set-resolver/index.js.map +1 -0
- package/dist/actions/resolution/set-resolver/types.d.ts +11 -0
- package/dist/actions/resolution/set-resolver/types.d.ts.map +1 -0
- package/dist/actions/resolution/set-resolver-and-records/index.d.ts +9 -0
- package/dist/actions/resolution/set-resolver-and-records/index.d.ts.map +1 -0
- package/dist/actions/resolution/set-resolver-and-records/index.js +160 -0
- package/dist/actions/resolution/set-resolver-and-records/index.js.map +1 -0
- package/dist/actions/resolution/set-resolver-and-records/types.d.ts +33 -0
- package/dist/actions/resolution/set-resolver-and-records/types.d.ts.map +1 -0
- package/dist/actions/resolution/upgrade-resolver/index.d.ts +14 -0
- package/dist/actions/resolution/upgrade-resolver/index.d.ts.map +1 -0
- package/dist/actions/resolution/upgrade-resolver/index.js +152 -0
- package/dist/actions/resolution/upgrade-resolver/index.js.map +1 -0
- package/dist/actions/resolution/upgrade-resolver/types.d.ts +33 -0
- package/dist/actions/resolution/upgrade-resolver/types.d.ts.map +1 -0
- package/dist/actions/reverse/authorization.js +70 -0
- package/dist/actions/reverse/authorization.js.map +1 -0
- package/dist/actions/reverse/clear-primary-name/index.d.ts +9 -0
- package/dist/actions/reverse/clear-primary-name/index.d.ts.map +1 -0
- package/dist/actions/reverse/clear-primary-name/index.js +8 -0
- package/dist/actions/reverse/clear-primary-name/index.js.map +1 -0
- package/dist/actions/reverse/get-primary-name/index.d.ts +11 -0
- package/dist/actions/reverse/get-primary-name/index.d.ts.map +1 -0
- package/dist/actions/reverse/get-primary-name/index.js +51 -0
- package/dist/actions/reverse/get-primary-name/index.js.map +1 -0
- package/dist/actions/reverse/get-primary-name/types.d.ts +20 -0
- package/dist/actions/reverse/get-primary-name/types.d.ts.map +1 -0
- package/dist/actions/reverse/get-primary-name/types.js +12 -0
- package/dist/actions/reverse/get-primary-name/types.js.map +1 -0
- package/dist/actions/reverse/index.d.ts +8 -0
- package/dist/actions/reverse/mutation.js +89 -0
- package/dist/actions/reverse/mutation.js.map +1 -0
- package/dist/actions/reverse/set-contract-primary-name/index.d.ts +9 -0
- package/dist/actions/reverse/set-contract-primary-name/index.d.ts.map +1 -0
- package/dist/actions/reverse/set-contract-primary-name/index.js +13 -0
- package/dist/actions/reverse/set-contract-primary-name/index.js.map +1 -0
- package/dist/actions/reverse/set-primary-name/index.d.ts +9 -0
- package/dist/actions/reverse/set-primary-name/index.d.ts.map +1 -0
- package/dist/actions/reverse/set-primary-name/index.js +11 -0
- package/dist/actions/reverse/set-primary-name/index.js.map +1 -0
- package/dist/actions/reverse/set-primary-name-for-address/index.d.ts +9 -0
- package/dist/actions/reverse/set-primary-name-for-address/index.d.ts.map +1 -0
- package/dist/actions/reverse/set-primary-name-for-address/index.js +12 -0
- package/dist/actions/reverse/set-primary-name-for-address/index.js.map +1 -0
- package/dist/actions/reverse/types.d.ts +18 -0
- package/dist/actions/reverse/types.d.ts.map +1 -0
- package/dist/actions/subnames/create-subname/index.d.ts +9 -0
- package/dist/actions/subnames/create-subname/index.d.ts.map +1 -0
- package/dist/actions/subnames/create-subname/index.js +165 -0
- package/dist/actions/subnames/create-subname/index.js.map +1 -0
- package/dist/actions/subnames/index.d.ts +6 -0
- package/dist/actions/subnames/intents.js +148 -0
- package/dist/actions/subnames/intents.js.map +1 -0
- package/dist/actions/subnames/mutation.d.ts +12 -0
- package/dist/actions/subnames/mutation.d.ts.map +1 -0
- package/dist/actions/subnames/mutation.js +214 -0
- package/dist/actions/subnames/mutation.js.map +1 -0
- package/dist/actions/subnames/route.js +105 -0
- package/dist/actions/subnames/route.js.map +1 -0
- package/dist/actions/subnames/set-subname-record/index.d.ts +9 -0
- package/dist/actions/subnames/set-subname-record/index.d.ts.map +1 -0
- package/dist/actions/subnames/set-subname-record/index.js +72 -0
- package/dist/actions/subnames/set-subname-record/index.js.map +1 -0
- package/dist/actions/subnames/transfer-subname/index.d.ts +11 -0
- package/dist/actions/subnames/transfer-subname/index.d.ts.map +1 -0
- package/dist/actions/subnames/transfer-subname/index.js +15 -0
- package/dist/actions/subnames/transfer-subname/index.js.map +1 -0
- package/dist/actions/subnames/types.d.ts +70 -0
- package/dist/actions/subnames/types.d.ts.map +1 -0
- package/dist/actions/wrapping/extend-subname-expiry/index.d.ts +3 -0
- package/dist/actions/wrapping/fuse-mask.d.ts +14 -0
- package/dist/actions/wrapping/fuse-mask.d.ts.map +1 -0
- package/dist/actions/wrapping/fuse-mask.js +36 -0
- package/dist/actions/wrapping/fuse-mask.js.map +1 -0
- package/dist/actions/wrapping/get-fuses/index.d.ts +10 -0
- package/dist/actions/wrapping/get-fuses/index.d.ts.map +1 -0
- package/dist/actions/wrapping/get-fuses/index.js +28 -0
- package/dist/actions/wrapping/get-fuses/index.js.map +1 -0
- package/dist/actions/wrapping/get-wrapper-expiry/index.d.ts +10 -0
- package/dist/actions/wrapping/get-wrapper-expiry/index.d.ts.map +1 -0
- package/dist/actions/wrapping/get-wrapper-expiry/index.js +24 -0
- package/dist/actions/wrapping/get-wrapper-expiry/index.js.map +1 -0
- package/dist/actions/wrapping/index.d.ts +11 -0
- package/dist/actions/wrapping/intents.js +71 -0
- package/dist/actions/wrapping/intents.js.map +1 -0
- package/dist/actions/wrapping/mutation.d.ts +12 -0
- package/dist/actions/wrapping/mutation.d.ts.map +1 -0
- package/dist/actions/wrapping/mutation.js +174 -0
- package/dist/actions/wrapping/mutation.js.map +1 -0
- package/dist/actions/wrapping/route.js +63 -0
- package/dist/actions/wrapping/route.js.map +1 -0
- package/dist/actions/wrapping/set-child-fuses/index.d.ts +3 -0
- package/dist/actions/wrapping/set-fuses/index.d.ts +3 -0
- package/dist/actions/wrapping/types.d.ts +84 -0
- package/dist/actions/wrapping/types.d.ts.map +1 -0
- package/dist/actions/wrapping/unwrap-name/index.d.ts +3 -0
- package/dist/actions/wrapping/wrap-name/index.d.ts +9 -0
- package/dist/actions/wrapping/wrap-name/index.d.ts.map +1 -0
- package/dist/actions/wrapping/wrap-name/index.js +147 -0
- package/dist/actions/wrapping/wrap-name/index.js.map +1 -0
- package/dist/config/config.d.ts +52 -0
- package/dist/config/config.d.ts.map +1 -0
- package/dist/config/config.js +6 -0
- package/dist/config/config.js.map +1 -0
- package/dist/config/create-config.d.ts +6 -0
- package/dist/config/create-config.d.ts.map +1 -0
- package/dist/config/create-config.js +67 -0
- package/dist/config/create-config.js.map +1 -0
- package/dist/config/gateway-options.d.ts +19 -0
- package/dist/config/gateway-options.d.ts.map +1 -0
- package/dist/config/gateway-options.js +37 -0
- package/dist/config/gateway-options.js.map +1 -0
- package/dist/config/index.d.ts +7 -0
- package/dist/config/network.d.ts +8 -0
- package/dist/config/network.d.ts.map +1 -0
- package/dist/config/network.js +13 -0
- package/dist/config/network.js.map +1 -0
- package/dist/config/read-options.d.ts +13 -0
- package/dist/config/read-options.d.ts.map +1 -0
- package/dist/config/read-options.js +27 -0
- package/dist/config/read-options.js.map +1 -0
- package/dist/config/write-options.d.ts +26 -0
- package/dist/config/write-options.d.ts.map +1 -0
- package/dist/config/write-options.js +37 -0
- package/dist/config/write-options.js.map +1 -0
- package/dist/errors/authorization-error.d.ts +12 -0
- package/dist/errors/authorization-error.d.ts.map +1 -0
- package/dist/errors/authorization-error.js +17 -0
- package/dist/errors/authorization-error.js.map +1 -0
- package/dist/errors/codec-error.d.ts +12 -0
- package/dist/errors/codec-error.d.ts.map +1 -0
- package/dist/errors/codec-error.js +26 -0
- package/dist/errors/codec-error.js.map +1 -0
- package/dist/errors/config-error.d.ts +12 -0
- package/dist/errors/config-error.d.ts.map +1 -0
- package/dist/errors/config-error.js +25 -0
- package/dist/errors/config-error.js.map +1 -0
- package/dist/errors/contract-error.d.ts +18 -0
- package/dist/errors/contract-error.d.ts.map +1 -0
- package/dist/errors/contract-error.js +27 -0
- package/dist/errors/contract-error.js.map +1 -0
- package/dist/errors/dns-import-error.d.ts +12 -0
- package/dist/errors/dns-import-error.d.ts.map +1 -0
- package/dist/errors/dns-import-error.js +18 -0
- package/dist/errors/dns-import-error.js.map +1 -0
- package/dist/errors/gateway-error.d.ts +13 -0
- package/dist/errors/gateway-error.d.ts.map +1 -0
- package/dist/errors/gateway-error.js +17 -0
- package/dist/errors/gateway-error.js.map +1 -0
- package/dist/errors/index.d.ts +16 -0
- package/dist/errors/migration-error.d.ts +12 -0
- package/dist/errors/migration-error.d.ts.map +1 -0
- package/dist/errors/migration-error.js +21 -0
- package/dist/errors/migration-error.js.map +1 -0
- package/dist/errors/name-error.d.ts +12 -0
- package/dist/errors/name-error.d.ts.map +1 -0
- package/dist/errors/name-error.js +12 -0
- package/dist/errors/name-error.js.map +1 -0
- package/dist/errors/registration-error.d.ts +12 -0
- package/dist/errors/registration-error.d.ts.map +1 -0
- package/dist/errors/registration-error.js +22 -0
- package/dist/errors/registration-error.js.map +1 -0
- package/dist/errors/renewal-error.d.ts +12 -0
- package/dist/errors/renewal-error.d.ts.map +1 -0
- package/dist/errors/renewal-error.js +21 -0
- package/dist/errors/renewal-error.js.map +1 -0
- package/dist/errors/reverse-name-error.d.ts +12 -0
- package/dist/errors/reverse-name-error.d.ts.map +1 -0
- package/dist/errors/reverse-name-error.js +12 -0
- package/dist/errors/reverse-name-error.js.map +1 -0
- package/dist/errors/rpc-error.d.ts +13 -0
- package/dist/errors/rpc-error.d.ts.map +1 -0
- package/dist/errors/rpc-error.js +17 -0
- package/dist/errors/rpc-error.js.map +1 -0
- package/dist/errors/transaction-error.d.ts +15 -0
- package/dist/errors/transaction-error.d.ts.map +1 -0
- package/dist/errors/transaction-error.js +21 -0
- package/dist/errors/transaction-error.js.map +1 -0
- package/dist/errors/wallet-error.d.ts +13 -0
- package/dist/errors/wallet-error.d.ts.map +1 -0
- package/dist/errors/wallet-error.js +21 -0
- package/dist/errors/wallet-error.js.map +1 -0
- package/dist/errors/write-plan-error.d.ts +13 -0
- package/dist/errors/write-plan-error.d.ts.map +1 -0
- package/dist/errors/write-plan-error.js +19 -0
- package/dist/errors/write-plan-error.js.map +1 -0
- package/dist/index.d.ts +233 -0
- package/dist/index.js +192 -0
- package/dist/internal/capabilities/interface-support.js +22 -0
- package/dist/internal/capabilities/interface-support.js.map +1 -0
- package/dist/internal/capabilities/registry-permissions.js +40 -0
- package/dist/internal/capabilities/registry-permissions.js.map +1 -0
- package/dist/internal/capabilities/resolver-authorization.js +9 -0
- package/dist/internal/capabilities/resolver-authorization.js.map +1 -0
- package/dist/internal/capabilities/resolver-permissions.js +32 -0
- package/dist/internal/capabilities/resolver-permissions.js.map +1 -0
- package/dist/internal/capabilities/resolver-resource.d.ts +36 -0
- package/dist/internal/capabilities/resolver-resource.d.ts.map +1 -0
- package/dist/internal/capabilities/resolver-resource.js +45 -0
- package/dist/internal/capabilities/resolver-resource.js.map +1 -0
- package/dist/internal/client/ethereum-client.js +35 -0
- package/dist/internal/client/ethereum-client.js.map +1 -0
- package/dist/internal/config/context.js +16 -0
- package/dist/internal/config/context.js.map +1 -0
- package/dist/internal/config/network-profile.js +21 -0
- package/dist/internal/config/network-profile.js.map +1 -0
- package/dist/internal/config/validation.js +37 -0
- package/dist/internal/config/validation.js.map +1 -0
- package/dist/internal/config/wagmi-clients.js +26 -0
- package/dist/internal/config/wagmi-clients.js.map +1 -0
- package/dist/internal/dns/resolve-dns-records.js +45 -0
- package/dist/internal/dns/resolve-dns-records.js.map +1 -0
- package/dist/internal/errors/viem-error.d.ts +3 -0
- package/dist/internal/errors/viem-error.js +88 -0
- package/dist/internal/errors/viem-error.js.map +1 -0
- package/dist/internal/errors/write-error.js +52 -0
- package/dist/internal/errors/write-error.js.map +1 -0
- package/dist/internal/events/contracts.js +70 -0
- package/dist/internal/events/contracts.js.map +1 -0
- package/dist/internal/events/normalize-event.js +139 -0
- package/dist/internal/events/normalize-event.js.map +1 -0
- package/dist/internal/gateway/ccip-request.js +103 -0
- package/dist/internal/gateway/ccip-request.js.map +1 -0
- package/dist/internal/gateway/validate-url.js +19 -0
- package/dist/internal/gateway/validate-url.js.map +1 -0
- package/dist/internal/name/name-route.js +120 -0
- package/dist/internal/name/name-route.js.map +1 -0
- package/dist/internal/read/block-timestamp.js +18 -0
- package/dist/internal/read/block-timestamp.js.map +1 -0
- package/dist/internal/read/contract-read-resolver.d.ts +4 -0
- package/dist/internal/read/contract-read-resolver.js +82 -0
- package/dist/internal/read/contract-read-resolver.js.map +1 -0
- package/dist/internal/read/contract-read.d.ts +4 -0
- package/dist/internal/read/contract-read.js +32 -0
- package/dist/internal/read/contract-read.js.map +1 -0
- package/dist/internal/read/execute-read.js +21 -0
- package/dist/internal/read/execute-read.js.map +1 -0
- package/dist/internal/read/execution-context.d.ts +13 -0
- package/dist/internal/read/execution-context.d.ts.map +1 -0
- package/dist/internal/read/execution-context.js +66 -0
- package/dist/internal/read/execution-context.js.map +1 -0
- package/dist/internal/registration/commitment-status.js +36 -0
- package/dist/internal/registration/commitment-status.js.map +1 -0
- package/dist/internal/registration/payment-token.js +33 -0
- package/dist/internal/registration/payment-token.js.map +1 -0
- package/dist/internal/registration/second-level-eth.js +18 -0
- package/dist/internal/registration/second-level-eth.js.map +1 -0
- package/dist/internal/resolver/resolve-name.js +52 -0
- package/dist/internal/resolver/resolve-name.js.map +1 -0
- package/dist/internal/resolver/resolve-records.js +64 -0
- package/dist/internal/resolver/resolve-records.js.map +1 -0
- package/dist/internal/resolver/reverse-address.js +33 -0
- package/dist/internal/resolver/reverse-address.js.map +1 -0
- package/dist/internal/services/context.js +30 -0
- package/dist/internal/services/context.js.map +1 -0
- package/dist/internal/services/deployment.js +8 -0
- package/dist/internal/services/deployment.js.map +1 -0
- package/dist/internal/services/network.js +8 -0
- package/dist/internal/services/network.js.map +1 -0
- package/dist/internal/services/public-client.js +8 -0
- package/dist/internal/services/public-client.js.map +1 -0
- package/dist/internal/services/wallet-client.js +45 -0
- package/dist/internal/services/wallet-client.js.map +1 -0
- package/dist/internal/sync-function.d.ts +9 -0
- package/dist/internal/sync-function.d.ts.map +1 -0
- package/dist/internal/sync-function.js +20 -0
- package/dist/internal/sync-function.js.map +1 -0
- package/dist/internal/write/confirm-native-batch.js +52 -0
- package/dist/internal/write/confirm-native-batch.js.map +1 -0
- package/dist/internal/write/execute-native-batch.js +39 -0
- package/dist/internal/write/execute-native-batch.js.map +1 -0
- package/dist/internal/write/execute-sequential.js +88 -0
- package/dist/internal/write/execute-sequential.js.map +1 -0
- package/dist/internal/write/prepare-resolver-write.js +50 -0
- package/dist/internal/write/prepare-resolver-write.js.map +1 -0
- package/dist/internal/write/prepare-write-intents.js +49 -0
- package/dist/internal/write/prepare-write-intents.js.map +1 -0
- package/dist/internal/write/redact-sensitive-error.js +12 -0
- package/dist/internal/write/redact-sensitive-error.js.map +1 -0
- package/dist/internal/write/resolver-write-action.js +42 -0
- package/dist/internal/write/resolver-write-action.js.map +1 -0
- package/dist/internal/write/simulate-prepared-calls.js +15 -0
- package/dist/internal/write/simulate-prepared-calls.js.map +1 -0
- package/dist/internal/write/single-write-action.js +24 -0
- package/dist/internal/write/single-write-action.js.map +1 -0
- package/dist/internal/write/write-client.js +104 -0
- package/dist/internal/write/write-client.js.map +1 -0
- package/dist/names/address-record.d.ts +16 -0
- package/dist/names/address-record.d.ts.map +1 -0
- package/dist/names/address-record.js +57 -0
- package/dist/names/address-record.js.map +1 -0
- package/dist/names/analyze.d.ts +20 -0
- package/dist/names/analyze.d.ts.map +1 -0
- package/dist/names/analyze.js +28 -0
- package/dist/names/analyze.js.map +1 -0
- package/dist/names/coin-type.d.ts +14 -0
- package/dist/names/coin-type.d.ts.map +1 -0
- package/dist/names/coin-type.js +52 -0
- package/dist/names/coin-type.js.map +1 -0
- package/dist/names/content-hash.d.ts +15 -0
- package/dist/names/content-hash.d.ts.map +1 -0
- package/dist/names/content-hash.js +54 -0
- package/dist/names/content-hash.js.map +1 -0
- package/dist/names/dns.d.ts +10 -0
- package/dist/names/dns.d.ts.map +1 -0
- package/dist/names/dns.js +66 -0
- package/dist/names/dns.js.map +1 -0
- package/dist/names/hashes.d.ts +8 -0
- package/dist/names/hashes.d.ts.map +1 -0
- package/dist/names/hashes.js +12 -0
- package/dist/names/hashes.js.map +1 -0
- package/dist/names/index.d.ts +8 -0
- package/dist/names/normalize.d.ts +8 -0
- package/dist/names/normalize.d.ts.map +1 -0
- package/dist/names/normalize.js +33 -0
- package/dist/names/normalize.js.map +1 -0
- package/dist/schemas/coin-type.d.ts +7 -0
- package/dist/schemas/coin-type.d.ts.map +1 -0
- package/dist/schemas/coin-type.js +9 -0
- package/dist/schemas/coin-type.js.map +1 -0
- package/dist/schemas/dns.d.ts +7 -0
- package/dist/schemas/dns.d.ts.map +1 -0
- package/dist/schemas/dns.js +24 -0
- package/dist/schemas/dns.js.map +1 -0
- package/dist/schemas/hash.d.ts +11 -0
- package/dist/schemas/hash.d.ts.map +1 -0
- package/dist/schemas/hash.js +11 -0
- package/dist/schemas/hash.js.map +1 -0
- package/dist/schemas/hex.d.ts +7 -0
- package/dist/schemas/hex.d.ts.map +1 -0
- package/dist/schemas/hex.js +8 -0
- package/dist/schemas/hex.js.map +1 -0
- package/dist/schemas/identity.d.ts +18 -0
- package/dist/schemas/identity.d.ts.map +1 -0
- package/dist/schemas/identity.js +25 -0
- package/dist/schemas/identity.js.map +1 -0
- package/dist/schemas/index.d.ts +9 -0
- package/dist/schemas/name.d.ts +9 -0
- package/dist/schemas/name.d.ts.map +1 -0
- package/dist/schemas/name.js +28 -0
- package/dist/schemas/name.js.map +1 -0
- package/dist/schemas/protocol.d.ts +7 -0
- package/dist/schemas/protocol.d.ts.map +1 -0
- package/dist/schemas/protocol.js +8 -0
- package/dist/schemas/protocol.js.map +1 -0
- package/dist/schemas/records.d.ts +20 -0
- package/dist/schemas/records.d.ts.map +1 -0
- package/dist/schemas/records.js +32 -0
- package/dist/schemas/records.js.map +1 -0
- package/dist/testing/create-test-config.d.ts +19 -0
- package/dist/testing/create-test-config.d.ts.map +1 -0
- package/dist/testing/create-test-config.js +37 -0
- package/dist/testing/create-test-config.js.map +1 -0
- package/dist/testing.d.ts +2 -0
- package/dist/testing.js +3 -0
- package/dist/write/index.d.ts +3 -0
- package/dist/write/types.d.ts +188 -0
- package/dist/write/types.d.ts.map +1 -0
- package/dist/write/types.js +17 -0
- package/dist/write/types.js.map +1 -0
- package/package.json +62 -0
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { EnsReadAction } from "../../../action/read-request.js";
|
|
2
|
+
import { EthereumAddress } from "../../../schemas/identity.js";
|
|
3
|
+
import { GetNameStateError } from "../../name/get-name-state/types.js";
|
|
4
|
+
import { CapabilityError, NameCapabilities, NameCapabilityParameters, RecordOperation } from "../types.js";
|
|
5
|
+
import "../../index.js";
|
|
6
|
+
import "../../../index.js";
|
|
7
|
+
//#region src/actions/capabilities/get-name-capabilities/index.d.ts
|
|
8
|
+
type GetNameCapabilitiesParameters = NameCapabilityParameters & {
|
|
9
|
+
readonly account: EthereumAddress;
|
|
10
|
+
readonly records?: ReadonlyArray<RecordOperation>;
|
|
11
|
+
};
|
|
12
|
+
declare const getNameCapabilities: EnsReadAction<GetNameCapabilitiesParameters, {
|
|
13
|
+
readonly name: string & import("effect/Brand").Brand<"NormalizedName">;
|
|
14
|
+
readonly account: `0x${string}`;
|
|
15
|
+
readonly registry: {
|
|
16
|
+
readonly address: `0x${string}`;
|
|
17
|
+
readonly protocol: "v1" | "v2";
|
|
18
|
+
readonly kind: "registry" | "name-wrapper" | "permissioned-registry" | "wrapper-registry";
|
|
19
|
+
readonly owned: boolean;
|
|
20
|
+
readonly permissioned: boolean;
|
|
21
|
+
readonly temporal: boolean;
|
|
22
|
+
readonly tokenized: boolean;
|
|
23
|
+
readonly wrapped: boolean;
|
|
24
|
+
readonly setOwner: boolean;
|
|
25
|
+
readonly setResolver: boolean;
|
|
26
|
+
readonly createSubname: boolean;
|
|
27
|
+
readonly transfer: boolean;
|
|
28
|
+
readonly setExpiry: boolean;
|
|
29
|
+
};
|
|
30
|
+
readonly resolver: {
|
|
31
|
+
readonly address: `0x${string}` | null;
|
|
32
|
+
readonly node: `0x${string}` & import("effect/Brand").Brand<"Namehash">;
|
|
33
|
+
readonly inherited: boolean;
|
|
34
|
+
readonly extended: boolean;
|
|
35
|
+
readonly permissioned: boolean;
|
|
36
|
+
readonly authorization: "none" | "role" | "unknown" | "owner-delegate";
|
|
37
|
+
readonly profiles: {
|
|
38
|
+
readonly address: boolean;
|
|
39
|
+
readonly text: boolean;
|
|
40
|
+
readonly contentHash: boolean;
|
|
41
|
+
readonly abi: boolean;
|
|
42
|
+
readonly pubkey: boolean;
|
|
43
|
+
readonly interface: boolean;
|
|
44
|
+
readonly name: boolean;
|
|
45
|
+
readonly data: boolean;
|
|
46
|
+
readonly dnsRecord: boolean;
|
|
47
|
+
readonly dnsZone: boolean;
|
|
48
|
+
};
|
|
49
|
+
};
|
|
50
|
+
readonly records: readonly {
|
|
51
|
+
readonly record: {
|
|
52
|
+
readonly type: "address";
|
|
53
|
+
readonly coinType: bigint;
|
|
54
|
+
} | {
|
|
55
|
+
readonly type: "text";
|
|
56
|
+
readonly key: string;
|
|
57
|
+
} | {
|
|
58
|
+
readonly type: "contentHash";
|
|
59
|
+
} | {
|
|
60
|
+
readonly type: "pubkey";
|
|
61
|
+
} | {
|
|
62
|
+
readonly type: "abi";
|
|
63
|
+
readonly contentType?: bigint | undefined;
|
|
64
|
+
} | {
|
|
65
|
+
readonly type: "interface";
|
|
66
|
+
readonly interfaceId?: (`0x${string}` & import("effect/Brand").Brand<"InterfaceId">) | undefined;
|
|
67
|
+
} | {
|
|
68
|
+
readonly type: "name";
|
|
69
|
+
} | {
|
|
70
|
+
readonly type: "data";
|
|
71
|
+
readonly key: string;
|
|
72
|
+
} | {
|
|
73
|
+
readonly type: "alias";
|
|
74
|
+
} | {
|
|
75
|
+
readonly type: "dnsRecord";
|
|
76
|
+
} | {
|
|
77
|
+
readonly type: "dnsZone";
|
|
78
|
+
} | {
|
|
79
|
+
readonly type: "clear";
|
|
80
|
+
};
|
|
81
|
+
readonly supported: boolean;
|
|
82
|
+
readonly authorization: {
|
|
83
|
+
readonly status: "authorized";
|
|
84
|
+
readonly source: "owner" | "operator-approval" | "token-approval" | "resolver-delegate" | "registry-role" | "resolver-role" | "wrapper-permission";
|
|
85
|
+
} | {
|
|
86
|
+
readonly status: "unauthorized";
|
|
87
|
+
readonly requirement: {
|
|
88
|
+
readonly kind: "none";
|
|
89
|
+
} | {
|
|
90
|
+
readonly kind: "owner";
|
|
91
|
+
} | {
|
|
92
|
+
readonly kind: "operator-approval";
|
|
93
|
+
} | {
|
|
94
|
+
readonly kind: "token-approval";
|
|
95
|
+
} | {
|
|
96
|
+
readonly kind: "resolver-delegate";
|
|
97
|
+
} | {
|
|
98
|
+
readonly kind: "registry-role";
|
|
99
|
+
readonly roles: bigint;
|
|
100
|
+
readonly resource: bigint;
|
|
101
|
+
} | {
|
|
102
|
+
readonly kind: "resolver-role";
|
|
103
|
+
readonly roles: bigint;
|
|
104
|
+
readonly resource: bigint;
|
|
105
|
+
} | {
|
|
106
|
+
readonly kind: "wrapper-permission";
|
|
107
|
+
} | {
|
|
108
|
+
readonly kind: "unsupported";
|
|
109
|
+
};
|
|
110
|
+
} | {
|
|
111
|
+
readonly status: "unknown";
|
|
112
|
+
readonly reason: "CUSTOM_RESOLVER";
|
|
113
|
+
};
|
|
114
|
+
readonly requiredRole: bigint;
|
|
115
|
+
readonly resource: bigint | null;
|
|
116
|
+
}[];
|
|
117
|
+
readonly ownership: {
|
|
118
|
+
readonly setOwner: boolean;
|
|
119
|
+
readonly setResolver: boolean;
|
|
120
|
+
readonly createSubname: boolean;
|
|
121
|
+
readonly transfer: boolean;
|
|
122
|
+
readonly setExpiry: boolean;
|
|
123
|
+
};
|
|
124
|
+
}, GetNameStateError>;
|
|
125
|
+
//#endregion
|
|
126
|
+
export { type CapabilityError as GetNameCapabilitiesError, GetNameCapabilitiesParameters, type NameCapabilities, getNameCapabilities };
|
|
127
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/actions/capabilities/get-name-capabilities/index.ts"],"mappings":";;;;;;;KAkBY,gCAAgC;WACjC,SAAS;WACT,UAAU,cAAc;;cAgEtB,qBAIe,cAJI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAA"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { defineReadAction } from "../../../action/read-request.js";
|
|
2
|
+
import { executeRead } from "../../../internal/read/execute-read.js";
|
|
3
|
+
import { normalizeName } from "../../../names/normalize.js";
|
|
4
|
+
import { getResolverCapabilities } from "../get-resolver-capabilities/index.js";
|
|
5
|
+
import { getRecordPermissions } from "../get-record-permissions/index.js";
|
|
6
|
+
import { getRegistryCapabilities } from "../get-registry-capabilities/index.js";
|
|
7
|
+
import { getRequiredAuthorization } from "../get-required-authorization/index.js";
|
|
8
|
+
import { Effect } from "effect";
|
|
9
|
+
|
|
10
|
+
//#region src/actions/capabilities/get-name-capabilities/index.ts
|
|
11
|
+
const getNameCapabilitiesEffect = Effect.fn("ensforge.getNameCapabilities")(function* (config, parameters) {
|
|
12
|
+
const name = yield* normalizeName.effect(parameters.name);
|
|
13
|
+
return yield* executeRead(config, parameters, Effect.gen(function* () {
|
|
14
|
+
const records = parameters.records ?? [];
|
|
15
|
+
const [registry, resolver, recordPermissions, authorizations] = yield* Effect.all([
|
|
16
|
+
getRegistryCapabilities.effect(config, parameters),
|
|
17
|
+
getResolverCapabilities.effect(config, parameters),
|
|
18
|
+
getRecordPermissions.effect(config, {
|
|
19
|
+
...parameters,
|
|
20
|
+
records
|
|
21
|
+
}),
|
|
22
|
+
Effect.all({
|
|
23
|
+
setOwner: getRequiredAuthorization.effect(config, {
|
|
24
|
+
...parameters,
|
|
25
|
+
operation: { type: "setOwner" }
|
|
26
|
+
}),
|
|
27
|
+
setResolver: getRequiredAuthorization.effect(config, {
|
|
28
|
+
...parameters,
|
|
29
|
+
operation: { type: "setResolver" }
|
|
30
|
+
}),
|
|
31
|
+
createSubname: getRequiredAuthorization.effect(config, {
|
|
32
|
+
...parameters,
|
|
33
|
+
operation: { type: "createSubname" }
|
|
34
|
+
}),
|
|
35
|
+
transfer: getRequiredAuthorization.effect(config, {
|
|
36
|
+
...parameters,
|
|
37
|
+
operation: { type: "transfer" }
|
|
38
|
+
}),
|
|
39
|
+
setExpiry: getRequiredAuthorization.effect(config, {
|
|
40
|
+
...parameters,
|
|
41
|
+
operation: { type: "setExpiry" }
|
|
42
|
+
})
|
|
43
|
+
}, { concurrency: "unbounded" })
|
|
44
|
+
], { concurrency: "unbounded" });
|
|
45
|
+
return {
|
|
46
|
+
name,
|
|
47
|
+
account: parameters.account,
|
|
48
|
+
registry,
|
|
49
|
+
resolver,
|
|
50
|
+
records: recordPermissions.records,
|
|
51
|
+
ownership: {
|
|
52
|
+
setOwner: authorizations.setOwner.authorization.status === "authorized",
|
|
53
|
+
setResolver: authorizations.setResolver.authorization.status === "authorized",
|
|
54
|
+
createSubname: authorizations.createSubname.authorization.status === "authorized",
|
|
55
|
+
transfer: authorizations.transfer.authorization.status === "authorized",
|
|
56
|
+
setExpiry: authorizations.setExpiry.authorization.status === "authorized"
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
}));
|
|
60
|
+
});
|
|
61
|
+
const getNameCapabilities = defineReadAction(getNameCapabilitiesEffect);
|
|
62
|
+
|
|
63
|
+
//#endregion
|
|
64
|
+
export { getNameCapabilities };
|
|
65
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/actions/capabilities/get-name-capabilities/index.ts"],"sourcesContent":["import { Effect } from \"effect\";\n\nimport { defineReadAction } from \"../../../action/read-request.js\";\nimport type { EnsforgeConfig } from \"../../../config/config.js\";\nimport { executeRead } from \"../../../internal/read/execute-read.js\";\nimport { normalizeName } from \"../../../names/normalize.js\";\nimport type { EthereumAddress } from \"../../../schemas/identity.js\";\nimport { getRecordPermissions } from \"../get-record-permissions/index.js\";\nimport { getRegistryCapabilities } from \"../get-registry-capabilities/index.js\";\nimport { getRequiredAuthorization } from \"../get-required-authorization/index.js\";\nimport { getResolverCapabilities } from \"../get-resolver-capabilities/index.js\";\nimport type {\n CapabilityError,\n NameCapabilities,\n NameCapabilityParameters,\n RecordOperation,\n} from \"../types.js\";\n\nexport type GetNameCapabilitiesParameters = NameCapabilityParameters & {\n readonly account: EthereumAddress;\n readonly records?: ReadonlyArray<RecordOperation>;\n};\n\nconst getNameCapabilitiesEffect = Effect.fn(\"ensforge.getNameCapabilities\")(function* (\n config: EnsforgeConfig,\n parameters: GetNameCapabilitiesParameters,\n) {\n const name = yield* normalizeName.effect(parameters.name);\n return yield* executeRead(\n config,\n parameters,\n Effect.gen(function* () {\n const records = parameters.records ?? [];\n const [registry, resolver, recordPermissions, authorizations] = yield* Effect.all(\n [\n getRegistryCapabilities.effect(config, parameters),\n getResolverCapabilities.effect(config, parameters),\n getRecordPermissions.effect(config, { ...parameters, records }),\n Effect.all(\n {\n setOwner: getRequiredAuthorization.effect(config, {\n ...parameters,\n operation: { type: \"setOwner\" },\n }),\n setResolver: getRequiredAuthorization.effect(config, {\n ...parameters,\n operation: { type: \"setResolver\" },\n }),\n createSubname: getRequiredAuthorization.effect(config, {\n ...parameters,\n operation: { type: \"createSubname\" },\n }),\n transfer: getRequiredAuthorization.effect(config, {\n ...parameters,\n operation: { type: \"transfer\" },\n }),\n setExpiry: getRequiredAuthorization.effect(config, {\n ...parameters,\n operation: { type: \"setExpiry\" },\n }),\n },\n { concurrency: \"unbounded\" },\n ),\n ] as const,\n { concurrency: \"unbounded\" },\n );\n return {\n name,\n account: parameters.account,\n registry,\n resolver,\n records: recordPermissions.records,\n ownership: {\n setOwner: authorizations.setOwner.authorization.status === \"authorized\",\n setResolver: authorizations.setResolver.authorization.status === \"authorized\",\n createSubname: authorizations.createSubname.authorization.status === \"authorized\",\n transfer: authorizations.transfer.authorization.status === \"authorized\",\n setExpiry: authorizations.setExpiry.authorization.status === \"authorized\",\n },\n } satisfies NameCapabilities;\n }),\n );\n});\n\nexport const getNameCapabilities = defineReadAction<\n GetNameCapabilitiesParameters,\n NameCapabilities,\n CapabilityError\n>(getNameCapabilitiesEffect);\n\nexport type { CapabilityError as GetNameCapabilitiesError, NameCapabilities } from \"../types.js\";\n"],"mappings":";;;;;;;;;;AAuBA,MAAM,4BAA4B,OAAO,GAAG,8BAA8B,CAAC,CAAC,WAC1E,QACA,YACA;CACA,MAAM,OAAO,OAAO,cAAc,OAAO,WAAW,IAAI;CACxD,OAAO,OAAO,YACZ,QACA,YACA,OAAO,IAAI,aAAa;EACtB,MAAM,UAAU,WAAW,WAAW,CAAC;EACvC,MAAM,CAAC,UAAU,UAAU,mBAAmB,kBAAkB,OAAO,OAAO,IAC5E;GACE,wBAAwB,OAAO,QAAQ,UAAU;GACjD,wBAAwB,OAAO,QAAQ,UAAU;GACjD,qBAAqB,OAAO,QAAQ;IAAE,GAAG;IAAY;GAAQ,CAAC;GAC9D,OAAO,IACL;IACE,UAAU,yBAAyB,OAAO,QAAQ;KAChD,GAAG;KACH,WAAW,EAAE,MAAM,WAAW;IAChC,CAAC;IACD,aAAa,yBAAyB,OAAO,QAAQ;KACnD,GAAG;KACH,WAAW,EAAE,MAAM,cAAc;IACnC,CAAC;IACD,eAAe,yBAAyB,OAAO,QAAQ;KACrD,GAAG;KACH,WAAW,EAAE,MAAM,gBAAgB;IACrC,CAAC;IACD,UAAU,yBAAyB,OAAO,QAAQ;KAChD,GAAG;KACH,WAAW,EAAE,MAAM,WAAW;IAChC,CAAC;IACD,WAAW,yBAAyB,OAAO,QAAQ;KACjD,GAAG;KACH,WAAW,EAAE,MAAM,YAAY;IACjC,CAAC;GACH,GACA,EAAE,aAAa,YAAY,CAC7B;EACF,GACA,EAAE,aAAa,YAAY,CAC7B;EACA,OAAO;GACL;GACA,SAAS,WAAW;GACpB;GACA;GACA,SAAS,kBAAkB;GAC3B,WAAW;IACT,UAAU,eAAe,SAAS,cAAc,WAAW;IAC3D,aAAa,eAAe,YAAY,cAAc,WAAW;IACjE,eAAe,eAAe,cAAc,cAAc,WAAW;IACrE,UAAU,eAAe,SAAS,cAAc,WAAW;IAC3D,WAAW,eAAe,UAAU,cAAc,WAAW;GAC/D;EACF;CACF,CAAC,CACH;AACF,CAAC;AAED,MAAa,sBAAsB,iBAIjC,yBAAyB"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { EnsReadAction } from "../../../action/read-request.js";
|
|
2
|
+
import { EthereumAddress } from "../../../schemas/identity.js";
|
|
3
|
+
import { GetNameStateError } from "../../name/get-name-state/types.js";
|
|
4
|
+
import { CapabilityError, NameCapabilityParameters, OperatorApprovalResult, OperatorApprovalTarget } from "../types.js";
|
|
5
|
+
import "../../index.js";
|
|
6
|
+
import "../../../index.js";
|
|
7
|
+
//#region src/actions/capabilities/get-operator-approval/index.d.ts
|
|
8
|
+
type GetOperatorApprovalParameters = NameCapabilityParameters & {
|
|
9
|
+
readonly owner: EthereumAddress;
|
|
10
|
+
readonly operator: EthereumAddress;
|
|
11
|
+
};
|
|
12
|
+
declare const getOperatorApproval: EnsReadAction<GetOperatorApprovalParameters, {
|
|
13
|
+
readonly owner: `0x${string}`;
|
|
14
|
+
readonly operator: `0x${string}`;
|
|
15
|
+
readonly targets: readonly {
|
|
16
|
+
readonly kind: "registry" | "resolver" | "registrar" | "wrapper";
|
|
17
|
+
readonly address: `0x${string}`;
|
|
18
|
+
readonly supported: boolean;
|
|
19
|
+
readonly approved: boolean;
|
|
20
|
+
}[];
|
|
21
|
+
}, GetNameStateError>;
|
|
22
|
+
//#endregion
|
|
23
|
+
export { type CapabilityError as GetOperatorApprovalError, GetOperatorApprovalParameters, type OperatorApprovalResult, type OperatorApprovalTarget, getOperatorApproval };
|
|
24
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/actions/capabilities/get-operator-approval/index.ts"],"mappings":";;;;;;;KAgCY,gCAAgC;WACjC,OAAO;WACP,UAAU;;cAgHR,qBAIe,cAJI;;;;;;;;;GAAA"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { defineReadAction } from "../../../action/read-request.js";
|
|
2
|
+
import { executeRead } from "../../../internal/read/execute-read.js";
|
|
3
|
+
import { normalizeName } from "../../../names/normalize.js";
|
|
4
|
+
import { EthereumClient } from "../../../internal/client/ethereum-client.js";
|
|
5
|
+
import { namehash } from "../../../names/hashes.js";
|
|
6
|
+
import { analyzeName } from "../../../names/analyze.js";
|
|
7
|
+
import { readNameRoute } from "../../../internal/name/name-route.js";
|
|
8
|
+
import { supportsInterface } from "../../../internal/capabilities/interface-support.js";
|
|
9
|
+
import { findResolver } from "../../resolution/get-resolver/find.js";
|
|
10
|
+
import { Effect } from "effect";
|
|
11
|
+
import { baseRegistrarV1IsApprovedForAllAbi, ensRegistryV1IsApprovedForAllAbi, nameWrapperV1IsApprovedForAllAbi, nameWrapperV1IsWrappedAbi, publicResolverV1IsApprovedForAllAbi } from "@ensforge/contracts/v1";
|
|
12
|
+
import { permissionedRegistryV2InterfaceIsApprovedForAllAbi, registryInterfaceIds } from "@ensforge/contracts/v2";
|
|
13
|
+
|
|
14
|
+
//#region src/actions/capabilities/get-operator-approval/index.ts
|
|
15
|
+
const getOperatorApprovalEffect = Effect.fn("ensforge.getOperatorApproval")(function* (config, parameters) {
|
|
16
|
+
const name = yield* normalizeName.effect(parameters.name);
|
|
17
|
+
return yield* executeRead(config, parameters, Effect.gen(function* () {
|
|
18
|
+
const route = yield* readNameRoute(name);
|
|
19
|
+
const ethereum = yield* EthereumClient;
|
|
20
|
+
const targets = [];
|
|
21
|
+
if (route.kind === "v1" || route.kind === "reserved") {
|
|
22
|
+
const deployment = route.kind === "reserved" ? route.v1 : route.deployment;
|
|
23
|
+
const registryApproved = yield* ethereum.readContract({
|
|
24
|
+
address: deployment.contracts.registry,
|
|
25
|
+
abi: ensRegistryV1IsApprovedForAllAbi,
|
|
26
|
+
functionName: "isApprovedForAll",
|
|
27
|
+
args: [parameters.owner, parameters.operator]
|
|
28
|
+
});
|
|
29
|
+
targets.push({
|
|
30
|
+
kind: "registry",
|
|
31
|
+
address: deployment.contracts.registry,
|
|
32
|
+
supported: true,
|
|
33
|
+
approved: registryApproved
|
|
34
|
+
});
|
|
35
|
+
if (analyzeName(name).isSecondLevelEth) {
|
|
36
|
+
const registrarApproved = yield* ethereum.readContract({
|
|
37
|
+
address: deployment.contracts.baseRegistrar,
|
|
38
|
+
abi: baseRegistrarV1IsApprovedForAllAbi,
|
|
39
|
+
functionName: "isApprovedForAll",
|
|
40
|
+
args: [parameters.owner, parameters.operator]
|
|
41
|
+
});
|
|
42
|
+
targets.push({
|
|
43
|
+
kind: "registrar",
|
|
44
|
+
address: deployment.contracts.baseRegistrar,
|
|
45
|
+
supported: true,
|
|
46
|
+
approved: registrarApproved
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
if (yield* ethereum.readContract({
|
|
50
|
+
address: deployment.contracts.nameWrapper,
|
|
51
|
+
abi: nameWrapperV1IsWrappedAbi,
|
|
52
|
+
functionName: "isWrapped",
|
|
53
|
+
args: [namehash(name)]
|
|
54
|
+
})) {
|
|
55
|
+
const wrapperApproved = yield* ethereum.readContract({
|
|
56
|
+
address: deployment.contracts.nameWrapper,
|
|
57
|
+
abi: nameWrapperV1IsApprovedForAllAbi,
|
|
58
|
+
functionName: "isApprovedForAll",
|
|
59
|
+
args: [parameters.owner, parameters.operator]
|
|
60
|
+
});
|
|
61
|
+
targets.push({
|
|
62
|
+
kind: "wrapper",
|
|
63
|
+
address: deployment.contracts.nameWrapper,
|
|
64
|
+
supported: true,
|
|
65
|
+
approved: wrapperApproved
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
} else if (yield* supportsInterface(route.parentRegistry, registryInterfaceIds.tokenizedRegistry)) {
|
|
69
|
+
const approved = yield* ethereum.readContract({
|
|
70
|
+
address: route.parentRegistry,
|
|
71
|
+
abi: permissionedRegistryV2InterfaceIsApprovedForAllAbi,
|
|
72
|
+
functionName: "isApprovedForAll",
|
|
73
|
+
args: [parameters.owner, parameters.operator]
|
|
74
|
+
});
|
|
75
|
+
targets.push({
|
|
76
|
+
kind: "registry",
|
|
77
|
+
address: route.parentRegistry,
|
|
78
|
+
supported: true,
|
|
79
|
+
approved
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
const resolver = yield* findResolver(name);
|
|
83
|
+
if (resolver !== null) {
|
|
84
|
+
const resolverApproved = yield* ethereum.readContract({
|
|
85
|
+
address: resolver.address,
|
|
86
|
+
abi: publicResolverV1IsApprovedForAllAbi,
|
|
87
|
+
functionName: "isApprovedForAll",
|
|
88
|
+
args: [parameters.owner, parameters.operator]
|
|
89
|
+
}).pipe(Effect.catchTag("ContractError", () => Effect.succeed(null)));
|
|
90
|
+
targets.push({
|
|
91
|
+
kind: "resolver",
|
|
92
|
+
address: resolver.address,
|
|
93
|
+
supported: resolverApproved !== null,
|
|
94
|
+
approved: resolverApproved ?? false
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
return {
|
|
98
|
+
owner: parameters.owner,
|
|
99
|
+
operator: parameters.operator,
|
|
100
|
+
targets
|
|
101
|
+
};
|
|
102
|
+
}));
|
|
103
|
+
});
|
|
104
|
+
const getOperatorApproval = defineReadAction(getOperatorApprovalEffect);
|
|
105
|
+
|
|
106
|
+
//#endregion
|
|
107
|
+
export { getOperatorApproval };
|
|
108
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/actions/capabilities/get-operator-approval/index.ts"],"sourcesContent":["import { Effect } from \"effect\";\n\nimport {\n baseRegistrarV1IsApprovedForAllAbi,\n ensRegistryV1IsApprovedForAllAbi,\n nameWrapperV1IsApprovedForAllAbi,\n nameWrapperV1IsWrappedAbi,\n publicResolverV1IsApprovedForAllAbi,\n} from \"@ensforge/contracts/v1\";\nimport {\n permissionedRegistryV2InterfaceIsApprovedForAllAbi,\n registryInterfaceIds,\n} from \"@ensforge/contracts/v2\";\n\nimport { defineReadAction } from \"../../../action/read-request.js\";\nimport type { EnsforgeConfig } from \"../../../config/config.js\";\nimport { supportsInterface } from \"../../../internal/capabilities/interface-support.js\";\nimport { EthereumClient } from \"../../../internal/client/ethereum-client.js\";\nimport { readNameRoute } from \"../../../internal/name/name-route.js\";\nimport { executeRead } from \"../../../internal/read/execute-read.js\";\nimport { analyzeName } from \"../../../names/analyze.js\";\nimport { namehash } from \"../../../names/hashes.js\";\nimport { normalizeName } from \"../../../names/normalize.js\";\nimport type { EthereumAddress } from \"../../../schemas/identity.js\";\nimport { findResolver } from \"../../resolution/get-resolver/find.js\";\nimport type {\n CapabilityError,\n NameCapabilityParameters,\n OperatorApprovalResult,\n OperatorApprovalTarget,\n} from \"../types.js\";\n\nexport type GetOperatorApprovalParameters = NameCapabilityParameters & {\n readonly owner: EthereumAddress;\n readonly operator: EthereumAddress;\n};\n\nconst getOperatorApprovalEffect = Effect.fn(\"ensforge.getOperatorApproval\")(function* (\n config: EnsforgeConfig,\n parameters: GetOperatorApprovalParameters,\n) {\n const name = yield* normalizeName.effect(parameters.name);\n return yield* executeRead(\n config,\n parameters,\n Effect.gen(function* () {\n const route = yield* readNameRoute(name);\n const ethereum = yield* EthereumClient;\n const targets: Array<OperatorApprovalTarget> = [];\n if (route.kind === \"v1\" || route.kind === \"reserved\") {\n const deployment = route.kind === \"reserved\" ? route.v1 : route.deployment;\n const registryApproved = yield* ethereum.readContract({\n address: deployment.contracts.registry,\n abi: ensRegistryV1IsApprovedForAllAbi,\n functionName: \"isApprovedForAll\",\n args: [parameters.owner, parameters.operator],\n });\n targets.push({\n kind: \"registry\",\n address: deployment.contracts.registry,\n supported: true,\n approved: registryApproved,\n });\n\n if (analyzeName(name).isSecondLevelEth) {\n const registrarApproved = yield* ethereum.readContract({\n address: deployment.contracts.baseRegistrar,\n abi: baseRegistrarV1IsApprovedForAllAbi,\n functionName: \"isApprovedForAll\",\n args: [parameters.owner, parameters.operator],\n });\n targets.push({\n kind: \"registrar\",\n address: deployment.contracts.baseRegistrar,\n supported: true,\n approved: registrarApproved,\n });\n }\n\n const wrapped = yield* ethereum.readContract({\n address: deployment.contracts.nameWrapper,\n abi: nameWrapperV1IsWrappedAbi,\n functionName: \"isWrapped\",\n args: [namehash(name)],\n });\n if (wrapped) {\n const wrapperApproved = yield* ethereum.readContract({\n address: deployment.contracts.nameWrapper,\n abi: nameWrapperV1IsApprovedForAllAbi,\n functionName: \"isApprovedForAll\",\n args: [parameters.owner, parameters.operator],\n });\n targets.push({\n kind: \"wrapper\",\n address: deployment.contracts.nameWrapper,\n supported: true,\n approved: wrapperApproved,\n });\n }\n } else {\n const tokenized = yield* supportsInterface(\n route.parentRegistry,\n registryInterfaceIds.tokenizedRegistry,\n );\n if (tokenized) {\n const approved = yield* ethereum.readContract({\n address: route.parentRegistry,\n abi: permissionedRegistryV2InterfaceIsApprovedForAllAbi,\n functionName: \"isApprovedForAll\",\n args: [parameters.owner, parameters.operator],\n });\n targets.push({\n kind: \"registry\",\n address: route.parentRegistry,\n supported: true,\n approved,\n });\n }\n }\n\n const resolver = yield* findResolver(name);\n if (resolver !== null) {\n const resolverApproved = yield* ethereum\n .readContract({\n address: resolver.address,\n abi: publicResolverV1IsApprovedForAllAbi,\n functionName: \"isApprovedForAll\",\n args: [parameters.owner, parameters.operator],\n })\n .pipe(Effect.catchTag(\"ContractError\", () => Effect.succeed(null)));\n targets.push({\n kind: \"resolver\",\n address: resolver.address,\n supported: resolverApproved !== null,\n approved: resolverApproved ?? false,\n });\n }\n return {\n owner: parameters.owner,\n operator: parameters.operator,\n targets,\n } satisfies OperatorApprovalResult;\n }),\n );\n});\n\nexport const getOperatorApproval = defineReadAction<\n GetOperatorApprovalParameters,\n OperatorApprovalResult,\n CapabilityError\n>(getOperatorApprovalEffect);\n\nexport type {\n CapabilityError as GetOperatorApprovalError,\n OperatorApprovalResult,\n OperatorApprovalTarget,\n} from \"../types.js\";\n"],"mappings":";;;;;;;;;;;;;;AAqCA,MAAM,4BAA4B,OAAO,GAAG,8BAA8B,CAAC,CAAC,WAC1E,QACA,YACA;CACA,MAAM,OAAO,OAAO,cAAc,OAAO,WAAW,IAAI;CACxD,OAAO,OAAO,YACZ,QACA,YACA,OAAO,IAAI,aAAa;EACtB,MAAM,QAAQ,OAAO,cAAc,IAAI;EACvC,MAAM,WAAW,OAAO;EACxB,MAAM,UAAyC,CAAC;EAChD,IAAI,MAAM,SAAS,QAAQ,MAAM,SAAS,YAAY;GACpD,MAAM,aAAa,MAAM,SAAS,aAAa,MAAM,KAAK,MAAM;GAChE,MAAM,mBAAmB,OAAO,SAAS,aAAa;IACpD,SAAS,WAAW,UAAU;IAC9B,KAAK;IACL,cAAc;IACd,MAAM,CAAC,WAAW,OAAO,WAAW,QAAQ;GAC9C,CAAC;GACD,QAAQ,KAAK;IACX,MAAM;IACN,SAAS,WAAW,UAAU;IAC9B,WAAW;IACX,UAAU;GACZ,CAAC;GAED,IAAI,YAAY,IAAI,CAAC,CAAC,kBAAkB;IACtC,MAAM,oBAAoB,OAAO,SAAS,aAAa;KACrD,SAAS,WAAW,UAAU;KAC9B,KAAK;KACL,cAAc;KACd,MAAM,CAAC,WAAW,OAAO,WAAW,QAAQ;IAC9C,CAAC;IACD,QAAQ,KAAK;KACX,MAAM;KACN,SAAS,WAAW,UAAU;KAC9B,WAAW;KACX,UAAU;IACZ,CAAC;GACH;GAQA,IAAI,OANmB,SAAS,aAAa;IAC3C,SAAS,WAAW,UAAU;IAC9B,KAAK;IACL,cAAc;IACd,MAAM,CAAC,SAAS,IAAI,CAAC;GACvB,CAAC,GACY;IACX,MAAM,kBAAkB,OAAO,SAAS,aAAa;KACnD,SAAS,WAAW,UAAU;KAC9B,KAAK;KACL,cAAc;KACd,MAAM,CAAC,WAAW,OAAO,WAAW,QAAQ;IAC9C,CAAC;IACD,QAAQ,KAAK;KACX,MAAM;KACN,SAAS,WAAW,UAAU;KAC9B,WAAW;KACX,UAAU;IACZ,CAAC;GACH;EACF,OAKE,IAAI,OAJqB,kBACvB,MAAM,gBACN,qBAAqB,iBACvB,GACe;GACb,MAAM,WAAW,OAAO,SAAS,aAAa;IAC5C,SAAS,MAAM;IACf,KAAK;IACL,cAAc;IACd,MAAM,CAAC,WAAW,OAAO,WAAW,QAAQ;GAC9C,CAAC;GACD,QAAQ,KAAK;IACX,MAAM;IACN,SAAS,MAAM;IACf,WAAW;IACX;GACF,CAAC;EACH;EAGF,MAAM,WAAW,OAAO,aAAa,IAAI;EACzC,IAAI,aAAa,MAAM;GACrB,MAAM,mBAAmB,OAAO,SAC7B,aAAa;IACZ,SAAS,SAAS;IAClB,KAAK;IACL,cAAc;IACd,MAAM,CAAC,WAAW,OAAO,WAAW,QAAQ;GAC9C,CAAC,CAAC,CACD,KAAK,OAAO,SAAS,uBAAuB,OAAO,QAAQ,IAAI,CAAC,CAAC;GACpE,QAAQ,KAAK;IACX,MAAM;IACN,SAAS,SAAS;IAClB,WAAW,qBAAqB;IAChC,UAAU,oBAAoB;GAChC,CAAC;EACH;EACA,OAAO;GACL,OAAO,WAAW;GAClB,UAAU,WAAW;GACrB;EACF;CACF,CAAC,CACH;AACF,CAAC;AAED,MAAa,sBAAsB,iBAIjC,yBAAyB"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { EnsReadAction } from "../../../action/read-request.js";
|
|
2
|
+
import { EthereumAddress } from "../../../schemas/identity.js";
|
|
3
|
+
import { GetNameStateError } from "../../name/get-name-state/types.js";
|
|
4
|
+
import { CapabilityError, NameCapabilityParameters, RecordOperation, RecordPermission, RecordPermissionsResult } from "../types.js";
|
|
5
|
+
import "../../index.js";
|
|
6
|
+
import "../../../index.js";
|
|
7
|
+
//#region src/actions/capabilities/get-record-permissions/index.d.ts
|
|
8
|
+
type GetRecordPermissionsParameters = NameCapabilityParameters & {
|
|
9
|
+
readonly account: EthereumAddress;
|
|
10
|
+
readonly records: ReadonlyArray<RecordOperation>;
|
|
11
|
+
};
|
|
12
|
+
declare const getRecordPermissions: EnsReadAction<GetRecordPermissionsParameters, {
|
|
13
|
+
readonly resolver: `0x${string}` | null;
|
|
14
|
+
readonly inherited: boolean;
|
|
15
|
+
readonly account: `0x${string}`;
|
|
16
|
+
readonly records: readonly {
|
|
17
|
+
readonly record: {
|
|
18
|
+
readonly type: "address";
|
|
19
|
+
readonly coinType: bigint;
|
|
20
|
+
} | {
|
|
21
|
+
readonly type: "text";
|
|
22
|
+
readonly key: string;
|
|
23
|
+
} | {
|
|
24
|
+
readonly type: "contentHash";
|
|
25
|
+
} | {
|
|
26
|
+
readonly type: "pubkey";
|
|
27
|
+
} | {
|
|
28
|
+
readonly type: "abi";
|
|
29
|
+
readonly contentType?: bigint | undefined;
|
|
30
|
+
} | {
|
|
31
|
+
readonly type: "interface";
|
|
32
|
+
readonly interfaceId?: (`0x${string}` & import("effect/Brand").Brand<"InterfaceId">) | undefined;
|
|
33
|
+
} | {
|
|
34
|
+
readonly type: "name";
|
|
35
|
+
} | {
|
|
36
|
+
readonly type: "data";
|
|
37
|
+
readonly key: string;
|
|
38
|
+
} | {
|
|
39
|
+
readonly type: "alias";
|
|
40
|
+
} | {
|
|
41
|
+
readonly type: "dnsRecord";
|
|
42
|
+
} | {
|
|
43
|
+
readonly type: "dnsZone";
|
|
44
|
+
} | {
|
|
45
|
+
readonly type: "clear";
|
|
46
|
+
};
|
|
47
|
+
readonly supported: boolean;
|
|
48
|
+
readonly authorization: {
|
|
49
|
+
readonly status: "authorized";
|
|
50
|
+
readonly source: "owner" | "operator-approval" | "token-approval" | "resolver-delegate" | "registry-role" | "resolver-role" | "wrapper-permission";
|
|
51
|
+
} | {
|
|
52
|
+
readonly status: "unauthorized";
|
|
53
|
+
readonly requirement: {
|
|
54
|
+
readonly kind: "none";
|
|
55
|
+
} | {
|
|
56
|
+
readonly kind: "owner";
|
|
57
|
+
} | {
|
|
58
|
+
readonly kind: "operator-approval";
|
|
59
|
+
} | {
|
|
60
|
+
readonly kind: "token-approval";
|
|
61
|
+
} | {
|
|
62
|
+
readonly kind: "resolver-delegate";
|
|
63
|
+
} | {
|
|
64
|
+
readonly kind: "registry-role";
|
|
65
|
+
readonly roles: bigint;
|
|
66
|
+
readonly resource: bigint;
|
|
67
|
+
} | {
|
|
68
|
+
readonly kind: "resolver-role";
|
|
69
|
+
readonly roles: bigint;
|
|
70
|
+
readonly resource: bigint;
|
|
71
|
+
} | {
|
|
72
|
+
readonly kind: "wrapper-permission";
|
|
73
|
+
} | {
|
|
74
|
+
readonly kind: "unsupported";
|
|
75
|
+
};
|
|
76
|
+
} | {
|
|
77
|
+
readonly status: "unknown";
|
|
78
|
+
readonly reason: "CUSTOM_RESOLVER";
|
|
79
|
+
};
|
|
80
|
+
readonly requiredRole: bigint;
|
|
81
|
+
readonly resource: bigint | null;
|
|
82
|
+
}[];
|
|
83
|
+
}, GetNameStateError>;
|
|
84
|
+
//#endregion
|
|
85
|
+
export { type CapabilityError as GetRecordPermissionsError, GetRecordPermissionsParameters, type RecordPermission, type RecordPermissionsResult, getRecordPermissions };
|
|
86
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/actions/capabilities/get-record-permissions/index.ts"],"mappings":";;;;;;;KA+BY,iCAAiC;WAClC,SAAS;WACT,SAAS,cAAc;;cAqMrB,sBAIgB,cAJI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAA"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { defineReadAction } from "../../../action/read-request.js";
|
|
2
|
+
import { executeRead } from "../../../internal/read/execute-read.js";
|
|
3
|
+
import { normalizeName } from "../../../names/normalize.js";
|
|
4
|
+
import { resolverRecordPart, resolverRecordRole, resolverResource } from "../../../internal/capabilities/resolver-resource.js";
|
|
5
|
+
import { EthereumClient } from "../../../internal/client/ethereum-client.js";
|
|
6
|
+
import { namehash } from "../../../names/hashes.js";
|
|
7
|
+
import { getManager } from "../../name/get-manager/index.js";
|
|
8
|
+
import { getResolverCapabilities } from "../get-resolver-capabilities/index.js";
|
|
9
|
+
import { Effect } from "effect";
|
|
10
|
+
import { publicResolverV1IsApprovedForAbi, publicResolverV1IsApprovedForAllAbi } from "@ensforge/contracts/v1";
|
|
11
|
+
import { permissionedResolverV2InterfaceHasRolesAbi } from "@ensforge/contracts/v2";
|
|
12
|
+
|
|
13
|
+
//#region src/actions/capabilities/get-record-permissions/index.ts
|
|
14
|
+
const profileSupported = (profiles, record) => {
|
|
15
|
+
switch (record.type) {
|
|
16
|
+
case "address": return profiles.address;
|
|
17
|
+
case "text": return profiles.text;
|
|
18
|
+
case "contentHash": return profiles.contentHash;
|
|
19
|
+
case "abi": return profiles.abi;
|
|
20
|
+
case "pubkey": return profiles.pubkey;
|
|
21
|
+
case "interface": return profiles.interface;
|
|
22
|
+
case "name": return profiles.name;
|
|
23
|
+
case "data": return profiles.data;
|
|
24
|
+
case "dnsRecord": return profiles.dnsRecord;
|
|
25
|
+
case "dnsZone": return profiles.dnsZone;
|
|
26
|
+
case "alias": return false;
|
|
27
|
+
case "clear": return true;
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
const getRecordPermissionsEffect = Effect.fn("ensforge.getRecordPermissions")(function* (config, parameters) {
|
|
31
|
+
const name = yield* normalizeName.effect(parameters.name);
|
|
32
|
+
return yield* executeRead(config, parameters, Effect.gen(function* () {
|
|
33
|
+
const resolver = yield* getResolverCapabilities.effect(config, parameters);
|
|
34
|
+
if (resolver.address === null) return {
|
|
35
|
+
resolver: null,
|
|
36
|
+
inherited: false,
|
|
37
|
+
account: parameters.account,
|
|
38
|
+
records: parameters.records.map((record) => ({
|
|
39
|
+
record,
|
|
40
|
+
supported: false,
|
|
41
|
+
authorization: {
|
|
42
|
+
status: "unauthorized",
|
|
43
|
+
requirement: { kind: "unsupported" }
|
|
44
|
+
},
|
|
45
|
+
requiredRole: resolverRecordRole(record),
|
|
46
|
+
resource: null
|
|
47
|
+
}))
|
|
48
|
+
};
|
|
49
|
+
const ethereum = yield* EthereumClient;
|
|
50
|
+
const resolverAddress = resolver.address;
|
|
51
|
+
const permissioned = resolver.authorization === "role";
|
|
52
|
+
const manager = resolver.authorization === "owner-delegate" ? yield* getManager.effect(config, parameters) : null;
|
|
53
|
+
let ownerAuthorized = false;
|
|
54
|
+
let operatorAuthorized = false;
|
|
55
|
+
let delegateAuthorized = false;
|
|
56
|
+
if (resolver.authorization === "owner-delegate" && manager !== null) {
|
|
57
|
+
ownerAuthorized = manager.toLowerCase() === parameters.account.toLowerCase();
|
|
58
|
+
[operatorAuthorized, delegateAuthorized] = yield* Effect.all([ethereum.readContract({
|
|
59
|
+
address: resolverAddress,
|
|
60
|
+
abi: publicResolverV1IsApprovedForAllAbi,
|
|
61
|
+
functionName: "isApprovedForAll",
|
|
62
|
+
args: [manager, parameters.account]
|
|
63
|
+
}).pipe(Effect.catchTag("ContractError", () => Effect.succeed(false))), ethereum.readContract({
|
|
64
|
+
address: resolverAddress,
|
|
65
|
+
abi: publicResolverV1IsApprovedForAbi,
|
|
66
|
+
functionName: "isApprovedFor",
|
|
67
|
+
args: [
|
|
68
|
+
manager,
|
|
69
|
+
namehash(name),
|
|
70
|
+
parameters.account
|
|
71
|
+
]
|
|
72
|
+
}).pipe(Effect.catchTag("ContractError", () => Effect.succeed(false)))], { concurrency: "unbounded" });
|
|
73
|
+
}
|
|
74
|
+
const records = yield* Effect.forEach(parameters.records, Effect.fn("ensforge.getRecordPermissions.record")(function* (record) {
|
|
75
|
+
const supported = record.type === "alias" ? resolver.permissioned : profileSupported(resolver.profiles, record);
|
|
76
|
+
const requiredRole = resolverRecordRole(record);
|
|
77
|
+
if (!supported) return {
|
|
78
|
+
record,
|
|
79
|
+
supported,
|
|
80
|
+
authorization: {
|
|
81
|
+
status: "unauthorized",
|
|
82
|
+
requirement: { kind: "unsupported" }
|
|
83
|
+
},
|
|
84
|
+
requiredRole,
|
|
85
|
+
resource: null
|
|
86
|
+
};
|
|
87
|
+
if (resolver.authorization === "unknown") return {
|
|
88
|
+
record,
|
|
89
|
+
supported,
|
|
90
|
+
authorization: {
|
|
91
|
+
status: "unknown",
|
|
92
|
+
reason: "CUSTOM_RESOLVER"
|
|
93
|
+
},
|
|
94
|
+
requiredRole,
|
|
95
|
+
resource: null
|
|
96
|
+
};
|
|
97
|
+
if (!permissioned) {
|
|
98
|
+
const source = ownerAuthorized ? "owner" : operatorAuthorized ? "operator-approval" : delegateAuthorized ? "resolver-delegate" : "none";
|
|
99
|
+
return {
|
|
100
|
+
record,
|
|
101
|
+
supported,
|
|
102
|
+
authorization: source === "none" ? {
|
|
103
|
+
status: "unauthorized",
|
|
104
|
+
requirement: { kind: "resolver-delegate" }
|
|
105
|
+
} : {
|
|
106
|
+
status: "authorized",
|
|
107
|
+
source
|
|
108
|
+
},
|
|
109
|
+
requiredRole,
|
|
110
|
+
resource: null
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
const part = resolverRecordPart(record);
|
|
114
|
+
const node = namehash(name);
|
|
115
|
+
const exact = record.type === "alias" ? 0n : resolverResource(node, part);
|
|
116
|
+
const resources = record.type === "alias" ? [0n] : BigInt(part) === 0n ? [exact] : [
|
|
117
|
+
exact,
|
|
118
|
+
resolverResource(namehash(""), part),
|
|
119
|
+
resolverResource(node, resolverRecordPart({ type: "clear" }))
|
|
120
|
+
];
|
|
121
|
+
return {
|
|
122
|
+
record,
|
|
123
|
+
supported,
|
|
124
|
+
authorization: (yield* Effect.all(resources.map((resource) => ethereum.readContract({
|
|
125
|
+
address: resolverAddress,
|
|
126
|
+
abi: permissionedResolverV2InterfaceHasRolesAbi,
|
|
127
|
+
functionName: "hasRoles",
|
|
128
|
+
args: [
|
|
129
|
+
resource,
|
|
130
|
+
requiredRole,
|
|
131
|
+
parameters.account
|
|
132
|
+
]
|
|
133
|
+
})), { concurrency: "unbounded" })).some(Boolean) ? {
|
|
134
|
+
status: "authorized",
|
|
135
|
+
source: "resolver-role"
|
|
136
|
+
} : {
|
|
137
|
+
status: "unauthorized",
|
|
138
|
+
requirement: {
|
|
139
|
+
kind: "resolver-role",
|
|
140
|
+
roles: requiredRole,
|
|
141
|
+
resource: exact
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
requiredRole,
|
|
145
|
+
resource: exact
|
|
146
|
+
};
|
|
147
|
+
}), { concurrency: "unbounded" });
|
|
148
|
+
return {
|
|
149
|
+
resolver: resolverAddress,
|
|
150
|
+
inherited: resolver.inherited,
|
|
151
|
+
account: parameters.account,
|
|
152
|
+
records
|
|
153
|
+
};
|
|
154
|
+
}));
|
|
155
|
+
});
|
|
156
|
+
const getRecordPermissions = defineReadAction(getRecordPermissionsEffect);
|
|
157
|
+
|
|
158
|
+
//#endregion
|
|
159
|
+
export { getRecordPermissions };
|
|
160
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/actions/capabilities/get-record-permissions/index.ts"],"sourcesContent":["import { Effect } from \"effect\";\n\nimport {\n publicResolverV1IsApprovedForAbi,\n publicResolverV1IsApprovedForAllAbi,\n} from \"@ensforge/contracts/v1\";\nimport { permissionedResolverV2InterfaceHasRolesAbi } from \"@ensforge/contracts/v2\";\n\nimport { defineReadAction } from \"../../../action/read-request.js\";\nimport type { EnsforgeConfig } from \"../../../config/config.js\";\nimport {\n resolverRecordPart,\n resolverRecordRole,\n resolverResource,\n} from \"../../../internal/capabilities/resolver-resource.js\";\nimport { EthereumClient } from \"../../../internal/client/ethereum-client.js\";\nimport { executeRead } from \"../../../internal/read/execute-read.js\";\nimport { namehash } from \"../../../names/hashes.js\";\nimport { normalizeName } from \"../../../names/normalize.js\";\nimport type { EthereumAddress } from \"../../../schemas/identity.js\";\nimport { getManager } from \"../../name/get-manager/index.js\";\nimport { getResolverCapabilities } from \"../get-resolver-capabilities/index.js\";\nimport type {\n CapabilityError,\n NameCapabilityParameters,\n RecordOperation,\n RecordPermission,\n RecordPermissionsResult,\n ResolverProfiles,\n} from \"../types.js\";\n\nexport type GetRecordPermissionsParameters = NameCapabilityParameters & {\n readonly account: EthereumAddress;\n readonly records: ReadonlyArray<RecordOperation>;\n};\n\nconst profileSupported = (profiles: ResolverProfiles, record: RecordOperation): boolean => {\n switch (record.type) {\n case \"address\":\n return profiles.address;\n case \"text\":\n return profiles.text;\n case \"contentHash\":\n return profiles.contentHash;\n case \"abi\":\n return profiles.abi;\n case \"pubkey\":\n return profiles.pubkey;\n case \"interface\":\n return profiles.interface;\n case \"name\":\n return profiles.name;\n case \"data\":\n return profiles.data;\n case \"dnsRecord\":\n return profiles.dnsRecord;\n case \"dnsZone\":\n return profiles.dnsZone;\n case \"alias\":\n return false;\n case \"clear\":\n return true;\n }\n};\n\nconst getRecordPermissionsEffect = Effect.fn(\"ensforge.getRecordPermissions\")(function* (\n config: EnsforgeConfig,\n parameters: GetRecordPermissionsParameters,\n) {\n const name = yield* normalizeName.effect(parameters.name);\n return yield* executeRead(\n config,\n parameters,\n Effect.gen(function* () {\n const resolver = yield* getResolverCapabilities.effect(config, parameters);\n if (resolver.address === null) {\n return {\n resolver: null,\n inherited: false,\n account: parameters.account,\n records: parameters.records.map((record): RecordPermission => ({\n record,\n supported: false,\n authorization: {\n status: \"unauthorized\",\n requirement: { kind: \"unsupported\" },\n },\n requiredRole: resolverRecordRole(record),\n resource: null,\n })),\n } satisfies RecordPermissionsResult;\n }\n\n const ethereum = yield* EthereumClient;\n const resolverAddress = resolver.address;\n const permissioned = resolver.authorization === \"role\";\n const manager =\n resolver.authorization === \"owner-delegate\"\n ? yield* getManager.effect(config, parameters)\n : null;\n let ownerAuthorized = false;\n let operatorAuthorized = false;\n let delegateAuthorized = false;\n if (resolver.authorization === \"owner-delegate\" && manager !== null) {\n ownerAuthorized = manager.toLowerCase() === parameters.account.toLowerCase();\n [operatorAuthorized, delegateAuthorized] = yield* Effect.all(\n [\n ethereum\n .readContract({\n address: resolverAddress,\n abi: publicResolverV1IsApprovedForAllAbi,\n functionName: \"isApprovedForAll\",\n args: [manager, parameters.account],\n })\n .pipe(Effect.catchTag(\"ContractError\", () => Effect.succeed(false))),\n ethereum\n .readContract({\n address: resolverAddress,\n abi: publicResolverV1IsApprovedForAbi,\n functionName: \"isApprovedFor\",\n args: [manager, namehash(name), parameters.account],\n })\n .pipe(Effect.catchTag(\"ContractError\", () => Effect.succeed(false))),\n ] as const,\n { concurrency: \"unbounded\" },\n );\n }\n\n const records = yield* Effect.forEach(\n parameters.records,\n Effect.fn(\"ensforge.getRecordPermissions.record\")(function* (record) {\n const supported =\n record.type === \"alias\"\n ? resolver.permissioned\n : profileSupported(resolver.profiles, record);\n const requiredRole = resolverRecordRole(record);\n if (!supported) {\n return {\n record,\n supported,\n authorization: {\n status: \"unauthorized\",\n requirement: { kind: \"unsupported\" },\n },\n requiredRole,\n resource: null,\n } as const satisfies RecordPermission;\n }\n if (resolver.authorization === \"unknown\") {\n return {\n record,\n supported,\n authorization: { status: \"unknown\", reason: \"CUSTOM_RESOLVER\" },\n requiredRole,\n resource: null,\n } as const satisfies RecordPermission;\n }\n if (!permissioned) {\n const source = ownerAuthorized\n ? \"owner\"\n : operatorAuthorized\n ? \"operator-approval\"\n : delegateAuthorized\n ? \"resolver-delegate\"\n : \"none\";\n return {\n record,\n supported,\n authorization:\n source === \"none\"\n ? {\n status: \"unauthorized\",\n requirement: { kind: \"resolver-delegate\" },\n }\n : { status: \"authorized\", source },\n requiredRole,\n resource: null,\n } as const satisfies RecordPermission;\n }\n\n const part = resolverRecordPart(record);\n const node = namehash(name);\n const exact = record.type === \"alias\" ? 0n : resolverResource(node, part);\n const resources =\n record.type === \"alias\"\n ? [0n]\n : BigInt(part) === 0n\n ? [exact]\n : [\n exact,\n resolverResource(namehash(\"\"), part),\n resolverResource(node, resolverRecordPart({ type: \"clear\" })),\n ];\n const checks = yield* Effect.all(\n resources.map((resource) =>\n ethereum.readContract({\n address: resolverAddress,\n abi: permissionedResolverV2InterfaceHasRolesAbi,\n functionName: \"hasRoles\",\n args: [resource, requiredRole, parameters.account],\n }),\n ),\n { concurrency: \"unbounded\" },\n );\n const authorized = checks.some(Boolean);\n return {\n record,\n supported,\n authorization: authorized\n ? { status: \"authorized\", source: \"resolver-role\" }\n : {\n status: \"unauthorized\",\n requirement: { kind: \"resolver-role\", roles: requiredRole, resource: exact },\n },\n requiredRole,\n resource: exact,\n } as const satisfies RecordPermission;\n }),\n { concurrency: \"unbounded\" },\n );\n return {\n resolver: resolverAddress,\n inherited: resolver.inherited,\n account: parameters.account,\n records,\n } satisfies RecordPermissionsResult;\n }),\n );\n});\n\nexport const getRecordPermissions = defineReadAction<\n GetRecordPermissionsParameters,\n RecordPermissionsResult,\n CapabilityError\n>(getRecordPermissionsEffect);\n\nexport type {\n CapabilityError as GetRecordPermissionsError,\n RecordPermission,\n RecordPermissionsResult,\n} from \"../types.js\";\n"],"mappings":";;;;;;;;;;;;;AAoCA,MAAM,oBAAoB,UAA4B,WAAqC;CACzF,QAAQ,OAAO,MAAf;EACE,KAAK,WACH,OAAO,SAAS;EAClB,KAAK,QACH,OAAO,SAAS;EAClB,KAAK,eACH,OAAO,SAAS;EAClB,KAAK,OACH,OAAO,SAAS;EAClB,KAAK,UACH,OAAO,SAAS;EAClB,KAAK,aACH,OAAO,SAAS;EAClB,KAAK,QACH,OAAO,SAAS;EAClB,KAAK,QACH,OAAO,SAAS;EAClB,KAAK,aACH,OAAO,SAAS;EAClB,KAAK,WACH,OAAO,SAAS;EAClB,KAAK,SACH,OAAO;EACT,KAAK,SACH,OAAO;CACX;AACF;AAEA,MAAM,6BAA6B,OAAO,GAAG,+BAA+B,CAAC,CAAC,WAC5E,QACA,YACA;CACA,MAAM,OAAO,OAAO,cAAc,OAAO,WAAW,IAAI;CACxD,OAAO,OAAO,YACZ,QACA,YACA,OAAO,IAAI,aAAa;EACtB,MAAM,WAAW,OAAO,wBAAwB,OAAO,QAAQ,UAAU;EACzE,IAAI,SAAS,YAAY,MACvB,OAAO;GACL,UAAU;GACV,WAAW;GACX,SAAS,WAAW;GACpB,SAAS,WAAW,QAAQ,KAAK,YAA8B;IAC7D;IACA,WAAW;IACX,eAAe;KACb,QAAQ;KACR,aAAa,EAAE,MAAM,cAAc;IACrC;IACA,cAAc,mBAAmB,MAAM;IACvC,UAAU;GACZ,EAAE;EACJ;EAGF,MAAM,WAAW,OAAO;EACxB,MAAM,kBAAkB,SAAS;EACjC,MAAM,eAAe,SAAS,kBAAkB;EAChD,MAAM,UACJ,SAAS,kBAAkB,mBACvB,OAAO,WAAW,OAAO,QAAQ,UAAU,IAC3C;EACN,IAAI,kBAAkB;EACtB,IAAI,qBAAqB;EACzB,IAAI,qBAAqB;EACzB,IAAI,SAAS,kBAAkB,oBAAoB,YAAY,MAAM;GACnE,kBAAkB,QAAQ,YAAY,MAAM,WAAW,QAAQ,YAAY;GAC3E,CAAC,oBAAoB,sBAAsB,OAAO,OAAO,IACvD,CACE,SACG,aAAa;IACZ,SAAS;IACT,KAAK;IACL,cAAc;IACd,MAAM,CAAC,SAAS,WAAW,OAAO;GACpC,CAAC,CAAC,CACD,KAAK,OAAO,SAAS,uBAAuB,OAAO,QAAQ,KAAK,CAAC,CAAC,GACrE,SACG,aAAa;IACZ,SAAS;IACT,KAAK;IACL,cAAc;IACd,MAAM;KAAC;KAAS,SAAS,IAAI;KAAG,WAAW;IAAO;GACpD,CAAC,CAAC,CACD,KAAK,OAAO,SAAS,uBAAuB,OAAO,QAAQ,KAAK,CAAC,CAAC,CACvE,GACA,EAAE,aAAa,YAAY,CAC7B;EACF;EAEA,MAAM,UAAU,OAAO,OAAO,QAC5B,WAAW,SACX,OAAO,GAAG,sCAAsC,CAAC,CAAC,WAAW,QAAQ;GACnE,MAAM,YACJ,OAAO,SAAS,UACZ,SAAS,eACT,iBAAiB,SAAS,UAAU,MAAM;GAChD,MAAM,eAAe,mBAAmB,MAAM;GAC9C,IAAI,CAAC,WACH,OAAO;IACL;IACA;IACA,eAAe;KACb,QAAQ;KACR,aAAa,EAAE,MAAM,cAAc;IACrC;IACA;IACA,UAAU;GACZ;GAEF,IAAI,SAAS,kBAAkB,WAC7B,OAAO;IACL;IACA;IACA,eAAe;KAAE,QAAQ;KAAW,QAAQ;IAAkB;IAC9D;IACA,UAAU;GACZ;GAEF,IAAI,CAAC,cAAc;IACjB,MAAM,SAAS,kBACX,UACA,qBACE,sBACA,qBACE,sBACA;IACR,OAAO;KACL;KACA;KACA,eACE,WAAW,SACP;MACE,QAAQ;MACR,aAAa,EAAE,MAAM,oBAAoB;KAC3C,IACA;MAAE,QAAQ;MAAc;KAAO;KACrC;KACA,UAAU;IACZ;GACF;GAEA,MAAM,OAAO,mBAAmB,MAAM;GACtC,MAAM,OAAO,SAAS,IAAI;GAC1B,MAAM,QAAQ,OAAO,SAAS,UAAU,KAAK,iBAAiB,MAAM,IAAI;GACxE,MAAM,YACJ,OAAO,SAAS,UACZ,CAAC,EAAE,IACH,OAAO,IAAI,MAAM,KACf,CAAC,KAAK,IACN;IACE;IACA,iBAAiB,SAAS,EAAE,GAAG,IAAI;IACnC,iBAAiB,MAAM,mBAAmB,EAAE,MAAM,QAAQ,CAAC,CAAC;GAC9D;GAaR,OAAO;IACL;IACA;IACA,gBAJiB,OAXG,OAAO,IAC3B,UAAU,KAAK,aACb,SAAS,aAAa;KACpB,SAAS;KACT,KAAK;KACL,cAAc;KACd,MAAM;MAAC;MAAU;MAAc,WAAW;KAAO;IACnD,CAAC,CACH,GACA,EAAE,aAAa,YAAY,CAC7B,EACyB,CAAC,KAAK,OAIL,IACpB;KAAE,QAAQ;KAAc,QAAQ;IAAgB,IAChD;KACE,QAAQ;KACR,aAAa;MAAE,MAAM;MAAiB,OAAO;MAAc,UAAU;KAAM;IAC7E;IACJ;IACA,UAAU;GACZ;EACF,CAAC,GACD,EAAE,aAAa,YAAY,CAC7B;EACA,OAAO;GACL,UAAU;GACV,WAAW,SAAS;GACpB,SAAS,WAAW;GACpB;EACF;CACF,CAAC,CACH;AACF,CAAC;AAED,MAAa,uBAAuB,iBAIlC,0BAA0B"}
|