@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,111 @@
|
|
|
1
|
+
import { defineAction } from "../../../action/action.js";
|
|
2
|
+
import { WritePlanError } from "../../../errors/write-plan-error.js";
|
|
3
|
+
import { executeWritePlan } from "../../batch/execute-write-plan.js";
|
|
4
|
+
import { normalizeName } from "../../../names/normalize.js";
|
|
5
|
+
import { getOwner } from "../../name/get-owner/index.js";
|
|
6
|
+
import { getWriteTarget } from "../../capabilities/get-write-target/index.js";
|
|
7
|
+
import { decodeTransferRecipient } from "../address.js";
|
|
8
|
+
import { AuthorizationError } from "../../../errors/authorization-error.js";
|
|
9
|
+
import { getNameState } from "../../name/get-name-state/index.js";
|
|
10
|
+
import { reclaimName } from "../reclaim-name/index.js";
|
|
11
|
+
import { setManager } from "../set-manager/index.js";
|
|
12
|
+
import { transferRegistrant } from "../transfer-registrant/index.js";
|
|
13
|
+
import { transferOwnershipToken } from "../transfer-token.js";
|
|
14
|
+
import { Effect } from "effect";
|
|
15
|
+
import { isAddressEqual, keccak256, stringToHex } from "viem";
|
|
16
|
+
|
|
17
|
+
//#region src/actions/ownership/transfer-name/index.ts
|
|
18
|
+
const resolveTransferRoute = Effect.fn("ensforge.transferName.resolveRoute")(function* (config, name) {
|
|
19
|
+
const [target, owner] = yield* Effect.all([getWriteTarget.effect(config, {
|
|
20
|
+
name,
|
|
21
|
+
operation: { type: "transfer" }
|
|
22
|
+
}), getOwner.effect(config, { name })], { concurrency: "unbounded" });
|
|
23
|
+
if (!target.available || owner === null) return yield* new AuthorizationError({
|
|
24
|
+
code: "WRITE_TARGET_UNAVAILABLE",
|
|
25
|
+
message: `Ownership is unavailable for ${name}`
|
|
26
|
+
});
|
|
27
|
+
const from = target.kind === "registrar" ? owner.registrant : owner.owner;
|
|
28
|
+
if (from === null) return yield* new AuthorizationError({
|
|
29
|
+
code: "WRITE_TARGET_UNAVAILABLE",
|
|
30
|
+
message: `The current transferable owner is unavailable for ${name}`
|
|
31
|
+
});
|
|
32
|
+
const strategy = target.protocol === "v2" ? "v2-registry" : target.kind === "registrar" ? "registrar-and-manager" : target.kind === "name-wrapper" ? "name-wrapper" : "registry";
|
|
33
|
+
return {
|
|
34
|
+
protocol: target.protocol,
|
|
35
|
+
strategy,
|
|
36
|
+
from,
|
|
37
|
+
contract: target.address,
|
|
38
|
+
tokenId: target.tokenId
|
|
39
|
+
};
|
|
40
|
+
});
|
|
41
|
+
const makePlanId = (name, to, strategy) => `transferName:${keccak256(stringToHex(JSON.stringify({
|
|
42
|
+
name,
|
|
43
|
+
to,
|
|
44
|
+
strategy
|
|
45
|
+
})))}`;
|
|
46
|
+
const makePlan = (name, to, route, parameters) => {
|
|
47
|
+
const calls = route.strategy === "registrar-and-manager" ? [reclaimName.call({
|
|
48
|
+
name,
|
|
49
|
+
manager: to
|
|
50
|
+
}), transferRegistrant.call({
|
|
51
|
+
name,
|
|
52
|
+
to
|
|
53
|
+
})] : route.strategy === "registry" ? [setManager.call({
|
|
54
|
+
name,
|
|
55
|
+
manager: to
|
|
56
|
+
})] : [transferOwnershipToken.call({
|
|
57
|
+
name,
|
|
58
|
+
protocol: route.protocol,
|
|
59
|
+
contract: route.contract,
|
|
60
|
+
tokenId: route.tokenId ?? 0n,
|
|
61
|
+
from: route.from,
|
|
62
|
+
to
|
|
63
|
+
})];
|
|
64
|
+
return {
|
|
65
|
+
id: makePlanId(name, to, route.strategy),
|
|
66
|
+
stages: [{
|
|
67
|
+
type: "calls",
|
|
68
|
+
id: "transfer-ownership",
|
|
69
|
+
calls,
|
|
70
|
+
mode: parameters.mode ?? "auto",
|
|
71
|
+
atomicity: calls.length > 1 ? "preferred" : "none",
|
|
72
|
+
confirmation: parameters.confirmation ?? { type: "confirmed" }
|
|
73
|
+
}]
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
const isConfirmed = (write) => write.status === "completed" && write.completedStages.every((stage) => stage.result.calls.every((call) => call.status === "confirmed"));
|
|
77
|
+
const implementation = Effect.fn("ensforge.transferName")(function* (config, parameters) {
|
|
78
|
+
const name = yield* normalizeName.effect(parameters.name);
|
|
79
|
+
const to = yield* decodeTransferRecipient(parameters.to);
|
|
80
|
+
const current = yield* resolveTransferRoute(config, name);
|
|
81
|
+
const route = parameters.resume === void 0 ? current : {
|
|
82
|
+
...current,
|
|
83
|
+
from: parameters.resume.from
|
|
84
|
+
};
|
|
85
|
+
if (parameters.resume !== void 0 && (parameters.resume.name !== name || !isAddressEqual(parameters.resume.to, to) || parameters.resume.protocol !== current.protocol || parameters.resume.strategy !== current.strategy)) return yield* new WritePlanError({
|
|
86
|
+
code: "INVALID_CALL_PLAN",
|
|
87
|
+
message: "Transfer progress does not match the current name and transfer parameters",
|
|
88
|
+
cause: parameters.resume
|
|
89
|
+
});
|
|
90
|
+
const write = yield* executeWritePlan.effect(config, {
|
|
91
|
+
plan: makePlan(name, to, route, parameters),
|
|
92
|
+
...parameters.resume === void 0 ? {} : { resume: parameters.resume.write },
|
|
93
|
+
...parameters.walletClient === void 0 ? {} : { walletClient: parameters.walletClient },
|
|
94
|
+
...parameters.account === void 0 ? {} : { account: parameters.account }
|
|
95
|
+
});
|
|
96
|
+
const finalState = isConfirmed(write) ? yield* getNameState.effect(config, { name }) : null;
|
|
97
|
+
return {
|
|
98
|
+
name,
|
|
99
|
+
protocol: route.protocol,
|
|
100
|
+
strategy: route.strategy,
|
|
101
|
+
from: route.from,
|
|
102
|
+
to,
|
|
103
|
+
write,
|
|
104
|
+
finalState
|
|
105
|
+
};
|
|
106
|
+
});
|
|
107
|
+
const transferName = defineAction(implementation);
|
|
108
|
+
|
|
109
|
+
//#endregion
|
|
110
|
+
export { transferName };
|
|
111
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/actions/ownership/transfer-name/index.ts"],"sourcesContent":["import { Effect } from \"effect\";\n\nimport { isAddressEqual, keccak256, stringToHex } from \"viem\";\n\nimport { defineAction } from \"../../../action/action.js\";\nimport type { EnsforgeConfig } from \"../../../config/config.js\";\nimport { AuthorizationError } from \"../../../errors/authorization-error.js\";\nimport { WritePlanError } from \"../../../errors/write-plan-error.js\";\nimport { normalizeName } from \"../../../names/normalize.js\";\nimport type { EthereumAddress } from \"../../../schemas/identity.js\";\nimport type { EnsProtocol } from \"../../../schemas/protocol.js\";\nimport type { WritePlan } from \"../../../write/types.js\";\nimport { executeWritePlan } from \"../../batch/execute-write-plan.js\";\nimport { getWriteTarget } from \"../../capabilities/get-write-target/index.js\";\nimport { getNameState } from \"../../name/get-name-state/index.js\";\nimport { getOwner } from \"../../name/get-owner/index.js\";\nimport { decodeTransferRecipient } from \"../address.js\";\nimport { reclaimName } from \"../reclaim-name/index.js\";\nimport { setManager } from \"../set-manager/index.js\";\nimport { transferRegistrant } from \"../transfer-registrant/index.js\";\nimport { transferOwnershipToken } from \"../transfer-token.js\";\nimport type {\n TransferNameError,\n TransferNameParameters,\n TransferNameResult,\n TransferNameStrategy,\n} from \"../types.js\";\n\ninterface TransferRoute {\n readonly protocol: EnsProtocol;\n readonly strategy: TransferNameStrategy;\n readonly from: EthereumAddress;\n readonly contract: EthereumAddress;\n readonly tokenId: bigint | null;\n}\n\nconst resolveTransferRoute = Effect.fn(\"ensforge.transferName.resolveRoute\")(function* (\n config: EnsforgeConfig,\n name: string,\n): Effect.fn.Return<TransferRoute, TransferNameError> {\n const [target, owner] = yield* Effect.all(\n [\n getWriteTarget.effect(config, { name, operation: { type: \"transfer\" } }),\n getOwner.effect(config, { name }),\n ] as const,\n { concurrency: \"unbounded\" },\n );\n if (!target.available || owner === null) {\n return yield* new AuthorizationError({\n code: \"WRITE_TARGET_UNAVAILABLE\",\n message: `Ownership is unavailable for ${name}`,\n });\n }\n const from = target.kind === \"registrar\" ? owner.registrant : owner.owner;\n if (from === null) {\n return yield* new AuthorizationError({\n code: \"WRITE_TARGET_UNAVAILABLE\",\n message: `The current transferable owner is unavailable for ${name}`,\n });\n }\n const strategy: TransferNameStrategy =\n target.protocol === \"v2\"\n ? \"v2-registry\"\n : target.kind === \"registrar\"\n ? \"registrar-and-manager\"\n : target.kind === \"name-wrapper\"\n ? \"name-wrapper\"\n : \"registry\";\n return {\n protocol: target.protocol,\n strategy,\n from,\n contract: target.address,\n tokenId: target.tokenId,\n };\n});\n\nconst makePlanId = (name: string, to: EthereumAddress, strategy: TransferNameStrategy) =>\n `transferName:${keccak256(stringToHex(JSON.stringify({ name, to, strategy })))}`;\n\nconst makePlan = (\n name: string,\n to: EthereumAddress,\n route: TransferRoute,\n parameters: TransferNameParameters,\n): WritePlan => {\n const calls =\n route.strategy === \"registrar-and-manager\"\n ? [reclaimName.call({ name, manager: to }), transferRegistrant.call({ name, to })]\n : route.strategy === \"registry\"\n ? [setManager.call({ name, manager: to })]\n : [\n transferOwnershipToken.call({\n name,\n protocol: route.protocol,\n contract: route.contract,\n tokenId: route.tokenId ?? 0n,\n from: route.from,\n to,\n }),\n ];\n return {\n id: makePlanId(name, to, route.strategy),\n stages: [\n {\n type: \"calls\",\n id: \"transfer-ownership\",\n calls,\n mode: parameters.mode ?? \"auto\",\n atomicity: calls.length > 1 ? \"preferred\" : \"none\",\n confirmation: parameters.confirmation ?? { type: \"confirmed\" },\n },\n ],\n };\n};\n\nconst isConfirmed = (write: TransferNameResult[\"write\"]) =>\n write.status === \"completed\" &&\n write.completedStages.every((stage) =>\n stage.result.calls.every((call) => call.status === \"confirmed\"),\n );\n\nconst implementation = Effect.fn(\"ensforge.transferName\")(function* (\n config: EnsforgeConfig,\n parameters: TransferNameParameters,\n): Effect.fn.Return<TransferNameResult, TransferNameError> {\n const name = yield* normalizeName.effect(parameters.name);\n const to = yield* decodeTransferRecipient(parameters.to);\n const current = yield* resolveTransferRoute(config, name);\n const route: TransferRoute =\n parameters.resume === undefined ? current : { ...current, from: parameters.resume.from };\n if (\n parameters.resume !== undefined &&\n (parameters.resume.name !== name ||\n !isAddressEqual(parameters.resume.to, to) ||\n parameters.resume.protocol !== current.protocol ||\n parameters.resume.strategy !== current.strategy)\n ) {\n return yield* new WritePlanError({\n code: \"INVALID_CALL_PLAN\",\n message: \"Transfer progress does not match the current name and transfer parameters\",\n cause: parameters.resume,\n });\n }\n const write = yield* executeWritePlan.effect(config, {\n plan: makePlan(name, to, route, parameters),\n ...(parameters.resume === undefined ? {} : { resume: parameters.resume.write }),\n ...(parameters.walletClient === undefined ? {} : { walletClient: parameters.walletClient }),\n ...(parameters.account === undefined ? {} : { account: parameters.account }),\n });\n const finalState = isConfirmed(write) ? yield* getNameState.effect(config, { name }) : null;\n return {\n name,\n protocol: route.protocol,\n strategy: route.strategy,\n from: route.from,\n to,\n write,\n finalState,\n };\n});\n\nexport const transferName = defineAction<\n TransferNameParameters,\n TransferNameResult,\n TransferNameError\n>(implementation);\n\nexport type {\n TransferNameError,\n TransferNameParameters,\n TransferNameProgress,\n TransferNameResult,\n TransferNameStrategy,\n} from \"../types.js\";\n"],"mappings":";;;;;;;;;;;;;;;;;AAoCA,MAAM,uBAAuB,OAAO,GAAG,oCAAoC,CAAC,CAAC,WAC3E,QACA,MACoD;CACpD,MAAM,CAAC,QAAQ,SAAS,OAAO,OAAO,IACpC,CACE,eAAe,OAAO,QAAQ;EAAE;EAAM,WAAW,EAAE,MAAM,WAAW;CAAE,CAAC,GACvE,SAAS,OAAO,QAAQ,EAAE,KAAK,CAAC,CAClC,GACA,EAAE,aAAa,YAAY,CAC7B;CACA,IAAI,CAAC,OAAO,aAAa,UAAU,MACjC,OAAO,OAAO,IAAI,mBAAmB;EACnC,MAAM;EACN,SAAS,gCAAgC;CAC3C,CAAC;CAEH,MAAM,OAAO,OAAO,SAAS,cAAc,MAAM,aAAa,MAAM;CACpE,IAAI,SAAS,MACX,OAAO,OAAO,IAAI,mBAAmB;EACnC,MAAM;EACN,SAAS,qDAAqD;CAChE,CAAC;CAEH,MAAM,WACJ,OAAO,aAAa,OAChB,gBACA,OAAO,SAAS,cACd,0BACA,OAAO,SAAS,iBACd,iBACA;CACV,OAAO;EACL,UAAU,OAAO;EACjB;EACA;EACA,UAAU,OAAO;EACjB,SAAS,OAAO;CAClB;AACF,CAAC;AAED,MAAM,cAAc,MAAc,IAAqB,aACrD,gBAAgB,UAAU,YAAY,KAAK,UAAU;CAAE;CAAM;CAAI;AAAS,CAAC,CAAC,CAAC;AAE/E,MAAM,YACJ,MACA,IACA,OACA,eACc;CACd,MAAM,QACJ,MAAM,aAAa,0BACf,CAAC,YAAY,KAAK;EAAE;EAAM,SAAS;CAAG,CAAC,GAAG,mBAAmB,KAAK;EAAE;EAAM;CAAG,CAAC,CAAC,IAC/E,MAAM,aAAa,aACjB,CAAC,WAAW,KAAK;EAAE;EAAM,SAAS;CAAG,CAAC,CAAC,IACvC,CACE,uBAAuB,KAAK;EAC1B;EACA,UAAU,MAAM;EAChB,UAAU,MAAM;EAChB,SAAS,MAAM,WAAW;EAC1B,MAAM,MAAM;EACZ;CACF,CAAC,CACH;CACR,OAAO;EACL,IAAI,WAAW,MAAM,IAAI,MAAM,QAAQ;EACvC,QAAQ,CACN;GACE,MAAM;GACN,IAAI;GACJ;GACA,MAAM,WAAW,QAAQ;GACzB,WAAW,MAAM,SAAS,IAAI,cAAc;GAC5C,cAAc,WAAW,gBAAgB,EAAE,MAAM,YAAY;EAC/D,CACF;CACF;AACF;AAEA,MAAM,eAAe,UACnB,MAAM,WAAW,eACjB,MAAM,gBAAgB,OAAO,UAC3B,MAAM,OAAO,MAAM,OAAO,SAAS,KAAK,WAAW,WAAW,CAChE;AAEF,MAAM,iBAAiB,OAAO,GAAG,uBAAuB,CAAC,CAAC,WACxD,QACA,YACyD;CACzD,MAAM,OAAO,OAAO,cAAc,OAAO,WAAW,IAAI;CACxD,MAAM,KAAK,OAAO,wBAAwB,WAAW,EAAE;CACvD,MAAM,UAAU,OAAO,qBAAqB,QAAQ,IAAI;CACxD,MAAM,QACJ,WAAW,WAAW,SAAY,UAAU;EAAE,GAAG;EAAS,MAAM,WAAW,OAAO;CAAK;CACzF,IACE,WAAW,WAAW,WACrB,WAAW,OAAO,SAAS,QAC1B,CAAC,eAAe,WAAW,OAAO,IAAI,EAAE,KACxC,WAAW,OAAO,aAAa,QAAQ,YACvC,WAAW,OAAO,aAAa,QAAQ,WAEzC,OAAO,OAAO,IAAI,eAAe;EAC/B,MAAM;EACN,SAAS;EACT,OAAO,WAAW;CACpB,CAAC;CAEH,MAAM,QAAQ,OAAO,iBAAiB,OAAO,QAAQ;EACnD,MAAM,SAAS,MAAM,IAAI,OAAO,UAAU;EAC1C,GAAI,WAAW,WAAW,SAAY,CAAC,IAAI,EAAE,QAAQ,WAAW,OAAO,MAAM;EAC7E,GAAI,WAAW,iBAAiB,SAAY,CAAC,IAAI,EAAE,cAAc,WAAW,aAAa;EACzF,GAAI,WAAW,YAAY,SAAY,CAAC,IAAI,EAAE,SAAS,WAAW,QAAQ;CAC5E,CAAC;CACD,MAAM,aAAa,YAAY,KAAK,IAAI,OAAO,aAAa,OAAO,QAAQ,EAAE,KAAK,CAAC,IAAI;CACvF,OAAO;EACL;EACA,UAAU,MAAM;EAChB,UAAU,MAAM;EAChB,MAAM,MAAM;EACZ;EACA;EACA;CACF;AACF,CAAC;AAED,MAAa,eAAe,aAI1B,cAAc"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CallExecutionResult, WriteError } from "../../../write/types.js";
|
|
2
|
+
import { EnsWriteAction } from "../../../action/write-intent.js";
|
|
3
|
+
import { OwnershipWriteError, OwnershipWriteResult, TransferRegistrantParameters } from "../types.js";
|
|
4
|
+
import "../../../index.js";
|
|
5
|
+
//#region src/actions/ownership/transfer-registrant/index.d.ts
|
|
6
|
+
declare const transferRegistrant: EnsWriteAction<TransferRegistrantParameters, CallExecutionResult, WriteError>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { type OwnershipWriteError as TransferRegistrantError, type TransferRegistrantParameters, type OwnershipWriteResult as TransferRegistrantResult, transferRegistrant };
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/actions/ownership/transfer-registrant/index.ts"],"mappings":";;;;;cAuCa,oBAAkB,eAAA,8BAAA,qBAAA"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { ContractError } from "../../../errors/contract-error.js";
|
|
2
|
+
import { normalizeName } from "../../../names/normalize.js";
|
|
3
|
+
import { makeSingleWriteAction } from "../../../internal/write/single-write-action.js";
|
|
4
|
+
import { decodeTransferRecipient } from "../address.js";
|
|
5
|
+
import { requireOwnershipAuthorization } from "../authorization.js";
|
|
6
|
+
import { getRegistrarTarget } from "../registrar-target.js";
|
|
7
|
+
import { Effect } from "effect";
|
|
8
|
+
import { encodeFunctionData } from "viem";
|
|
9
|
+
import { baseRegistrarV1SafeTransferFromAbi } from "@ensforge/contracts/v1";
|
|
10
|
+
|
|
11
|
+
//#region src/actions/ownership/transfer-registrant/index.ts
|
|
12
|
+
const prepare = Effect.fn("ensforge.transferRegistrant.prepare")(function* (config, parameters, context) {
|
|
13
|
+
const name = yield* normalizeName.effect(parameters.name);
|
|
14
|
+
const to = yield* decodeTransferRecipient(parameters.to);
|
|
15
|
+
const target = yield* getRegistrarTarget(config, name);
|
|
16
|
+
yield* requireOwnershipAuthorization(config, name, context.account, { type: "transfer" });
|
|
17
|
+
const data = yield* Effect.try({
|
|
18
|
+
try: () => encodeFunctionData({
|
|
19
|
+
abi: baseRegistrarV1SafeTransferFromAbi,
|
|
20
|
+
functionName: "safeTransferFrom",
|
|
21
|
+
args: [
|
|
22
|
+
target.registrant,
|
|
23
|
+
to,
|
|
24
|
+
target.tokenId
|
|
25
|
+
]
|
|
26
|
+
}),
|
|
27
|
+
catch: (cause) => new ContractError({
|
|
28
|
+
code: "ENCODE_FAILED",
|
|
29
|
+
message: `Unable to encode the registrant transfer for ${name}`,
|
|
30
|
+
cause
|
|
31
|
+
})
|
|
32
|
+
});
|
|
33
|
+
return {
|
|
34
|
+
to: target.address,
|
|
35
|
+
data,
|
|
36
|
+
value: 0n,
|
|
37
|
+
protocol: "v1"
|
|
38
|
+
};
|
|
39
|
+
});
|
|
40
|
+
const transferRegistrant = makeSingleWriteAction("transferRegistrant", prepare);
|
|
41
|
+
|
|
42
|
+
//#endregion
|
|
43
|
+
export { transferRegistrant };
|
|
44
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/actions/ownership/transfer-registrant/index.ts"],"sourcesContent":["import { Effect } from \"effect\";\n\nimport { baseRegistrarV1SafeTransferFromAbi } from \"@ensforge/contracts/v1\";\nimport { encodeFunctionData } from \"viem\";\n\nimport type { EnsWriteIntentPreparer } from \"../../../action/write-intent.js\";\nimport { ContractError } from \"../../../errors/contract-error.js\";\nimport { makeSingleWriteAction } from \"../../../internal/write/single-write-action.js\";\nimport { normalizeName } from \"../../../names/normalize.js\";\nimport type { WriteError } from \"../../../write/types.js\";\nimport { decodeTransferRecipient } from \"../address.js\";\nimport { requireOwnershipAuthorization } from \"../authorization.js\";\nimport { getRegistrarTarget } from \"../registrar-target.js\";\nimport type { TransferRegistrantParameters } from \"../types.js\";\n\nconst prepare: EnsWriteIntentPreparer<TransferRegistrantParameters, WriteError> = Effect.fn(\n \"ensforge.transferRegistrant.prepare\",\n)(function* (config, parameters, context) {\n const name = yield* normalizeName.effect(parameters.name);\n const to = yield* decodeTransferRecipient(parameters.to);\n const target = yield* getRegistrarTarget(config, name);\n yield* requireOwnershipAuthorization(config, name, context.account, { type: \"transfer\" });\n const data = yield* Effect.try({\n try: () =>\n encodeFunctionData({\n abi: baseRegistrarV1SafeTransferFromAbi,\n functionName: \"safeTransferFrom\",\n args: [target.registrant, to, target.tokenId],\n }),\n catch: (cause) =>\n new ContractError({\n code: \"ENCODE_FAILED\",\n message: `Unable to encode the registrant transfer for ${name}`,\n cause,\n }),\n });\n return { to: target.address, data, value: 0n, protocol: \"v1\" as const };\n});\n\nexport const transferRegistrant = makeSingleWriteAction(\"transferRegistrant\", prepare);\n\nexport type {\n OwnershipWriteError as TransferRegistrantError,\n OwnershipWriteResult as TransferRegistrantResult,\n TransferRegistrantParameters,\n} from \"../types.js\";\n"],"mappings":";;;;;;;;;;;AAeA,MAAM,UAA4E,OAAO,GACvF,qCACF,CAAC,CAAC,WAAW,QAAQ,YAAY,SAAS;CACxC,MAAM,OAAO,OAAO,cAAc,OAAO,WAAW,IAAI;CACxD,MAAM,KAAK,OAAO,wBAAwB,WAAW,EAAE;CACvD,MAAM,SAAS,OAAO,mBAAmB,QAAQ,IAAI;CACrD,OAAO,8BAA8B,QAAQ,MAAM,QAAQ,SAAS,EAAE,MAAM,WAAW,CAAC;CACxF,MAAM,OAAO,OAAO,OAAO,IAAI;EAC7B,WACE,mBAAmB;GACjB,KAAK;GACL,cAAc;GACd,MAAM;IAAC,OAAO;IAAY;IAAI,OAAO;GAAO;EAC9C,CAAC;EACH,QAAQ,UACN,IAAI,cAAc;GAChB,MAAM;GACN,SAAS,gDAAgD;GACzD;EACF,CAAC;CACL,CAAC;CACD,OAAO;EAAE,IAAI,OAAO;EAAS;EAAM,OAAO;EAAI,UAAU;CAAc;AACxE,CAAC;AAED,MAAa,qBAAqB,sBAAsB,sBAAsB,OAAO"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { ContractError } from "../../errors/contract-error.js";
|
|
2
|
+
import { makeSingleWriteAction } from "../../internal/write/single-write-action.js";
|
|
3
|
+
import { requireOwnershipAuthorization } from "./authorization.js";
|
|
4
|
+
import { Effect } from "effect";
|
|
5
|
+
import { encodeFunctionData } from "viem";
|
|
6
|
+
import { nameWrapperV1SafeTransferFromAbi } from "@ensforge/contracts/v1";
|
|
7
|
+
import { tokenizedRegistryV2InterfaceSafeTransferFromAbi } from "@ensforge/contracts/v2";
|
|
8
|
+
|
|
9
|
+
//#region src/actions/ownership/transfer-token.ts
|
|
10
|
+
const prepare = Effect.fn("ensforge.transferName.prepareTokenTransfer")(function* (config, parameters, context) {
|
|
11
|
+
yield* requireOwnershipAuthorization(config, parameters.name, context.account, { type: "transfer" });
|
|
12
|
+
const data = yield* Effect.try({
|
|
13
|
+
try: () => parameters.protocol === "v1" ? encodeFunctionData({
|
|
14
|
+
abi: nameWrapperV1SafeTransferFromAbi,
|
|
15
|
+
functionName: "safeTransferFrom",
|
|
16
|
+
args: [
|
|
17
|
+
parameters.from,
|
|
18
|
+
parameters.to,
|
|
19
|
+
parameters.tokenId,
|
|
20
|
+
1n,
|
|
21
|
+
"0x"
|
|
22
|
+
]
|
|
23
|
+
}) : encodeFunctionData({
|
|
24
|
+
abi: tokenizedRegistryV2InterfaceSafeTransferFromAbi,
|
|
25
|
+
functionName: "safeTransferFrom",
|
|
26
|
+
args: [
|
|
27
|
+
parameters.from,
|
|
28
|
+
parameters.to,
|
|
29
|
+
parameters.tokenId,
|
|
30
|
+
1n,
|
|
31
|
+
"0x"
|
|
32
|
+
]
|
|
33
|
+
}),
|
|
34
|
+
catch: (cause) => new ContractError({
|
|
35
|
+
code: "ENCODE_FAILED",
|
|
36
|
+
message: "Unable to encode the ownership token transfer",
|
|
37
|
+
cause
|
|
38
|
+
})
|
|
39
|
+
});
|
|
40
|
+
return {
|
|
41
|
+
to: parameters.contract,
|
|
42
|
+
data,
|
|
43
|
+
value: 0n,
|
|
44
|
+
protocol: parameters.protocol
|
|
45
|
+
};
|
|
46
|
+
});
|
|
47
|
+
const transferOwnershipToken = makeSingleWriteAction("transferOwnershipToken", prepare);
|
|
48
|
+
|
|
49
|
+
//#endregion
|
|
50
|
+
export { transferOwnershipToken };
|
|
51
|
+
//# sourceMappingURL=transfer-token.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transfer-token.js","names":[],"sources":["../../../src/actions/ownership/transfer-token.ts"],"sourcesContent":["import { Effect } from \"effect\";\n\nimport { nameWrapperV1SafeTransferFromAbi } from \"@ensforge/contracts/v1\";\nimport { tokenizedRegistryV2InterfaceSafeTransferFromAbi } from \"@ensforge/contracts/v2\";\nimport { encodeFunctionData } from \"viem\";\n\nimport type { EnsWriteIntentPreparer } from \"../../action/write-intent.js\";\nimport { ContractError } from \"../../errors/contract-error.js\";\nimport { makeSingleWriteAction } from \"../../internal/write/single-write-action.js\";\nimport type { EthereumAddress } from \"../../schemas/identity.js\";\nimport type { EnsProtocol } from \"../../schemas/protocol.js\";\nimport type { WriteError } from \"../../write/types.js\";\nimport { requireOwnershipAuthorization } from \"./authorization.js\";\n\ninterface TransferTokenParameters {\n readonly name: string;\n readonly protocol: EnsProtocol;\n readonly contract: EthereumAddress;\n readonly tokenId: bigint;\n readonly from: EthereumAddress;\n readonly to: EthereumAddress;\n}\n\nconst prepare: EnsWriteIntentPreparer<TransferTokenParameters, WriteError> = Effect.fn(\n \"ensforge.transferName.prepareTokenTransfer\",\n)(function* (config, parameters, context) {\n yield* requireOwnershipAuthorization(config, parameters.name, context.account, {\n type: \"transfer\",\n });\n const data = yield* Effect.try({\n try: () =>\n parameters.protocol === \"v1\"\n ? encodeFunctionData({\n abi: nameWrapperV1SafeTransferFromAbi,\n functionName: \"safeTransferFrom\",\n args: [parameters.from, parameters.to, parameters.tokenId, 1n, \"0x\"],\n })\n : encodeFunctionData({\n abi: tokenizedRegistryV2InterfaceSafeTransferFromAbi,\n functionName: \"safeTransferFrom\",\n args: [parameters.from, parameters.to, parameters.tokenId, 1n, \"0x\"],\n }),\n catch: (cause) =>\n new ContractError({\n code: \"ENCODE_FAILED\",\n message: \"Unable to encode the ownership token transfer\",\n cause,\n }),\n });\n return {\n to: parameters.contract,\n data,\n value: 0n,\n protocol: parameters.protocol,\n };\n});\n\nexport const transferOwnershipToken = makeSingleWriteAction(\"transferOwnershipToken\", prepare);\n"],"mappings":";;;;;;;;;AAuBA,MAAM,UAAuE,OAAO,GAClF,4CACF,CAAC,CAAC,WAAW,QAAQ,YAAY,SAAS;CACxC,OAAO,8BAA8B,QAAQ,WAAW,MAAM,QAAQ,SAAS,EAC7E,MAAM,WACR,CAAC;CACD,MAAM,OAAO,OAAO,OAAO,IAAI;EAC7B,WACE,WAAW,aAAa,OACpB,mBAAmB;GACjB,KAAK;GACL,cAAc;GACd,MAAM;IAAC,WAAW;IAAM,WAAW;IAAI,WAAW;IAAS;IAAI;GAAI;EACrE,CAAC,IACD,mBAAmB;GACjB,KAAK;GACL,cAAc;GACd,MAAM;IAAC,WAAW;IAAM,WAAW;IAAI,WAAW;IAAS;IAAI;GAAI;EACrE,CAAC;EACP,QAAQ,UACN,IAAI,cAAc;GAChB,MAAM;GACN,SAAS;GACT;EACF,CAAC;CACL,CAAC;CACD,OAAO;EACL,IAAI,WAAW;EACf;EACA,OAAO;EACP,UAAU,WAAW;CACvB;AACF,CAAC;AAED,MAAa,yBAAyB,sBAAsB,0BAA0B,OAAO"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { EnsProtocol } from "../../schemas/protocol.js";
|
|
2
|
+
import { ConfirmationPolicy } from "../../config/write-options.js";
|
|
3
|
+
import { CallExecutionResult, WriteError, WriteMode, WritePlanProgress } from "../../write/types.js";
|
|
4
|
+
import { EthereumAddress } from "../../schemas/identity.js";
|
|
5
|
+
import { NameState } from "../name/get-name-state/types.js";
|
|
6
|
+
import { Account, Address, WalletClient } from "viem";
|
|
7
|
+
//#region src/actions/ownership/types.d.ts
|
|
8
|
+
type TtlResult = {
|
|
9
|
+
readonly supported: true;
|
|
10
|
+
readonly protocol: "v1";
|
|
11
|
+
readonly ttl: bigint;
|
|
12
|
+
} | {
|
|
13
|
+
readonly supported: false;
|
|
14
|
+
readonly protocol: "v2";
|
|
15
|
+
readonly reason: "TTL_UNSUPPORTED";
|
|
16
|
+
};
|
|
17
|
+
interface SetTtlParameters {
|
|
18
|
+
readonly name: string;
|
|
19
|
+
readonly ttl: bigint;
|
|
20
|
+
}
|
|
21
|
+
interface SetManagerParameters {
|
|
22
|
+
readonly name: string;
|
|
23
|
+
readonly manager: string;
|
|
24
|
+
}
|
|
25
|
+
interface TransferRegistrantParameters {
|
|
26
|
+
readonly name: string;
|
|
27
|
+
readonly to: string;
|
|
28
|
+
}
|
|
29
|
+
interface ReclaimNameParameters {
|
|
30
|
+
readonly name: string;
|
|
31
|
+
readonly manager: string;
|
|
32
|
+
}
|
|
33
|
+
type OwnershipWriteResult = CallExecutionResult;
|
|
34
|
+
type OwnershipWriteError = WriteError;
|
|
35
|
+
type TransferNameStrategy = "registry" | "registrar-and-manager" | "name-wrapper" | "v2-registry";
|
|
36
|
+
interface TransferNameProgress {
|
|
37
|
+
readonly name: string;
|
|
38
|
+
readonly protocol: EnsProtocol;
|
|
39
|
+
readonly strategy: TransferNameStrategy;
|
|
40
|
+
readonly from: EthereumAddress;
|
|
41
|
+
readonly to: EthereumAddress;
|
|
42
|
+
readonly write: WritePlanProgress;
|
|
43
|
+
readonly finalState: NameState | null;
|
|
44
|
+
}
|
|
45
|
+
interface TransferNameParameters {
|
|
46
|
+
readonly name: string;
|
|
47
|
+
readonly to: string;
|
|
48
|
+
readonly walletClient?: WalletClient;
|
|
49
|
+
readonly account?: Account | Address;
|
|
50
|
+
readonly mode?: WriteMode;
|
|
51
|
+
readonly confirmation?: ConfirmationPolicy;
|
|
52
|
+
readonly resume?: TransferNameProgress;
|
|
53
|
+
}
|
|
54
|
+
type TransferNameResult = TransferNameProgress;
|
|
55
|
+
type TransferNameError = WriteError;
|
|
56
|
+
//#endregion
|
|
57
|
+
export { OwnershipWriteError, OwnershipWriteResult, ReclaimNameParameters, SetManagerParameters, SetTtlParameters, TransferNameError, TransferNameParameters, TransferNameProgress, TransferNameResult, TransferNameStrategy, TransferRegistrantParameters, TtlResult };
|
|
58
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","names":[],"sources":["../../../src/actions/ownership/types.ts"],"mappings":";;;;;;;KAaY;WACG;WAA0B;WAAyB;;WACnD;WAA2B;WAAyB;;UAElD;WACN;WACA;;UAGM;WACN;WACA;;UAGM;WACN;WACA;;UAGM;WACN;WACA;;KAGC,uBAAuB;KACvB,sBAAsB;KACtB;UAMK;WACN;WACA,UAAU;WACV,UAAU;WACV,MAAM;WACN,IAAI;WACJ,OAAO;WACP,YAAY;;UAGN;WACN;WACA;WACA,eAAe;WACf,UAAU,UAAU;WACpB,OAAO;WACP,eAAe;WACf,SAAS;;KAGR,qBAAqB;KACrB,oBAAoB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { CodecError } from "../../errors/codec-error.js";
|
|
2
|
+
import { EthereumAddress } from "../../schemas/identity.js";
|
|
3
|
+
import { Effect, Schema } from "effect";
|
|
4
|
+
|
|
5
|
+
//#region src/actions/permissions/address.ts
|
|
6
|
+
const decodePermissionAddress = (value, label) => Effect.try({
|
|
7
|
+
try: () => Schema.decodeUnknownSync(EthereumAddress)(value),
|
|
8
|
+
catch: () => new CodecError({
|
|
9
|
+
code: "INVALID_ADDRESS",
|
|
10
|
+
message: `Invalid ${label} address`
|
|
11
|
+
})
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
//#endregion
|
|
15
|
+
export { decodePermissionAddress };
|
|
16
|
+
//# sourceMappingURL=address.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"address.js","names":[],"sources":["../../../src/actions/permissions/address.ts"],"sourcesContent":["import { Effect, Schema } from \"effect\";\n\nimport { CodecError } from \"../../errors/codec-error.js\";\nimport { EthereumAddress } from \"../../schemas/identity.js\";\n\nexport const decodePermissionAddress = (value: string, label: string) =>\n Effect.try({\n try: () => Schema.decodeUnknownSync(EthereumAddress)(value),\n catch: () =>\n new CodecError({\n code: \"INVALID_ADDRESS\",\n message: `Invalid ${label} address`,\n }),\n });\n"],"mappings":";;;;;AAKA,MAAa,2BAA2B,OAAe,UACrD,OAAO,IAAI;CACT,WAAW,OAAO,kBAAkB,eAAe,CAAC,CAAC,KAAK;CAC1D,aACE,IAAI,WAAW;EACb,MAAM;EACN,SAAS,WAAW,MAAM;CAC5B,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ApproveNameError, ApproveNameIntent, ApproveNameParameters, ApproveNameResult, ClearNameApprovalError, ClearNameApprovalIntent, ClearNameApprovalParameters, ClearNameApprovalResult } from "./name-approval/types.js";
|
|
2
|
+
import { approveName, clearNameApproval } from "./name-approval/index.js";
|
|
3
|
+
import { OperatorApprovalKind, SetOperatorApprovalError, SetOperatorApprovalIntent, SetOperatorApprovalParameters, SetOperatorApprovalResult } from "./operator-approval/types.js";
|
|
4
|
+
import { setOperatorApproval } from "./operator-approval/index.js";
|
|
5
|
+
import { GrantRegistryRolesError, GrantRegistryRolesIntent, GrantRegistryRolesParameters, GrantRegistryRolesResult, RegistryRolesMutationParameters, RevokeRegistryRolesError, RevokeRegistryRolesIntent, RevokeRegistryRolesParameters, RevokeRegistryRolesResult } from "./registry-roles/types.js";
|
|
6
|
+
import { grantRegistryRoles, revokeRegistryRoles } from "./registry-roles/index.js";
|
|
7
|
+
import { SetResolverDelegateApprovalError, SetResolverDelegateApprovalIntent, SetResolverDelegateApprovalParameters, SetResolverDelegateApprovalResult } from "./resolver-delegate-approval/types.js";
|
|
8
|
+
import { setResolverDelegateApproval } from "./resolver-delegate-approval/index.js";
|
|
9
|
+
import { GrantResolverRolesError, GrantResolverRolesIntent, GrantResolverRolesParameters, GrantResolverRolesResult, GrantResolverRootRolesError, GrantResolverRootRolesIntent, GrantResolverRootRolesParameters, GrantResolverRootRolesResult, ResolverRolesMutationParameters, ResolverRootRolesMutationParameters, RevokeResolverRolesError, RevokeResolverRolesIntent, RevokeResolverRolesParameters, RevokeResolverRolesResult, RevokeResolverRootRolesError, RevokeResolverRootRolesIntent, RevokeResolverRootRolesParameters, RevokeResolverRootRolesResult } from "./resolver-roles/types.js";
|
|
10
|
+
import { grantResolverRoles, grantResolverRootRoles, revokeResolverRoles, revokeResolverRootRoles } from "./resolver-roles/index.js";
|
|
11
|
+
import { AppliedRecordPermission, SetRecordPermissionsError, SetRecordPermissionsParameters, SetRecordPermissionsResult } from "./set-record-permissions/types.js";
|
|
12
|
+
import { setRecordPermissions } from "./set-record-permissions/index.js";
|
|
13
|
+
export { type AppliedRecordPermission, type ApproveNameError, type ApproveNameIntent, type ApproveNameParameters, type ApproveNameResult, type ClearNameApprovalError, type ClearNameApprovalIntent, type ClearNameApprovalParameters, type ClearNameApprovalResult, type GrantRegistryRolesError, type GrantRegistryRolesIntent, type GrantRegistryRolesParameters, type GrantRegistryRolesResult, type GrantResolverRolesError, type GrantResolverRolesIntent, type GrantResolverRolesParameters, type GrantResolverRolesResult, type GrantResolverRootRolesError, type GrantResolverRootRolesIntent, type GrantResolverRootRolesParameters, type GrantResolverRootRolesResult, type OperatorApprovalKind, type RegistryRolesMutationParameters, type ResolverRolesMutationParameters, type ResolverRootRolesMutationParameters, type RevokeRegistryRolesError, type RevokeRegistryRolesIntent, type RevokeRegistryRolesParameters, type RevokeRegistryRolesResult, type RevokeResolverRolesError, type RevokeResolverRolesIntent, type RevokeResolverRolesParameters, type RevokeResolverRolesResult, type RevokeResolverRootRolesError, type RevokeResolverRootRolesIntent, type RevokeResolverRootRolesParameters, type RevokeResolverRootRolesResult, type SetOperatorApprovalError, type SetOperatorApprovalIntent, type SetOperatorApprovalParameters, type SetOperatorApprovalResult, type SetRecordPermissionsError, type SetRecordPermissionsParameters, type SetRecordPermissionsResult, type SetResolverDelegateApprovalError, type SetResolverDelegateApprovalIntent, type SetResolverDelegateApprovalParameters, type SetResolverDelegateApprovalResult, approveName, clearNameApproval, grantRegistryRoles, grantResolverRoles, grantResolverRootRoles, revokeRegistryRoles, revokeResolverRoles, revokeResolverRootRoles, setOperatorApproval, setRecordPermissions, setResolverDelegateApproval };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CallExecutionResult, WriteError } from "../../../write/types.js";
|
|
2
|
+
import { EnsWriteAction } from "../../../action/write-intent.js";
|
|
3
|
+
import { ApproveNameError, ApproveNameIntent, ApproveNameParameters, ApproveNameResult, ClearNameApprovalError, ClearNameApprovalIntent, ClearNameApprovalParameters, ClearNameApprovalResult } from "./types.js";
|
|
4
|
+
import "../../../index.js";
|
|
5
|
+
//#region src/actions/permissions/name-approval/index.d.ts
|
|
6
|
+
declare const approveName: EnsWriteAction<ApproveNameParameters, CallExecutionResult, WriteError>;
|
|
7
|
+
declare const clearNameApproval: EnsWriteAction<ClearNameApprovalParameters, CallExecutionResult, WriteError>;
|
|
8
|
+
//#endregion
|
|
9
|
+
export { type ApproveNameError, type ApproveNameIntent, type ApproveNameParameters, type ApproveNameResult, type ClearNameApprovalError, type ClearNameApprovalIntent, type ClearNameApprovalParameters, type ClearNameApprovalResult, approveName, clearNameApproval };
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/actions/permissions/name-approval/index.ts"],"mappings":";;;;;cA8Da,aAAW,eAAA,uBAAA,qBAAA;cACX,mBAAiB,eAAA,6BAAA,qBAAA"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { ContractError } from "../../../errors/contract-error.js";
|
|
2
|
+
import { getTokenApproval } from "../../capabilities/get-token-approval/index.js";
|
|
3
|
+
import { makeSingleWriteAction } from "../../../internal/write/single-write-action.js";
|
|
4
|
+
import { AuthorizationError } from "../../../errors/authorization-error.js";
|
|
5
|
+
import { decodePermissionAddress } from "../address.js";
|
|
6
|
+
import { Effect } from "effect";
|
|
7
|
+
import { encodeFunctionData, zeroAddress } from "viem";
|
|
8
|
+
import { baseRegistrarV1ApproveAbi, nameWrapperV1ApproveAbi } from "@ensforge/contracts/v1";
|
|
9
|
+
|
|
10
|
+
//#region src/actions/permissions/name-approval/index.ts
|
|
11
|
+
const prepare = Effect.fn("ensforge.approveName.prepareApproval")(function* (config, name, approved) {
|
|
12
|
+
const target = yield* getTokenApproval.effect(config, { name });
|
|
13
|
+
if (!target.supported) return yield* new AuthorizationError({
|
|
14
|
+
code: "WRITE_TARGET_UNAVAILABLE",
|
|
15
|
+
message: `Per-name approval is unavailable for ${name}: ${target.reason}`
|
|
16
|
+
});
|
|
17
|
+
const address = yield* decodePermissionAddress(approved, "approved account");
|
|
18
|
+
const data = yield* Effect.try({
|
|
19
|
+
try: () => target.kind === "registrar" ? encodeFunctionData({
|
|
20
|
+
abi: baseRegistrarV1ApproveAbi,
|
|
21
|
+
functionName: "approve",
|
|
22
|
+
args: [address, target.tokenId]
|
|
23
|
+
}) : encodeFunctionData({
|
|
24
|
+
abi: nameWrapperV1ApproveAbi,
|
|
25
|
+
functionName: "approve",
|
|
26
|
+
args: [address, target.tokenId]
|
|
27
|
+
}),
|
|
28
|
+
catch: (cause) => new ContractError({
|
|
29
|
+
code: "ENCODE_FAILED",
|
|
30
|
+
message: `Unable to encode the name approval for ${name}`,
|
|
31
|
+
cause
|
|
32
|
+
})
|
|
33
|
+
});
|
|
34
|
+
return {
|
|
35
|
+
to: target.contract,
|
|
36
|
+
data,
|
|
37
|
+
value: 0n,
|
|
38
|
+
protocol: "v1"
|
|
39
|
+
};
|
|
40
|
+
});
|
|
41
|
+
const approvePreparer = Effect.fn("ensforge.approveName.prepare")(function* (config, parameters) {
|
|
42
|
+
return yield* prepare(config, parameters.name, parameters.approved);
|
|
43
|
+
});
|
|
44
|
+
const clearPreparer = Effect.fn("ensforge.clearNameApproval.prepare")(function* (config, parameters) {
|
|
45
|
+
return yield* prepare(config, parameters.name, zeroAddress);
|
|
46
|
+
});
|
|
47
|
+
const approveName = makeSingleWriteAction("approveName", approvePreparer);
|
|
48
|
+
const clearNameApproval = makeSingleWriteAction("clearNameApproval", clearPreparer);
|
|
49
|
+
|
|
50
|
+
//#endregion
|
|
51
|
+
export { approveName, clearNameApproval };
|
|
52
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/actions/permissions/name-approval/index.ts"],"sourcesContent":["import { Effect } from \"effect\";\n\nimport { baseRegistrarV1ApproveAbi, nameWrapperV1ApproveAbi } from \"@ensforge/contracts/v1\";\nimport { encodeFunctionData, zeroAddress } from \"viem\";\n\nimport type { EnsWriteIntentPreparer } from \"../../../action/write-intent.js\";\nimport { AuthorizationError } from \"../../../errors/authorization-error.js\";\nimport { ContractError } from \"../../../errors/contract-error.js\";\nimport { makeSingleWriteAction } from \"../../../internal/write/single-write-action.js\";\nimport type { WriteError } from \"../../../write/types.js\";\nimport { getTokenApproval } from \"../../capabilities/get-token-approval/index.js\";\nimport { decodePermissionAddress } from \"../address.js\";\nimport type { ApproveNameParameters, ClearNameApprovalParameters } from \"./types.js\";\n\nconst prepare = Effect.fn(\"ensforge.approveName.prepareApproval\")(function* (\n config,\n name: string,\n approved: string,\n) {\n const target = yield* getTokenApproval.effect(config, { name });\n if (!target.supported) {\n return yield* new AuthorizationError({\n code: \"WRITE_TARGET_UNAVAILABLE\",\n message: `Per-name approval is unavailable for ${name}: ${target.reason}`,\n });\n }\n const address = yield* decodePermissionAddress(approved, \"approved account\");\n const data = yield* Effect.try({\n try: () =>\n target.kind === \"registrar\"\n ? encodeFunctionData({\n abi: baseRegistrarV1ApproveAbi,\n functionName: \"approve\",\n args: [address, target.tokenId],\n })\n : encodeFunctionData({\n abi: nameWrapperV1ApproveAbi,\n functionName: \"approve\",\n args: [address, target.tokenId],\n }),\n catch: (cause) =>\n new ContractError({\n code: \"ENCODE_FAILED\",\n message: `Unable to encode the name approval for ${name}`,\n cause,\n }),\n });\n return { to: target.contract, data, value: 0n, protocol: \"v1\" as const };\n});\n\nconst approvePreparer: EnsWriteIntentPreparer<ApproveNameParameters, WriteError> = Effect.fn(\n \"ensforge.approveName.prepare\",\n)(function* (config, parameters) {\n return yield* prepare(config, parameters.name, parameters.approved);\n});\n\nconst clearPreparer: EnsWriteIntentPreparer<ClearNameApprovalParameters, WriteError> = Effect.fn(\n \"ensforge.clearNameApproval.prepare\",\n)(function* (config, parameters) {\n return yield* prepare(config, parameters.name, zeroAddress);\n});\n\nexport const approveName = makeSingleWriteAction(\"approveName\", approvePreparer);\nexport const clearNameApproval = makeSingleWriteAction(\"clearNameApproval\", clearPreparer);\n\nexport type {\n ApproveNameError,\n ApproveNameIntent,\n ApproveNameParameters,\n ApproveNameResult,\n ClearNameApprovalError,\n ClearNameApprovalIntent,\n ClearNameApprovalParameters,\n ClearNameApprovalResult,\n} from \"./types.js\";\n"],"mappings":";;;;;;;;;;AAcA,MAAM,UAAU,OAAO,GAAG,sCAAsC,CAAC,CAAC,WAChE,QACA,MACA,UACA;CACA,MAAM,SAAS,OAAO,iBAAiB,OAAO,QAAQ,EAAE,KAAK,CAAC;CAC9D,IAAI,CAAC,OAAO,WACV,OAAO,OAAO,IAAI,mBAAmB;EACnC,MAAM;EACN,SAAS,wCAAwC,KAAK,IAAI,OAAO;CACnE,CAAC;CAEH,MAAM,UAAU,OAAO,wBAAwB,UAAU,kBAAkB;CAC3E,MAAM,OAAO,OAAO,OAAO,IAAI;EAC7B,WACE,OAAO,SAAS,cACZ,mBAAmB;GACjB,KAAK;GACL,cAAc;GACd,MAAM,CAAC,SAAS,OAAO,OAAO;EAChC,CAAC,IACD,mBAAmB;GACjB,KAAK;GACL,cAAc;GACd,MAAM,CAAC,SAAS,OAAO,OAAO;EAChC,CAAC;EACP,QAAQ,UACN,IAAI,cAAc;GAChB,MAAM;GACN,SAAS,0CAA0C;GACnD;EACF,CAAC;CACL,CAAC;CACD,OAAO;EAAE,IAAI,OAAO;EAAU;EAAM,OAAO;EAAI,UAAU;CAAc;AACzE,CAAC;AAED,MAAM,kBAA6E,OAAO,GACxF,8BACF,CAAC,CAAC,WAAW,QAAQ,YAAY;CAC/B,OAAO,OAAO,QAAQ,QAAQ,WAAW,MAAM,WAAW,QAAQ;AACpE,CAAC;AAED,MAAM,gBAAiF,OAAO,GAC5F,oCACF,CAAC,CAAC,WAAW,QAAQ,YAAY;CAC/B,OAAO,OAAO,QAAQ,QAAQ,WAAW,MAAM,WAAW;AAC5D,CAAC;AAED,MAAa,cAAc,sBAAsB,eAAe,eAAe;AAC/E,MAAa,oBAAoB,sBAAsB,qBAAqB,aAAa"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CallExecutionResult, WriteError } from "../../../write/types.js";
|
|
2
|
+
import { EnsWriteIntent } from "../../../action/write-intent.js";
|
|
3
|
+
//#region src/actions/permissions/name-approval/types.d.ts
|
|
4
|
+
interface ApproveNameParameters {
|
|
5
|
+
readonly name: string;
|
|
6
|
+
readonly approved: string;
|
|
7
|
+
}
|
|
8
|
+
interface ClearNameApprovalParameters {
|
|
9
|
+
readonly name: string;
|
|
10
|
+
}
|
|
11
|
+
type ApproveNameResult = CallExecutionResult;
|
|
12
|
+
type ApproveNameError = WriteError;
|
|
13
|
+
type ApproveNameIntent = EnsWriteIntent<ApproveNameResult, ApproveNameError>;
|
|
14
|
+
type ClearNameApprovalResult = CallExecutionResult;
|
|
15
|
+
type ClearNameApprovalError = WriteError;
|
|
16
|
+
type ClearNameApprovalIntent = EnsWriteIntent<ClearNameApprovalResult, ClearNameApprovalError>;
|
|
17
|
+
//#endregion
|
|
18
|
+
export { ApproveNameError, ApproveNameIntent, ApproveNameParameters, ApproveNameResult, ClearNameApprovalError, ClearNameApprovalIntent, ClearNameApprovalParameters, ClearNameApprovalResult };
|
|
19
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","names":[],"sources":["../../../../src/actions/permissions/name-approval/types.ts"],"mappings":";;;UAGiB;WACN;WACA;;UAGM;WACN;;KAGC,oBAAoB;KACpB,mBAAmB;KACnB,oBAAoB,eAAe,mBAAmB;KACtD,0BAA0B;KAC1B,yBAAyB;KACzB,0BAA0B,eACpC,yBACA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CallExecutionResult, WriteError } from "../../../write/types.js";
|
|
2
|
+
import { EnsWriteAction } from "../../../action/write-intent.js";
|
|
3
|
+
import { OperatorApprovalKind, SetOperatorApprovalError, SetOperatorApprovalIntent, SetOperatorApprovalParameters, SetOperatorApprovalResult } from "./types.js";
|
|
4
|
+
import "../../../index.js";
|
|
5
|
+
//#region src/actions/permissions/operator-approval/index.d.ts
|
|
6
|
+
declare const setOperatorApproval: EnsWriteAction<SetOperatorApprovalParameters, CallExecutionResult, WriteError>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { type OperatorApprovalKind, type SetOperatorApprovalError, type SetOperatorApprovalIntent, type SetOperatorApprovalParameters, type SetOperatorApprovalResult, setOperatorApproval };
|
|
9
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/actions/permissions/operator-approval/index.ts"],"mappings":";;;;;cAsDa,qBAAmB,eAAA,+BAAA,qBAAA"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { ContractError } from "../../../errors/contract-error.js";
|
|
2
|
+
import { getOperatorApproval } from "../../capabilities/get-operator-approval/index.js";
|
|
3
|
+
import { makeSingleWriteAction } from "../../../internal/write/single-write-action.js";
|
|
4
|
+
import { AuthorizationError } from "../../../errors/authorization-error.js";
|
|
5
|
+
import { getProtocol } from "../../name/get-protocol/index.js";
|
|
6
|
+
import { decodePermissionAddress } from "../address.js";
|
|
7
|
+
import { Effect } from "effect";
|
|
8
|
+
import { encodeFunctionData } from "viem";
|
|
9
|
+
import { ensRegistryV1SetApprovalForAllAbi } from "@ensforge/contracts/v1";
|
|
10
|
+
|
|
11
|
+
//#region src/actions/permissions/operator-approval/index.ts
|
|
12
|
+
const preparer = Effect.fn("ensforge.setOperatorApproval.prepare")(function* (config, parameters, context) {
|
|
13
|
+
const owner = yield* decodePermissionAddress(typeof context.account === "string" ? context.account : context.account.address, "owner");
|
|
14
|
+
const operator = yield* decodePermissionAddress(parameters.operator, "operator");
|
|
15
|
+
const [approval, protocol] = yield* Effect.all([getOperatorApproval.effect(config, {
|
|
16
|
+
name: parameters.name,
|
|
17
|
+
owner,
|
|
18
|
+
operator
|
|
19
|
+
}), getProtocol.effect(config, { name: parameters.name })], { concurrency: "unbounded" });
|
|
20
|
+
const target = approval.targets.find((candidate) => candidate.kind === parameters.target);
|
|
21
|
+
if (target === void 0 || !target.supported) return yield* new AuthorizationError({
|
|
22
|
+
code: "WRITE_TARGET_UNAVAILABLE",
|
|
23
|
+
message: `${parameters.target} operator approvals are unavailable for ${parameters.name}`
|
|
24
|
+
});
|
|
25
|
+
const data = yield* Effect.try({
|
|
26
|
+
try: () => encodeFunctionData({
|
|
27
|
+
abi: ensRegistryV1SetApprovalForAllAbi,
|
|
28
|
+
functionName: "setApprovalForAll",
|
|
29
|
+
args: [operator, parameters.approved]
|
|
30
|
+
}),
|
|
31
|
+
catch: (cause) => new ContractError({
|
|
32
|
+
code: "ENCODE_FAILED",
|
|
33
|
+
message: `Unable to encode the ${parameters.target} operator approval`,
|
|
34
|
+
cause
|
|
35
|
+
})
|
|
36
|
+
});
|
|
37
|
+
return {
|
|
38
|
+
to: target.address,
|
|
39
|
+
data,
|
|
40
|
+
value: 0n,
|
|
41
|
+
protocol
|
|
42
|
+
};
|
|
43
|
+
});
|
|
44
|
+
const setOperatorApproval = makeSingleWriteAction("setOperatorApproval", preparer);
|
|
45
|
+
|
|
46
|
+
//#endregion
|
|
47
|
+
export { setOperatorApproval };
|
|
48
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../src/actions/permissions/operator-approval/index.ts"],"sourcesContent":["import { Effect } from \"effect\";\n\nimport { ensRegistryV1SetApprovalForAllAbi } from \"@ensforge/contracts/v1\";\nimport { encodeFunctionData } from \"viem\";\n\nimport type { EnsWriteIntentPreparer } from \"../../../action/write-intent.js\";\nimport { AuthorizationError } from \"../../../errors/authorization-error.js\";\nimport { ContractError } from \"../../../errors/contract-error.js\";\nimport { makeSingleWriteAction } from \"../../../internal/write/single-write-action.js\";\nimport type { WriteError } from \"../../../write/types.js\";\nimport { getOperatorApproval } from \"../../capabilities/get-operator-approval/index.js\";\nimport { getProtocol } from \"../../name/get-protocol/index.js\";\nimport { decodePermissionAddress } from \"../address.js\";\nimport type { SetOperatorApprovalParameters } from \"./types.js\";\n\nconst preparer: EnsWriteIntentPreparer<SetOperatorApprovalParameters, WriteError> = Effect.fn(\n \"ensforge.setOperatorApproval.prepare\",\n)(function* (config, parameters, context) {\n const owner = yield* decodePermissionAddress(\n typeof context.account === \"string\" ? context.account : context.account.address,\n \"owner\",\n );\n const operator = yield* decodePermissionAddress(parameters.operator, \"operator\");\n const [approval, protocol] = yield* Effect.all(\n [\n getOperatorApproval.effect(config, { name: parameters.name, owner, operator }),\n getProtocol.effect(config, { name: parameters.name }),\n ] as const,\n { concurrency: \"unbounded\" },\n );\n const target = approval.targets.find((candidate) => candidate.kind === parameters.target);\n if (target === undefined || !target.supported) {\n return yield* new AuthorizationError({\n code: \"WRITE_TARGET_UNAVAILABLE\",\n message: `${parameters.target} operator approvals are unavailable for ${parameters.name}`,\n });\n }\n const data = yield* Effect.try({\n try: () =>\n encodeFunctionData({\n abi: ensRegistryV1SetApprovalForAllAbi,\n functionName: \"setApprovalForAll\",\n args: [operator, parameters.approved],\n }),\n catch: (cause) =>\n new ContractError({\n code: \"ENCODE_FAILED\",\n message: `Unable to encode the ${parameters.target} operator approval`,\n cause,\n }),\n });\n return { to: target.address, data, value: 0n, protocol };\n});\n\nexport const setOperatorApproval = makeSingleWriteAction(\"setOperatorApproval\", preparer);\n\nexport type {\n OperatorApprovalKind,\n SetOperatorApprovalError,\n SetOperatorApprovalIntent,\n SetOperatorApprovalParameters,\n SetOperatorApprovalResult,\n} from \"./types.js\";\n"],"mappings":";;;;;;;;;;;AAeA,MAAM,WAA8E,OAAO,GACzF,sCACF,CAAC,CAAC,WAAW,QAAQ,YAAY,SAAS;CACxC,MAAM,QAAQ,OAAO,wBACnB,OAAO,QAAQ,YAAY,WAAW,QAAQ,UAAU,QAAQ,QAAQ,SACxE,OACF;CACA,MAAM,WAAW,OAAO,wBAAwB,WAAW,UAAU,UAAU;CAC/E,MAAM,CAAC,UAAU,YAAY,OAAO,OAAO,IACzC,CACE,oBAAoB,OAAO,QAAQ;EAAE,MAAM,WAAW;EAAM;EAAO;CAAS,CAAC,GAC7E,YAAY,OAAO,QAAQ,EAAE,MAAM,WAAW,KAAK,CAAC,CACtD,GACA,EAAE,aAAa,YAAY,CAC7B;CACA,MAAM,SAAS,SAAS,QAAQ,MAAM,cAAc,UAAU,SAAS,WAAW,MAAM;CACxF,IAAI,WAAW,UAAa,CAAC,OAAO,WAClC,OAAO,OAAO,IAAI,mBAAmB;EACnC,MAAM;EACN,SAAS,GAAG,WAAW,OAAO,0CAA0C,WAAW;CACrF,CAAC;CAEH,MAAM,OAAO,OAAO,OAAO,IAAI;EAC7B,WACE,mBAAmB;GACjB,KAAK;GACL,cAAc;GACd,MAAM,CAAC,UAAU,WAAW,QAAQ;EACtC,CAAC;EACH,QAAQ,UACN,IAAI,cAAc;GAChB,MAAM;GACN,SAAS,wBAAwB,WAAW,OAAO;GACnD;EACF,CAAC;CACL,CAAC;CACD,OAAO;EAAE,IAAI,OAAO;EAAS;EAAM,OAAO;EAAI;CAAS;AACzD,CAAC;AAED,MAAa,sBAAsB,sBAAsB,uBAAuB,QAAQ"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { CallExecutionResult, WriteError } from "../../../write/types.js";
|
|
2
|
+
import { EnsWriteIntent } from "../../../action/write-intent.js";
|
|
3
|
+
//#region src/actions/permissions/operator-approval/types.d.ts
|
|
4
|
+
type OperatorApprovalKind = "registry" | "registrar" | "wrapper" | "resolver";
|
|
5
|
+
interface SetOperatorApprovalParameters {
|
|
6
|
+
readonly name: string;
|
|
7
|
+
readonly target: OperatorApprovalKind;
|
|
8
|
+
readonly operator: string;
|
|
9
|
+
readonly approved: boolean;
|
|
10
|
+
}
|
|
11
|
+
type SetOperatorApprovalResult = CallExecutionResult;
|
|
12
|
+
type SetOperatorApprovalError = WriteError;
|
|
13
|
+
type SetOperatorApprovalIntent = EnsWriteIntent<SetOperatorApprovalResult, SetOperatorApprovalError>;
|
|
14
|
+
//#endregion
|
|
15
|
+
export { OperatorApprovalKind, SetOperatorApprovalError, SetOperatorApprovalIntent, SetOperatorApprovalParameters, SetOperatorApprovalResult };
|
|
16
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","names":[],"sources":["../../../../src/actions/permissions/operator-approval/types.ts"],"mappings":";;;KAGY;UAEK;WACN;WACA,QAAQ;WACR;WACA;;KAGC,4BAA4B;KAC5B,2BAA2B;KAC3B,4BAA4B,eACtC,2BACA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CallExecutionResult, WriteError } from "../../../write/types.js";
|
|
2
|
+
import { EnsWriteAction } from "../../../action/write-intent.js";
|
|
3
|
+
import { GrantRegistryRolesError, GrantRegistryRolesIntent, GrantRegistryRolesParameters, GrantRegistryRolesResult, RegistryRolesMutationParameters, RevokeRegistryRolesError, RevokeRegistryRolesIntent, RevokeRegistryRolesParameters, RevokeRegistryRolesResult } from "./types.js";
|
|
4
|
+
import "../../../index.js";
|
|
5
|
+
//#region src/actions/permissions/registry-roles/index.d.ts
|
|
6
|
+
declare const grantRegistryRoles: EnsWriteAction<RegistryRolesMutationParameters, CallExecutionResult, WriteError>;
|
|
7
|
+
declare const revokeRegistryRoles: EnsWriteAction<RegistryRolesMutationParameters, CallExecutionResult, WriteError>;
|
|
8
|
+
//#endregion
|
|
9
|
+
export { type GrantRegistryRolesError, type GrantRegistryRolesIntent, type GrantRegistryRolesParameters, type GrantRegistryRolesResult, type RegistryRolesMutationParameters, type RevokeRegistryRolesError, type RevokeRegistryRolesIntent, type RevokeRegistryRolesParameters, type RevokeRegistryRolesResult, grantRegistryRoles, revokeRegistryRoles };
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../../src/actions/permissions/registry-roles/index.ts"],"mappings":";;;;;cAmDa,oBAAkB,eAAA,iCAAA,qBAAA;cAIlB,qBAAmB,eAAA,iCAAA,qBAAA"}
|