@ar.io/sdk 3.24.0 → 4.0.0-solana.10
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/README.md +143 -23
- package/lib/esm/cli/cli.js +200 -40
- package/lib/esm/cli/commands/antCommands.js +40 -14
- package/lib/esm/cli/commands/arnsPurchaseCommands.js +46 -7
- package/lib/esm/cli/commands/escrowCommands.js +208 -0
- package/lib/esm/cli/commands/gatewayWriteCommands.js +132 -22
- package/lib/esm/cli/commands/pruneCommands.js +166 -0
- package/lib/esm/cli/commands/readCommands.js +10 -2
- package/lib/esm/cli/commands/transfer.js +6 -6
- package/lib/esm/cli/options.js +141 -2
- package/lib/esm/cli/utils.js +280 -39
- package/lib/esm/common/ant-registry.js +25 -3
- package/lib/esm/common/ant.js +50 -5
- package/lib/esm/common/contracts/ao-process.js +4 -6
- package/lib/esm/common/io.js +41 -0
- package/lib/esm/common/marketplace.js +24 -79
- package/lib/esm/constants.js +13 -1
- package/lib/esm/solana/ant-readable.js +387 -0
- package/lib/esm/solana/ant-registry-readable.js +118 -0
- package/lib/esm/solana/ant-registry-writeable.js +457 -0
- package/lib/esm/solana/ant-writeable.js +352 -0
- package/lib/esm/solana/ata.js +55 -0
- package/lib/esm/solana/canonical-message.js +92 -0
- package/lib/esm/solana/clusters.js +62 -0
- package/lib/esm/solana/constants.js +130 -0
- package/lib/esm/solana/delegation-math.js +63 -0
- package/lib/esm/solana/deserialize.js +1182 -0
- package/lib/esm/solana/escrow.js +797 -0
- package/lib/esm/solana/events.js +210 -0
- package/lib/esm/solana/funding-plan.js +682 -0
- package/lib/esm/solana/generated/ant/events/aclEntryAddedEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/aclEntryRemovedEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/antMetadataUpdatedEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/antReconciledEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/antTransferredEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/attributesClearedEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/attributesSyncedEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/controllerAddedEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/controllerRemovedEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/index.js +16 -0
- package/lib/esm/solana/generated/ant/events/recordMetadataPrunedEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/recordMetadataRemovedEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/recordMetadataUpdatedEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/recordRemovedEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/recordSetEvent.js +21 -0
- package/lib/esm/solana/generated/ant/events/recordTransferredEvent.js +21 -0
- package/lib/esm/solana/generated/ant-escrow/events/escrowCancelledEvent.js +21 -0
- package/lib/esm/solana/generated/ant-escrow/events/escrowClaimedEvent.js +21 -0
- package/lib/esm/solana/generated/ant-escrow/events/escrowDepositedEvent.js +21 -0
- package/lib/esm/solana/generated/ant-escrow/events/escrowRecipientUpdatedEvent.js +21 -0
- package/lib/esm/solana/generated/ant-escrow/events/index.js +5 -0
- package/lib/esm/solana/generated/arns/events/demandFactorUpdatedEvent.js +21 -0
- package/lib/esm/solana/generated/arns/events/index.js +13 -0
- package/lib/esm/solana/generated/arns/events/leaseExtendedEvent.js +21 -0
- package/lib/esm/solana/generated/arns/events/namePurchasedEvent.js +21 -0
- package/lib/esm/solana/generated/arns/events/nameReassignedEvent.js +21 -0
- package/lib/esm/solana/generated/arns/events/nameReleasedEvent.js +21 -0
- package/lib/esm/solana/generated/arns/events/nameReservedEvent.js +21 -0
- package/lib/esm/solana/generated/arns/events/nameUnreservedEvent.js +21 -0
- package/lib/esm/solana/generated/arns/events/nameUpgradedEvent.js +21 -0
- package/lib/esm/solana/generated/arns/events/namesPrunedEvent.js +21 -0
- package/lib/esm/solana/generated/arns/events/reservedNameClaimedEvent.js +21 -0
- package/lib/esm/solana/generated/arns/events/returnedNamePurchasedEvent.js +21 -0
- package/lib/esm/solana/generated/arns/events/undernameIncreasedEvent.js +21 -0
- package/lib/esm/solana/generated/core/events/configUpdatedEvent.js +21 -0
- package/lib/esm/solana/generated/core/events/coreMigrationFinalizedEvent.js +21 -0
- package/lib/esm/solana/generated/core/events/index.js +14 -0
- package/lib/esm/solana/generated/core/events/primaryNameRemovedEvent.js +21 -0
- package/lib/esm/solana/generated/core/events/primaryNameRequestExpiredEvent.js +21 -0
- package/lib/esm/solana/generated/core/events/primaryNameRequestedEvent.js +21 -0
- package/lib/esm/solana/generated/core/events/primaryNameSetEvent.js +21 -0
- package/lib/esm/solana/generated/core/events/supplyFinalizedEvent.js +21 -0
- package/lib/esm/solana/generated/core/events/transferEvent.js +21 -0
- package/lib/esm/solana/generated/core/events/vaultCreatedEvent.js +21 -0
- package/lib/esm/solana/generated/core/events/vaultExtendedEvent.js +21 -0
- package/lib/esm/solana/generated/core/events/vaultIncreasedEvent.js +21 -0
- package/lib/esm/solana/generated/core/events/vaultReleasedEvent.js +21 -0
- package/lib/esm/solana/generated/core/events/vaultRevokedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/allowlistToggledEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/delegateAllowlistedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/delegationClosedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/delegationDecreasedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/delegationEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/epochClosedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/epochCreatedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/epochDistributedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/epochPrescribedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/epochWeightsTalliedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/epochsToggledEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/fundingPlanAppliedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/garMigrationFinalizedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/gatewayFinalizedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/gatewayJoinedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/gatewayLeavingEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/gatewayPrunedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/gatewaySettingsUpdatedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/index.js +31 -0
- package/lib/esm/solana/generated/gar/events/instantWithdrawalEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/observationSubmittedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/observerAddressUpdatedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/operatorStakeIncreasedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/redelegationEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/residueVaultCreatedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/rewardsCompoundedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/stakePaymentEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/withdrawalCancelledEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/withdrawalClaimedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/withdrawalCreatedEvent.js +21 -0
- package/lib/esm/solana/generated/gar/events/withdrawalPaymentEvent.js +21 -0
- package/lib/esm/solana/generated/mpl-core/accounts/assetV1.js +42 -0
- package/lib/esm/solana/generated/mpl-core/accounts/collectionV1.js +42 -0
- package/lib/esm/solana/generated/mpl-core/accounts/hashedAssetV1.js +45 -0
- package/lib/esm/solana/generated/mpl-core/accounts/index.js +12 -0
- package/lib/esm/solana/generated/mpl-core/accounts/pluginHeaderV1.js +45 -0
- package/lib/esm/solana/generated/mpl-core/accounts/pluginRegistryV1.js +42 -0
- package/lib/esm/solana/generated/mpl-core/errors/index.js +8 -0
- package/lib/esm/solana/generated/mpl-core/errors/mplCore.js +136 -0
- package/lib/esm/solana/generated/mpl-core/index.js +8 -0
- package/lib/esm/solana/generated/mpl-core/instructions/addCollectionExternalPluginAdapterV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/addCollectionPluginV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/addExternalPluginAdapterV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/addPluginV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/approveCollectionPluginAuthorityV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/approvePluginAuthorityV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/burnCollectionV1.js +49 -0
- package/lib/esm/solana/generated/mpl-core/instructions/burnV1.js +49 -0
- package/lib/esm/solana/generated/mpl-core/instructions/collect.js +42 -0
- package/lib/esm/solana/generated/mpl-core/instructions/compressV1.js +50 -0
- package/lib/esm/solana/generated/mpl-core/instructions/createCollectionV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/createCollectionV2.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/createV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/createV2.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/decompressV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/executeV1.js +56 -0
- package/lib/esm/solana/generated/mpl-core/instructions/index.js +40 -0
- package/lib/esm/solana/generated/mpl-core/instructions/removeCollectionExternalPluginAdapterV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/removeCollectionPluginV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/removeExternalPluginAdapterV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/removePluginV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/revokeCollectionPluginAuthorityV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/revokePluginAuthorityV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/transferV1.js +49 -0
- package/lib/esm/solana/generated/mpl-core/instructions/updateCollectionExternalPluginAdapterV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/updateCollectionInfoV1.js +45 -0
- package/lib/esm/solana/generated/mpl-core/instructions/updateCollectionPluginV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/updateCollectionV1.js +52 -0
- package/lib/esm/solana/generated/mpl-core/instructions/updateExternalPluginAdapterV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/updatePluginV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/updateV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/updateV2.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/writeCollectionExternalPluginAdapterDataV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/instructions/writeExternalPluginAdapterDataV1.js +53 -0
- package/lib/esm/solana/generated/mpl-core/program-address.js +1 -0
- package/lib/esm/solana/generated/mpl-core/types/addAssetsToGroupV1Args.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/addBlocker.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/addCollectionsToGroupV1Args.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/addGroupsToGroupV1Args.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/agentIdentity.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/agentIdentityInitInfo.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/agentIdentityUpdateInfo.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/appData.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/appDataInitInfo.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/appDataUpdateInfo.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/attribute.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/attributes.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/authority.js +24 -0
- package/lib/esm/solana/generated/mpl-core/types/autograph.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/autographSignature.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/bubblegumV2.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/burnDelegate.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/closeGroupV1Args.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/compressionProof.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/creator.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/dataSection.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/dataSectionInitInfo.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/dataSectionUpdateInfo.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/dataState.js +23 -0
- package/lib/esm/solana/generated/mpl-core/types/edition.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/externalCheckResult.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/externalPluginAdapter.js +25 -0
- package/lib/esm/solana/generated/mpl-core/types/externalPluginAdapterInitInfo.js +25 -0
- package/lib/esm/solana/generated/mpl-core/types/externalPluginAdapterKey.js +25 -0
- package/lib/esm/solana/generated/mpl-core/types/externalPluginAdapterSchema.js +24 -0
- package/lib/esm/solana/generated/mpl-core/types/externalPluginAdapterType.js +28 -0
- package/lib/esm/solana/generated/mpl-core/types/externalPluginAdapterUpdateInfo.js +25 -0
- package/lib/esm/solana/generated/mpl-core/types/externalRegistryRecord.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/externalValidationResult.js +24 -0
- package/lib/esm/solana/generated/mpl-core/types/extraAccount.js +25 -0
- package/lib/esm/solana/generated/mpl-core/types/freezeDelegate.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/freezeExecute.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/groups.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/hashablePluginSchema.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/hashedAssetSchema.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/hookableLifecycleEvent.js +26 -0
- package/lib/esm/solana/generated/mpl-core/types/immutableMetadata.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/index.js +89 -0
- package/lib/esm/solana/generated/mpl-core/types/key.js +28 -0
- package/lib/esm/solana/generated/mpl-core/types/lifecycleHook.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/lifecycleHookInitInfo.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/lifecycleHookUpdateInfo.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/linkedAppData.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/linkedAppDataInitInfo.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/linkedAppDataUpdateInfo.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/linkedDataKey.js +25 -0
- package/lib/esm/solana/generated/mpl-core/types/linkedLifecycleHook.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/linkedLifecycleHookInitInfo.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/linkedLifecycleHookUpdateInfo.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/masterEdition.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/oracle.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/oracleInitInfo.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/oracleUpdateInfo.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/oracleValidation.js +25 -0
- package/lib/esm/solana/generated/mpl-core/types/permanentBurnDelegate.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/permanentFreezeDelegate.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/permanentFreezeExecute.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/permanentTransferDelegate.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/plugin.js +25 -0
- package/lib/esm/solana/generated/mpl-core/types/pluginAuthorityPair.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/pluginType.js +40 -0
- package/lib/esm/solana/generated/mpl-core/types/registryRecord.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/relationshipKind.js +25 -0
- package/lib/esm/solana/generated/mpl-core/types/removeAssetsFromGroupV1Args.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/removeCollectionsFromGroupV1Args.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/removeGroupsFromGroupV1Args.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/royalties.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/ruleSet.js +24 -0
- package/lib/esm/solana/generated/mpl-core/types/seed.js +24 -0
- package/lib/esm/solana/generated/mpl-core/types/transferDelegate.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/updateAuthority.js +24 -0
- package/lib/esm/solana/generated/mpl-core/types/updateDelegate.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/updateGroupV1Args.js +17 -0
- package/lib/esm/solana/generated/mpl-core/types/updateType.js +24 -0
- package/lib/esm/solana/generated/mpl-core/types/validationResult.js +25 -0
- package/lib/esm/solana/generated/mpl-core/types/validationResultsOffset.js +24 -0
- package/lib/esm/solana/generated/mpl-core/types/verifiedCreators.js +18 -0
- package/lib/esm/solana/generated/mpl-core/types/verifiedCreatorsSignature.js +17 -0
- package/lib/esm/solana/index.js +85 -0
- package/lib/esm/solana/instruction.js +24 -0
- package/lib/esm/solana/io-readable.js +1752 -0
- package/lib/esm/solana/io-writeable.js +2215 -0
- package/lib/esm/solana/json-rpc.js +74 -0
- package/lib/esm/solana/metadata.js +66 -0
- package/lib/esm/solana/mpl-core.js +142 -0
- package/lib/esm/solana/pda.js +317 -0
- package/lib/esm/solana/send.js +117 -0
- package/lib/esm/solana/spawn-ant.js +210 -0
- package/lib/esm/solana/types.js +1 -0
- package/lib/esm/types/ant.js +19 -7
- package/lib/esm/types/io.js +8 -1
- package/lib/esm/utils/ant.js +1 -0
- package/lib/esm/utils/ao.js +1 -0
- package/lib/esm/version.js +1 -1
- package/lib/types/cli/commands/antCommands.d.ts +2 -7
- package/lib/types/cli/commands/arnsPurchaseCommands.d.ts +12 -0
- package/lib/types/cli/commands/escrowCommands.d.ts +62 -0
- package/lib/types/cli/commands/pruneCommands.d.ts +31 -0
- package/lib/types/cli/commands/readCommands.d.ts +2 -0
- package/lib/types/cli/options.d.ts +112 -0
- package/lib/types/cli/types.d.ts +6 -0
- package/lib/types/cli/utils.d.ts +43 -5
- package/lib/types/common/ant-registry.d.ts +41 -0
- package/lib/types/common/ant.d.ts +35 -2
- package/lib/types/common/contracts/ao-process.d.ts +2 -16
- package/lib/types/common/io.d.ts +42 -2
- package/lib/types/common/marketplace.d.ts +2 -14
- package/lib/types/constants.d.ts +11 -1
- package/lib/types/solana/ant-readable.d.ts +121 -0
- package/lib/types/solana/ant-registry-readable.d.ts +90 -0
- package/lib/types/solana/ant-registry-writeable.d.ts +234 -0
- package/lib/types/solana/ant-writeable.d.ts +162 -0
- package/lib/types/solana/ata.d.ts +29 -0
- package/lib/types/solana/canonical-message.d.ts +82 -0
- package/lib/types/solana/clusters.d.ts +62 -0
- package/lib/types/solana/constants.d.ts +103 -0
- package/lib/types/solana/delegation-math.d.ts +20 -0
- package/lib/types/solana/deserialize.d.ts +440 -0
- package/lib/types/solana/escrow.d.ts +403 -0
- package/lib/types/solana/events.d.ts +156 -0
- package/lib/types/solana/funding-plan.d.ts +210 -0
- package/lib/types/solana/generated/ant/events/aclEntryAddedEvent.d.ts +26 -0
- package/lib/types/solana/generated/ant/events/aclEntryRemovedEvent.d.ts +26 -0
- package/lib/types/solana/generated/ant/events/antMetadataUpdatedEvent.d.ts +28 -0
- package/lib/types/solana/generated/ant/events/antReconciledEvent.d.ts +28 -0
- package/lib/types/solana/generated/ant/events/antTransferredEvent.d.ts +26 -0
- package/lib/types/solana/generated/ant/events/attributesClearedEvent.d.ts +26 -0
- package/lib/types/solana/generated/ant/events/attributesSyncedEvent.d.ts +24 -0
- package/lib/types/solana/generated/ant/events/controllerAddedEvent.d.ts +26 -0
- package/lib/types/solana/generated/ant/events/controllerRemovedEvent.d.ts +26 -0
- package/lib/types/solana/generated/ant/events/index.d.ts +15 -0
- package/lib/types/solana/generated/ant/events/recordMetadataPrunedEvent.d.ts +26 -0
- package/lib/types/solana/generated/ant/events/recordMetadataRemovedEvent.d.ts +26 -0
- package/lib/types/solana/generated/ant/events/recordMetadataUpdatedEvent.d.ts +28 -0
- package/lib/types/solana/generated/ant/events/recordRemovedEvent.d.ts +26 -0
- package/lib/types/solana/generated/ant/events/recordSetEvent.d.ts +34 -0
- package/lib/types/solana/generated/ant/events/recordTransferredEvent.d.ts +30 -0
- package/lib/types/solana/generated/ant-escrow/events/escrowCancelledEvent.d.ts +28 -0
- package/lib/types/solana/generated/ant-escrow/events/escrowClaimedEvent.d.ts +32 -0
- package/lib/types/solana/generated/ant-escrow/events/escrowDepositedEvent.d.ts +36 -0
- package/lib/types/solana/generated/ant-escrow/events/escrowRecipientUpdatedEvent.d.ts +26 -0
- package/lib/types/solana/generated/ant-escrow/events/index.d.ts +4 -0
- package/lib/types/solana/generated/arns/events/demandFactorUpdatedEvent.d.ts +28 -0
- package/lib/types/solana/generated/arns/events/index.d.ts +12 -0
- package/lib/types/solana/generated/arns/events/leaseExtendedEvent.d.ts +32 -0
- package/lib/types/solana/generated/arns/events/namePurchasedEvent.d.ts +34 -0
- package/lib/types/solana/generated/arns/events/nameReassignedEvent.d.ts +28 -0
- package/lib/types/solana/generated/arns/events/nameReleasedEvent.d.ts +24 -0
- package/lib/types/solana/generated/arns/events/nameReservedEvent.d.ts +28 -0
- package/lib/types/solana/generated/arns/events/nameUnreservedEvent.d.ts +24 -0
- package/lib/types/solana/generated/arns/events/nameUpgradedEvent.d.ts +28 -0
- package/lib/types/solana/generated/arns/events/namesPrunedEvent.d.ts +26 -0
- package/lib/types/solana/generated/arns/events/reservedNameClaimedEvent.d.ts +24 -0
- package/lib/types/solana/generated/arns/events/returnedNamePurchasedEvent.d.ts +32 -0
- package/lib/types/solana/generated/arns/events/undernameIncreasedEvent.d.ts +32 -0
- package/lib/types/solana/generated/core/events/configUpdatedEvent.d.ts +26 -0
- package/lib/types/solana/generated/core/events/coreMigrationFinalizedEvent.d.ts +26 -0
- package/lib/types/solana/generated/core/events/index.d.ts +13 -0
- package/lib/types/solana/generated/core/events/primaryNameRemovedEvent.d.ts +26 -0
- package/lib/types/solana/generated/core/events/primaryNameRequestExpiredEvent.d.ts +26 -0
- package/lib/types/solana/generated/core/events/primaryNameRequestedEvent.d.ts +30 -0
- package/lib/types/solana/generated/core/events/primaryNameSetEvent.d.ts +24 -0
- package/lib/types/solana/generated/core/events/supplyFinalizedEvent.d.ts +26 -0
- package/lib/types/solana/generated/core/events/transferEvent.d.ts +26 -0
- package/lib/types/solana/generated/core/events/vaultCreatedEvent.d.ts +28 -0
- package/lib/types/solana/generated/core/events/vaultExtendedEvent.d.ts +26 -0
- package/lib/types/solana/generated/core/events/vaultIncreasedEvent.d.ts +28 -0
- package/lib/types/solana/generated/core/events/vaultReleasedEvent.d.ts +26 -0
- package/lib/types/solana/generated/core/events/vaultRevokedEvent.d.ts +28 -0
- package/lib/types/solana/generated/gar/events/allowlistToggledEvent.d.ts +24 -0
- package/lib/types/solana/generated/gar/events/delegateAllowlistedEvent.d.ts +26 -0
- package/lib/types/solana/generated/gar/events/delegationClosedEvent.d.ts +24 -0
- package/lib/types/solana/generated/gar/events/delegationDecreasedEvent.d.ts +28 -0
- package/lib/types/solana/generated/gar/events/delegationEvent.d.ts +28 -0
- package/lib/types/solana/generated/gar/events/epochClosedEvent.d.ts +24 -0
- package/lib/types/solana/generated/gar/events/epochCreatedEvent.d.ts +26 -0
- package/lib/types/solana/generated/gar/events/epochDistributedEvent.d.ts +26 -0
- package/lib/types/solana/generated/gar/events/epochPrescribedEvent.d.ts +28 -0
- package/lib/types/solana/generated/gar/events/epochWeightsTalliedEvent.d.ts +26 -0
- package/lib/types/solana/generated/gar/events/epochsToggledEvent.d.ts +24 -0
- package/lib/types/solana/generated/gar/events/fundingPlanAppliedEvent.d.ts +28 -0
- package/lib/types/solana/generated/gar/events/garMigrationFinalizedEvent.d.ts +26 -0
- package/lib/types/solana/generated/gar/events/gatewayFinalizedEvent.d.ts +24 -0
- package/lib/types/solana/generated/gar/events/gatewayJoinedEvent.d.ts +26 -0
- package/lib/types/solana/generated/gar/events/gatewayLeavingEvent.d.ts +22 -0
- package/lib/types/solana/generated/gar/events/gatewayPrunedEvent.d.ts +26 -0
- package/lib/types/solana/generated/gar/events/gatewaySettingsUpdatedEvent.d.ts +24 -0
- package/lib/types/solana/generated/gar/events/index.d.ts +30 -0
- package/lib/types/solana/generated/gar/events/instantWithdrawalEvent.d.ts +30 -0
- package/lib/types/solana/generated/gar/events/observationSubmittedEvent.d.ts +28 -0
- package/lib/types/solana/generated/gar/events/observerAddressUpdatedEvent.d.ts +24 -0
- package/lib/types/solana/generated/gar/events/operatorStakeIncreasedEvent.d.ts +26 -0
- package/lib/types/solana/generated/gar/events/redelegationEvent.d.ts +30 -0
- package/lib/types/solana/generated/gar/events/residueVaultCreatedEvent.d.ts +30 -0
- package/lib/types/solana/generated/gar/events/rewardsCompoundedEvent.d.ts +26 -0
- package/lib/types/solana/generated/gar/events/stakePaymentEvent.d.ts +28 -0
- package/lib/types/solana/generated/gar/events/withdrawalCancelledEvent.d.ts +30 -0
- package/lib/types/solana/generated/gar/events/withdrawalClaimedEvent.d.ts +26 -0
- package/lib/types/solana/generated/gar/events/withdrawalCreatedEvent.d.ts +28 -0
- package/lib/types/solana/generated/gar/events/withdrawalPaymentEvent.d.ts +28 -0
- package/lib/types/solana/generated/mpl-core/accounts/assetV1.d.ts +37 -0
- package/lib/types/solana/generated/mpl-core/accounts/collectionV1.d.ts +37 -0
- package/lib/types/solana/generated/mpl-core/accounts/hashedAssetV1.d.ts +30 -0
- package/lib/types/solana/generated/mpl-core/accounts/index.d.ts +12 -0
- package/lib/types/solana/generated/mpl-core/accounts/pluginHeaderV1.d.ts +30 -0
- package/lib/types/solana/generated/mpl-core/accounts/pluginRegistryV1.d.ts +31 -0
- package/lib/types/solana/generated/mpl-core/errors/index.d.ts +8 -0
- package/lib/types/solana/generated/mpl-core/errors/mplCore.d.ts +133 -0
- package/lib/types/solana/generated/mpl-core/index.d.ts +8 -0
- package/lib/types/solana/generated/mpl-core/instructions/addCollectionExternalPluginAdapterV1.d.ts +56 -0
- package/lib/types/solana/generated/mpl-core/instructions/addCollectionPluginV1.d.ts +59 -0
- package/lib/types/solana/generated/mpl-core/instructions/addExternalPluginAdapterV1.d.ts +60 -0
- package/lib/types/solana/generated/mpl-core/instructions/addPluginV1.d.ts +63 -0
- package/lib/types/solana/generated/mpl-core/instructions/approveCollectionPluginAuthorityV1.d.ts +59 -0
- package/lib/types/solana/generated/mpl-core/instructions/approvePluginAuthorityV1.d.ts +63 -0
- package/lib/types/solana/generated/mpl-core/instructions/burnCollectionV1.d.ts +52 -0
- package/lib/types/solana/generated/mpl-core/instructions/burnV1.d.ts +60 -0
- package/lib/types/solana/generated/mpl-core/instructions/collect.d.ts +39 -0
- package/lib/types/solana/generated/mpl-core/instructions/compressV1.d.ts +55 -0
- package/lib/types/solana/generated/mpl-core/instructions/createCollectionV1.d.ts +58 -0
- package/lib/types/solana/generated/mpl-core/instructions/createCollectionV2.d.ts +61 -0
- package/lib/types/solana/generated/mpl-core/instructions/createV1.d.ts +77 -0
- package/lib/types/solana/generated/mpl-core/instructions/createV2.d.ts +80 -0
- package/lib/types/solana/generated/mpl-core/instructions/decompressV1.d.ts +60 -0
- package/lib/types/solana/generated/mpl-core/instructions/executeV1.d.ts +63 -0
- package/lib/types/solana/generated/mpl-core/instructions/index.d.ts +40 -0
- package/lib/types/solana/generated/mpl-core/instructions/removeCollectionExternalPluginAdapterV1.d.ts +56 -0
- package/lib/types/solana/generated/mpl-core/instructions/removeCollectionPluginV1.d.ts +56 -0
- package/lib/types/solana/generated/mpl-core/instructions/removeExternalPluginAdapterV1.d.ts +60 -0
- package/lib/types/solana/generated/mpl-core/instructions/removePluginV1.d.ts +60 -0
- package/lib/types/solana/generated/mpl-core/instructions/revokeCollectionPluginAuthorityV1.d.ts +56 -0
- package/lib/types/solana/generated/mpl-core/instructions/revokePluginAuthorityV1.d.ts +60 -0
- package/lib/types/solana/generated/mpl-core/instructions/transferV1.d.ts +64 -0
- package/lib/types/solana/generated/mpl-core/instructions/updateCollectionExternalPluginAdapterV1.d.ts +59 -0
- package/lib/types/solana/generated/mpl-core/instructions/updateCollectionInfoV1.d.ts +47 -0
- package/lib/types/solana/generated/mpl-core/instructions/updateCollectionPluginV1.d.ts +56 -0
- package/lib/types/solana/generated/mpl-core/instructions/updateCollectionV1.d.ts +62 -0
- package/lib/types/solana/generated/mpl-core/instructions/updateExternalPluginAdapterV1.d.ts +63 -0
- package/lib/types/solana/generated/mpl-core/instructions/updatePluginV1.d.ts +60 -0
- package/lib/types/solana/generated/mpl-core/instructions/updateV1.d.ts +66 -0
- package/lib/types/solana/generated/mpl-core/instructions/updateV2.d.ts +70 -0
- package/lib/types/solana/generated/mpl-core/instructions/writeCollectionExternalPluginAdapterDataV1.d.ts +63 -0
- package/lib/types/solana/generated/mpl-core/instructions/writeExternalPluginAdapterDataV1.d.ts +67 -0
- package/lib/types/solana/generated/mpl-core/program-address.d.ts +7 -0
- package/lib/types/solana/generated/mpl-core/types/addAssetsToGroupV1Args.d.ts +13 -0
- package/lib/types/solana/generated/mpl-core/types/addBlocker.d.ts +13 -0
- package/lib/types/solana/generated/mpl-core/types/addCollectionsToGroupV1Args.d.ts +13 -0
- package/lib/types/solana/generated/mpl-core/types/addGroupsToGroupV1Args.d.ts +15 -0
- package/lib/types/solana/generated/mpl-core/types/agentIdentity.d.ts +15 -0
- package/lib/types/solana/generated/mpl-core/types/agentIdentityInitInfo.d.ts +22 -0
- package/lib/types/solana/generated/mpl-core/types/agentIdentityUpdateInfo.d.ts +20 -0
- package/lib/types/solana/generated/mpl-core/types/appData.d.ts +20 -0
- package/lib/types/solana/generated/mpl-core/types/appDataInitInfo.d.ts +22 -0
- package/lib/types/solana/generated/mpl-core/types/appDataUpdateInfo.d.ts +18 -0
- package/lib/types/solana/generated/mpl-core/types/attribute.d.ts +16 -0
- package/lib/types/solana/generated/mpl-core/types/attributes.d.ts +18 -0
- package/lib/types/solana/generated/mpl-core/types/authority.d.ts +29 -0
- package/lib/types/solana/generated/mpl-core/types/autograph.d.ts +18 -0
- package/lib/types/solana/generated/mpl-core/types/autographSignature.d.ts +16 -0
- package/lib/types/solana/generated/mpl-core/types/bubblegumV2.d.ts +13 -0
- package/lib/types/solana/generated/mpl-core/types/burnDelegate.d.ts +13 -0
- package/lib/types/solana/generated/mpl-core/types/closeGroupV1Args.d.ts +13 -0
- package/lib/types/solana/generated/mpl-core/types/compressionProof.d.ts +28 -0
- package/lib/types/solana/generated/mpl-core/types/creator.d.ts +16 -0
- package/lib/types/solana/generated/mpl-core/types/dataSection.d.ts +20 -0
- package/lib/types/solana/generated/mpl-core/types/dataSectionInitInfo.d.ts +20 -0
- package/lib/types/solana/generated/mpl-core/types/dataSectionUpdateInfo.d.ts +13 -0
- package/lib/types/solana/generated/mpl-core/types/dataState.d.ts +16 -0
- package/lib/types/solana/generated/mpl-core/types/edition.d.ts +15 -0
- package/lib/types/solana/generated/mpl-core/types/externalCheckResult.d.ts +15 -0
- package/lib/types/solana/generated/mpl-core/types/externalPluginAdapter.d.ts +66 -0
- package/lib/types/solana/generated/mpl-core/types/externalPluginAdapterInitInfo.d.ts +66 -0
- package/lib/types/solana/generated/mpl-core/types/externalPluginAdapterKey.d.ts +64 -0
- package/lib/types/solana/generated/mpl-core/types/externalPluginAdapterSchema.d.ts +17 -0
- package/lib/types/solana/generated/mpl-core/types/externalPluginAdapterType.d.ts +21 -0
- package/lib/types/solana/generated/mpl-core/types/externalPluginAdapterUpdateInfo.d.ts +59 -0
- package/lib/types/solana/generated/mpl-core/types/externalRegistryRecord.d.ts +28 -0
- package/lib/types/solana/generated/mpl-core/types/externalValidationResult.d.ts +17 -0
- package/lib/types/solana/generated/mpl-core/types/extraAccount.d.ts +86 -0
- package/lib/types/solana/generated/mpl-core/types/freezeDelegate.d.ts +15 -0
- package/lib/types/solana/generated/mpl-core/types/freezeExecute.d.ts +15 -0
- package/lib/types/solana/generated/mpl-core/types/groups.d.ts +15 -0
- package/lib/types/solana/generated/mpl-core/types/hashablePluginSchema.d.ts +22 -0
- package/lib/types/solana/generated/mpl-core/types/hashedAssetSchema.d.ts +16 -0
- package/lib/types/solana/generated/mpl-core/types/hookableLifecycleEvent.d.ts +19 -0
- package/lib/types/solana/generated/mpl-core/types/immutableMetadata.d.ts +13 -0
- package/lib/types/solana/generated/mpl-core/types/index.d.ts +89 -0
- package/lib/types/solana/generated/mpl-core/types/key.d.ts +21 -0
- package/lib/types/solana/generated/mpl-core/types/lifecycleHook.d.ts +24 -0
- package/lib/types/solana/generated/mpl-core/types/lifecycleHookInitInfo.d.ts +28 -0
- package/lib/types/solana/generated/mpl-core/types/lifecycleHookUpdateInfo.d.ts +22 -0
- package/lib/types/solana/generated/mpl-core/types/linkedAppData.d.ts +20 -0
- package/lib/types/solana/generated/mpl-core/types/linkedAppDataInitInfo.d.ts +22 -0
- package/lib/types/solana/generated/mpl-core/types/linkedAppDataUpdateInfo.d.ts +18 -0
- package/lib/types/solana/generated/mpl-core/types/linkedDataKey.d.ts +31 -0
- package/lib/types/solana/generated/mpl-core/types/linkedLifecycleHook.d.ts +24 -0
- package/lib/types/solana/generated/mpl-core/types/linkedLifecycleHookInitInfo.d.ts +28 -0
- package/lib/types/solana/generated/mpl-core/types/linkedLifecycleHookUpdateInfo.d.ts +22 -0
- package/lib/types/solana/generated/mpl-core/types/masterEdition.d.ts +21 -0
- package/lib/types/solana/generated/mpl-core/types/oracle.d.ts +22 -0
- package/lib/types/solana/generated/mpl-core/types/oracleInitInfo.d.ts +26 -0
- package/lib/types/solana/generated/mpl-core/types/oracleUpdateInfo.d.ts +22 -0
- package/lib/types/solana/generated/mpl-core/types/oracleValidation.d.ts +35 -0
- package/lib/types/solana/generated/mpl-core/types/permanentBurnDelegate.d.ts +13 -0
- package/lib/types/solana/generated/mpl-core/types/permanentFreezeDelegate.d.ts +15 -0
- package/lib/types/solana/generated/mpl-core/types/permanentFreezeExecute.d.ts +15 -0
- package/lib/types/solana/generated/mpl-core/types/permanentTransferDelegate.d.ts +13 -0
- package/lib/types/solana/generated/mpl-core/types/plugin.d.ts +150 -0
- package/lib/types/solana/generated/mpl-core/types/pluginAuthorityPair.d.ts +20 -0
- package/lib/types/solana/generated/mpl-core/types/pluginType.d.ts +33 -0
- package/lib/types/solana/generated/mpl-core/types/registryRecord.d.ts +22 -0
- package/lib/types/solana/generated/mpl-core/types/relationshipKind.d.ts +18 -0
- package/lib/types/solana/generated/mpl-core/types/removeAssetsFromGroupV1Args.d.ts +15 -0
- package/lib/types/solana/generated/mpl-core/types/removeCollectionsFromGroupV1Args.d.ts +15 -0
- package/lib/types/solana/generated/mpl-core/types/removeGroupsFromGroupV1Args.d.ts +15 -0
- package/lib/types/solana/generated/mpl-core/types/royalties.d.ts +22 -0
- package/lib/types/solana/generated/mpl-core/types/ruleSet.d.ts +27 -0
- package/lib/types/solana/generated/mpl-core/types/seed.d.ts +36 -0
- package/lib/types/solana/generated/mpl-core/types/transferDelegate.d.ts +13 -0
- package/lib/types/solana/generated/mpl-core/types/updateAuthority.d.ts +27 -0
- package/lib/types/solana/generated/mpl-core/types/updateDelegate.d.ts +15 -0
- package/lib/types/solana/generated/mpl-core/types/updateGroupV1Args.d.ts +19 -0
- package/lib/types/solana/generated/mpl-core/types/updateType.d.ts +17 -0
- package/lib/types/solana/generated/mpl-core/types/validationResult.d.ts +18 -0
- package/lib/types/solana/generated/mpl-core/types/validationResultsOffset.d.ts +33 -0
- package/lib/types/solana/generated/mpl-core/types/verifiedCreators.d.ts +18 -0
- package/lib/types/solana/generated/mpl-core/types/verifiedCreatorsSignature.d.ts +16 -0
- package/lib/types/solana/index.d.ts +63 -0
- package/lib/types/solana/instruction.d.ts +24 -0
- package/lib/types/solana/io-readable.d.ts +360 -0
- package/lib/types/solana/io-writeable.d.ts +533 -0
- package/lib/types/solana/json-rpc.d.ts +32 -0
- package/lib/types/solana/metadata.d.ts +69 -0
- package/lib/types/solana/mpl-core.d.ts +76 -0
- package/lib/types/solana/pda.d.ts +95 -0
- package/lib/types/solana/send.d.ts +16 -0
- package/lib/types/solana/spawn-ant.d.ts +130 -0
- package/lib/types/solana/types.d.ts +67 -0
- package/lib/types/types/ant-registry.d.ts +39 -0
- package/lib/types/types/ant.d.ts +22 -4
- package/lib/types/types/io.d.ts +56 -1
- package/lib/types/version.d.ts +1 -1
- package/package.json +33 -16
- package/lib/cjs/cli/cli.js +0 -822
- package/lib/cjs/cli/commands/antCommands.js +0 -113
- package/lib/cjs/cli/commands/arnsPurchaseCommands.js +0 -212
- package/lib/cjs/cli/commands/gatewayWriteCommands.js +0 -210
- package/lib/cjs/cli/commands/readCommands.js +0 -215
- package/lib/cjs/cli/commands/transfer.js +0 -159
- package/lib/cjs/cli/options.js +0 -470
- package/lib/cjs/cli/types.js +0 -2
- package/lib/cjs/cli/utils.js +0 -639
- package/lib/cjs/common/ant-registry.js +0 -155
- package/lib/cjs/common/ant-versions.js +0 -93
- package/lib/cjs/common/ant.js +0 -1182
- package/lib/cjs/common/arweave.js +0 -27
- package/lib/cjs/common/contracts/ao-process.js +0 -224
- package/lib/cjs/common/error.js +0 -64
- package/lib/cjs/common/faucet.js +0 -150
- package/lib/cjs/common/hyperbeam/hb.js +0 -173
- package/lib/cjs/common/index.js +0 -42
- package/lib/cjs/common/io.js +0 -1423
- package/lib/cjs/common/logger.js +0 -83
- package/lib/cjs/common/loggers/winston.js +0 -68
- package/lib/cjs/common/marketplace.js +0 -731
- package/lib/cjs/common/turbo.js +0 -223
- package/lib/cjs/constants.js +0 -41
- package/lib/cjs/node/index.js +0 -39
- package/lib/cjs/package.json +0 -1
- package/lib/cjs/types/ant-registry.js +0 -2
- package/lib/cjs/types/ant.js +0 -168
- package/lib/cjs/types/common.js +0 -2
- package/lib/cjs/types/faucet.js +0 -2
- package/lib/cjs/types/index.js +0 -37
- package/lib/cjs/types/io.js +0 -51
- package/lib/cjs/types/token.js +0 -116
- package/lib/cjs/utils/ant.js +0 -108
- package/lib/cjs/utils/ao.js +0 -432
- package/lib/cjs/utils/arweave.js +0 -285
- package/lib/cjs/utils/base64.js +0 -62
- package/lib/cjs/utils/hash.js +0 -56
- package/lib/cjs/utils/index.js +0 -38
- package/lib/cjs/utils/json.js +0 -26
- package/lib/cjs/utils/processes.js +0 -173
- package/lib/cjs/utils/random.js +0 -30
- package/lib/cjs/utils/schema.js +0 -15
- package/lib/cjs/utils/url.js +0 -37
- package/lib/cjs/version.js +0 -20
- package/lib/cjs/web/index.js +0 -41
package/README.md
CHANGED
|
@@ -11,14 +11,6 @@ This is the home of the ar.io SDK. This SDK provides functionality for interacti
|
|
|
11
11
|
- [Table of Contents](#table-of-contents)
|
|
12
12
|
- [Installation](#installation)
|
|
13
13
|
- [Quick Start](#quick-start)
|
|
14
|
-
- [Usage](#usage)
|
|
15
|
-
- [ARIO Contract](#ario-contract)
|
|
16
|
-
- [ANT Contracts](#ant-contracts)
|
|
17
|
-
- [Token Conversion](#token-conversion)
|
|
18
|
-
- [Logging](#logging)
|
|
19
|
-
- [Pagination](#pagination)
|
|
20
|
-
- [Resources](#resources)
|
|
21
|
-
- [Developers](#developers)
|
|
22
14
|
|
|
23
15
|
<!-- tocstop -->
|
|
24
16
|
|
|
@@ -48,6 +40,22 @@ const ario = ARIO.mainnet(); // defaults to mainnet
|
|
|
48
40
|
const gateways = await ario.getGateways();
|
|
49
41
|
```
|
|
50
42
|
|
|
43
|
+
> **Solana backend (preview)** — `npm install @ar.io/sdk@solana`
|
|
44
|
+
> ships the Solana port. Same `ARIO`/`ANT` API surface, kit-native:
|
|
45
|
+
>
|
|
46
|
+
> ```ts
|
|
47
|
+
> import { ARIO } from '@ar.io/sdk/solana';
|
|
48
|
+
> import { createSolanaRpc } from '@solana/kit';
|
|
49
|
+
>
|
|
50
|
+
> const ario = ARIO.init({
|
|
51
|
+
> backend: 'solana',
|
|
52
|
+
> rpc: createSolanaRpc('https://api.mainnet-beta.solana.com'),
|
|
53
|
+
> });
|
|
54
|
+
> ```
|
|
55
|
+
>
|
|
56
|
+
> See the **[Solana backend](#solana-backend)** section below for the
|
|
57
|
+
> full kit-native usage (read + write paths, ANT spawn, escrow, etc.).
|
|
58
|
+
|
|
51
59
|
<details>
|
|
52
60
|
<summary>Output</summary>
|
|
53
61
|
|
|
@@ -98,7 +106,7 @@ const gateways = await ario.getGateways();
|
|
|
98
106
|
|
|
99
107
|
## Usage
|
|
100
108
|
|
|
101
|
-
The SDK is
|
|
109
|
+
The SDK is published as an ES module (`"type": "module"`) and is compatible with modern bundlers such as Webpack, Rollup, ESbuild, and Vite. CommonJS consumers should migrate to ESM (Node 18+ supports ESM natively, and modern bundlers handle ESM packages out of the box). Utilize the appropriately named exports provided by this SDK's [package.json] based on your project's configuration. Refer to the [examples] directory to see how to use the SDK in various environments.
|
|
102
110
|
|
|
103
111
|
### Web
|
|
104
112
|
|
|
@@ -132,8 +140,6 @@ const gateways = await ario.getGateways();
|
|
|
132
140
|
|
|
133
141
|
### Node
|
|
134
142
|
|
|
135
|
-
#### ESM (NodeNext)
|
|
136
|
-
|
|
137
143
|
```javascript
|
|
138
144
|
import { ARIO } from "@ar.io/sdk/node";
|
|
139
145
|
|
|
@@ -143,17 +149,6 @@ const ario = ARIO.mainnet();
|
|
|
143
149
|
const gateways = await ario.getGateways();
|
|
144
150
|
```
|
|
145
151
|
|
|
146
|
-
#### CJS
|
|
147
|
-
|
|
148
|
-
```javascript
|
|
149
|
-
import { ARIO } from "@ar.io/sdk";
|
|
150
|
-
|
|
151
|
-
// set up client
|
|
152
|
-
const ario = ARIO.mainnet();
|
|
153
|
-
// fetch gateways
|
|
154
|
-
const gateways = await ario.getGateways();
|
|
155
|
-
```
|
|
156
|
-
|
|
157
152
|
### Typescript
|
|
158
153
|
|
|
159
154
|
The SDK provides TypeScript types. When you import the SDK in a TypeScript project types are exported from `./lib/types/[node/web]/index.d.ts` and should be automatically recognized by package managers, offering benefits such as type-checking and autocompletion.
|
|
@@ -3170,6 +3165,132 @@ In the example above, the query will return ArNS records where:
|
|
|
3170
3165
|
- The type is "lease" AND
|
|
3171
3166
|
- The processId is EITHER "ZkgLfyHALs5koxzojpcsEFAKA8fbpzP7l-tbM7wmQNM" OR "r61rbOjyXx3u644nGl9bkwLWlWmArMEzQgxBo2R-Vu0"
|
|
3172
3167
|
|
|
3168
|
+
## Solana backend
|
|
3169
|
+
|
|
3170
|
+
The Solana backend ports the ARIO/ANT API surface to Solana. Same
|
|
3171
|
+
`ARIO.init`/`ANT.init` factory calls — pass `backend: 'solana'` plus a
|
|
3172
|
+
`@solana/kit` RPC client and you get the kit-native implementation.
|
|
3173
|
+
|
|
3174
|
+
### Quick start
|
|
3175
|
+
|
|
3176
|
+
```ts
|
|
3177
|
+
import { ARIO, ANT } from '@ar.io/sdk/solana';
|
|
3178
|
+
import {
|
|
3179
|
+
createSolanaRpc,
|
|
3180
|
+
createSolanaRpcSubscriptions,
|
|
3181
|
+
createKeyPairSignerFromBytes,
|
|
3182
|
+
} from '@solana/kit';
|
|
3183
|
+
import { readFileSync } from 'node:fs';
|
|
3184
|
+
|
|
3185
|
+
// Read-only client (RPC only)
|
|
3186
|
+
const rpc = createSolanaRpc('https://api.mainnet-beta.solana.com');
|
|
3187
|
+
const ario = ARIO.init({ backend: 'solana', rpc });
|
|
3188
|
+
|
|
3189
|
+
const record = await ario.getArNSRecord({ name: 'ardrive' });
|
|
3190
|
+
// record.processId === '<the ANT mint pubkey>'
|
|
3191
|
+
|
|
3192
|
+
// Write client — pair an RPC + a signer
|
|
3193
|
+
const signerBytes = new Uint8Array(
|
|
3194
|
+
JSON.parse(readFileSync('/path/to/keypair.json', 'utf8')),
|
|
3195
|
+
);
|
|
3196
|
+
const signer = await createKeyPairSignerFromBytes(signerBytes);
|
|
3197
|
+
const rpcSubs = createSolanaRpcSubscriptions(
|
|
3198
|
+
'wss://api.mainnet-beta.solana.com',
|
|
3199
|
+
);
|
|
3200
|
+
|
|
3201
|
+
const arioWrite = ARIO.init({
|
|
3202
|
+
backend: 'solana',
|
|
3203
|
+
rpc,
|
|
3204
|
+
rpcSubscriptions: rpcSubs,
|
|
3205
|
+
signer,
|
|
3206
|
+
});
|
|
3207
|
+
|
|
3208
|
+
await arioWrite.buyRecord({
|
|
3209
|
+
name: 'foo',
|
|
3210
|
+
type: 'lease',
|
|
3211
|
+
years: 1,
|
|
3212
|
+
processId: '<ANT mint pubkey>',
|
|
3213
|
+
});
|
|
3214
|
+
```
|
|
3215
|
+
|
|
3216
|
+
### What's available
|
|
3217
|
+
|
|
3218
|
+
The Solana backend implements the full `AoARIOWrite` and `AoANTWrite`
|
|
3219
|
+
interfaces — every method on the AO-backed clients has a Solana
|
|
3220
|
+
equivalent. Read paths (`getArNSRecord`, `getGateway`,
|
|
3221
|
+
`getEpochSettings`, etc.) and write paths (`buyRecord`, `extendLease`,
|
|
3222
|
+
`upgradeRecord`, `joinNetwork`, `delegateStake`, `decreaseDelegateStake`,
|
|
3223
|
+
`createVault`, `transferAnt`, `setRecord`, etc.) all work against the
|
|
3224
|
+
on-chain AR.IO programs deployed on Solana.
|
|
3225
|
+
|
|
3226
|
+
Multi-source funding works the same way as Lua's `getFundingPlan`:
|
|
3227
|
+
pass `fundFrom: 'any'` and the SDK composes a plan across balance,
|
|
3228
|
+
matured withdrawal vaults, excess delegated stake, and minimum stake
|
|
3229
|
+
across multiple gateways. See the planner at
|
|
3230
|
+
`src/solana/funding-plan.ts` for the Lua-faithful drawdown order.
|
|
3231
|
+
|
|
3232
|
+
### ANT lifecycle
|
|
3233
|
+
|
|
3234
|
+
ANTs on Solana are Metaplex Core NFTs with an Attributes plugin
|
|
3235
|
+
carrying ArNS traits (`ArNS Name`, `Type`, `Undername Limit`,
|
|
3236
|
+
`ANT Program`). Spawn a fresh one:
|
|
3237
|
+
|
|
3238
|
+
```ts
|
|
3239
|
+
import { ANT, spawnSolanaANT } from '@ar.io/sdk/solana';
|
|
3240
|
+
|
|
3241
|
+
const { processId } = await spawnSolanaANT({
|
|
3242
|
+
rpc, rpcSubscriptions: rpcSubs, signer,
|
|
3243
|
+
state: {
|
|
3244
|
+
name: 'My ANT',
|
|
3245
|
+
ticker: 'MYANT',
|
|
3246
|
+
description: 'whatever',
|
|
3247
|
+
uri: 'ar://placeholder-metadata',
|
|
3248
|
+
},
|
|
3249
|
+
});
|
|
3250
|
+
|
|
3251
|
+
const ant = await ANT.init({
|
|
3252
|
+
backend: 'solana',
|
|
3253
|
+
processId, // the Metaplex Core asset pubkey
|
|
3254
|
+
rpc, rpcSubscriptions: rpcSubs, signer,
|
|
3255
|
+
});
|
|
3256
|
+
await ant.setBaseNameRecord({ transactionId: '...', ttlSeconds: 3600 });
|
|
3257
|
+
await ant.addController({ controller: '<some-pubkey>' });
|
|
3258
|
+
```
|
|
3259
|
+
|
|
3260
|
+
The asset's Attributes plugin tracks which ANT program (the canonical
|
|
3261
|
+
`ARIO_ANT_PROGRAM_ID` or a third-party-conformant program — see
|
|
3262
|
+
ADR-016) holds the records. The SDK reads the plugin to derive the
|
|
3263
|
+
correct `AntRecord` PDA on every record lookup.
|
|
3264
|
+
|
|
3265
|
+
### Conditional imports
|
|
3266
|
+
|
|
3267
|
+
The `@ar.io/sdk/solana` subpath bundles Solana-only deps (`@solana/kit`,
|
|
3268
|
+
`@solana-program/compute-budget`, etc.). The default `@ar.io/sdk` /
|
|
3269
|
+
`@ar.io/sdk/node` / `@ar.io/sdk/web` entries stay AO-only — bundle size
|
|
3270
|
+
is unchanged for AO-only consumers.
|
|
3271
|
+
|
|
3272
|
+
You can also import the codama-emitted typed clients directly for
|
|
3273
|
+
custom transaction building:
|
|
3274
|
+
|
|
3275
|
+
```ts
|
|
3276
|
+
import {
|
|
3277
|
+
getBuyNameInstructionAsync,
|
|
3278
|
+
ARIO_ARNS_PROGRAM_ADDRESS,
|
|
3279
|
+
} from '@ar.io/sdk/solana/generated';
|
|
3280
|
+
```
|
|
3281
|
+
|
|
3282
|
+
### Networks
|
|
3283
|
+
|
|
3284
|
+
| Network | RPC | Programs |
|
|
3285
|
+
|---|---|---|
|
|
3286
|
+
| Mainnet | not yet deployed | TBD |
|
|
3287
|
+
| Devnet | `https://api.devnet.solana.com` | See `src/solana/constants.ts` for current devnet program IDs |
|
|
3288
|
+
| Localnet | Surfpool — `https://github.com/solana-foundation/surfpool` | Localnet harness in `solana-ar-io` monorepo |
|
|
3289
|
+
|
|
3290
|
+
The migration tooling (snapshot exporter, batch importer, claim app)
|
|
3291
|
+
lives in the [`solana-ar-io`](https://github.com/ar-io/solana-ar-io)
|
|
3292
|
+
monorepo until cutover.
|
|
3293
|
+
|
|
3173
3294
|
## Resources
|
|
3174
3295
|
|
|
3175
3296
|
### Bundling
|
|
@@ -3213,7 +3334,6 @@ For more information on how to use AO and AO Connect within this library, please
|
|
|
3213
3334
|
- `yarn test:e2e` - runs e2e tests
|
|
3214
3335
|
- `yarn test:unit` - runs unit tests
|
|
3215
3336
|
- `yarn example:web` - opens up the example web page
|
|
3216
|
-
- `yarn example:cjs` - runs example CJS node script
|
|
3217
3337
|
- `yarn example:esm` - runs example ESM node script
|
|
3218
3338
|
- `yarn example:vite` - runs example Vite web page
|
|
3219
3339
|
|
package/lib/esm/cli/cli.js
CHANGED
|
@@ -20,8 +20,10 @@ import { AOProcess, spawnANT } from '../node/index.js';
|
|
|
20
20
|
import { mARIOToken } from '../types/token.js';
|
|
21
21
|
import { version } from '../version.js';
|
|
22
22
|
import { setAntBaseNameCLICommand, setAntRecordCLICommand, setAntUndernameCLICommand, transferRecordOwnershipCLICommand, upgradeAntCLICommand, } from './commands/antCommands.js';
|
|
23
|
-
import { buyRecordCLICommand, extendLeaseCLICommand, increaseUndernameLimitCLICommand, requestPrimaryNameCLICommand, setPrimaryNameCLICommand, upgradeRecordCLICommand, } from './commands/arnsPurchaseCommands.js';
|
|
23
|
+
import { buyRecordCLICommand, extendLeaseCLICommand, increaseUndernameLimitCLICommand, requestPrimaryNameCLICommand, setPrimaryNameCLICommand, syncAttributesCLICommand, upgradeRecordCLICommand, } from './commands/arnsPurchaseCommands.js';
|
|
24
|
+
import { escrowCancelCLICommand, escrowClaimArweaveCLICommand, escrowClaimEthereumCLICommand, escrowDepositCLICommand, escrowStatusCLICommand, escrowUpdateRecipientCLICommand, } from './commands/escrowCommands.js';
|
|
24
25
|
import { cancelWithdrawal, decreaseDelegateStake, decreaseOperatorStake, delegateStake, increaseOperatorStake, instantWithdrawal, joinNetwork, leaveNetwork, redelegateStake, saveObservations, updateGatewaySettings, } from './commands/gatewayWriteCommands.js';
|
|
26
|
+
import { closeDrainedWithdrawalCLICommand, closeEmptyDelegationCLICommand, closeExpiredRequestCLICommand, closeObservationCLICommand, finalizeGoneCLICommand, pruneExpiredNamesCLICommand, pruneExpiredReservationCLICommand, pruneGatewayCLICommand, pruneNameToReturnedCLICommand, pruneReturnedNamesCLICommand, releaseVaultCLICommand, } from './commands/pruneCommands.js';
|
|
25
27
|
import { getAllGatewayVaults, getAllowedDelegates, getArNSRecord, getArNSReservedName, getArNSReturnedName, getCostDetails, getDelegations, getEpoch, getGateway, getGatewayDelegates, getGatewayVaults, getPrescribedNames, getPrescribedObservers, getPrimaryName, getTokenCost, getVault, listAllDelegatesCLICommand, listAntsForAddress, listArNSRecords, listArNSRecordsForAddress, listArNSReservedNames, listArNSReturnedNames, listGateways, resolveArNSName, } from './commands/readCommands.js';
|
|
26
28
|
import { createVaultCLICommand, extendVaultCLICommand, increaseVaultCLICommand, revokeVaultCLICommand, transferCLICommand, vaultedTransferCLICommand, } from './commands/transfer.js';
|
|
27
29
|
import { addressAndVaultIdOptions, antStateOptions, arnsPurchaseOptions, buyRecordOptions, decreaseDelegateStakeOptions, delegateStakeOptions, epochOptions, getVaultOptions, globalOptions, joinNetworkOptions, operatorStakeOptions, optionMap, paginationAddressOptions, paginationOptions, redelegateStakeOptions, setAntBaseNameOptions, setAntUndernameOptions, tokenCostOptions, transferOptions, transferRecordOwnershipOptions, updateGatewaySettingsOptions, upgradeAntOptions, vaultedTransferOptions, writeActionOptions, } from './options.js';
|
|
@@ -411,7 +413,12 @@ makeCommand({
|
|
|
411
413
|
options: buyRecordOptions,
|
|
412
414
|
action: buyRecordCLICommand,
|
|
413
415
|
});
|
|
414
|
-
|
|
416
|
+
makeCommand({
|
|
417
|
+
name: 'buy-name',
|
|
418
|
+
description: 'Buy a name (alias for buy-record)',
|
|
419
|
+
options: buyRecordOptions,
|
|
420
|
+
action: buyRecordCLICommand,
|
|
421
|
+
});
|
|
415
422
|
makeCommand({
|
|
416
423
|
name: 'upgrade-record',
|
|
417
424
|
description: 'Upgrade the lease of a record to a permabuy',
|
|
@@ -430,6 +437,14 @@ makeCommand({
|
|
|
430
437
|
options: [...arnsPurchaseOptions, optionMap.increaseCount],
|
|
431
438
|
action: increaseUndernameLimitCLICommand,
|
|
432
439
|
});
|
|
440
|
+
makeCommand({
|
|
441
|
+
name: 'sync-attributes',
|
|
442
|
+
description: 'Sync the on-chain ANT Attributes plugin (ArNS Name / Type / Undername Limit) ' +
|
|
443
|
+
'with the current ArnsRecord. Solana-only; permissionless reconciliation. ' +
|
|
444
|
+
'Use after a buy/reassign where the buyer was not the ANT NFT holder.',
|
|
445
|
+
options: arnsPurchaseOptions,
|
|
446
|
+
action: syncAttributesCLICommand,
|
|
447
|
+
});
|
|
433
448
|
makeCommand({
|
|
434
449
|
name: 'request-primary-name',
|
|
435
450
|
description: 'Request a primary name',
|
|
@@ -442,6 +457,77 @@ makeCommand({
|
|
|
442
457
|
options: arnsPurchaseOptions,
|
|
443
458
|
action: setPrimaryNameCLICommand,
|
|
444
459
|
});
|
|
460
|
+
// # Prune / cleanup (Solana-only — permissionless crank surface)
|
|
461
|
+
makeCommand({
|
|
462
|
+
name: 'prune-expired-names',
|
|
463
|
+
description: 'Batch-prune expired ArnsRecord PDAs (Solana-only). Discovers eligible records ' +
|
|
464
|
+
'via getExpiredArnsRecords if --arns-records is omitted.',
|
|
465
|
+
options: [...writeActionOptions, optionMap.max, optionMap.arnsRecords],
|
|
466
|
+
action: pruneExpiredNamesCLICommand,
|
|
467
|
+
});
|
|
468
|
+
makeCommand({
|
|
469
|
+
name: 'prune-name-to-returned',
|
|
470
|
+
description: 'Convert a single expired-but-not-yet-returned lease into a ReturnedName ' +
|
|
471
|
+
'(starts the Dutch auction). Solana-only.',
|
|
472
|
+
options: [...writeActionOptions, optionMap.name],
|
|
473
|
+
action: pruneNameToReturnedCLICommand,
|
|
474
|
+
});
|
|
475
|
+
makeCommand({
|
|
476
|
+
name: 'prune-returned-names',
|
|
477
|
+
description: 'Batch-prune expired ReturnedName PDAs (Solana-only). Discovers via ' +
|
|
478
|
+
'getExpiredReturnedNames if --returned-names is omitted.',
|
|
479
|
+
options: [...writeActionOptions, optionMap.max, optionMap.returnedNames],
|
|
480
|
+
action: pruneReturnedNamesCLICommand,
|
|
481
|
+
});
|
|
482
|
+
makeCommand({
|
|
483
|
+
name: 'prune-expired-reservation',
|
|
484
|
+
description: 'Close an expired ReservedName PDA (Solana-only).',
|
|
485
|
+
options: [...writeActionOptions, optionMap.name],
|
|
486
|
+
action: pruneExpiredReservationCLICommand,
|
|
487
|
+
});
|
|
488
|
+
makeCommand({
|
|
489
|
+
name: 'prune-gateway',
|
|
490
|
+
description: 'Slash + remove a deficient gateway (≥30 consecutive failures). Solana-only.',
|
|
491
|
+
options: [...writeActionOptions, optionMap.gateway],
|
|
492
|
+
action: pruneGatewayCLICommand,
|
|
493
|
+
});
|
|
494
|
+
makeCommand({
|
|
495
|
+
name: 'finalize-gone',
|
|
496
|
+
description: 'GC a Leaving/Gone gateway whose leave window has fully elapsed. Solana-only.',
|
|
497
|
+
options: [...writeActionOptions, optionMap.gateway],
|
|
498
|
+
action: finalizeGoneCLICommand,
|
|
499
|
+
});
|
|
500
|
+
makeCommand({
|
|
501
|
+
name: 'close-observation',
|
|
502
|
+
description: 'Reclaim rent from an Observation PDA whose epoch has been distributed. Solana-only.',
|
|
503
|
+
options: [...writeActionOptions, optionMap.epochIndex, optionMap.observer],
|
|
504
|
+
action: closeObservationCLICommand,
|
|
505
|
+
});
|
|
506
|
+
makeCommand({
|
|
507
|
+
name: 'close-empty-delegation',
|
|
508
|
+
description: 'Close an empty Delegation PDA (amount == 0). Rent refunds to the original delegator. Solana-only.',
|
|
509
|
+
options: [...writeActionOptions, optionMap.gateway, optionMap.delegator],
|
|
510
|
+
action: closeEmptyDelegationCLICommand,
|
|
511
|
+
});
|
|
512
|
+
makeCommand({
|
|
513
|
+
name: 'close-drained-withdrawal',
|
|
514
|
+
description: 'Close a drained Withdrawal PDA (amount == 0). Rent refunds to the original owner. Solana-only.',
|
|
515
|
+
options: [...writeActionOptions, optionMap.owner, optionMap.withdrawalId],
|
|
516
|
+
action: closeDrainedWithdrawalCLICommand,
|
|
517
|
+
});
|
|
518
|
+
makeCommand({
|
|
519
|
+
name: 'release-vault',
|
|
520
|
+
description: 'Release tokens from an expired vault back to the owner (Solana-only). ' +
|
|
521
|
+
'NOT permissionless — must be called from the vault owner wallet.',
|
|
522
|
+
options: [...writeActionOptions, optionMap.vaultId, optionMap.owner],
|
|
523
|
+
action: releaseVaultCLICommand,
|
|
524
|
+
});
|
|
525
|
+
makeCommand({
|
|
526
|
+
name: 'close-expired-request',
|
|
527
|
+
description: 'Close an expired PrimaryNameRequest PDA. Solana-only.',
|
|
528
|
+
options: [...writeActionOptions, optionMap.initiator],
|
|
529
|
+
action: closeExpiredRequestCLICommand,
|
|
530
|
+
});
|
|
445
531
|
// # ANT Registry
|
|
446
532
|
makeCommand({
|
|
447
533
|
name: 'get-ants-for-address',
|
|
@@ -456,7 +542,7 @@ makeCommand({
|
|
|
456
542
|
description: 'Get the state of an ANT process',
|
|
457
543
|
options: [optionMap.processId],
|
|
458
544
|
action: async (options) => {
|
|
459
|
-
return readANTFromOptions(options).getState();
|
|
545
|
+
return (await readANTFromOptions(options)).getState();
|
|
460
546
|
},
|
|
461
547
|
});
|
|
462
548
|
makeCommand({
|
|
@@ -464,7 +550,7 @@ makeCommand({
|
|
|
464
550
|
description: 'Get the info of an ANT process',
|
|
465
551
|
options: [optionMap.processId],
|
|
466
552
|
action: async (options) => {
|
|
467
|
-
return readANTFromOptions(options).getInfo();
|
|
553
|
+
return (await readANTFromOptions(options)).getInfo();
|
|
468
554
|
},
|
|
469
555
|
});
|
|
470
556
|
makeCommand({
|
|
@@ -472,7 +558,7 @@ makeCommand({
|
|
|
472
558
|
description: 'Get a record of an ANT process',
|
|
473
559
|
options: [optionMap.processId, optionMap.undername],
|
|
474
560
|
action: async (options) => {
|
|
475
|
-
return ((await readANTFromOptions(options).getRecord({
|
|
561
|
+
return ((await (await readANTFromOptions(options)).getRecord({
|
|
476
562
|
undername: requiredStringFromOptions(options, 'undername'),
|
|
477
563
|
})) ?? { message: 'No record found' });
|
|
478
564
|
},
|
|
@@ -482,7 +568,7 @@ makeCommand({
|
|
|
482
568
|
description: 'Get the owner of an ANT process',
|
|
483
569
|
options: [optionMap.processId],
|
|
484
570
|
action: async (options) => {
|
|
485
|
-
return readANTFromOptions(options).getOwner();
|
|
571
|
+
return (await readANTFromOptions(options)).getOwner();
|
|
486
572
|
},
|
|
487
573
|
});
|
|
488
574
|
makeCommand({
|
|
@@ -490,7 +576,7 @@ makeCommand({
|
|
|
490
576
|
description: 'Get the name of an ANT process',
|
|
491
577
|
options: [optionMap.processId],
|
|
492
578
|
action: async (options) => {
|
|
493
|
-
return readANTFromOptions(options).getName();
|
|
579
|
+
return (await readANTFromOptions(options)).getName();
|
|
494
580
|
},
|
|
495
581
|
});
|
|
496
582
|
makeCommand({
|
|
@@ -498,7 +584,7 @@ makeCommand({
|
|
|
498
584
|
description: 'Get the ticker of an ANT process',
|
|
499
585
|
options: [optionMap.processId],
|
|
500
586
|
action: async (options) => {
|
|
501
|
-
return readANTFromOptions(options).getTicker();
|
|
587
|
+
return (await readANTFromOptions(options)).getTicker();
|
|
502
588
|
},
|
|
503
589
|
});
|
|
504
590
|
makeCommand({
|
|
@@ -506,7 +592,7 @@ makeCommand({
|
|
|
506
592
|
description: 'Get the logo of an ANT process',
|
|
507
593
|
options: [optionMap.processId],
|
|
508
594
|
action: async (options) => {
|
|
509
|
-
return readANTFromOptions(options).getLogo();
|
|
595
|
+
return (await readANTFromOptions(options)).getLogo();
|
|
510
596
|
},
|
|
511
597
|
});
|
|
512
598
|
makeCommand({
|
|
@@ -514,7 +600,7 @@ makeCommand({
|
|
|
514
600
|
description: 'Get the balance of an ANT process',
|
|
515
601
|
options: [optionMap.processId, optionMap.address],
|
|
516
602
|
action: async (options) => {
|
|
517
|
-
return readANTFromOptions(options).getBalance({
|
|
603
|
+
return (await readANTFromOptions(options)).getBalance({
|
|
518
604
|
address: requiredAddressFromOptions(options),
|
|
519
605
|
});
|
|
520
606
|
},
|
|
@@ -525,17 +611,32 @@ makeCommand({
|
|
|
525
611
|
description: 'Spawn an ANT process',
|
|
526
612
|
options: antStateOptions,
|
|
527
613
|
action: async (options) => {
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
614
|
+
if (options.ao) {
|
|
615
|
+
const state = getANTStateFromOptions(options);
|
|
616
|
+
const antProcessId = await spawnANT({
|
|
617
|
+
state,
|
|
618
|
+
signer: requiredAoSignerFromOptions(options),
|
|
619
|
+
logger: getLoggerFromOptions(options),
|
|
620
|
+
...(options.module !== undefined ? { module: options.module } : {}),
|
|
621
|
+
});
|
|
622
|
+
return {
|
|
623
|
+
processId: antProcessId,
|
|
624
|
+
signature: null,
|
|
625
|
+
state,
|
|
626
|
+
message: `Spawned ANT process with process ID ${antProcessId}`,
|
|
627
|
+
};
|
|
628
|
+
}
|
|
629
|
+
// Solana branch: the signer's pubkey IS the owner — no separate
|
|
630
|
+
// `--address` is needed (or possible, since the address would be the
|
|
631
|
+
// signer's pubkey anyway). We pass the raw CLI options through and let
|
|
632
|
+
// `spawnSolanaANTFromOptions` build the InitializeAntParams payload.
|
|
633
|
+
const { spawnSolanaANTFromOptions } = await import('./utils.js');
|
|
634
|
+
const result = await spawnSolanaANTFromOptions(options);
|
|
535
635
|
return {
|
|
536
|
-
processId:
|
|
537
|
-
|
|
538
|
-
|
|
636
|
+
processId: result.processId,
|
|
637
|
+
signature: result.signature,
|
|
638
|
+
state: null,
|
|
639
|
+
message: `Spawned Solana ANT (mint=${result.processId})`,
|
|
539
640
|
};
|
|
540
641
|
},
|
|
541
642
|
});
|
|
@@ -545,7 +646,7 @@ makeCommand({
|
|
|
545
646
|
description: 'Get the records of an ANT process',
|
|
546
647
|
options: [optionMap.processId],
|
|
547
648
|
action: async (options) => {
|
|
548
|
-
return readANTFromOptions(options).getRecords();
|
|
649
|
+
return (await readANTFromOptions(options)).getRecords();
|
|
549
650
|
},
|
|
550
651
|
});
|
|
551
652
|
makeCommand({
|
|
@@ -553,7 +654,7 @@ makeCommand({
|
|
|
553
654
|
description: 'List the controllers of an ANT process',
|
|
554
655
|
options: [optionMap.processId],
|
|
555
656
|
action: async (options) => {
|
|
556
|
-
return readANTFromOptions(options).getControllers();
|
|
657
|
+
return (await readANTFromOptions(options)).getControllers();
|
|
557
658
|
},
|
|
558
659
|
});
|
|
559
660
|
makeCommand({
|
|
@@ -561,7 +662,7 @@ makeCommand({
|
|
|
561
662
|
description: 'Get the balances of an ANT process',
|
|
562
663
|
options: [optionMap.processId],
|
|
563
664
|
action: async (options) => {
|
|
564
|
-
return readANTFromOptions(options).getBalances();
|
|
665
|
+
return (await readANTFromOptions(options)).getBalances();
|
|
565
666
|
},
|
|
566
667
|
});
|
|
567
668
|
// # Actions
|
|
@@ -580,7 +681,7 @@ makeCommand({
|
|
|
580
681
|
? options.removeControllers
|
|
581
682
|
: true;
|
|
582
683
|
await assertConfirmationPrompt(`Are you sure you want to transfer ANT ownership to ${target}${removeControllers ? ' (controllers will be removed)' : ' (controllers will be retained)'}?`, options);
|
|
583
|
-
return writeANTFromOptions(options).transfer({
|
|
684
|
+
return (await writeANTFromOptions(options)).transfer({
|
|
584
685
|
target,
|
|
585
686
|
removeControllers,
|
|
586
687
|
}, customTagsFromOptions(options));
|
|
@@ -593,7 +694,7 @@ makeCommand({
|
|
|
593
694
|
action: async (options) => {
|
|
594
695
|
const controller = requiredStringFromOptions(options, 'controller');
|
|
595
696
|
await assertConfirmationPrompt(`Are you sure you want to add ${controller} as a controller?`, options);
|
|
596
|
-
return writeANTFromOptions(options).addController({
|
|
697
|
+
return (await writeANTFromOptions(options)).addController({
|
|
597
698
|
controller: requiredStringFromOptions(options, 'controller'),
|
|
598
699
|
}, customTagsFromOptions(options));
|
|
599
700
|
},
|
|
@@ -603,7 +704,7 @@ makeCommand({
|
|
|
603
704
|
description: 'Remove a controller from an ANT process',
|
|
604
705
|
options: [optionMap.processId, optionMap.controller, ...writeActionOptions],
|
|
605
706
|
action: async (options) => {
|
|
606
|
-
return writeANTFromOptions(options).removeController({
|
|
707
|
+
return (await writeANTFromOptions(options)).removeController({
|
|
607
708
|
controller: requiredStringFromOptions(options, 'controller'),
|
|
608
709
|
}, customTagsFromOptions(options));
|
|
609
710
|
},
|
|
@@ -615,7 +716,7 @@ makeCommand({
|
|
|
615
716
|
action: async (options) => {
|
|
616
717
|
const undername = requiredStringFromOptions(options, 'undername');
|
|
617
718
|
await assertConfirmationPrompt(`Are you sure you want to remove the record with undername ${undername}?`, options);
|
|
618
|
-
return writeANTFromOptions(options).removeRecord({
|
|
719
|
+
return (await writeANTFromOptions(options)).removeRecord({
|
|
619
720
|
undername,
|
|
620
721
|
}, customTagsFromOptions(options));
|
|
621
722
|
},
|
|
@@ -657,7 +758,7 @@ makeCommand({
|
|
|
657
758
|
action: async (options) => {
|
|
658
759
|
const ticker = requiredStringFromOptions(options, 'ticker');
|
|
659
760
|
await assertConfirmationPrompt(`Are you sure you want to set the ticker to ${ticker}?`, options);
|
|
660
|
-
return writeANTFromOptions(options).setTicker({
|
|
761
|
+
return (await writeANTFromOptions(options)).setTicker({
|
|
661
762
|
ticker,
|
|
662
763
|
}, customTagsFromOptions(options));
|
|
663
764
|
},
|
|
@@ -669,7 +770,7 @@ makeCommand({
|
|
|
669
770
|
action: async (options) => {
|
|
670
771
|
const name = requiredStringFromOptions(options, 'name');
|
|
671
772
|
await assertConfirmationPrompt(`Are you sure you want to set the name to ${requiredStringFromOptions(options, 'name')}?`, options);
|
|
672
|
-
return writeANTFromOptions(options).setName({
|
|
773
|
+
return (await writeANTFromOptions(options)).setName({
|
|
673
774
|
name,
|
|
674
775
|
}, customTagsFromOptions(options));
|
|
675
776
|
},
|
|
@@ -681,7 +782,7 @@ makeCommand({
|
|
|
681
782
|
action: async (options) => {
|
|
682
783
|
const description = requiredStringFromOptions(options, 'description');
|
|
683
784
|
await assertConfirmationPrompt(`Are you sure you want to set the ANT description to ${description}?`, options);
|
|
684
|
-
return writeANTFromOptions(options).setDescription({
|
|
785
|
+
return (await writeANTFromOptions(options)).setDescription({
|
|
685
786
|
description,
|
|
686
787
|
}, customTagsFromOptions(options));
|
|
687
788
|
},
|
|
@@ -693,7 +794,7 @@ makeCommand({
|
|
|
693
794
|
action: async (options) => {
|
|
694
795
|
const keywords = requiredStringArrayFromOptions(options, 'keywords');
|
|
695
796
|
await assertConfirmationPrompt(`Are you sure you want to set the ANT keywords to ${keywords}?`, options);
|
|
696
|
-
return writeANTFromOptions(options).setKeywords({
|
|
797
|
+
return (await writeANTFromOptions(options)).setKeywords({
|
|
697
798
|
keywords,
|
|
698
799
|
}, customTagsFromOptions(options));
|
|
699
800
|
},
|
|
@@ -709,7 +810,7 @@ makeCommand({
|
|
|
709
810
|
action: async (options) => {
|
|
710
811
|
const txId = requiredStringFromOptions(options, 'transactionId');
|
|
711
812
|
await assertConfirmationPrompt(`Are you sure you want to set the ANT logo to target Arweave TxID ${txId}?`, options);
|
|
712
|
-
return writeANTFromOptions(options).setLogo({
|
|
813
|
+
return (await writeANTFromOptions(options)).setLogo({
|
|
713
814
|
txId,
|
|
714
815
|
}, customTagsFromOptions(options));
|
|
715
816
|
},
|
|
@@ -722,7 +823,7 @@ makeCommand({
|
|
|
722
823
|
action: async (options) => {
|
|
723
824
|
const name = requiredStringFromOptions(options, 'name');
|
|
724
825
|
await assertConfirmationPrompt(`Are you sure you want to release the name ${name} back to the protocol?`, options);
|
|
725
|
-
return writeANTFromOptions(options).releaseName({
|
|
826
|
+
return (await writeANTFromOptions(options)).releaseName({
|
|
726
827
|
name,
|
|
727
828
|
arioProcessId: arioProcessIdFromOptions(options),
|
|
728
829
|
}, customTagsFromOptions(options));
|
|
@@ -741,7 +842,7 @@ makeCommand({
|
|
|
741
842
|
const targetProcess = requiredStringFromOptions(options, 'target');
|
|
742
843
|
const name = requiredStringFromOptions(options, 'name');
|
|
743
844
|
await assertConfirmationPrompt(`Are you sure you want to reassign the name ${name} to ANT process ${targetProcess}?`, options);
|
|
744
|
-
return writeANTFromOptions(options).reassignName({
|
|
845
|
+
return (await writeANTFromOptions(options)).reassignName({
|
|
745
846
|
name,
|
|
746
847
|
arioProcessId: arioProcessIdFromOptions(options),
|
|
747
848
|
antProcessId: targetProcess,
|
|
@@ -761,7 +862,7 @@ makeCommand({
|
|
|
761
862
|
const address = requiredAddressFromOptions(options);
|
|
762
863
|
const name = requiredStringFromOptions(options, 'name');
|
|
763
864
|
await assertConfirmationPrompt(`Are you sure you want to approve the primary name request ${name} to ${address}?`, options);
|
|
764
|
-
return writeANTFromOptions(options).approvePrimaryNameRequest({
|
|
865
|
+
return (await writeANTFromOptions(options)).approvePrimaryNameRequest({
|
|
765
866
|
name,
|
|
766
867
|
address,
|
|
767
868
|
arioProcessId: arioProcessIdFromOptions(options),
|
|
@@ -775,7 +876,7 @@ makeCommand({
|
|
|
775
876
|
action: async (options) => {
|
|
776
877
|
const names = requiredStringArrayFromOptions(options, 'names');
|
|
777
878
|
await assertConfirmationPrompt(`Are you sure you want to remove the primary names ${names}?`, options);
|
|
778
|
-
return writeANTFromOptions(options).removePrimaryNames({
|
|
879
|
+
return (await writeANTFromOptions(options)).removePrimaryNames({
|
|
779
880
|
names,
|
|
780
881
|
arioProcessId: arioProcessIdFromOptions(options),
|
|
781
882
|
}, customTagsFromOptions(options));
|
|
@@ -811,10 +912,69 @@ makeCommand({
|
|
|
811
912
|
});
|
|
812
913
|
},
|
|
813
914
|
});
|
|
814
|
-
//
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
915
|
+
// =========================================
|
|
916
|
+
// ANT Escrow commands (`ario-ant-escrow` program — Solana-only)
|
|
917
|
+
// =========================================
|
|
918
|
+
// `optionMap.rpcUrl`, `walletFile`, and `privateKey` are already in
|
|
919
|
+
// `globalOptions` and are merged in by `makeCommand` for every command — re-listing
|
|
920
|
+
// them here would re-register the flags and crash Commander with
|
|
921
|
+
// "due to conflicting flag '--rpc-url'" at CLI startup.
|
|
922
|
+
const escrowCommonOptions = [optionMap.escrowProgramId, optionMap.ant];
|
|
923
|
+
makeCommand({
|
|
924
|
+
name: 'escrow-status',
|
|
925
|
+
description: 'Read the on-chain EscrowAnt PDA for an ANT mint (no signer needed).',
|
|
926
|
+
options: [optionMap.escrowProgramId, optionMap.ant],
|
|
927
|
+
action: escrowStatusCLICommand,
|
|
928
|
+
});
|
|
929
|
+
makeCommand({
|
|
930
|
+
name: 'escrow-deposit',
|
|
931
|
+
description: 'Lock an ANT into the trustless escrow program. Use --recipient-arweave <jwk> or --recipient-ethereum <0x...>.',
|
|
932
|
+
options: [
|
|
933
|
+
...escrowCommonOptions,
|
|
934
|
+
optionMap.recipientArweave,
|
|
935
|
+
optionMap.recipientEthereum,
|
|
936
|
+
],
|
|
937
|
+
action: escrowDepositCLICommand,
|
|
938
|
+
});
|
|
939
|
+
makeCommand({
|
|
940
|
+
name: 'escrow-cancel',
|
|
941
|
+
description: 'Pull an escrowed ANT back to the depositor. Closes the escrow PDA and refunds rent.',
|
|
942
|
+
options: escrowCommonOptions,
|
|
943
|
+
action: escrowCancelCLICommand,
|
|
944
|
+
});
|
|
945
|
+
makeCommand({
|
|
946
|
+
name: 'escrow-update-recipient',
|
|
947
|
+
description: 'Re-target an active escrow at a different Arweave/Ethereum identity. Rotates the on-chain nonce.',
|
|
948
|
+
options: [
|
|
949
|
+
...escrowCommonOptions,
|
|
950
|
+
optionMap.newRecipientArweave,
|
|
951
|
+
optionMap.newRecipientEthereum,
|
|
952
|
+
],
|
|
953
|
+
action: escrowUpdateRecipientCLICommand,
|
|
954
|
+
});
|
|
955
|
+
makeCommand({
|
|
956
|
+
name: 'escrow-claim-arweave',
|
|
957
|
+
description: 'Submit an Arweave RSA-PSS-4096 signature to release the ANT. Anyone can submit; only the named claimant receives.',
|
|
958
|
+
options: [
|
|
959
|
+
...escrowCommonOptions,
|
|
960
|
+
optionMap.signatureFile,
|
|
961
|
+
optionMap.saltLen,
|
|
962
|
+
optionMap.claimant,
|
|
963
|
+
],
|
|
964
|
+
action: escrowClaimArweaveCLICommand,
|
|
965
|
+
});
|
|
966
|
+
makeCommand({
|
|
967
|
+
name: 'escrow-claim-ethereum',
|
|
968
|
+
description: 'Submit an Ethereum ECDSA personal_sign signature (65 bytes r||s||v) to release the ANT.',
|
|
969
|
+
options: [
|
|
970
|
+
...escrowCommonOptions,
|
|
971
|
+
optionMap.signatureFile,
|
|
972
|
+
optionMap.claimant,
|
|
973
|
+
],
|
|
974
|
+
action: escrowClaimEthereumCLICommand,
|
|
975
|
+
});
|
|
976
|
+
if (process.argv[1].includes('bin/ar.io') || // Running from global .bin
|
|
977
|
+
process.argv[1].includes('cli/cli') // Running from source
|
|
818
978
|
) {
|
|
819
979
|
program.parse(process.argv);
|
|
820
980
|
}
|