mirror of
https://github.com/sonr-io/sonr.git
synced 2026-08-02 17:31:39 +00:00
feature/1111 sync chain dwn endpoint (#1143)
- **feat(did): add assertion type to DID spec** - **refactor: update build process to include assets generation** - **refactor: update import paths for to** - **feat: introduce new authentication state management** - **feat: add current account route** - **feat: implement global toasts with custom HTML** - **refactor: remove unused session code** - **feat: add config.json to embedded assets** - **refactor: remove unused dependency on gorilla/sessions** - **refactor: simplify session management and remove unnecessary fields** - **fix: remove unnecessary import for unused protobuf types** - **feat: introduce separate HTTP contexts for Highway and DWN** - **fix(keeper): Handle missing controller during initial sync** - **refactor: extract DWN configuration from DWNContext** - **feat: add view route** - **fix: update configuration file name in embed.go** - **feat: improve vaultindex page loading experience** - **feat(hway): add highway context to echo context** - **chore(deps): bump onsonr/crypto from 1.32.0 to 1.33.0** - **refactor: rename DWNSessionMiddleware to WebNodeSessionMiddleware** - **feat: rename client API to web node API** - **refactor: separate API and view routes** - **refactor: remove unused build targets in Makefile** - **feat: add Devbox integration to container** - **feat: add wasm support for dwn** - **refactor: update module proto import** - **feat: add default first and third party caveats** - **feat: Add target vault allocation mechanism** - **refactor: introduce standardized session cookie handling** - **fix: update service worker installation and ready states** - **feat: add worker handlers** - **feat: Enable SSH access to devcontainer** - **refactor: rename HighwayContext to HwayContext** - **feat: add block expiration calculation to sonr context** - **feat: remove config from cookie and header** - **feat(gen): Remove generated code for IPFS, Motr and Sonr** - **refactor: remove unused createMotrConfig function** - **feat: add project analytics with Repobeats** - **docs: Remove component details from README** - **refactor: rename SetConfig to injectConfig**
This commit is contained in:
@@ -1,13 +1,11 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package onsonr.sonr.did.module.v1;
|
||||
package did.module.v1;
|
||||
|
||||
import "cosmos/app/v1alpha1/module.proto";
|
||||
|
||||
// Module is the app config object of the module.
|
||||
// Learn more: https://docs.cosmos.network/main/building-modules/depinject
|
||||
message Module {
|
||||
option (cosmos.app.v1alpha1.module) = {
|
||||
go_import : "github.com/onsonr/sonr"
|
||||
};
|
||||
option (cosmos.app.v1alpha1.module) = {go_import: "github.com/onsonr/sonr"};
|
||||
}
|
||||
|
||||
@@ -7,13 +7,42 @@ import "did/v1/genesis.proto";
|
||||
|
||||
option go_package = "github.com/onsonr/sonr/x/did/types";
|
||||
|
||||
message Authentication {
|
||||
message Assertion {
|
||||
option (cosmos.orm.v1.table) = {
|
||||
id : 1
|
||||
primary_key : {fields : "did"}
|
||||
index : {id : 1 fields : "controller,subject" unique : true}
|
||||
};
|
||||
|
||||
// The unique identifier of the assertion
|
||||
string did = 1;
|
||||
|
||||
// The authentication of the DID
|
||||
string controller = 2;
|
||||
|
||||
// Origin of the authentication
|
||||
string subject = 3;
|
||||
|
||||
// PubKey is the verification method
|
||||
PubKey public_key = 4;
|
||||
|
||||
// AssertionType is the assertion type
|
||||
string assertion_type = 5;
|
||||
|
||||
// Metadata of the authentication
|
||||
map<string, bytes> accumulator = 6;
|
||||
|
||||
// CreationBlock is the block number of the creation of the authentication
|
||||
int64 creation_block = 7;
|
||||
}
|
||||
|
||||
message Authentication {
|
||||
option (cosmos.orm.v1.table) = {
|
||||
id : 2
|
||||
primary_key : {fields : "did"}
|
||||
index : {id : 1 fields : "controller,subject" unique : true}
|
||||
};
|
||||
|
||||
// The unique identifier of the authentication
|
||||
string did = 1;
|
||||
|
||||
@@ -39,7 +68,7 @@ message Authentication {
|
||||
// Controller represents a Sonr DWN Vault
|
||||
message Controller {
|
||||
option (cosmos.orm.v1.table) = {
|
||||
id : 2
|
||||
id : 3
|
||||
primary_key : {fields : "number" auto_increment : true}
|
||||
index : {id : 1 fields : "sonr_address" unique : true}
|
||||
index : {id : 2 fields : "eth_address" unique : true}
|
||||
|
||||
+113
-13
@@ -17,35 +17,85 @@ service Msg {
|
||||
// Macaroon for verification.
|
||||
rpc ExecuteTx(MsgExecuteTx) returns (MsgExecuteTxResponse);
|
||||
|
||||
// RegisterController initializes a controller with the given authentication
|
||||
// set, address, cid, publicKey, and user-defined alias.
|
||||
rpc RegisterController(MsgRegisterController)
|
||||
returns (MsgRegisterControllerResponse);
|
||||
// LinkAssertion links an assertion to a controller.
|
||||
rpc LinkAssertion(MsgLinkAssertion) returns (MsgLinkAssertionResponse);
|
||||
|
||||
// LinkAuthentication links an authentication to a controller.
|
||||
rpc LinkAuthentication(MsgLinkAuthentication)
|
||||
returns (MsgLinkAuthenticationResponse);
|
||||
|
||||
// UnlinkAssertion unlinks an assertion from a controller.
|
||||
rpc UnlinkAssertion(MsgUnlinkAssertion)
|
||||
returns (MsgUnlinkAssertionResponse);
|
||||
|
||||
// UnlinkAuthentication unlinks an authentication from a controller.
|
||||
rpc UnlinkAuthentication(MsgUnlinkAuthentication)
|
||||
returns (MsgUnlinkAuthenticationResponse);
|
||||
|
||||
// UpdateParams defines a governance operation for updating the parameters.
|
||||
rpc UpdateParams(MsgUpdateParams) returns (MsgUpdateParamsResponse);
|
||||
}
|
||||
|
||||
// MsgRegisterController is the message type for the InitializeController RPC.
|
||||
message MsgRegisterController {
|
||||
option (cosmos.msg.v1.signer) = "authority";
|
||||
// MsgLinkAuthentication is the message type for the LinkAuthentication RPC.
|
||||
message MsgLinkAuthentication {
|
||||
option (cosmos.msg.v1.signer) = "controller";
|
||||
|
||||
// authority is the address of the governance account.
|
||||
string authority = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ];
|
||||
// Controller is the address of the controller to authenticate.
|
||||
string controller = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ];
|
||||
|
||||
// Subject is the subject of the authentication.
|
||||
string subject = 2;
|
||||
|
||||
// Assertion is the assertion of the authentication.
|
||||
string assertion = 3;
|
||||
|
||||
// Authentication is the authentication of the authentication.
|
||||
bytes credential_id = 4;
|
||||
|
||||
// token is the macron token to authenticate the operation.
|
||||
string macaroon_token = 5;
|
||||
}
|
||||
|
||||
// MsgRegisterControllerResponse is the response type for the
|
||||
// InitializeController RPC.
|
||||
message MsgRegisterControllerResponse {
|
||||
// MsgLinkAuthenticationResponse is the response type for the
|
||||
// LinkAuthentication RPC.
|
||||
message MsgLinkAuthenticationResponse {
|
||||
// Success returns true if the specified cid is valid and not already
|
||||
// encrypted.
|
||||
bool success = 1;
|
||||
|
||||
// Controller is the address of the initialized controller.
|
||||
string controller = 2 [ (cosmos_proto.scalar) = "cosmos.AddressString" ];
|
||||
string did = 2;
|
||||
}
|
||||
|
||||
// MsgLinkAssertion is the message type for the LinkAssertion RPC.
|
||||
message MsgLinkAssertion {
|
||||
option (cosmos.msg.v1.signer) = "controller";
|
||||
|
||||
// Controller is the address of the controller to authenticate.
|
||||
string controller = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ];
|
||||
|
||||
// Subject is the subject of the authentication.
|
||||
string subject = 2;
|
||||
|
||||
// Assertion is the assertion of the authentication.
|
||||
string assertion = 3;
|
||||
|
||||
// token is the macron token to authenticate the operation.
|
||||
string macaroon_token = 4;
|
||||
}
|
||||
|
||||
// MsgLinkAssertionResponse is the response type for the
|
||||
// LinkAssertion RPC.
|
||||
message MsgLinkAssertionResponse {
|
||||
// Success returns true if the specified cid is valid and not already
|
||||
// encrypted.
|
||||
bool success = 1;
|
||||
|
||||
// Controller is the address of the initialized controller.
|
||||
string did = 2;
|
||||
}
|
||||
|
||||
|
||||
// MsgExecuteTx is the message type for the ExecuteTx RPC.
|
||||
message MsgExecuteTx {
|
||||
option (cosmos.msg.v1.signer) = "controller";
|
||||
@@ -66,6 +116,56 @@ message MsgExecuteTxResponse {
|
||||
string tx_hash = 2;
|
||||
}
|
||||
|
||||
// MsgUnlinkAssertion is the message type for the UnlinkAssertion RPC.
|
||||
message MsgUnlinkAssertion {
|
||||
option (cosmos.msg.v1.signer) = "controller";
|
||||
|
||||
// Controller is the address of the controller to authenticate.
|
||||
string controller = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ];
|
||||
|
||||
// Assertion is the assertion of the authentication.
|
||||
string assertion_did = 2;
|
||||
|
||||
// token is the macron token to authenticate the operation.
|
||||
string macaroon_token = 3;
|
||||
}
|
||||
|
||||
// MsgUnlinkAssertionResponse is the response type for the
|
||||
// UnlinkAssertion RPC.
|
||||
message MsgUnlinkAssertionResponse {
|
||||
// Success returns true if the specified cid is valid and not already
|
||||
// encrypted.
|
||||
bool success = 1;
|
||||
|
||||
// Controller is the address of the initialized controller.
|
||||
string did = 2;
|
||||
}
|
||||
|
||||
// MsgUnlinkAuthentication is the message type for the UnlinkAuthentication RPC.
|
||||
message MsgUnlinkAuthentication {
|
||||
option (cosmos.msg.v1.signer) = "controller";
|
||||
|
||||
// Controller is the address of the controller to authenticate.
|
||||
string controller = 1 [ (cosmos_proto.scalar) = "cosmos.AddressString" ];
|
||||
|
||||
// Subject is the subject of the authentication.
|
||||
string authentication_did = 2;
|
||||
|
||||
// token is the macron token to authenticate the operation.
|
||||
string macaroon_token = 3;
|
||||
}
|
||||
|
||||
// MsgUnlinkAuthenticationResponse is the response type for the
|
||||
// UnlinkAuthentication RPC.
|
||||
message MsgUnlinkAuthenticationResponse {
|
||||
// Success returns true if the specified cid is valid and not already
|
||||
// encrypted.
|
||||
bool success = 1;
|
||||
|
||||
// Controller is the address of the initialized controller.
|
||||
string did = 2;
|
||||
}
|
||||
|
||||
// MsgUpdateParams is the Msg/UpdateParams request type.
|
||||
//
|
||||
// Since: cosmos-sdk 0.47
|
||||
|
||||
Reference in New Issue
Block a user