mirror of
https://github.com/sonr-io/sonr.git
synced 2026-08-04 18:31:41 +00:00
Regular → Executable
+145
-2
@@ -2,11 +2,11 @@ package module
|
||||
|
||||
import (
|
||||
autocliv1 "cosmossdk.io/api/cosmos/autocli/v1"
|
||||
modulev1 "github.com/sonr-io/snrd/api/dwn/v1"
|
||||
modulev1 "github.com/sonr-io/sonr/api/dwn/v1"
|
||||
)
|
||||
|
||||
// AutoCLIOptions implements the autocli.HasAutoCLIConfig interface.
|
||||
func (am AppModule) AutoCLIOptions() *autocliv1.ModuleOptions {
|
||||
func (a AppModule) AutoCLIOptions() *autocliv1.ModuleOptions {
|
||||
return &autocliv1.ModuleOptions{
|
||||
Query: &autocliv1.ServiceCommandDescriptor{
|
||||
Service: modulev1.Query_ServiceDesc.ServiceName,
|
||||
@@ -16,6 +16,80 @@ func (am AppModule) AutoCLIOptions() *autocliv1.ModuleOptions {
|
||||
Use: "params",
|
||||
Short: "Query the current consensus parameters",
|
||||
},
|
||||
{
|
||||
RpcMethod: "Records",
|
||||
Use: "records [target]",
|
||||
Short: "Query DWN records for a target",
|
||||
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
||||
{ProtoField: "target"},
|
||||
},
|
||||
FlagOptions: map[string]*autocliv1.FlagOptions{
|
||||
"protocol": {Usage: "Filter by protocol URI"},
|
||||
"schema": {Usage: "Filter by schema URI"},
|
||||
"parent_id": {Usage: "Filter by parent record ID"},
|
||||
"published_only": {Usage: "Filter to show only published records"},
|
||||
},
|
||||
},
|
||||
{
|
||||
RpcMethod: "Record",
|
||||
Use: "record [target] [record-id]",
|
||||
Short: "Query a specific DWN record",
|
||||
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
||||
{ProtoField: "target"},
|
||||
{ProtoField: "record_id"},
|
||||
},
|
||||
},
|
||||
{
|
||||
RpcMethod: "Protocols",
|
||||
Use: "protocols [target]",
|
||||
Short: "Query DWN protocols for a target",
|
||||
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
||||
{ProtoField: "target"},
|
||||
},
|
||||
FlagOptions: map[string]*autocliv1.FlagOptions{
|
||||
"published_only": {Usage: "Filter to show only published protocols"},
|
||||
},
|
||||
},
|
||||
{
|
||||
RpcMethod: "Protocol",
|
||||
Use: "protocol [target] [protocol-uri]",
|
||||
Short: "Query a specific DWN protocol",
|
||||
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
||||
{ProtoField: "target"},
|
||||
{ProtoField: "protocol_uri"},
|
||||
},
|
||||
},
|
||||
{
|
||||
RpcMethod: "Permissions",
|
||||
Use: "permissions [target]",
|
||||
Short: "Query DWN permissions for a target",
|
||||
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
||||
{ProtoField: "target"},
|
||||
},
|
||||
FlagOptions: map[string]*autocliv1.FlagOptions{
|
||||
"grantor": {Usage: "Filter by grantor DID"},
|
||||
"grantee": {Usage: "Filter by grantee DID"},
|
||||
"interface_name": {Usage: "Filter by interface name"},
|
||||
"method": {Usage: "Filter by method name"},
|
||||
"include_revoked": {Usage: "Include revoked permissions in results"},
|
||||
},
|
||||
},
|
||||
{
|
||||
RpcMethod: "Vault",
|
||||
Use: "vault [vault-id]",
|
||||
Short: "Query a specific vault",
|
||||
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
||||
{ProtoField: "vault_id"},
|
||||
},
|
||||
},
|
||||
{
|
||||
RpcMethod: "Vaults",
|
||||
Use: "vaults",
|
||||
Short: "Query vaults by owner",
|
||||
FlagOptions: map[string]*autocliv1.FlagOptions{
|
||||
"owner": {Usage: "Filter by owner address (defaults to sender)"},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
Tx: &autocliv1.ServiceCommandDescriptor{
|
||||
@@ -25,6 +99,75 @@ func (am AppModule) AutoCLIOptions() *autocliv1.ModuleOptions {
|
||||
RpcMethod: "UpdateParams",
|
||||
Skip: false, // set to true if authority gated
|
||||
},
|
||||
{
|
||||
RpcMethod: "RecordsWrite",
|
||||
Use: "records-write [target] [data]",
|
||||
Short: "Creates or updates a record in the DWN",
|
||||
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
||||
{ProtoField: "target"},
|
||||
{ProtoField: "data"},
|
||||
},
|
||||
FlagOptions: map[string]*autocliv1.FlagOptions{
|
||||
"authorization": {Usage: "Authorization JWT or signature"},
|
||||
"attestation": {Usage: "Attestation signature"},
|
||||
"encryption": {Usage: "Encryption details"},
|
||||
"protocol": {Usage: "Protocol URI this record conforms to"},
|
||||
"protocol_path": {Usage: "Protocol path"},
|
||||
"schema": {Usage: "Schema URI for data validation"},
|
||||
"parent_id": {Usage: "Parent record ID for threading"},
|
||||
"published": {Usage: "Mark record as published"},
|
||||
},
|
||||
},
|
||||
{
|
||||
RpcMethod: "RecordsDelete",
|
||||
Use: "records-delete [target] [record-id]",
|
||||
Short: "Deletes a record from the DWN",
|
||||
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
||||
{ProtoField: "target"},
|
||||
{ProtoField: "record_id"},
|
||||
},
|
||||
FlagOptions: map[string]*autocliv1.FlagOptions{
|
||||
"authorization": {Usage: "Authorization JWT or signature"},
|
||||
"prune": {Usage: "Prune all descendant records"},
|
||||
},
|
||||
},
|
||||
{
|
||||
RpcMethod: "ProtocolsConfigure",
|
||||
Use: "protocols-configure [target] [protocol-uri] [definition]",
|
||||
Short: "Configures a protocol in the DWN",
|
||||
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
||||
{ProtoField: "target"},
|
||||
{ProtoField: "protocol_uri"},
|
||||
{ProtoField: "definition"},
|
||||
},
|
||||
FlagOptions: map[string]*autocliv1.FlagOptions{
|
||||
"authorization": {Usage: "Authorization JWT or signature"},
|
||||
"published": {Usage: "Mark protocol as published"},
|
||||
},
|
||||
},
|
||||
{
|
||||
RpcMethod: "PermissionsGrant",
|
||||
Use: "permissions-grant [target] [grantee]",
|
||||
Short: "Grants permissions in the DWN",
|
||||
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
||||
{ProtoField: "target"},
|
||||
{ProtoField: "grantee"},
|
||||
},
|
||||
FlagOptions: map[string]*autocliv1.FlagOptions{
|
||||
"authorization": {Usage: "Authorization JWT or signature"},
|
||||
},
|
||||
},
|
||||
{
|
||||
RpcMethod: "PermissionsRevoke",
|
||||
Use: "permissions-revoke [permission-id]",
|
||||
Short: "Revokes permissions in the DWN",
|
||||
PositionalArgs: []*autocliv1.PositionalArgDescriptor{
|
||||
{ProtoField: "permission_id"},
|
||||
},
|
||||
FlagOptions: map[string]*autocliv1.FlagOptions{
|
||||
"authorization": {Usage: "Authorization JWT or signature"},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user