@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
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared helpers for building, signing, and sending Solana transactions
|
|
3
|
+
* with @solana/kit. Used by SolanaARIOWriteable and SolanaANTWriteable.
|
|
4
|
+
*
|
|
5
|
+
* Compute budget instruction builders come from `@solana-program/compute-budget`
|
|
6
|
+
* (kit-flavored Codama client); the previous hand-rolled
|
|
7
|
+
* `setComputeUnitLimitIx` / `setComputeUnitPriceIx` helpers were removed in
|
|
8
|
+
* favor of the official package. See `sendAndConfirm` below for why we always
|
|
9
|
+
* pin BOTH instructions (even with a 0 priority fee).
|
|
10
|
+
*/
|
|
11
|
+
import { getSetComputeUnitLimitInstruction, getSetComputeUnitPriceInstruction, } from '@solana-program/compute-budget';
|
|
12
|
+
import { appendTransactionMessageInstructions, compileTransaction, createTransactionMessage, getBase64EncodedWireTransaction, getSignatureFromTransaction, pipe, sendAndConfirmTransactionFactory, setTransactionMessageFeePayerSigner, setTransactionMessageLifetimeUsingBlockhash, signTransactionMessageWithSigners, } from '@solana/kit';
|
|
13
|
+
/**
|
|
14
|
+
* Build, sign, send, and confirm a transaction in one call.
|
|
15
|
+
*
|
|
16
|
+
* The caller supplies the core instructions; a compute-unit-limit instruction
|
|
17
|
+
* is prepended automatically.
|
|
18
|
+
*/
|
|
19
|
+
export async function sendAndConfirm({ rpc, rpcSubscriptions, signer, instructions, commitment = 'confirmed', computeUnitLimit = 400_000, }) {
|
|
20
|
+
const { value: latestBlockhash } = await rpc.getLatestBlockhash().send();
|
|
21
|
+
const message = pipe(createTransactionMessage({ version: 0 }), (tx) => setTransactionMessageFeePayerSigner(signer, tx), (tx) => setTransactionMessageLifetimeUsingBlockhash(latestBlockhash, tx), (tx) => appendTransactionMessageInstructions([
|
|
22
|
+
getSetComputeUnitLimitInstruction({ units: computeUnitLimit }),
|
|
23
|
+
// Always pin the priority fee (even at 0) so wallets like Phantom
|
|
24
|
+
// don't silently *append* their own compute-budget instructions
|
|
25
|
+
// when the transaction is missing either limit or price. That
|
|
26
|
+
// mutation invalidates signatures already attached by paired
|
|
27
|
+
// keypair signers (e.g. the ANT mint signer in `spawnSolanaANT`),
|
|
28
|
+
// producing `Transaction did not pass signature verification` on
|
|
29
|
+
// the validator. Pre-supplying both keeps the wallet from
|
|
30
|
+
// rewriting the message, so signatures over the original bytes
|
|
31
|
+
// still verify.
|
|
32
|
+
getSetComputeUnitPriceInstruction({ microLamports: 0n }),
|
|
33
|
+
...instructions,
|
|
34
|
+
], tx));
|
|
35
|
+
const signedTx = await signTransactionMessageWithSigners(message);
|
|
36
|
+
const sendAndConfirmFactory = sendAndConfirmTransactionFactory({
|
|
37
|
+
rpc,
|
|
38
|
+
rpcSubscriptions,
|
|
39
|
+
});
|
|
40
|
+
// Cast narrows the transaction type to what sendAndConfirmFactory expects —
|
|
41
|
+
// the kit signer pipeline produces a fully-signed transaction with a blockhash
|
|
42
|
+
// lifetime, but the factory's argument type doesn't quite line up with the
|
|
43
|
+
// inferred union. The runtime object is correct.
|
|
44
|
+
try {
|
|
45
|
+
await sendAndConfirmFactory(signedTx, { commitment });
|
|
46
|
+
}
|
|
47
|
+
catch (err) {
|
|
48
|
+
logSolanaErrorContext(err);
|
|
49
|
+
await logSimulationDiagnostics(rpc, message, err);
|
|
50
|
+
throw err;
|
|
51
|
+
}
|
|
52
|
+
return getSignatureFromTransaction(signedTx);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Walk the chain of `cause`s on a thrown `SolanaError` and log each one's
|
|
56
|
+
* `.context` (kit packs the server-provided `err`, `logs`, `unitsConsumed`,
|
|
57
|
+
* etc. there). This usually contains the program logs we want without having
|
|
58
|
+
* to re-simulate.
|
|
59
|
+
*/
|
|
60
|
+
function logSolanaErrorContext(err) {
|
|
61
|
+
let current = err;
|
|
62
|
+
let depth = 0;
|
|
63
|
+
while (current && depth < 10) {
|
|
64
|
+
const e = current;
|
|
65
|
+
const ctx = e?.context;
|
|
66
|
+
if (ctx && typeof ctx === 'object') {
|
|
67
|
+
// eslint-disable-next-line no-console
|
|
68
|
+
console.warn(`[solana-send] error[${depth}] ${e.name ?? 'Error'}: ${e.message ?? ''}`, { context: ctx });
|
|
69
|
+
const logs = ctx.logs;
|
|
70
|
+
if (Array.isArray(logs) && logs.length > 0) {
|
|
71
|
+
// eslint-disable-next-line no-console
|
|
72
|
+
console.warn(`[solana-send] error[${depth}] program logs:\n` + logs.join('\n'));
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
current = e?.cause;
|
|
76
|
+
depth += 1;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* On send/confirm failure, re-simulate the transaction with sig-verify off so
|
|
81
|
+
* we can surface program logs + the failed instruction index. Kit's default
|
|
82
|
+
* `SolanaError` only carries the bare `Custom program error: #N (instruction
|
|
83
|
+
* #M)` summary; we also log the full simulation result and the wire-format
|
|
84
|
+
* transaction so the underlying `msg!` lines and account list can be inspected
|
|
85
|
+
* in the browser console.
|
|
86
|
+
*
|
|
87
|
+
* Best-effort and side-effect free aside from console output.
|
|
88
|
+
*/
|
|
89
|
+
async function logSimulationDiagnostics(rpc, message, originalError) {
|
|
90
|
+
try {
|
|
91
|
+
const compiled = compileTransaction(message);
|
|
92
|
+
const wire = getBase64EncodedWireTransaction(compiled);
|
|
93
|
+
// eslint-disable-next-line no-console
|
|
94
|
+
console.warn('[solana-send] sendAndConfirm failed; re-running simulateTransaction for diagnostics', { error: originalError });
|
|
95
|
+
const sim = await rpc
|
|
96
|
+
.simulateTransaction(wire, {
|
|
97
|
+
sigVerify: false,
|
|
98
|
+
replaceRecentBlockhash: true,
|
|
99
|
+
encoding: 'base64',
|
|
100
|
+
})
|
|
101
|
+
.send();
|
|
102
|
+
// eslint-disable-next-line no-console
|
|
103
|
+
console.warn('[solana-send] simulateTransaction result:', sim.value);
|
|
104
|
+
if (sim.value.err) {
|
|
105
|
+
// eslint-disable-next-line no-console
|
|
106
|
+
console.warn('[solana-send] simulation err:', sim.value.err);
|
|
107
|
+
}
|
|
108
|
+
if (sim.value.logs) {
|
|
109
|
+
// eslint-disable-next-line no-console
|
|
110
|
+
console.warn('[solana-send] program logs:\n' + sim.value.logs.join('\n'));
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
catch (diagErr) {
|
|
114
|
+
// eslint-disable-next-line no-console
|
|
115
|
+
console.warn('[solana-send] failed to collect diagnostics', diagErr);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Solana implementation of `ANT.spawn`.
|
|
3
|
+
*
|
|
4
|
+
* Mints a fresh Metaplex Core asset (the ANT NFT) AND initializes the
|
|
5
|
+
* `ario-ant` extended state PDAs (`AntConfig`, `AntControllers`, root `@`
|
|
6
|
+
* record) in a single atomic transaction.
|
|
7
|
+
*
|
|
8
|
+
* This is the Solana counterpart to the legacy AO `spawnANT` flow:
|
|
9
|
+
* - AO: `ao.spawn({ module, scheduler, ... })` → returns AO process id.
|
|
10
|
+
* - Solana: mint MPL Core asset + initialize ario-ant PDAs → returns the
|
|
11
|
+
* asset's pubkey (which serves as the SDK's stable `processId`).
|
|
12
|
+
*
|
|
13
|
+
* For the bulk-import flow used by `migration/import` we use a separate
|
|
14
|
+
* code path that mints to the migration authority and uses the gated
|
|
15
|
+
* `import_account` instruction — that's intentional and not what this SDK
|
|
16
|
+
* helper is for.
|
|
17
|
+
*/
|
|
18
|
+
import { addSignersToTransactionMessage, appendTransactionMessageInstructions, createTransactionMessage, generateKeyPairSigner, getSignatureFromTransaction, pipe, sendAndConfirmTransactionFactory, setTransactionMessageFeePayerSigner, setTransactionMessageLifetimeUsingBlockhash, signTransactionMessageWithSigners, } from '@solana/kit';
|
|
19
|
+
import { getInitializeInstructionAsync } from '@ar.io/solana-contracts/ant';
|
|
20
|
+
import { getSetComputeUnitLimitInstruction, getSetComputeUnitPriceInstruction, } from '@solana-program/compute-budget';
|
|
21
|
+
import { SolanaANTRegistryWriteable } from './ant-registry-writeable.js';
|
|
22
|
+
import { ARIO_ANT_PROGRAM_ID } from './constants.js';
|
|
23
|
+
import { getCreateV1Instruction } from './generated/mpl-core/instructions/index.js';
|
|
24
|
+
import { DataState } from './generated/mpl-core/types/index.js';
|
|
25
|
+
import { getAntRecordPDA } from './pda.js';
|
|
26
|
+
/** AR.IO logo Arweave TX — matches the Rust default in `ario_ant::initialize`. */
|
|
27
|
+
export const ARIO_LOGO_TX_ID = 'AnYvLJTWcG9lr2Ll5MwYWZR2o5uTE39WbpYB0zCxwKM';
|
|
28
|
+
/**
|
|
29
|
+
* Default Arweave transaction id used when an ANT is spawned without an
|
|
30
|
+
* explicit `transactionId`. Empty string would fail the on-chain
|
|
31
|
+
* `is_valid_arweave_id` check, so we fall back to the AR.IO logo TX (which is
|
|
32
|
+
* a real Arweave id and won't trip validation).
|
|
33
|
+
*/
|
|
34
|
+
export const DEFAULT_ANT_TRANSACTION_ID = ARIO_LOGO_TX_ID;
|
|
35
|
+
/**
|
|
36
|
+
* Public, low-level builder for the `CreateV1` MPL Core instruction with the
|
|
37
|
+
* AR.IO-standard ANT shape (Attributes plugin pre-installed, Owner authority).
|
|
38
|
+
*
|
|
39
|
+
* Delegates to the Codama-generated `getCreateV1Instruction`, but accepts
|
|
40
|
+
* plain `Address`es (rather than full `TransactionSigner`s) so test fixtures
|
|
41
|
+
* and devnet validation scripts can byte-pin the wire format without
|
|
42
|
+
* standing up real keypairs. The signer roles still flow through correctly
|
|
43
|
+
* because we re-cast under `unknown`.
|
|
44
|
+
*
|
|
45
|
+
* Most callers should use `ANT.spawn` / `spawnSolanaANT` instead — that path
|
|
46
|
+
* also wires up `ario_ant::initialize` so the ANT is fully usable end to end.
|
|
47
|
+
* Use this raw builder when you need fine-grained control over signing, or
|
|
48
|
+
* are bundling the mint into a larger compound transaction.
|
|
49
|
+
*
|
|
50
|
+
* **Why we always emit an Attributes plugin (even with an empty list):**
|
|
51
|
+
* `ario_arns::buy_record` and friends CPI into `UpdatePluginV1` to populate
|
|
52
|
+
* traits at purchase time. If the asset has no Attributes plugin, that CPI
|
|
53
|
+
* fails. Emitting an empty plugin here keeps every spawned ANT
|
|
54
|
+
* `purchase`-ready and matches what `migration/import` mints — see ADR-012
|
|
55
|
+
* and BD-096. Authority is `Owner` so the ANT NFT holder (= asset owner)
|
|
56
|
+
* can sign their own trait updates.
|
|
57
|
+
*/
|
|
58
|
+
export function buildCreateAntInstruction({ mint, authority, payer, name, uri, attributes = [], }) {
|
|
59
|
+
// Codama wants TransactionSigners for asset/authority/payer because the
|
|
60
|
+
// resulting account meta is marked SIGNER. The byte-pinning surface we're
|
|
61
|
+
// exposing only cares about pubkeys + wire bytes, so we adapt by feeding
|
|
62
|
+
// it minimal signer-shaped objects.
|
|
63
|
+
const asSigner = (a) => ({ address: a, signTransactions: () => Promise.resolve([]) });
|
|
64
|
+
return getCreateV1Instruction({
|
|
65
|
+
asset: asSigner(mint),
|
|
66
|
+
authority: asSigner(authority),
|
|
67
|
+
payer: asSigner(payer),
|
|
68
|
+
dataState: DataState.AccountState,
|
|
69
|
+
name,
|
|
70
|
+
uri,
|
|
71
|
+
plugins: [
|
|
72
|
+
{
|
|
73
|
+
plugin: {
|
|
74
|
+
__kind: 'Attributes',
|
|
75
|
+
fields: [{ attributeList: attributes }],
|
|
76
|
+
},
|
|
77
|
+
authority: { __kind: 'Owner' },
|
|
78
|
+
},
|
|
79
|
+
],
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Build the `ario_ant::initialize` instruction for a freshly minted asset.
|
|
84
|
+
*/
|
|
85
|
+
async function buildInitializeAntIx({ programId, mint, signer, state, }) {
|
|
86
|
+
// Codama auto-resolves antConfig + antControllers PDAs. rootRecord uses a
|
|
87
|
+
// hashed-undername seed Codama can't infer from args, so we derive it here.
|
|
88
|
+
const [rootRecordPda] = await getAntRecordPDA(mint, '@', programId);
|
|
89
|
+
return getInitializeInstructionAsync({
|
|
90
|
+
asset: mint,
|
|
91
|
+
rootRecord: rootRecordPda,
|
|
92
|
+
owner: signer,
|
|
93
|
+
name: state.name,
|
|
94
|
+
ticker: state.ticker ?? null,
|
|
95
|
+
target: state.transactionId ?? DEFAULT_ANT_TRANSACTION_ID,
|
|
96
|
+
targetProtocol: state.targetProtocol ?? null,
|
|
97
|
+
logo: state.logo ?? '',
|
|
98
|
+
description: state.description ?? '',
|
|
99
|
+
keywords: state.keywords ?? [],
|
|
100
|
+
}, { programAddress: programId });
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Spawn a brand-new ANT on Solana. Returns the asset address, which is the
|
|
104
|
+
* SDK's stable `processId` for that ANT.
|
|
105
|
+
*/
|
|
106
|
+
export async function spawnSolanaANT(params) {
|
|
107
|
+
if (!params.state?.name || params.state.name.length === 0) {
|
|
108
|
+
throw new Error('spawnSolanaANT: state.name is required');
|
|
109
|
+
}
|
|
110
|
+
const { rpc, rpcSubscriptions, signer, state, antProgramId = ARIO_ANT_PROGRAM_ID, commitment = 'confirmed', computeUnitLimit = 400_000, } = params;
|
|
111
|
+
const mintSigner = params.mintSigner ?? (await generateKeyPairSigner());
|
|
112
|
+
const owner = signer.address;
|
|
113
|
+
const mint = mintSigner.address;
|
|
114
|
+
const uri = state.uri ??
|
|
115
|
+
`ar://${state.logo && state.logo.length > 0 ? state.logo : ARIO_LOGO_TX_ID}`;
|
|
116
|
+
// Emit the Attributes plugin (Owner authority) at mint time with the
|
|
117
|
+
// asset-side `ANT Program` entry pre-installed. Two reasons to always
|
|
118
|
+
// include it:
|
|
119
|
+
//
|
|
120
|
+
// 1. ADR-016 / BD-100 — the program managing this asset's per-mint
|
|
121
|
+
// state PDAs is named on the asset itself. Writing it here means
|
|
122
|
+
// every fresh ANT carries an explicit, queryable program id from
|
|
123
|
+
// the moment it's minted; resolvers can read it without a lookup
|
|
124
|
+
// against any external registry.
|
|
125
|
+
// 2. The Attributes plugin must already exist before
|
|
126
|
+
// `ario_arns::buy_name` CPIs into `UpdatePluginV1` to populate
|
|
127
|
+
// ARNS Name / Type / Undername Limit. Skipping this returns
|
|
128
|
+
// MPL Core 0x4 ("Plugin not found") at ArNS purchase time.
|
|
129
|
+
//
|
|
130
|
+
// Default value is the canonical `ARIO_ANT_PROGRAM_ID`; passing
|
|
131
|
+
// `antProgramId` opts into the BYO-ANT (third-party) path.
|
|
132
|
+
const createIx = getCreateV1Instruction({
|
|
133
|
+
asset: mintSigner,
|
|
134
|
+
payer: signer,
|
|
135
|
+
authority: signer,
|
|
136
|
+
dataState: DataState.AccountState,
|
|
137
|
+
name: state.name,
|
|
138
|
+
uri,
|
|
139
|
+
plugins: [
|
|
140
|
+
{
|
|
141
|
+
plugin: {
|
|
142
|
+
__kind: 'Attributes',
|
|
143
|
+
fields: [
|
|
144
|
+
{
|
|
145
|
+
attributeList: [
|
|
146
|
+
{ key: 'ANT Program', value: antProgramId },
|
|
147
|
+
],
|
|
148
|
+
},
|
|
149
|
+
],
|
|
150
|
+
},
|
|
151
|
+
authority: { __kind: 'Owner' },
|
|
152
|
+
},
|
|
153
|
+
],
|
|
154
|
+
});
|
|
155
|
+
const initIx = await buildInitializeAntIx({
|
|
156
|
+
programId: antProgramId,
|
|
157
|
+
mint,
|
|
158
|
+
signer,
|
|
159
|
+
state,
|
|
160
|
+
});
|
|
161
|
+
// ADR-012 (ACL): bootstrap the new owner's paginated ACL. The
|
|
162
|
+
// contract's `initialize` handler seeds `ant_controllers = vec![owner]`
|
|
163
|
+
// (matches the Lua source), so the owner needs entries under both
|
|
164
|
+
// `Owner` (for "ANTs I own" lookups) and `Controller` (for "ANTs I
|
|
165
|
+
// can manage" lookups). Bundling here keeps the ACL atomic with the
|
|
166
|
+
// spawn — by the time the tx confirms, frontends can resolve the
|
|
167
|
+
// owner's ANT list via the head config + paged accounts.
|
|
168
|
+
const registry = new SolanaANTRegistryWriteable({
|
|
169
|
+
rpc,
|
|
170
|
+
signer,
|
|
171
|
+
commitment,
|
|
172
|
+
antProgramId,
|
|
173
|
+
});
|
|
174
|
+
const aclIxs = await registry.bootstrapOwnerOnSpawn({
|
|
175
|
+
owner,
|
|
176
|
+
asset: mint,
|
|
177
|
+
});
|
|
178
|
+
// The create instruction has two signers (mint + authority+payer). Kit picks
|
|
179
|
+
// them up from the account metadata roles: accounts marked as SIGNER roles
|
|
180
|
+
// must have a matching `TransactionSigner` attached. We do that by placing
|
|
181
|
+
// the mint signer on the message alongside the fee payer signer.
|
|
182
|
+
const { value: latestBlockhash } = await rpc.getLatestBlockhash().send();
|
|
183
|
+
const message = pipe(createTransactionMessage({ version: 0 }), (tx) => setTransactionMessageFeePayerSigner(signer, tx), (tx) => setTransactionMessageLifetimeUsingBlockhash(latestBlockhash, tx), (tx) => appendTransactionMessageInstructions([
|
|
184
|
+
getSetComputeUnitLimitInstruction({ units: computeUnitLimit }),
|
|
185
|
+
// Pin the priority fee (at 0) so wallets like Phantom don't
|
|
186
|
+
// silently append their own compute-budget instructions and
|
|
187
|
+
// invalidate the paired mint keypair signer's signature. See
|
|
188
|
+
// `sendAndConfirm` in `./send.js` for the full rationale.
|
|
189
|
+
getSetComputeUnitPriceInstruction({ microLamports: 0n }),
|
|
190
|
+
createIx,
|
|
191
|
+
initIx,
|
|
192
|
+
...aclIxs,
|
|
193
|
+
], tx));
|
|
194
|
+
// Attach the mint signer so kit can satisfy the WRITABLE_SIGNER role on the
|
|
195
|
+
// mint account. `addSignersToTransactionMessage` walks the message's account
|
|
196
|
+
// metas and registers each matching signer by address, which is what
|
|
197
|
+
// `signTransactionMessageWithSigners` then looks up to produce signatures.
|
|
198
|
+
const withMintSigner = addSignersToTransactionMessage([mintSigner], message);
|
|
199
|
+
const signedTx = await signTransactionMessageWithSigners(withMintSigner);
|
|
200
|
+
const sendAndConfirmFactory = sendAndConfirmTransactionFactory({
|
|
201
|
+
rpc,
|
|
202
|
+
rpcSubscriptions,
|
|
203
|
+
});
|
|
204
|
+
await sendAndConfirmFactory(signedTx, { commitment });
|
|
205
|
+
return {
|
|
206
|
+
processId: mint,
|
|
207
|
+
mint,
|
|
208
|
+
signature: getSignatureFromTransaction(signedTx),
|
|
209
|
+
};
|
|
210
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/lib/esm/types/ant.js
CHANGED
|
@@ -45,11 +45,23 @@ export const IntegerStringSchema = z
|
|
|
45
45
|
const num = parseInt(val);
|
|
46
46
|
return Number.isInteger(num) && num >= 0;
|
|
47
47
|
}, { message: 'Must be a non negative integer string' });
|
|
48
|
-
export const AntDescriptionSchema = z.string()
|
|
49
|
-
|
|
48
|
+
export const AntDescriptionSchema = z.string().max(256, {
|
|
49
|
+
message: 'ANT description must be at most 256 characters',
|
|
50
|
+
});
|
|
51
|
+
export const AntKeywordsSchema = z
|
|
52
|
+
.array(z.string().max(32, {
|
|
53
|
+
message: 'Each keyword must be at most 32 characters',
|
|
54
|
+
}))
|
|
55
|
+
.max(8, { message: 'ANT can have at most 8 keywords' });
|
|
50
56
|
export const AntRecordSchema = z.object({
|
|
51
|
-
transactionId:
|
|
57
|
+
transactionId: z
|
|
58
|
+
.string()
|
|
59
|
+
.describe('Content target (Arweave TX ID, IPFS CID, etc.)'),
|
|
52
60
|
ttlSeconds: z.number(),
|
|
61
|
+
targetProtocol: z
|
|
62
|
+
.number()
|
|
63
|
+
.describe('Storage protocol: 0 = Arweave, 1 = IPFS')
|
|
64
|
+
.default(0),
|
|
53
65
|
priority: z.number().optional(),
|
|
54
66
|
owner: AOAddressSchema.describe('The owner address of the record').optional(),
|
|
55
67
|
displayName: z
|
|
@@ -60,13 +72,13 @@ export const AntRecordSchema = z.object({
|
|
|
60
72
|
logo: ArweaveTxIdSchema.describe('Logo transaction ID for the record').optional(),
|
|
61
73
|
description: z
|
|
62
74
|
.string()
|
|
63
|
-
.max(
|
|
64
|
-
.describe('Description of the record (max
|
|
75
|
+
.max(256)
|
|
76
|
+
.describe('Description of the record (max 256 chars)')
|
|
65
77
|
.optional(),
|
|
66
78
|
keywords: z
|
|
67
79
|
.array(z.string().max(32))
|
|
68
|
-
.max(
|
|
69
|
-
.describe('Keywords array (max
|
|
80
|
+
.max(8)
|
|
81
|
+
.describe('Keywords array (max 8, each max 32 chars)')
|
|
70
82
|
.optional(),
|
|
71
83
|
});
|
|
72
84
|
export const AntRecordsSchema = z.record(z.string(), AntRecordSchema);
|
package/lib/esm/types/io.js
CHANGED
|
@@ -22,7 +22,14 @@ export const intentsUsingYears = [
|
|
|
22
22
|
export const isValidIntent = (intent) => {
|
|
23
23
|
return validIntents.indexOf(intent) !== -1;
|
|
24
24
|
};
|
|
25
|
-
export const fundFromOptions = [
|
|
25
|
+
export const fundFromOptions = [
|
|
26
|
+
'balance',
|
|
27
|
+
'stakes',
|
|
28
|
+
'withdrawal',
|
|
29
|
+
'plan',
|
|
30
|
+
'any',
|
|
31
|
+
'turbo',
|
|
32
|
+
];
|
|
26
33
|
export const isValidFundFrom = (fundFrom) => {
|
|
27
34
|
return fundFromOptions.indexOf(fundFrom) !== -1;
|
|
28
35
|
};
|
package/lib/esm/utils/ant.js
CHANGED
|
@@ -88,6 +88,7 @@ export const convertHyperBeamStateToAoANTState = (initialState) => {
|
|
|
88
88
|
acc[key] = {
|
|
89
89
|
transactionId: record.transactionid,
|
|
90
90
|
ttlSeconds: record.ttlseconds,
|
|
91
|
+
targetProtocol: 0,
|
|
91
92
|
...(record.priority !== undefined
|
|
92
93
|
? { priority: record.priority }
|
|
93
94
|
: {}),
|
package/lib/esm/utils/ao.js
CHANGED
package/lib/esm/version.js
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
import { AoANTSetBaseNameRecordParams, AoANTSetUndernameRecordParams } from '../../types/ant.js';
|
|
17
|
-
import { CLIWriteOptionsFromAoAntParams } from '../types.js';
|
|
17
|
+
import { CLIWriteOptionsFromAoAntParams, JsonSerializable } from '../types.js';
|
|
18
18
|
/** @deprecated -- use set-ant-base-name and set-ant-undername */
|
|
19
19
|
export declare function setAntRecordCLICommand(o: CLIWriteOptionsFromAoAntParams<AoANTSetUndernameRecordParams>): Promise<import("../../types/common.js").AoMessageResult<Record<string, string | number | boolean | null>>>;
|
|
20
20
|
export declare function setAntBaseNameCLICommand(o: CLIWriteOptionsFromAoAntParams<AoANTSetBaseNameRecordParams>): Promise<import("../../types/common.js").AoMessageResult<Record<string, string | number | boolean | null>>>;
|
|
@@ -24,10 +24,5 @@ export declare function transferRecordOwnershipCLICommand(o: CLIWriteOptionsFrom
|
|
|
24
24
|
recipient: string;
|
|
25
25
|
}>): Promise<import("../../types/common.js").AoMessageResult<Record<string, string | number | boolean | null>>>;
|
|
26
26
|
export declare function upgradeAntCLICommand(o: CLIWriteOptionsFromAoAntParams<Record<string, unknown>>): Promise<{
|
|
27
|
-
|
|
28
|
-
reassignedNames: Record<string, import("../../types/common.js").AoMessageResult>;
|
|
29
|
-
failedReassignedNames: Record<string, {
|
|
30
|
-
id?: string;
|
|
31
|
-
error: string;
|
|
32
|
-
}>;
|
|
27
|
+
[key: string]: JsonSerializable;
|
|
33
28
|
}>;
|
|
@@ -8,3 +8,15 @@ export declare function requestPrimaryNameCLICommand(o: CLIWriteOptionsFromAoPar
|
|
|
8
8
|
initiator: import("../../types/common.js").WalletAddress;
|
|
9
9
|
}>;
|
|
10
10
|
export declare function setPrimaryNameCLICommand(o: CLIWriteOptionsFromAoParams<AoArNSPurchaseParams>): Promise<import("../../types/common.js").AoMessageResult>;
|
|
11
|
+
/**
|
|
12
|
+
* Reconcile the on-chain ANT Attributes plugin (`ArNS Name`, `Type`,
|
|
13
|
+
* `Undername Limit`) with the current `ArnsRecord` state. Permissionless,
|
|
14
|
+
* Solana-only; AO backend will throw with a clear error.
|
|
15
|
+
*
|
|
16
|
+
* Use after a `buy-record` / `reassign-name` where the buyer/recipient was
|
|
17
|
+
* not the ANT NFT holder (the ANT-side trait CPI gets skipped at runtime
|
|
18
|
+
* in that case so the plugin stays empty until the actual holder reconciles).
|
|
19
|
+
*/
|
|
20
|
+
export declare function syncAttributesCLICommand(o: CLIWriteOptionsFromAoParams<{
|
|
21
|
+
name: string;
|
|
22
|
+
}>): Promise<import("../../types/common.js").AoMessageResult>;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (C) 2022-2024 Permanent Data Solutions, Inc.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* CLI commands for `ario-ant-escrow` — trustless multi-protocol ANT custody.
|
|
12
|
+
*
|
|
13
|
+
* Each command instantiates an {@link ANTEscrow} with options-driven RPC +
|
|
14
|
+
* signer wiring (mirrors the rest of the Solana CLI surface — see
|
|
15
|
+
* `arnsPurchaseCommands.ts`). All read commands work without a signer; all
|
|
16
|
+
* write commands require `--wallet-file` or `--private-key`.
|
|
17
|
+
*
|
|
18
|
+
* Recipient pubkey loading:
|
|
19
|
+
* - Arweave: `--recipient-arweave <jwk-file>` reads the JWK JSON, decodes
|
|
20
|
+
* the base64url `n` field to 512 raw bytes (RSA-4096 modulus).
|
|
21
|
+
* - Ethereum: `--recipient-ethereum 0x...` parses the 20-byte hex address.
|
|
22
|
+
*/
|
|
23
|
+
import type { JsonSerializable } from '../types.js';
|
|
24
|
+
interface EscrowGlobalOptions {
|
|
25
|
+
rpcUrl?: string;
|
|
26
|
+
walletFile?: string;
|
|
27
|
+
privateKey?: string;
|
|
28
|
+
escrowProgramId?: string;
|
|
29
|
+
}
|
|
30
|
+
interface AntMintOptions extends EscrowGlobalOptions {
|
|
31
|
+
ant?: string;
|
|
32
|
+
}
|
|
33
|
+
interface DepositOptions extends AntMintOptions {
|
|
34
|
+
recipientArweave?: string;
|
|
35
|
+
recipientEthereum?: string;
|
|
36
|
+
}
|
|
37
|
+
interface UpdateRecipientOptions extends AntMintOptions {
|
|
38
|
+
newRecipientArweave?: string;
|
|
39
|
+
newRecipientEthereum?: string;
|
|
40
|
+
}
|
|
41
|
+
interface ClaimArweaveOptions extends AntMintOptions {
|
|
42
|
+
signatureFile?: string;
|
|
43
|
+
saltLen?: string;
|
|
44
|
+
claimant?: string;
|
|
45
|
+
}
|
|
46
|
+
interface ClaimEthereumOptions extends AntMintOptions {
|
|
47
|
+
signatureFile?: string;
|
|
48
|
+
claimant?: string;
|
|
49
|
+
}
|
|
50
|
+
/** `ar.io escrow status --ant <mint>` */
|
|
51
|
+
export declare function escrowStatusCLICommand(o: AntMintOptions): Promise<JsonSerializable>;
|
|
52
|
+
/** `ar.io escrow deposit --ant <mint> --recipient-{arweave|ethereum} ...` */
|
|
53
|
+
export declare function escrowDepositCLICommand(o: DepositOptions): Promise<JsonSerializable>;
|
|
54
|
+
/** `ar.io escrow cancel --ant <mint>` */
|
|
55
|
+
export declare function escrowCancelCLICommand(o: AntMintOptions): Promise<JsonSerializable>;
|
|
56
|
+
/** `ar.io escrow update-recipient --ant <mint> --new-recipient-{arweave|ethereum} ...` */
|
|
57
|
+
export declare function escrowUpdateRecipientCLICommand(o: UpdateRecipientOptions): Promise<JsonSerializable>;
|
|
58
|
+
/** `ar.io escrow claim-arweave --ant <mint> --signature-file <bin> --claimant <pubkey> [--salt-len 32]` */
|
|
59
|
+
export declare function escrowClaimArweaveCLICommand(o: ClaimArweaveOptions): Promise<JsonSerializable>;
|
|
60
|
+
/** `ar.io escrow claim-ethereum --ant <mint> --signature-file <bin> --claimant <pubkey>` */
|
|
61
|
+
export declare function escrowClaimEthereumCLICommand(o: ClaimEthereumOptions): Promise<JsonSerializable>;
|
|
62
|
+
export {};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { WriteActionCLIOptions } from '../types.js';
|
|
2
|
+
type PruneOptions = WriteActionCLIOptions & {
|
|
3
|
+
name?: string;
|
|
4
|
+
max?: string;
|
|
5
|
+
gateway?: string;
|
|
6
|
+
delegator?: string;
|
|
7
|
+
observer?: string;
|
|
8
|
+
initiator?: string;
|
|
9
|
+
owner?: string;
|
|
10
|
+
withdrawalId?: string;
|
|
11
|
+
vaultId?: string;
|
|
12
|
+
epochIndex?: string;
|
|
13
|
+
arnsRecords?: string[];
|
|
14
|
+
returnedNames?: string[];
|
|
15
|
+
};
|
|
16
|
+
export declare function pruneExpiredNamesCLICommand(o: PruneOptions): Promise<import("../../types/common.js").AoMessageResult | {
|
|
17
|
+
message: string;
|
|
18
|
+
}>;
|
|
19
|
+
export declare function pruneNameToReturnedCLICommand(o: PruneOptions): Promise<import("../../types/common.js").AoMessageResult>;
|
|
20
|
+
export declare function pruneReturnedNamesCLICommand(o: PruneOptions): Promise<import("../../types/common.js").AoMessageResult | {
|
|
21
|
+
message: string;
|
|
22
|
+
}>;
|
|
23
|
+
export declare function pruneExpiredReservationCLICommand(o: PruneOptions): Promise<import("../../types/common.js").AoMessageResult>;
|
|
24
|
+
export declare function pruneGatewayCLICommand(o: PruneOptions): Promise<import("../../types/common.js").AoMessageResult>;
|
|
25
|
+
export declare function finalizeGoneCLICommand(o: PruneOptions): Promise<import("../../types/common.js").AoMessageResult>;
|
|
26
|
+
export declare function closeObservationCLICommand(o: PruneOptions): Promise<import("../../types/common.js").AoMessageResult>;
|
|
27
|
+
export declare function closeEmptyDelegationCLICommand(o: PruneOptions): Promise<import("../../types/common.js").AoMessageResult>;
|
|
28
|
+
export declare function closeDrainedWithdrawalCLICommand(o: PruneOptions): Promise<import("../../types/common.js").AoMessageResult>;
|
|
29
|
+
export declare function releaseVaultCLICommand(o: PruneOptions): Promise<import("../../types/common.js").AoMessageResult>;
|
|
30
|
+
export declare function closeExpiredRequestCLICommand(o: PruneOptions): Promise<import("../../types/common.js").AoMessageResult>;
|
|
31
|
+
export {};
|