2024-07-05 22:20:13 -04:00
// Code generated by protoc-gen-go-pulsar. DO NOT EDIT.
package didv1
import (
_ "cosmossdk.io/api/cosmos/orm/v1"
fmt "fmt"
runtime "github.com/cosmos/cosmos-proto/runtime"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoiface "google.golang.org/protobuf/runtime/protoiface"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
io "io"
reflect "reflect"
2024-09-29 14:40:36 -04:00
sort "sort"
2024-07-05 22:20:13 -04:00
sync "sync"
)
2024-10-15 14:31:19 -04:00
var _ protoreflect . Map = ( * _Assertion_6_map ) ( nil )
type _Assertion_6_map struct {
m * map [ string ] [ ] byte
}
func ( x * _Assertion_6_map ) Len ( ) int {
if x . m == nil {
return 0
}
return len ( * x . m )
}
func ( x * _Assertion_6_map ) Range ( f func ( protoreflect . MapKey , protoreflect . Value ) bool ) {
if x . m == nil {
return
}
for k , v := range * x . m {
mapKey := ( protoreflect . MapKey ) ( protoreflect . ValueOfString ( k ) )
mapValue := protoreflect . ValueOfBytes ( v )
if ! f ( mapKey , mapValue ) {
break
}
}
}
func ( x * _Assertion_6_map ) Has ( key protoreflect . MapKey ) bool {
if x . m == nil {
return false
}
keyUnwrapped := key . String ( )
concreteValue := keyUnwrapped
_ , ok := ( * x . m ) [ concreteValue ]
return ok
}
func ( x * _Assertion_6_map ) Clear ( key protoreflect . MapKey ) {
if x . m == nil {
return
}
keyUnwrapped := key . String ( )
concreteKey := keyUnwrapped
delete ( * x . m , concreteKey )
}
func ( x * _Assertion_6_map ) Get ( key protoreflect . MapKey ) protoreflect . Value {
if x . m == nil {
return protoreflect . Value { }
}
keyUnwrapped := key . String ( )
concreteKey := keyUnwrapped
v , ok := ( * x . m ) [ concreteKey ]
if ! ok {
return protoreflect . Value { }
}
return protoreflect . ValueOfBytes ( v )
}
func ( x * _Assertion_6_map ) Set ( key protoreflect . MapKey , value protoreflect . Value ) {
if ! key . IsValid ( ) || ! value . IsValid ( ) {
panic ( "invalid key or value provided" )
}
keyUnwrapped := key . String ( )
concreteKey := keyUnwrapped
valueUnwrapped := value . Bytes ( )
concreteValue := valueUnwrapped
( * x . m ) [ concreteKey ] = concreteValue
}
func ( x * _Assertion_6_map ) Mutable ( key protoreflect . MapKey ) protoreflect . Value {
panic ( "should not call Mutable on protoreflect.Map whose value is not of type protoreflect.Message" )
}
func ( x * _Assertion_6_map ) NewValue ( ) protoreflect . Value {
var v [ ] byte
return protoreflect . ValueOfBytes ( v )
}
func ( x * _Assertion_6_map ) IsValid ( ) bool {
return x . m != nil
}
var (
md_Assertion protoreflect . MessageDescriptor
fd_Assertion_did protoreflect . FieldDescriptor
fd_Assertion_controller protoreflect . FieldDescriptor
fd_Assertion_subject protoreflect . FieldDescriptor
2024-11-18 19:04:10 -05:00
fd_Assertion_public_key_hex protoreflect . FieldDescriptor
2024-10-15 14:31:19 -04:00
fd_Assertion_assertion_type protoreflect . FieldDescriptor
fd_Assertion_accumulator protoreflect . FieldDescriptor
fd_Assertion_creation_block protoreflect . FieldDescriptor
)
func init ( ) {
file_did_v1_state_proto_init ( )
md_Assertion = File_did_v1_state_proto . Messages ( ) . ByName ( "Assertion" )
fd_Assertion_did = md_Assertion . Fields ( ) . ByName ( "did" )
fd_Assertion_controller = md_Assertion . Fields ( ) . ByName ( "controller" )
fd_Assertion_subject = md_Assertion . Fields ( ) . ByName ( "subject" )
2024-11-18 19:04:10 -05:00
fd_Assertion_public_key_hex = md_Assertion . Fields ( ) . ByName ( "public_key_hex" )
2024-10-15 14:31:19 -04:00
fd_Assertion_assertion_type = md_Assertion . Fields ( ) . ByName ( "assertion_type" )
fd_Assertion_accumulator = md_Assertion . Fields ( ) . ByName ( "accumulator" )
fd_Assertion_creation_block = md_Assertion . Fields ( ) . ByName ( "creation_block" )
}
var _ protoreflect . Message = ( * fastReflection_Assertion ) ( nil )
type fastReflection_Assertion Assertion
func ( x * Assertion ) ProtoReflect ( ) protoreflect . Message {
return ( * fastReflection_Assertion ) ( x )
}
func ( x * Assertion ) slowProtoReflect ( ) protoreflect . Message {
mi := & file_did_v1_state_proto_msgTypes [ 0 ]
if protoimpl . UnsafeEnabled && x != nil {
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
if ms . LoadMessageInfo ( ) == nil {
ms . StoreMessageInfo ( mi )
}
return ms
}
return mi . MessageOf ( x )
}
var _fastReflection_Assertion_messageType fastReflection_Assertion_messageType
var _ protoreflect . MessageType = fastReflection_Assertion_messageType { }
type fastReflection_Assertion_messageType struct { }
func ( x fastReflection_Assertion_messageType ) Zero ( ) protoreflect . Message {
return ( * fastReflection_Assertion ) ( nil )
}
func ( x fastReflection_Assertion_messageType ) New ( ) protoreflect . Message {
return new ( fastReflection_Assertion )
}
func ( x fastReflection_Assertion_messageType ) Descriptor ( ) protoreflect . MessageDescriptor {
return md_Assertion
}
// Descriptor returns message descriptor, which contains only the protobuf
// type information for the message.
func ( x * fastReflection_Assertion ) Descriptor ( ) protoreflect . MessageDescriptor {
return md_Assertion
}
// Type returns the message type, which encapsulates both Go and protobuf
// type information. If the Go type information is not needed,
// it is recommended that the message descriptor be used instead.
func ( x * fastReflection_Assertion ) Type ( ) protoreflect . MessageType {
return _fastReflection_Assertion_messageType
}
// New returns a newly allocated and mutable empty message.
func ( x * fastReflection_Assertion ) New ( ) protoreflect . Message {
return new ( fastReflection_Assertion )
}
// Interface unwraps the message reflection interface and
// returns the underlying ProtoMessage interface.
func ( x * fastReflection_Assertion ) Interface ( ) protoreflect . ProtoMessage {
return ( * Assertion ) ( x )
}
// Range iterates over every populated field in an undefined order,
// calling f for each field descriptor and value encountered.
// Range returns immediately if f returns false.
// While iterating, mutating operations may only be performed
// on the current field descriptor.
func ( x * fastReflection_Assertion ) Range ( f func ( protoreflect . FieldDescriptor , protoreflect . Value ) bool ) {
if x . Did != "" {
value := protoreflect . ValueOfString ( x . Did )
if ! f ( fd_Assertion_did , value ) {
return
}
}
if x . Controller != "" {
value := protoreflect . ValueOfString ( x . Controller )
if ! f ( fd_Assertion_controller , value ) {
return
}
}
if x . Subject != "" {
value := protoreflect . ValueOfString ( x . Subject )
if ! f ( fd_Assertion_subject , value ) {
return
}
}
2024-11-18 19:04:10 -05:00
if x . PublicKeyHex != "" {
value := protoreflect . ValueOfString ( x . PublicKeyHex )
if ! f ( fd_Assertion_public_key_hex , value ) {
2024-10-15 14:31:19 -04:00
return
}
}
if x . AssertionType != "" {
value := protoreflect . ValueOfString ( x . AssertionType )
if ! f ( fd_Assertion_assertion_type , value ) {
return
}
}
if len ( x . Accumulator ) != 0 {
value := protoreflect . ValueOfMap ( & _Assertion_6_map { m : & x . Accumulator } )
if ! f ( fd_Assertion_accumulator , value ) {
return
}
}
if x . CreationBlock != int64 ( 0 ) {
value := protoreflect . ValueOfInt64 ( x . CreationBlock )
if ! f ( fd_Assertion_creation_block , value ) {
return
}
}
}
// Has reports whether a field is populated.
//
// Some fields have the property of nullability where it is possible to
// distinguish between the default value of a field and whether the field
// was explicitly populated with the default value. Singular message fields,
// member fields of a oneof, and proto2 scalar fields are nullable. Such
// fields are populated only if explicitly set.
//
// In other cases (aside from the nullable cases above),
// a proto3 scalar field is populated if it contains a non-zero value, and
// a repeated field is populated if it is non-empty.
func ( x * fastReflection_Assertion ) Has ( fd protoreflect . FieldDescriptor ) bool {
switch fd . FullName ( ) {
case "did.v1.Assertion.did" :
return x . Did != ""
case "did.v1.Assertion.controller" :
return x . Controller != ""
case "did.v1.Assertion.subject" :
return x . Subject != ""
2024-11-18 19:04:10 -05:00
case "did.v1.Assertion.public_key_hex" :
return x . PublicKeyHex != ""
2024-10-15 14:31:19 -04:00
case "did.v1.Assertion.assertion_type" :
return x . AssertionType != ""
case "did.v1.Assertion.accumulator" :
return len ( x . Accumulator ) != 0
case "did.v1.Assertion.creation_block" :
return x . CreationBlock != int64 ( 0 )
default :
if fd . IsExtension ( ) {
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Assertion" ) )
}
panic ( fmt . Errorf ( "message did.v1.Assertion does not contain field %s" , fd . FullName ( ) ) )
}
}
// Clear clears the field such that a subsequent Has call reports false.
//
// Clearing an extension field clears both the extension type and value
// associated with the given field number.
//
// Clear is a mutating operation and unsafe for concurrent use.
func ( x * fastReflection_Assertion ) Clear ( fd protoreflect . FieldDescriptor ) {
switch fd . FullName ( ) {
case "did.v1.Assertion.did" :
x . Did = ""
case "did.v1.Assertion.controller" :
x . Controller = ""
case "did.v1.Assertion.subject" :
x . Subject = ""
2024-11-18 19:04:10 -05:00
case "did.v1.Assertion.public_key_hex" :
x . PublicKeyHex = ""
2024-10-15 14:31:19 -04:00
case "did.v1.Assertion.assertion_type" :
x . AssertionType = ""
case "did.v1.Assertion.accumulator" :
x . Accumulator = nil
case "did.v1.Assertion.creation_block" :
x . CreationBlock = int64 ( 0 )
default :
if fd . IsExtension ( ) {
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Assertion" ) )
}
panic ( fmt . Errorf ( "message did.v1.Assertion does not contain field %s" , fd . FullName ( ) ) )
}
}
// Get retrieves the value for a field.
//
// For unpopulated scalars, it returns the default value, where
// the default value of a bytes scalar is guaranteed to be a copy.
// For unpopulated composite types, it returns an empty, read-only view
// of the value; to obtain a mutable reference, use Mutable.
func ( x * fastReflection_Assertion ) Get ( descriptor protoreflect . FieldDescriptor ) protoreflect . Value {
switch descriptor . FullName ( ) {
case "did.v1.Assertion.did" :
value := x . Did
return protoreflect . ValueOfString ( value )
case "did.v1.Assertion.controller" :
value := x . Controller
return protoreflect . ValueOfString ( value )
case "did.v1.Assertion.subject" :
value := x . Subject
return protoreflect . ValueOfString ( value )
2024-11-18 19:04:10 -05:00
case "did.v1.Assertion.public_key_hex" :
value := x . PublicKeyHex
return protoreflect . ValueOfString ( value )
2024-10-15 14:31:19 -04:00
case "did.v1.Assertion.assertion_type" :
value := x . AssertionType
return protoreflect . ValueOfString ( value )
case "did.v1.Assertion.accumulator" :
if len ( x . Accumulator ) == 0 {
return protoreflect . ValueOfMap ( & _Assertion_6_map { } )
}
mapValue := & _Assertion_6_map { m : & x . Accumulator }
return protoreflect . ValueOfMap ( mapValue )
case "did.v1.Assertion.creation_block" :
value := x . CreationBlock
return protoreflect . ValueOfInt64 ( value )
default :
if descriptor . IsExtension ( ) {
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Assertion" ) )
}
panic ( fmt . Errorf ( "message did.v1.Assertion does not contain field %s" , descriptor . FullName ( ) ) )
}
}
// Set stores the value for a field.
//
// For a field belonging to a oneof, it implicitly clears any other field
// that may be currently set within the same oneof.
// For extension fields, it implicitly stores the provided ExtensionType.
// When setting a composite type, it is unspecified whether the stored value
// aliases the source's memory in any way. If the composite value is an
// empty, read-only value, then it panics.
//
// Set is a mutating operation and unsafe for concurrent use.
func ( x * fastReflection_Assertion ) Set ( fd protoreflect . FieldDescriptor , value protoreflect . Value ) {
switch fd . FullName ( ) {
case "did.v1.Assertion.did" :
x . Did = value . Interface ( ) . ( string )
case "did.v1.Assertion.controller" :
x . Controller = value . Interface ( ) . ( string )
case "did.v1.Assertion.subject" :
x . Subject = value . Interface ( ) . ( string )
2024-11-18 19:04:10 -05:00
case "did.v1.Assertion.public_key_hex" :
x . PublicKeyHex = value . Interface ( ) . ( string )
2024-10-15 14:31:19 -04:00
case "did.v1.Assertion.assertion_type" :
x . AssertionType = value . Interface ( ) . ( string )
case "did.v1.Assertion.accumulator" :
mv := value . Map ( )
cmv := mv . ( * _Assertion_6_map )
x . Accumulator = * cmv . m
case "did.v1.Assertion.creation_block" :
x . CreationBlock = value . Int ( )
default :
if fd . IsExtension ( ) {
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Assertion" ) )
}
panic ( fmt . Errorf ( "message did.v1.Assertion does not contain field %s" , fd . FullName ( ) ) )
}
}
// Mutable returns a mutable reference to a composite type.
//
// If the field is unpopulated, it may allocate a composite value.
// For a field belonging to a oneof, it implicitly clears any other field
// that may be currently set within the same oneof.
// For extension fields, it implicitly stores the provided ExtensionType
// if not already stored.
// It panics if the field does not contain a composite type.
//
// Mutable is a mutating operation and unsafe for concurrent use.
func ( x * fastReflection_Assertion ) Mutable ( fd protoreflect . FieldDescriptor ) protoreflect . Value {
switch fd . FullName ( ) {
case "did.v1.Assertion.accumulator" :
if x . Accumulator == nil {
x . Accumulator = make ( map [ string ] [ ] byte )
}
value := & _Assertion_6_map { m : & x . Accumulator }
return protoreflect . ValueOfMap ( value )
case "did.v1.Assertion.did" :
panic ( fmt . Errorf ( "field did of message did.v1.Assertion is not mutable" ) )
case "did.v1.Assertion.controller" :
panic ( fmt . Errorf ( "field controller of message did.v1.Assertion is not mutable" ) )
case "did.v1.Assertion.subject" :
panic ( fmt . Errorf ( "field subject of message did.v1.Assertion is not mutable" ) )
2024-11-18 19:04:10 -05:00
case "did.v1.Assertion.public_key_hex" :
panic ( fmt . Errorf ( "field public_key_hex of message did.v1.Assertion is not mutable" ) )
2024-10-15 14:31:19 -04:00
case "did.v1.Assertion.assertion_type" :
panic ( fmt . Errorf ( "field assertion_type of message did.v1.Assertion is not mutable" ) )
case "did.v1.Assertion.creation_block" :
panic ( fmt . Errorf ( "field creation_block of message did.v1.Assertion is not mutable" ) )
default :
if fd . IsExtension ( ) {
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Assertion" ) )
}
panic ( fmt . Errorf ( "message did.v1.Assertion does not contain field %s" , fd . FullName ( ) ) )
}
}
// NewField returns a new value that is assignable to the field
// for the given descriptor. For scalars, this returns the default value.
// For lists, maps, and messages, this returns a new, empty, mutable value.
func ( x * fastReflection_Assertion ) NewField ( fd protoreflect . FieldDescriptor ) protoreflect . Value {
switch fd . FullName ( ) {
case "did.v1.Assertion.did" :
return protoreflect . ValueOfString ( "" )
case "did.v1.Assertion.controller" :
return protoreflect . ValueOfString ( "" )
case "did.v1.Assertion.subject" :
return protoreflect . ValueOfString ( "" )
2024-11-18 19:04:10 -05:00
case "did.v1.Assertion.public_key_hex" :
return protoreflect . ValueOfString ( "" )
2024-10-15 14:31:19 -04:00
case "did.v1.Assertion.assertion_type" :
return protoreflect . ValueOfString ( "" )
case "did.v1.Assertion.accumulator" :
m := make ( map [ string ] [ ] byte )
return protoreflect . ValueOfMap ( & _Assertion_6_map { m : & m } )
case "did.v1.Assertion.creation_block" :
return protoreflect . ValueOfInt64 ( int64 ( 0 ) )
default :
if fd . IsExtension ( ) {
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Assertion" ) )
}
panic ( fmt . Errorf ( "message did.v1.Assertion does not contain field %s" , fd . FullName ( ) ) )
}
}
// WhichOneof reports which field within the oneof is populated,
// returning nil if none are populated.
// It panics if the oneof descriptor does not belong to this message.
func ( x * fastReflection_Assertion ) WhichOneof ( d protoreflect . OneofDescriptor ) protoreflect . FieldDescriptor {
switch d . FullName ( ) {
default :
panic ( fmt . Errorf ( "%s is not a oneof field in did.v1.Assertion" , d . FullName ( ) ) )
}
panic ( "unreachable" )
}
// GetUnknown retrieves the entire list of unknown fields.
// The caller may only mutate the contents of the RawFields
// if the mutated bytes are stored back into the message with SetUnknown.
func ( x * fastReflection_Assertion ) GetUnknown ( ) protoreflect . RawFields {
return x . unknownFields
}
// SetUnknown stores an entire list of unknown fields.
// The raw fields must be syntactically valid according to the wire format.
// An implementation may panic if this is not the case.
// Once stored, the caller must not mutate the content of the RawFields.
// An empty RawFields may be passed to clear the fields.
//
// SetUnknown is a mutating operation and unsafe for concurrent use.
func ( x * fastReflection_Assertion ) SetUnknown ( fields protoreflect . RawFields ) {
x . unknownFields = fields
}
// IsValid reports whether the message is valid.
//
// An invalid message is an empty, read-only value.
//
// An invalid message often corresponds to a nil pointer of the concrete
// message type, but the details are implementation dependent.
// Validity is not part of the protobuf data model, and may not
// be preserved in marshaling or other operations.
func ( x * fastReflection_Assertion ) IsValid ( ) bool {
return x != nil
}
// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
// This method may return nil.
//
// The returned methods type is identical to
// "google.golang.org/protobuf/runtime/protoiface".Methods.
// Consult the protoiface package documentation for details.
func ( x * fastReflection_Assertion ) ProtoMethods ( ) * protoiface . Methods {
size := func ( input protoiface . SizeInput ) protoiface . SizeOutput {
x := input . Message . Interface ( ) . ( * Assertion )
if x == nil {
return protoiface . SizeOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Size : 0 ,
}
}
options := runtime . SizeInputToOptions ( input )
_ = options
var n int
var l int
_ = l
l = len ( x . Did )
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
l = len ( x . Controller )
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
l = len ( x . Subject )
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-11-18 19:04:10 -05:00
l = len ( x . PublicKeyHex )
if l > 0 {
2024-10-15 14:31:19 -04:00
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
l = len ( x . AssertionType )
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
if len ( x . Accumulator ) > 0 {
SiZeMaP := func ( k string , v [ ] byte ) {
l = 1 + len ( v ) + runtime . Sov ( uint64 ( len ( v ) ) )
mapEntrySize := 1 + len ( k ) + runtime . Sov ( uint64 ( len ( k ) ) ) + l
n += mapEntrySize + 1 + runtime . Sov ( uint64 ( mapEntrySize ) )
}
if options . Deterministic {
sortme := make ( [ ] string , 0 , len ( x . Accumulator ) )
for k := range x . Accumulator {
sortme = append ( sortme , k )
}
sort . Strings ( sortme )
for _ , k := range sortme {
v := x . Accumulator [ k ]
SiZeMaP ( k , v )
}
} else {
for k , v := range x . Accumulator {
SiZeMaP ( k , v )
}
}
}
if x . CreationBlock != 0 {
n += 1 + runtime . Sov ( uint64 ( x . CreationBlock ) )
}
if x . unknownFields != nil {
n += len ( x . unknownFields )
}
return protoiface . SizeOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Size : n ,
}
}
marshal := func ( input protoiface . MarshalInput ) ( protoiface . MarshalOutput , error ) {
x := input . Message . Interface ( ) . ( * Assertion )
if x == nil {
return protoiface . MarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Buf : input . Buf ,
} , nil
}
options := runtime . MarshalInputToOptions ( input )
_ = options
size := options . Size ( x )
dAtA := make ( [ ] byte , size )
i := len ( dAtA )
_ = i
var l int
_ = l
if x . unknownFields != nil {
i -= len ( x . unknownFields )
copy ( dAtA [ i : ] , x . unknownFields )
}
if x . CreationBlock != 0 {
i = runtime . EncodeVarint ( dAtA , i , uint64 ( x . CreationBlock ) )
i --
dAtA [ i ] = 0x38
}
if len ( x . Accumulator ) > 0 {
MaRsHaLmAp := func ( k string , v [ ] byte ) ( protoiface . MarshalOutput , error ) {
baseI := i
i -= len ( v )
copy ( dAtA [ i : ] , v )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( v ) ) )
i --
dAtA [ i ] = 0x12
i -= len ( k )
copy ( dAtA [ i : ] , k )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( k ) ) )
i --
dAtA [ i ] = 0xa
i = runtime . EncodeVarint ( dAtA , i , uint64 ( baseI - i ) )
i --
dAtA [ i ] = 0x32
return protoiface . MarshalOutput { } , nil
}
if options . Deterministic {
keysForAccumulator := make ( [ ] string , 0 , len ( x . Accumulator ) )
for k := range x . Accumulator {
keysForAccumulator = append ( keysForAccumulator , string ( k ) )
}
sort . Slice ( keysForAccumulator , func ( i , j int ) bool {
return keysForAccumulator [ i ] < keysForAccumulator [ j ]
} )
for iNdEx := len ( keysForAccumulator ) - 1 ; iNdEx >= 0 ; iNdEx -- {
v := x . Accumulator [ string ( keysForAccumulator [ iNdEx ] ) ]
out , err := MaRsHaLmAp ( keysForAccumulator [ iNdEx ] , v )
if err != nil {
return out , err
}
}
} else {
for k := range x . Accumulator {
v := x . Accumulator [ k ]
out , err := MaRsHaLmAp ( k , v )
if err != nil {
return out , err
}
}
}
}
if len ( x . AssertionType ) > 0 {
i -= len ( x . AssertionType )
copy ( dAtA [ i : ] , x . AssertionType )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . AssertionType ) ) )
i --
dAtA [ i ] = 0x2a
}
2024-11-18 19:04:10 -05:00
if len ( x . PublicKeyHex ) > 0 {
i -= len ( x . PublicKeyHex )
copy ( dAtA [ i : ] , x . PublicKeyHex )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . PublicKeyHex ) ) )
2024-10-15 14:31:19 -04:00
i --
dAtA [ i ] = 0x22
}
if len ( x . Subject ) > 0 {
i -= len ( x . Subject )
copy ( dAtA [ i : ] , x . Subject )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Subject ) ) )
i --
dAtA [ i ] = 0x1a
}
if len ( x . Controller ) > 0 {
i -= len ( x . Controller )
copy ( dAtA [ i : ] , x . Controller )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Controller ) ) )
i --
dAtA [ i ] = 0x12
}
if len ( x . Did ) > 0 {
i -= len ( x . Did )
copy ( dAtA [ i : ] , x . Did )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Did ) ) )
i --
dAtA [ i ] = 0xa
}
if input . Buf != nil {
input . Buf = append ( input . Buf , dAtA ... )
} else {
input . Buf = dAtA
}
return protoiface . MarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Buf : input . Buf ,
} , nil
}
unmarshal := func ( input protoiface . UnmarshalInput ) ( protoiface . UnmarshalOutput , error ) {
x := input . Message . Interface ( ) . ( * Assertion )
if x == nil {
return protoiface . UnmarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Flags : input . Flags ,
} , nil
}
options := runtime . UnmarshalInputToOptions ( input )
_ = options
dAtA := input . Buf
l := len ( dAtA )
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
wire |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
fieldNum := int32 ( wire >> 3 )
wireType := int ( wire & 0x7 )
if wireType == 4 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: Assertion: wiretype end group for non-group" )
}
if fieldNum <= 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: Assertion: illegal tag %d (wire type %d)" , fieldNum , wire )
}
switch fieldNum {
case 1 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Did" , wireType )
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . Did = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 2 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Controller" , wireType )
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . Controller = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 3 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Subject" , wireType )
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . Subject = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 4 :
if wireType != 2 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field PublicKeyHex" , wireType )
2024-10-15 14:31:19 -04:00
}
2024-11-18 19:04:10 -05:00
var stringLen uint64
2024-10-15 14:31:19 -04:00
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
2024-11-18 19:04:10 -05:00
stringLen |= uint64 ( b & 0x7F ) << shift
2024-10-15 14:31:19 -04:00
if b < 0x80 {
break
}
}
2024-11-18 19:04:10 -05:00
intStringLen := int ( stringLen )
if intStringLen < 0 {
2024-10-15 14:31:19 -04:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
2024-11-18 19:04:10 -05:00
postIndex := iNdEx + intStringLen
2024-10-15 14:31:19 -04:00
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
2024-11-18 19:04:10 -05:00
x . PublicKeyHex = string ( dAtA [ iNdEx : postIndex ] )
2024-10-15 14:31:19 -04:00
iNdEx = postIndex
case 5 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field AssertionType" , wireType )
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . AssertionType = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 6 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Accumulator" , wireType )
}
var msglen int
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
msglen |= int ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + msglen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
if x . Accumulator == nil {
x . Accumulator = make ( map [ string ] [ ] byte )
}
var mapkey string
var mapvalue [ ] byte
for iNdEx < postIndex {
entryPreIndex := iNdEx
var wire uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
wire |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
fieldNum := int32 ( wire >> 3 )
if fieldNum == 1 {
var stringLenmapkey uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLenmapkey |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLenmapkey := int ( stringLenmapkey )
if intStringLenmapkey < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postStringIndexmapkey := iNdEx + intStringLenmapkey
if postStringIndexmapkey < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postStringIndexmapkey > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
mapkey = string ( dAtA [ iNdEx : postStringIndexmapkey ] )
iNdEx = postStringIndexmapkey
} else if fieldNum == 2 {
var mapbyteLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
mapbyteLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intMapbyteLen := int ( mapbyteLen )
if intMapbyteLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postbytesIndex := iNdEx + intMapbyteLen
if postbytesIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postbytesIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
mapvalue = make ( [ ] byte , mapbyteLen )
copy ( mapvalue , dAtA [ iNdEx : postbytesIndex ] )
iNdEx = postbytesIndex
} else {
iNdEx = entryPreIndex
skippy , err := runtime . Skip ( dAtA [ iNdEx : ] )
if err != nil {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , err
}
if ( skippy < 0 ) || ( iNdEx + skippy ) < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if ( iNdEx + skippy ) > postIndex {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
iNdEx += skippy
}
}
x . Accumulator [ mapkey ] = mapvalue
iNdEx = postIndex
case 7 :
if wireType != 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field CreationBlock" , wireType )
}
x . CreationBlock = 0
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
x . CreationBlock |= int64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
default :
iNdEx = preIndex
skippy , err := runtime . Skip ( dAtA [ iNdEx : ] )
if err != nil {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , err
}
if ( skippy < 0 ) || ( iNdEx + skippy ) < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if ( iNdEx + skippy ) > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
if ! options . DiscardUnknown {
x . unknownFields = append ( x . unknownFields , dAtA [ iNdEx : iNdEx + skippy ] ... )
}
iNdEx += skippy
}
}
if iNdEx > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , nil
}
return & protoiface . Methods {
NoUnkeyedLiterals : struct { } { } ,
Flags : protoiface . SupportMarshalDeterministic | protoiface . SupportUnmarshalDiscardUnknown ,
Size : size ,
Marshal : marshal ,
Unmarshal : unmarshal ,
Merge : nil ,
CheckInitialized : nil ,
}
}
2024-09-29 14:40:36 -04:00
var _ protoreflect . Map = ( * _Authentication_6_map ) ( nil )
type _Authentication_6_map struct {
m * map [ string ] string
}
func ( x * _Authentication_6_map ) Len ( ) int {
if x . m == nil {
return 0
}
return len ( * x . m )
}
func ( x * _Authentication_6_map ) Range ( f func ( protoreflect . MapKey , protoreflect . Value ) bool ) {
if x . m == nil {
return
}
for k , v := range * x . m {
mapKey := ( protoreflect . MapKey ) ( protoreflect . ValueOfString ( k ) )
mapValue := protoreflect . ValueOfString ( v )
if ! f ( mapKey , mapValue ) {
break
}
}
}
func ( x * _Authentication_6_map ) Has ( key protoreflect . MapKey ) bool {
if x . m == nil {
return false
}
keyUnwrapped := key . String ( )
concreteValue := keyUnwrapped
_ , ok := ( * x . m ) [ concreteValue ]
return ok
}
func ( x * _Authentication_6_map ) Clear ( key protoreflect . MapKey ) {
if x . m == nil {
return
}
keyUnwrapped := key . String ( )
concreteKey := keyUnwrapped
delete ( * x . m , concreteKey )
}
func ( x * _Authentication_6_map ) Get ( key protoreflect . MapKey ) protoreflect . Value {
if x . m == nil {
return protoreflect . Value { }
}
keyUnwrapped := key . String ( )
concreteKey := keyUnwrapped
v , ok := ( * x . m ) [ concreteKey ]
if ! ok {
return protoreflect . Value { }
}
return protoreflect . ValueOfString ( v )
}
func ( x * _Authentication_6_map ) Set ( key protoreflect . MapKey , value protoreflect . Value ) {
if ! key . IsValid ( ) || ! value . IsValid ( ) {
panic ( "invalid key or value provided" )
}
keyUnwrapped := key . String ( )
concreteKey := keyUnwrapped
valueUnwrapped := value . String ( )
concreteValue := valueUnwrapped
( * x . m ) [ concreteKey ] = concreteValue
}
func ( x * _Authentication_6_map ) Mutable ( key protoreflect . MapKey ) protoreflect . Value {
panic ( "should not call Mutable on protoreflect.Map whose value is not of type protoreflect.Message" )
}
func ( x * _Authentication_6_map ) NewValue ( ) protoreflect . Value {
v := ""
return protoreflect . ValueOfString ( v )
}
func ( x * _Authentication_6_map ) IsValid ( ) bool {
return x . m != nil
}
2024-07-06 03:02:45 -04:00
var (
2024-09-29 14:40:36 -04:00
md_Authentication protoreflect . MessageDescriptor
fd_Authentication_did protoreflect . FieldDescriptor
fd_Authentication_controller protoreflect . FieldDescriptor
fd_Authentication_subject protoreflect . FieldDescriptor
2024-11-18 19:04:10 -05:00
fd_Authentication_public_key_hex protoreflect . FieldDescriptor
2024-09-29 14:40:36 -04:00
fd_Authentication_credential_id protoreflect . FieldDescriptor
fd_Authentication_metadata protoreflect . FieldDescriptor
fd_Authentication_creation_block protoreflect . FieldDescriptor
2024-07-06 03:02:45 -04:00
)
func init ( ) {
file_did_v1_state_proto_init ( )
2024-09-27 20:58:05 -04:00
md_Authentication = File_did_v1_state_proto . Messages ( ) . ByName ( "Authentication" )
fd_Authentication_did = md_Authentication . Fields ( ) . ByName ( "did" )
fd_Authentication_controller = md_Authentication . Fields ( ) . ByName ( "controller" )
fd_Authentication_subject = md_Authentication . Fields ( ) . ByName ( "subject" )
2024-11-18 19:04:10 -05:00
fd_Authentication_public_key_hex = md_Authentication . Fields ( ) . ByName ( "public_key_hex" )
2024-09-29 14:40:36 -04:00
fd_Authentication_credential_id = md_Authentication . Fields ( ) . ByName ( "credential_id" )
fd_Authentication_metadata = md_Authentication . Fields ( ) . ByName ( "metadata" )
fd_Authentication_creation_block = md_Authentication . Fields ( ) . ByName ( "creation_block" )
2024-07-06 03:02:45 -04:00
}
2024-09-27 20:58:05 -04:00
var _ protoreflect . Message = ( * fastReflection_Authentication ) ( nil )
2024-07-06 03:02:45 -04:00
2024-09-27 20:58:05 -04:00
type fastReflection_Authentication Authentication
2024-07-06 03:02:45 -04:00
2024-09-27 20:58:05 -04:00
func ( x * Authentication ) ProtoReflect ( ) protoreflect . Message {
return ( * fastReflection_Authentication ) ( x )
2024-07-06 03:02:45 -04:00
}
2024-09-27 20:58:05 -04:00
func ( x * Authentication ) slowProtoReflect ( ) protoreflect . Message {
2024-10-15 14:31:19 -04:00
mi := & file_did_v1_state_proto_msgTypes [ 1 ]
2024-07-06 03:02:45 -04:00
if protoimpl . UnsafeEnabled && x != nil {
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
if ms . LoadMessageInfo ( ) == nil {
ms . StoreMessageInfo ( mi )
}
return ms
}
return mi . MessageOf ( x )
}
2024-09-27 20:58:05 -04:00
var _fastReflection_Authentication_messageType fastReflection_Authentication_messageType
var _ protoreflect . MessageType = fastReflection_Authentication_messageType { }
2024-07-06 03:02:45 -04:00
2024-09-27 20:58:05 -04:00
type fastReflection_Authentication_messageType struct { }
2024-07-06 03:02:45 -04:00
2024-09-27 20:58:05 -04:00
func ( x fastReflection_Authentication_messageType ) Zero ( ) protoreflect . Message {
return ( * fastReflection_Authentication ) ( nil )
2024-07-06 03:02:45 -04:00
}
2024-09-27 20:58:05 -04:00
func ( x fastReflection_Authentication_messageType ) New ( ) protoreflect . Message {
return new ( fastReflection_Authentication )
2024-07-06 03:02:45 -04:00
}
2024-09-27 20:58:05 -04:00
func ( x fastReflection_Authentication_messageType ) Descriptor ( ) protoreflect . MessageDescriptor {
return md_Authentication
2024-07-06 03:02:45 -04:00
}
// Descriptor returns message descriptor, which contains only the protobuf
// type information for the message.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) Descriptor ( ) protoreflect . MessageDescriptor {
return md_Authentication
2024-07-06 03:02:45 -04:00
}
// Type returns the message type, which encapsulates both Go and protobuf
// type information. If the Go type information is not needed,
// it is recommended that the message descriptor be used instead.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) Type ( ) protoreflect . MessageType {
return _fastReflection_Authentication_messageType
2024-07-06 03:02:45 -04:00
}
// New returns a newly allocated and mutable empty message.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) New ( ) protoreflect . Message {
return new ( fastReflection_Authentication )
2024-07-06 03:02:45 -04:00
}
// Interface unwraps the message reflection interface and
// returns the underlying ProtoMessage interface.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) Interface ( ) protoreflect . ProtoMessage {
return ( * Authentication ) ( x )
2024-07-06 03:02:45 -04:00
}
// Range iterates over every populated field in an undefined order,
// calling f for each field descriptor and value encountered.
// Range returns immediately if f returns false.
// While iterating, mutating operations may only be performed
// on the current field descriptor.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) Range ( f func ( protoreflect . FieldDescriptor , protoreflect . Value ) bool ) {
if x . Did != "" {
value := protoreflect . ValueOfString ( x . Did )
if ! f ( fd_Authentication_did , value ) {
return
}
}
if x . Controller != "" {
value := protoreflect . ValueOfString ( x . Controller )
if ! f ( fd_Authentication_controller , value ) {
2024-07-23 14:18:15 -04:00
return
}
}
2024-09-19 02:04:22 -04:00
if x . Subject != "" {
value := protoreflect . ValueOfString ( x . Subject )
2024-09-27 20:58:05 -04:00
if ! f ( fd_Authentication_subject , value ) {
2024-07-06 03:02:45 -04:00
return
}
}
2024-11-18 19:04:10 -05:00
if x . PublicKeyHex != "" {
value := protoreflect . ValueOfString ( x . PublicKeyHex )
if ! f ( fd_Authentication_public_key_hex , value ) {
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
return
}
}
2024-09-29 14:40:36 -04:00
if len ( x . CredentialId ) != 0 {
value := protoreflect . ValueOfBytes ( x . CredentialId )
if ! f ( fd_Authentication_credential_id , value ) {
return
}
}
if len ( x . Metadata ) != 0 {
value := protoreflect . ValueOfMap ( & _Authentication_6_map { m : & x . Metadata } )
if ! f ( fd_Authentication_metadata , value ) {
return
}
}
if x . CreationBlock != int64 ( 0 ) {
value := protoreflect . ValueOfInt64 ( x . CreationBlock )
if ! f ( fd_Authentication_creation_block , value ) {
return
}
}
2024-07-06 03:02:45 -04:00
}
// Has reports whether a field is populated.
//
// Some fields have the property of nullability where it is possible to
// distinguish between the default value of a field and whether the field
// was explicitly populated with the default value. Singular message fields,
// member fields of a oneof, and proto2 scalar fields are nullable. Such
// fields are populated only if explicitly set.
//
// In other cases (aside from the nullable cases above),
// a proto3 scalar field is populated if it contains a non-zero value, and
// a repeated field is populated if it is non-empty.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) Has ( fd protoreflect . FieldDescriptor ) bool {
2024-07-06 03:02:45 -04:00
switch fd . FullName ( ) {
2024-09-27 20:58:05 -04:00
case "did.v1.Authentication.did" :
return x . Did != ""
case "did.v1.Authentication.controller" :
return x . Controller != ""
case "did.v1.Authentication.subject" :
2024-09-19 02:04:22 -04:00
return x . Subject != ""
2024-11-18 19:04:10 -05:00
case "did.v1.Authentication.public_key_hex" :
return x . PublicKeyHex != ""
2024-09-29 14:40:36 -04:00
case "did.v1.Authentication.credential_id" :
return len ( x . CredentialId ) != 0
case "did.v1.Authentication.metadata" :
return len ( x . Metadata ) != 0
case "did.v1.Authentication.creation_block" :
return x . CreationBlock != int64 ( 0 )
2024-07-06 03:02:45 -04:00
default :
if fd . IsExtension ( ) {
2024-09-27 20:58:05 -04:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Authentication" ) )
2024-07-06 03:02:45 -04:00
}
2024-09-27 20:58:05 -04:00
panic ( fmt . Errorf ( "message did.v1.Authentication does not contain field %s" , fd . FullName ( ) ) )
2024-07-06 03:02:45 -04:00
}
}
// Clear clears the field such that a subsequent Has call reports false.
//
// Clearing an extension field clears both the extension type and value
// associated with the given field number.
//
// Clear is a mutating operation and unsafe for concurrent use.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) Clear ( fd protoreflect . FieldDescriptor ) {
2024-07-06 03:02:45 -04:00
switch fd . FullName ( ) {
2024-09-27 20:58:05 -04:00
case "did.v1.Authentication.did" :
x . Did = ""
case "did.v1.Authentication.controller" :
x . Controller = ""
case "did.v1.Authentication.subject" :
2024-09-19 02:04:22 -04:00
x . Subject = ""
2024-11-18 19:04:10 -05:00
case "did.v1.Authentication.public_key_hex" :
x . PublicKeyHex = ""
2024-09-29 14:40:36 -04:00
case "did.v1.Authentication.credential_id" :
x . CredentialId = nil
case "did.v1.Authentication.metadata" :
x . Metadata = nil
case "did.v1.Authentication.creation_block" :
x . CreationBlock = int64 ( 0 )
2024-07-06 03:02:45 -04:00
default :
if fd . IsExtension ( ) {
2024-09-27 20:58:05 -04:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Authentication" ) )
2024-07-06 03:02:45 -04:00
}
2024-09-27 20:58:05 -04:00
panic ( fmt . Errorf ( "message did.v1.Authentication does not contain field %s" , fd . FullName ( ) ) )
2024-07-06 03:02:45 -04:00
}
}
// Get retrieves the value for a field.
//
// For unpopulated scalars, it returns the default value, where
// the default value of a bytes scalar is guaranteed to be a copy.
// For unpopulated composite types, it returns an empty, read-only view
// of the value; to obtain a mutable reference, use Mutable.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) Get ( descriptor protoreflect . FieldDescriptor ) protoreflect . Value {
2024-07-06 03:02:45 -04:00
switch descriptor . FullName ( ) {
2024-09-27 20:58:05 -04:00
case "did.v1.Authentication.did" :
value := x . Did
2024-07-06 03:02:45 -04:00
return protoreflect . ValueOfString ( value )
2024-09-27 20:58:05 -04:00
case "did.v1.Authentication.controller" :
value := x . Controller
2024-09-14 14:59:10 -04:00
return protoreflect . ValueOfString ( value )
2024-09-27 20:58:05 -04:00
case "did.v1.Authentication.subject" :
value := x . Subject
2024-09-14 14:59:10 -04:00
return protoreflect . ValueOfString ( value )
2024-11-18 19:04:10 -05:00
case "did.v1.Authentication.public_key_hex" :
value := x . PublicKeyHex
return protoreflect . ValueOfString ( value )
2024-09-29 14:40:36 -04:00
case "did.v1.Authentication.credential_id" :
value := x . CredentialId
return protoreflect . ValueOfBytes ( value )
case "did.v1.Authentication.metadata" :
if len ( x . Metadata ) == 0 {
return protoreflect . ValueOfMap ( & _Authentication_6_map { } )
}
mapValue := & _Authentication_6_map { m : & x . Metadata }
return protoreflect . ValueOfMap ( mapValue )
case "did.v1.Authentication.creation_block" :
value := x . CreationBlock
return protoreflect . ValueOfInt64 ( value )
2024-07-06 03:02:45 -04:00
default :
if descriptor . IsExtension ( ) {
2024-09-27 20:58:05 -04:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Authentication" ) )
2024-07-06 03:02:45 -04:00
}
2024-09-27 20:58:05 -04:00
panic ( fmt . Errorf ( "message did.v1.Authentication does not contain field %s" , descriptor . FullName ( ) ) )
2024-07-06 03:02:45 -04:00
}
}
// Set stores the value for a field.
//
// For a field belonging to a oneof, it implicitly clears any other field
// that may be currently set within the same oneof.
// For extension fields, it implicitly stores the provided ExtensionType.
// When setting a composite type, it is unspecified whether the stored value
// aliases the source's memory in any way. If the composite value is an
// empty, read-only value, then it panics.
//
// Set is a mutating operation and unsafe for concurrent use.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) Set ( fd protoreflect . FieldDescriptor , value protoreflect . Value ) {
2024-07-06 03:02:45 -04:00
switch fd . FullName ( ) {
2024-09-27 20:58:05 -04:00
case "did.v1.Authentication.did" :
x . Did = value . Interface ( ) . ( string )
case "did.v1.Authentication.controller" :
x . Controller = value . Interface ( ) . ( string )
case "did.v1.Authentication.subject" :
2024-09-19 02:04:22 -04:00
x . Subject = value . Interface ( ) . ( string )
2024-11-18 19:04:10 -05:00
case "did.v1.Authentication.public_key_hex" :
x . PublicKeyHex = value . Interface ( ) . ( string )
2024-09-29 14:40:36 -04:00
case "did.v1.Authentication.credential_id" :
x . CredentialId = value . Bytes ( )
case "did.v1.Authentication.metadata" :
mv := value . Map ( )
cmv := mv . ( * _Authentication_6_map )
x . Metadata = * cmv . m
case "did.v1.Authentication.creation_block" :
x . CreationBlock = value . Int ( )
2024-07-06 03:02:45 -04:00
default :
if fd . IsExtension ( ) {
2024-09-27 20:58:05 -04:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Authentication" ) )
2024-07-06 03:02:45 -04:00
}
2024-09-27 20:58:05 -04:00
panic ( fmt . Errorf ( "message did.v1.Authentication does not contain field %s" , fd . FullName ( ) ) )
2024-07-06 03:02:45 -04:00
}
}
// Mutable returns a mutable reference to a composite type.
//
// If the field is unpopulated, it may allocate a composite value.
// For a field belonging to a oneof, it implicitly clears any other field
// that may be currently set within the same oneof.
// For extension fields, it implicitly stores the provided ExtensionType
// if not already stored.
// It panics if the field does not contain a composite type.
//
// Mutable is a mutating operation and unsafe for concurrent use.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) Mutable ( fd protoreflect . FieldDescriptor ) protoreflect . Value {
2024-07-06 03:02:45 -04:00
switch fd . FullName ( ) {
2024-09-29 14:40:36 -04:00
case "did.v1.Authentication.metadata" :
if x . Metadata == nil {
x . Metadata = make ( map [ string ] string )
}
value := & _Authentication_6_map { m : & x . Metadata }
return protoreflect . ValueOfMap ( value )
2024-09-27 20:58:05 -04:00
case "did.v1.Authentication.did" :
panic ( fmt . Errorf ( "field did of message did.v1.Authentication is not mutable" ) )
case "did.v1.Authentication.controller" :
panic ( fmt . Errorf ( "field controller of message did.v1.Authentication is not mutable" ) )
case "did.v1.Authentication.subject" :
panic ( fmt . Errorf ( "field subject of message did.v1.Authentication is not mutable" ) )
2024-11-18 19:04:10 -05:00
case "did.v1.Authentication.public_key_hex" :
panic ( fmt . Errorf ( "field public_key_hex of message did.v1.Authentication is not mutable" ) )
2024-09-29 14:40:36 -04:00
case "did.v1.Authentication.credential_id" :
panic ( fmt . Errorf ( "field credential_id of message did.v1.Authentication is not mutable" ) )
case "did.v1.Authentication.creation_block" :
panic ( fmt . Errorf ( "field creation_block of message did.v1.Authentication is not mutable" ) )
2024-07-06 03:02:45 -04:00
default :
if fd . IsExtension ( ) {
2024-09-27 20:58:05 -04:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Authentication" ) )
2024-07-06 03:02:45 -04:00
}
2024-09-27 20:58:05 -04:00
panic ( fmt . Errorf ( "message did.v1.Authentication does not contain field %s" , fd . FullName ( ) ) )
2024-07-06 03:02:45 -04:00
}
}
// NewField returns a new value that is assignable to the field
// for the given descriptor. For scalars, this returns the default value.
// For lists, maps, and messages, this returns a new, empty, mutable value.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) NewField ( fd protoreflect . FieldDescriptor ) protoreflect . Value {
2024-07-06 03:02:45 -04:00
switch fd . FullName ( ) {
2024-09-27 20:58:05 -04:00
case "did.v1.Authentication.did" :
2024-07-06 03:02:45 -04:00
return protoreflect . ValueOfString ( "" )
2024-09-27 20:58:05 -04:00
case "did.v1.Authentication.controller" :
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
return protoreflect . ValueOfString ( "" )
2024-09-27 20:58:05 -04:00
case "did.v1.Authentication.subject" :
2024-09-14 14:59:10 -04:00
return protoreflect . ValueOfString ( "" )
2024-11-18 19:04:10 -05:00
case "did.v1.Authentication.public_key_hex" :
return protoreflect . ValueOfString ( "" )
2024-09-29 14:40:36 -04:00
case "did.v1.Authentication.credential_id" :
return protoreflect . ValueOfBytes ( nil )
case "did.v1.Authentication.metadata" :
m := make ( map [ string ] string )
return protoreflect . ValueOfMap ( & _Authentication_6_map { m : & m } )
case "did.v1.Authentication.creation_block" :
return protoreflect . ValueOfInt64 ( int64 ( 0 ) )
2024-07-06 03:02:45 -04:00
default :
if fd . IsExtension ( ) {
2024-09-27 20:58:05 -04:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Authentication" ) )
2024-07-06 03:02:45 -04:00
}
2024-09-27 20:58:05 -04:00
panic ( fmt . Errorf ( "message did.v1.Authentication does not contain field %s" , fd . FullName ( ) ) )
2024-07-06 03:02:45 -04:00
}
}
// WhichOneof reports which field within the oneof is populated,
// returning nil if none are populated.
// It panics if the oneof descriptor does not belong to this message.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) WhichOneof ( d protoreflect . OneofDescriptor ) protoreflect . FieldDescriptor {
2024-07-06 03:02:45 -04:00
switch d . FullName ( ) {
default :
2024-09-27 20:58:05 -04:00
panic ( fmt . Errorf ( "%s is not a oneof field in did.v1.Authentication" , d . FullName ( ) ) )
2024-07-06 03:02:45 -04:00
}
panic ( "unreachable" )
}
// GetUnknown retrieves the entire list of unknown fields.
// The caller may only mutate the contents of the RawFields
// if the mutated bytes are stored back into the message with SetUnknown.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) GetUnknown ( ) protoreflect . RawFields {
2024-07-06 03:02:45 -04:00
return x . unknownFields
}
// SetUnknown stores an entire list of unknown fields.
// The raw fields must be syntactically valid according to the wire format.
// An implementation may panic if this is not the case.
// Once stored, the caller must not mutate the content of the RawFields.
// An empty RawFields may be passed to clear the fields.
//
// SetUnknown is a mutating operation and unsafe for concurrent use.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) SetUnknown ( fields protoreflect . RawFields ) {
2024-07-06 03:02:45 -04:00
x . unknownFields = fields
}
// IsValid reports whether the message is valid.
//
// An invalid message is an empty, read-only value.
//
// An invalid message often corresponds to a nil pointer of the concrete
// message type, but the details are implementation dependent.
// Validity is not part of the protobuf data model, and may not
// be preserved in marshaling or other operations.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) IsValid ( ) bool {
2024-07-06 03:02:45 -04:00
return x != nil
}
// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
// This method may return nil.
//
// The returned methods type is identical to
// "google.golang.org/protobuf/runtime/protoiface".Methods.
// Consult the protoiface package documentation for details.
2024-09-27 20:58:05 -04:00
func ( x * fastReflection_Authentication ) ProtoMethods ( ) * protoiface . Methods {
2024-07-06 03:02:45 -04:00
size := func ( input protoiface . SizeInput ) protoiface . SizeOutput {
2024-09-27 20:58:05 -04:00
x := input . Message . Interface ( ) . ( * Authentication )
2024-07-06 03:02:45 -04:00
if x == nil {
return protoiface . SizeOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Size : 0 ,
}
}
options := runtime . SizeInputToOptions ( input )
_ = options
var n int
var l int
_ = l
2024-09-27 20:58:05 -04:00
l = len ( x . Did )
2024-07-06 03:02:45 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-09-27 20:58:05 -04:00
l = len ( x . Controller )
2024-07-06 03:02:45 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-09-27 20:58:05 -04:00
l = len ( x . Subject )
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-11-18 19:04:10 -05:00
l = len ( x . PublicKeyHex )
if l > 0 {
2024-09-27 20:58:05 -04:00
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-09-29 14:40:36 -04:00
l = len ( x . CredentialId )
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
if len ( x . Metadata ) > 0 {
SiZeMaP := func ( k string , v string ) {
mapEntrySize := 1 + len ( k ) + runtime . Sov ( uint64 ( len ( k ) ) ) + 1 + len ( v ) + runtime . Sov ( uint64 ( len ( v ) ) )
n += mapEntrySize + 1 + runtime . Sov ( uint64 ( mapEntrySize ) )
}
if options . Deterministic {
sortme := make ( [ ] string , 0 , len ( x . Metadata ) )
for k := range x . Metadata {
sortme = append ( sortme , k )
}
sort . Strings ( sortme )
for _ , k := range sortme {
v := x . Metadata [ k ]
SiZeMaP ( k , v )
}
} else {
for k , v := range x . Metadata {
SiZeMaP ( k , v )
}
}
}
if x . CreationBlock != 0 {
n += 1 + runtime . Sov ( uint64 ( x . CreationBlock ) )
}
2024-07-06 03:02:45 -04:00
if x . unknownFields != nil {
n += len ( x . unknownFields )
}
return protoiface . SizeOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Size : n ,
}
}
marshal := func ( input protoiface . MarshalInput ) ( protoiface . MarshalOutput , error ) {
2024-09-27 20:58:05 -04:00
x := input . Message . Interface ( ) . ( * Authentication )
2024-07-06 03:02:45 -04:00
if x == nil {
return protoiface . MarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Buf : input . Buf ,
} , nil
}
options := runtime . MarshalInputToOptions ( input )
_ = options
size := options . Size ( x )
dAtA := make ( [ ] byte , size )
i := len ( dAtA )
_ = i
var l int
_ = l
if x . unknownFields != nil {
i -= len ( x . unknownFields )
copy ( dAtA [ i : ] , x . unknownFields )
}
2024-09-29 14:40:36 -04:00
if x . CreationBlock != 0 {
i = runtime . EncodeVarint ( dAtA , i , uint64 ( x . CreationBlock ) )
i --
dAtA [ i ] = 0x38
}
if len ( x . Metadata ) > 0 {
MaRsHaLmAp := func ( k string , v string ) ( protoiface . MarshalOutput , error ) {
baseI := i
i -= len ( v )
copy ( dAtA [ i : ] , v )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( v ) ) )
i --
dAtA [ i ] = 0x12
i -= len ( k )
copy ( dAtA [ i : ] , k )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( k ) ) )
i --
dAtA [ i ] = 0xa
i = runtime . EncodeVarint ( dAtA , i , uint64 ( baseI - i ) )
i --
dAtA [ i ] = 0x32
return protoiface . MarshalOutput { } , nil
}
if options . Deterministic {
keysForMetadata := make ( [ ] string , 0 , len ( x . Metadata ) )
for k := range x . Metadata {
keysForMetadata = append ( keysForMetadata , string ( k ) )
}
sort . Slice ( keysForMetadata , func ( i , j int ) bool {
return keysForMetadata [ i ] < keysForMetadata [ j ]
} )
for iNdEx := len ( keysForMetadata ) - 1 ; iNdEx >= 0 ; iNdEx -- {
v := x . Metadata [ string ( keysForMetadata [ iNdEx ] ) ]
out , err := MaRsHaLmAp ( keysForMetadata [ iNdEx ] , v )
if err != nil {
return out , err
}
}
} else {
for k := range x . Metadata {
v := x . Metadata [ k ]
out , err := MaRsHaLmAp ( k , v )
if err != nil {
return out , err
}
}
}
}
if len ( x . CredentialId ) > 0 {
i -= len ( x . CredentialId )
copy ( dAtA [ i : ] , x . CredentialId )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . CredentialId ) ) )
i --
dAtA [ i ] = 0x2a
}
2024-11-18 19:04:10 -05:00
if len ( x . PublicKeyHex ) > 0 {
i -= len ( x . PublicKeyHex )
copy ( dAtA [ i : ] , x . PublicKeyHex )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . PublicKeyHex ) ) )
2024-07-06 03:02:45 -04:00
i --
2024-09-27 20:58:05 -04:00
dAtA [ i ] = 0x22
2024-07-23 14:18:15 -04:00
}
2024-09-19 02:04:22 -04:00
if len ( x . Subject ) > 0 {
i -= len ( x . Subject )
copy ( dAtA [ i : ] , x . Subject )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Subject ) ) )
2024-07-23 14:18:15 -04:00
i --
2024-09-27 20:58:05 -04:00
dAtA [ i ] = 0x1a
}
if len ( x . Controller ) > 0 {
i -= len ( x . Controller )
copy ( dAtA [ i : ] , x . Controller )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Controller ) ) )
i --
2024-07-06 03:02:45 -04:00
dAtA [ i ] = 0x12
}
2024-09-27 20:58:05 -04:00
if len ( x . Did ) > 0 {
i -= len ( x . Did )
copy ( dAtA [ i : ] , x . Did )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Did ) ) )
2024-07-06 03:02:45 -04:00
i --
dAtA [ i ] = 0xa
}
if input . Buf != nil {
input . Buf = append ( input . Buf , dAtA ... )
} else {
input . Buf = dAtA
}
return protoiface . MarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Buf : input . Buf ,
} , nil
}
unmarshal := func ( input protoiface . UnmarshalInput ) ( protoiface . UnmarshalOutput , error ) {
2024-09-27 20:58:05 -04:00
x := input . Message . Interface ( ) . ( * Authentication )
2024-07-06 03:02:45 -04:00
if x == nil {
return protoiface . UnmarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Flags : input . Flags ,
} , nil
}
options := runtime . UnmarshalInputToOptions ( input )
_ = options
dAtA := input . Buf
l := len ( dAtA )
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
wire |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
fieldNum := int32 ( wire >> 3 )
wireType := int ( wire & 0x7 )
if wireType == 4 {
2024-09-27 20:58:05 -04:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: Authentication: wiretype end group for non-group" )
2024-07-06 03:02:45 -04:00
}
if fieldNum <= 0 {
2024-09-27 20:58:05 -04:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: Authentication: illegal tag %d (wire type %d)" , fieldNum , wire )
2024-07-06 03:02:45 -04:00
}
switch fieldNum {
case 1 :
if wireType != 2 {
2024-09-27 20:58:05 -04:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Did" , wireType )
2024-07-06 03:02:45 -04:00
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
2024-09-27 20:58:05 -04:00
x . Did = string ( dAtA [ iNdEx : postIndex ] )
2024-07-06 03:02:45 -04:00
iNdEx = postIndex
case 2 :
2024-07-23 14:18:15 -04:00
if wireType != 2 {
2024-09-27 20:58:05 -04:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Controller" , wireType )
2024-07-23 14:18:15 -04:00
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
2024-09-27 20:58:05 -04:00
x . Controller = string ( dAtA [ iNdEx : postIndex ] )
2024-07-23 14:18:15 -04:00
iNdEx = postIndex
case 3 :
2024-07-06 03:02:45 -04:00
if wireType != 2 {
2024-09-27 20:58:05 -04:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Subject" , wireType )
2024-07-06 03:02:45 -04:00
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
2024-09-27 20:58:05 -04:00
x . Subject = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 4 :
if wireType != 2 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field PublicKeyHex" , wireType )
2024-09-27 20:58:05 -04:00
}
2024-11-18 19:04:10 -05:00
var stringLen uint64
2024-09-27 20:58:05 -04:00
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
2024-11-18 19:04:10 -05:00
stringLen |= uint64 ( b & 0x7F ) << shift
2024-09-27 20:58:05 -04:00
if b < 0x80 {
break
}
}
2024-11-18 19:04:10 -05:00
intStringLen := int ( stringLen )
if intStringLen < 0 {
2024-09-27 20:58:05 -04:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
2024-11-18 19:04:10 -05:00
postIndex := iNdEx + intStringLen
2024-09-27 20:58:05 -04:00
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
2024-11-18 19:04:10 -05:00
x . PublicKeyHex = string ( dAtA [ iNdEx : postIndex ] )
2024-07-06 03:02:45 -04:00
iNdEx = postIndex
2024-09-29 14:40:36 -04:00
case 5 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field CredentialId" , wireType )
}
var byteLen int
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
byteLen |= int ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
if byteLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + byteLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . CredentialId = append ( x . CredentialId [ : 0 ] , dAtA [ iNdEx : postIndex ] ... )
if x . CredentialId == nil {
x . CredentialId = [ ] byte { }
}
iNdEx = postIndex
case 6 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Metadata" , wireType )
}
var msglen int
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
msglen |= int ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + msglen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
if x . Metadata == nil {
x . Metadata = make ( map [ string ] string )
}
var mapkey string
var mapvalue string
for iNdEx < postIndex {
entryPreIndex := iNdEx
var wire uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
wire |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
fieldNum := int32 ( wire >> 3 )
if fieldNum == 1 {
var stringLenmapkey uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLenmapkey |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLenmapkey := int ( stringLenmapkey )
if intStringLenmapkey < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postStringIndexmapkey := iNdEx + intStringLenmapkey
if postStringIndexmapkey < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postStringIndexmapkey > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
mapkey = string ( dAtA [ iNdEx : postStringIndexmapkey ] )
iNdEx = postStringIndexmapkey
} else if fieldNum == 2 {
var stringLenmapvalue uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLenmapvalue |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLenmapvalue := int ( stringLenmapvalue )
if intStringLenmapvalue < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postStringIndexmapvalue := iNdEx + intStringLenmapvalue
if postStringIndexmapvalue < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postStringIndexmapvalue > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
mapvalue = string ( dAtA [ iNdEx : postStringIndexmapvalue ] )
iNdEx = postStringIndexmapvalue
} else {
iNdEx = entryPreIndex
skippy , err := runtime . Skip ( dAtA [ iNdEx : ] )
if err != nil {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , err
}
if ( skippy < 0 ) || ( iNdEx + skippy ) < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if ( iNdEx + skippy ) > postIndex {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
iNdEx += skippy
}
}
x . Metadata [ mapkey ] = mapvalue
iNdEx = postIndex
case 7 :
if wireType != 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field CreationBlock" , wireType )
}
x . CreationBlock = 0
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
x . CreationBlock |= int64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
2024-07-06 03:02:45 -04:00
default :
iNdEx = preIndex
skippy , err := runtime . Skip ( dAtA [ iNdEx : ] )
if err != nil {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , err
}
if ( skippy < 0 ) || ( iNdEx + skippy ) < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if ( iNdEx + skippy ) > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
if ! options . DiscardUnknown {
x . unknownFields = append ( x . unknownFields , dAtA [ iNdEx : iNdEx + skippy ] ... )
}
iNdEx += skippy
}
}
if iNdEx > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , nil
}
return & protoiface . Methods {
NoUnkeyedLiterals : struct { } { } ,
Flags : protoiface . SupportMarshalDeterministic | protoiface . SupportUnmarshalDiscardUnknown ,
Size : size ,
Marshal : marshal ,
Unmarshal : unmarshal ,
Merge : nil ,
CheckInitialized : nil ,
}
}
2024-07-05 22:20:13 -04:00
var (
2024-11-18 19:04:10 -05:00
md_Biscuit protoreflect . MessageDescriptor
fd_Biscuit_id protoreflect . FieldDescriptor
fd_Biscuit_controller protoreflect . FieldDescriptor
fd_Biscuit_subject protoreflect . FieldDescriptor
fd_Biscuit_origin protoreflect . FieldDescriptor
fd_Biscuit_expiry_height protoreflect . FieldDescriptor
fd_Biscuit_macaroon protoreflect . FieldDescriptor
2024-07-05 22:20:13 -04:00
)
func init ( ) {
file_did_v1_state_proto_init ( )
2024-11-18 19:04:10 -05:00
md_Biscuit = File_did_v1_state_proto . Messages ( ) . ByName ( "Biscuit" )
fd_Biscuit_id = md_Biscuit . Fields ( ) . ByName ( "id" )
fd_Biscuit_controller = md_Biscuit . Fields ( ) . ByName ( "controller" )
fd_Biscuit_subject = md_Biscuit . Fields ( ) . ByName ( "subject" )
fd_Biscuit_origin = md_Biscuit . Fields ( ) . ByName ( "origin" )
fd_Biscuit_expiry_height = md_Biscuit . Fields ( ) . ByName ( "expiry_height" )
fd_Biscuit_macaroon = md_Biscuit . Fields ( ) . ByName ( "macaroon" )
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
var _ protoreflect . Message = ( * fastReflection_Biscuit ) ( nil )
2024-07-05 22:20:13 -04:00
2024-11-18 19:04:10 -05:00
type fastReflection_Biscuit Biscuit
2024-07-05 22:20:13 -04:00
2024-11-18 19:04:10 -05:00
func ( x * Biscuit ) ProtoReflect ( ) protoreflect . Message {
return ( * fastReflection_Biscuit ) ( x )
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
func ( x * Biscuit ) slowProtoReflect ( ) protoreflect . Message {
2024-10-15 14:31:19 -04:00
mi := & file_did_v1_state_proto_msgTypes [ 2 ]
2024-07-05 22:20:13 -04:00
if protoimpl . UnsafeEnabled && x != nil {
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
if ms . LoadMessageInfo ( ) == nil {
ms . StoreMessageInfo ( mi )
}
return ms
}
return mi . MessageOf ( x )
}
2024-11-18 19:04:10 -05:00
var _fastReflection_Biscuit_messageType fastReflection_Biscuit_messageType
var _ protoreflect . MessageType = fastReflection_Biscuit_messageType { }
2024-07-05 22:20:13 -04:00
2024-11-18 19:04:10 -05:00
type fastReflection_Biscuit_messageType struct { }
2024-07-05 22:20:13 -04:00
2024-11-18 19:04:10 -05:00
func ( x fastReflection_Biscuit_messageType ) Zero ( ) protoreflect . Message {
return ( * fastReflection_Biscuit ) ( nil )
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
func ( x fastReflection_Biscuit_messageType ) New ( ) protoreflect . Message {
return new ( fastReflection_Biscuit )
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
func ( x fastReflection_Biscuit_messageType ) Descriptor ( ) protoreflect . MessageDescriptor {
return md_Biscuit
2024-07-05 22:20:13 -04:00
}
// Descriptor returns message descriptor, which contains only the protobuf
// type information for the message.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) Descriptor ( ) protoreflect . MessageDescriptor {
return md_Biscuit
2024-07-05 22:20:13 -04:00
}
// Type returns the message type, which encapsulates both Go and protobuf
// type information. If the Go type information is not needed,
// it is recommended that the message descriptor be used instead.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) Type ( ) protoreflect . MessageType {
return _fastReflection_Biscuit_messageType
2024-07-05 22:20:13 -04:00
}
// New returns a newly allocated and mutable empty message.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) New ( ) protoreflect . Message {
return new ( fastReflection_Biscuit )
2024-07-05 22:20:13 -04:00
}
// Interface unwraps the message reflection interface and
// returns the underlying ProtoMessage interface.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) Interface ( ) protoreflect . ProtoMessage {
return ( * Biscuit ) ( x )
2024-07-05 22:20:13 -04:00
}
// Range iterates over every populated field in an undefined order,
// calling f for each field descriptor and value encountered.
// Range returns immediately if f returns false.
// While iterating, mutating operations may only be performed
// on the current field descriptor.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) Range ( f func ( protoreflect . FieldDescriptor , protoreflect . Value ) bool ) {
if x . Id != uint64 ( 0 ) {
value := protoreflect . ValueOfUint64 ( x . Id )
if ! f ( fd_Biscuit_id , value ) {
2024-09-19 02:04:22 -04:00
return
}
}
2024-11-18 19:04:10 -05:00
if x . Controller != "" {
value := protoreflect . ValueOfString ( x . Controller )
if ! f ( fd_Biscuit_controller , value ) {
2024-07-05 22:20:13 -04:00
return
}
}
2024-11-18 19:04:10 -05:00
if x . Subject != "" {
value := protoreflect . ValueOfString ( x . Subject )
if ! f ( fd_Biscuit_subject , value ) {
2024-08-31 16:54:16 -04:00
return
}
}
2024-11-18 19:04:10 -05:00
if x . Origin != "" {
value := protoreflect . ValueOfString ( x . Origin )
if ! f ( fd_Biscuit_origin , value ) {
2024-07-05 22:20:13 -04:00
return
}
}
2024-11-18 19:04:10 -05:00
if x . ExpiryHeight != int64 ( 0 ) {
value := protoreflect . ValueOfInt64 ( x . ExpiryHeight )
if ! f ( fd_Biscuit_expiry_height , value ) {
2024-09-29 14:40:36 -04:00
return
}
}
2024-11-18 19:04:10 -05:00
if x . Macaroon != "" {
value := protoreflect . ValueOfString ( x . Macaroon )
if ! f ( fd_Biscuit_macaroon , value ) {
2024-09-18 17:27:30 -04:00
return
}
}
2024-07-05 22:20:13 -04:00
}
// Has reports whether a field is populated.
//
// Some fields have the property of nullability where it is possible to
// distinguish between the default value of a field and whether the field
// was explicitly populated with the default value. Singular message fields,
// member fields of a oneof, and proto2 scalar fields are nullable. Such
// fields are populated only if explicitly set.
//
// In other cases (aside from the nullable cases above),
// a proto3 scalar field is populated if it contains a non-zero value, and
// a repeated field is populated if it is non-empty.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) Has ( fd protoreflect . FieldDescriptor ) bool {
2024-07-05 22:20:13 -04:00
switch fd . FullName ( ) {
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.id" :
return x . Id != uint64 ( 0 )
case "did.v1.Biscuit.controller" :
return x . Controller != ""
case "did.v1.Biscuit.subject" :
return x . Subject != ""
case "did.v1.Biscuit.origin" :
return x . Origin != ""
case "did.v1.Biscuit.expiry_height" :
return x . ExpiryHeight != int64 ( 0 )
case "did.v1.Biscuit.macaroon" :
return x . Macaroon != ""
2024-07-05 22:20:13 -04:00
default :
if fd . IsExtension ( ) {
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Biscuit" ) )
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "message did.v1.Biscuit does not contain field %s" , fd . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
}
// Clear clears the field such that a subsequent Has call reports false.
//
// Clearing an extension field clears both the extension type and value
// associated with the given field number.
//
// Clear is a mutating operation and unsafe for concurrent use.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) Clear ( fd protoreflect . FieldDescriptor ) {
2024-07-05 22:20:13 -04:00
switch fd . FullName ( ) {
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.id" :
x . Id = uint64 ( 0 )
case "did.v1.Biscuit.controller" :
x . Controller = ""
case "did.v1.Biscuit.subject" :
x . Subject = ""
case "did.v1.Biscuit.origin" :
x . Origin = ""
case "did.v1.Biscuit.expiry_height" :
x . ExpiryHeight = int64 ( 0 )
case "did.v1.Biscuit.macaroon" :
x . Macaroon = ""
2024-07-05 22:20:13 -04:00
default :
if fd . IsExtension ( ) {
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Biscuit" ) )
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "message did.v1.Biscuit does not contain field %s" , fd . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
}
// Get retrieves the value for a field.
//
// For unpopulated scalars, it returns the default value, where
// the default value of a bytes scalar is guaranteed to be a copy.
// For unpopulated composite types, it returns an empty, read-only view
// of the value; to obtain a mutable reference, use Mutable.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) Get ( descriptor protoreflect . FieldDescriptor ) protoreflect . Value {
2024-07-05 22:20:13 -04:00
switch descriptor . FullName ( ) {
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.id" :
value := x . Id
2024-09-25 19:45:28 -04:00
return protoreflect . ValueOfUint64 ( value )
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.controller" :
value := x . Controller
2024-09-19 02:04:22 -04:00
return protoreflect . ValueOfString ( value )
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.subject" :
value := x . Subject
2024-07-05 22:20:13 -04:00
return protoreflect . ValueOfString ( value )
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.origin" :
value := x . Origin
2024-09-18 17:27:30 -04:00
return protoreflect . ValueOfString ( value )
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.expiry_height" :
value := x . ExpiryHeight
2024-09-29 14:40:36 -04:00
return protoreflect . ValueOfInt64 ( value )
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.macaroon" :
value := x . Macaroon
return protoreflect . ValueOfString ( value )
2024-07-05 22:20:13 -04:00
default :
if descriptor . IsExtension ( ) {
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Biscuit" ) )
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "message did.v1.Biscuit does not contain field %s" , descriptor . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
}
// Set stores the value for a field.
//
// For a field belonging to a oneof, it implicitly clears any other field
// that may be currently set within the same oneof.
// For extension fields, it implicitly stores the provided ExtensionType.
// When setting a composite type, it is unspecified whether the stored value
// aliases the source's memory in any way. If the composite value is an
// empty, read-only value, then it panics.
//
// Set is a mutating operation and unsafe for concurrent use.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) Set ( fd protoreflect . FieldDescriptor , value protoreflect . Value ) {
2024-07-05 22:20:13 -04:00
switch fd . FullName ( ) {
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.id" :
x . Id = value . Uint ( )
case "did.v1.Biscuit.controller" :
x . Controller = value . Interface ( ) . ( string )
case "did.v1.Biscuit.subject" :
x . Subject = value . Interface ( ) . ( string )
case "did.v1.Biscuit.origin" :
x . Origin = value . Interface ( ) . ( string )
case "did.v1.Biscuit.expiry_height" :
x . ExpiryHeight = value . Int ( )
case "did.v1.Biscuit.macaroon" :
x . Macaroon = value . Interface ( ) . ( string )
2024-07-05 22:20:13 -04:00
default :
if fd . IsExtension ( ) {
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Biscuit" ) )
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "message did.v1.Biscuit does not contain field %s" , fd . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
}
// Mutable returns a mutable reference to a composite type.
//
// If the field is unpopulated, it may allocate a composite value.
// For a field belonging to a oneof, it implicitly clears any other field
// that may be currently set within the same oneof.
// For extension fields, it implicitly stores the provided ExtensionType
// if not already stored.
// It panics if the field does not contain a composite type.
//
// Mutable is a mutating operation and unsafe for concurrent use.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) Mutable ( fd protoreflect . FieldDescriptor ) protoreflect . Value {
2024-07-05 22:20:13 -04:00
switch fd . FullName ( ) {
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.id" :
panic ( fmt . Errorf ( "field id of message did.v1.Biscuit is not mutable" ) )
case "did.v1.Biscuit.controller" :
panic ( fmt . Errorf ( "field controller of message did.v1.Biscuit is not mutable" ) )
case "did.v1.Biscuit.subject" :
panic ( fmt . Errorf ( "field subject of message did.v1.Biscuit is not mutable" ) )
case "did.v1.Biscuit.origin" :
panic ( fmt . Errorf ( "field origin of message did.v1.Biscuit is not mutable" ) )
case "did.v1.Biscuit.expiry_height" :
panic ( fmt . Errorf ( "field expiry_height of message did.v1.Biscuit is not mutable" ) )
case "did.v1.Biscuit.macaroon" :
panic ( fmt . Errorf ( "field macaroon of message did.v1.Biscuit is not mutable" ) )
2024-07-05 22:20:13 -04:00
default :
if fd . IsExtension ( ) {
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Biscuit" ) )
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "message did.v1.Biscuit does not contain field %s" , fd . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
}
// NewField returns a new value that is assignable to the field
// for the given descriptor. For scalars, this returns the default value.
// For lists, maps, and messages, this returns a new, empty, mutable value.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) NewField ( fd protoreflect . FieldDescriptor ) protoreflect . Value {
2024-07-05 22:20:13 -04:00
switch fd . FullName ( ) {
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.id" :
2024-09-25 19:45:28 -04:00
return protoreflect . ValueOfUint64 ( uint64 ( 0 ) )
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.controller" :
2024-09-19 02:04:22 -04:00
return protoreflect . ValueOfString ( "" )
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.subject" :
2024-07-05 22:20:13 -04:00
return protoreflect . ValueOfString ( "" )
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.origin" :
2024-09-18 17:27:30 -04:00
return protoreflect . ValueOfString ( "" )
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.expiry_height" :
2024-09-29 14:40:36 -04:00
return protoreflect . ValueOfInt64 ( int64 ( 0 ) )
2024-11-18 19:04:10 -05:00
case "did.v1.Biscuit.macaroon" :
return protoreflect . ValueOfString ( "" )
2024-07-05 22:20:13 -04:00
default :
if fd . IsExtension ( ) {
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Biscuit" ) )
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "message did.v1.Biscuit does not contain field %s" , fd . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
}
// WhichOneof reports which field within the oneof is populated,
// returning nil if none are populated.
// It panics if the oneof descriptor does not belong to this message.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) WhichOneof ( d protoreflect . OneofDescriptor ) protoreflect . FieldDescriptor {
2024-07-05 22:20:13 -04:00
switch d . FullName ( ) {
default :
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "%s is not a oneof field in did.v1.Biscuit" , d . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
panic ( "unreachable" )
}
// GetUnknown retrieves the entire list of unknown fields.
// The caller may only mutate the contents of the RawFields
// if the mutated bytes are stored back into the message with SetUnknown.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) GetUnknown ( ) protoreflect . RawFields {
2024-07-05 22:20:13 -04:00
return x . unknownFields
}
// SetUnknown stores an entire list of unknown fields.
// The raw fields must be syntactically valid according to the wire format.
// An implementation may panic if this is not the case.
// Once stored, the caller must not mutate the content of the RawFields.
// An empty RawFields may be passed to clear the fields.
//
// SetUnknown is a mutating operation and unsafe for concurrent use.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) SetUnknown ( fields protoreflect . RawFields ) {
2024-07-05 22:20:13 -04:00
x . unknownFields = fields
}
// IsValid reports whether the message is valid.
//
// An invalid message is an empty, read-only value.
//
// An invalid message often corresponds to a nil pointer of the concrete
// message type, but the details are implementation dependent.
// Validity is not part of the protobuf data model, and may not
// be preserved in marshaling or other operations.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) IsValid ( ) bool {
2024-07-05 22:20:13 -04:00
return x != nil
}
// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
// This method may return nil.
//
// The returned methods type is identical to
// "google.golang.org/protobuf/runtime/protoiface".Methods.
// Consult the protoiface package documentation for details.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Biscuit ) ProtoMethods ( ) * protoiface . Methods {
2024-07-05 22:20:13 -04:00
size := func ( input protoiface . SizeInput ) protoiface . SizeOutput {
2024-11-18 19:04:10 -05:00
x := input . Message . Interface ( ) . ( * Biscuit )
2024-07-05 22:20:13 -04:00
if x == nil {
return protoiface . SizeOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Size : 0 ,
}
}
options := runtime . SizeInputToOptions ( input )
_ = options
var n int
var l int
_ = l
2024-11-18 19:04:10 -05:00
if x . Id != 0 {
n += 1 + runtime . Sov ( uint64 ( x . Id ) )
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
l = len ( x . Controller )
2024-09-19 02:04:22 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-11-18 19:04:10 -05:00
l = len ( x . Subject )
2024-09-19 02:04:22 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-11-18 19:04:10 -05:00
l = len ( x . Origin )
2024-07-05 22:20:13 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-11-18 19:04:10 -05:00
if x . ExpiryHeight != 0 {
n += 1 + runtime . Sov ( uint64 ( x . ExpiryHeight ) )
2024-08-31 16:54:16 -04:00
}
2024-11-18 19:04:10 -05:00
l = len ( x . Macaroon )
2024-09-18 17:27:30 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-07-05 22:20:13 -04:00
if x . unknownFields != nil {
n += len ( x . unknownFields )
}
return protoiface . SizeOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Size : n ,
}
}
marshal := func ( input protoiface . MarshalInput ) ( protoiface . MarshalOutput , error ) {
2024-11-18 19:04:10 -05:00
x := input . Message . Interface ( ) . ( * Biscuit )
2024-07-05 22:20:13 -04:00
if x == nil {
return protoiface . MarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Buf : input . Buf ,
} , nil
}
options := runtime . MarshalInputToOptions ( input )
_ = options
size := options . Size ( x )
dAtA := make ( [ ] byte , size )
i := len ( dAtA )
_ = i
var l int
_ = l
if x . unknownFields != nil {
i -= len ( x . unknownFields )
copy ( dAtA [ i : ] , x . unknownFields )
}
2024-11-18 19:04:10 -05:00
if len ( x . Macaroon ) > 0 {
i -= len ( x . Macaroon )
copy ( dAtA [ i : ] , x . Macaroon )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Macaroon ) ) )
2024-07-05 22:20:13 -04:00
i --
2024-09-19 02:04:22 -04:00
dAtA [ i ] = 0x32
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
if x . ExpiryHeight != 0 {
i = runtime . EncodeVarint ( dAtA , i , uint64 ( x . ExpiryHeight ) )
2024-09-19 02:04:22 -04:00
i --
2024-11-18 19:04:10 -05:00
dAtA [ i ] = 0x28
2024-09-19 02:04:22 -04:00
}
2024-11-18 19:04:10 -05:00
if len ( x . Origin ) > 0 {
i -= len ( x . Origin )
copy ( dAtA [ i : ] , x . Origin )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Origin ) ) )
2024-09-19 02:04:22 -04:00
i --
2024-09-25 19:45:28 -04:00
dAtA [ i ] = 0x22
2024-09-19 02:04:22 -04:00
}
2024-11-18 19:04:10 -05:00
if len ( x . Subject ) > 0 {
i -= len ( x . Subject )
copy ( dAtA [ i : ] , x . Subject )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Subject ) ) )
2024-07-05 22:20:13 -04:00
i --
2024-09-25 19:45:28 -04:00
dAtA [ i ] = 0x1a
}
2024-11-18 19:04:10 -05:00
if len ( x . Controller ) > 0 {
i -= len ( x . Controller )
copy ( dAtA [ i : ] , x . Controller )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Controller ) ) )
2024-09-25 19:45:28 -04:00
i --
2024-07-05 22:20:13 -04:00
dAtA [ i ] = 0x12
}
2024-11-18 19:04:10 -05:00
if x . Id != 0 {
i = runtime . EncodeVarint ( dAtA , i , uint64 ( x . Id ) )
2024-07-05 22:20:13 -04:00
i --
2024-09-25 19:45:28 -04:00
dAtA [ i ] = 0x8
2024-07-05 22:20:13 -04:00
}
if input . Buf != nil {
input . Buf = append ( input . Buf , dAtA ... )
} else {
input . Buf = dAtA
}
return protoiface . MarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Buf : input . Buf ,
} , nil
}
unmarshal := func ( input protoiface . UnmarshalInput ) ( protoiface . UnmarshalOutput , error ) {
2024-11-18 19:04:10 -05:00
x := input . Message . Interface ( ) . ( * Biscuit )
2024-07-05 22:20:13 -04:00
if x == nil {
return protoiface . UnmarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Flags : input . Flags ,
} , nil
}
options := runtime . UnmarshalInputToOptions ( input )
_ = options
dAtA := input . Buf
l := len ( dAtA )
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
wire |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
fieldNum := int32 ( wire >> 3 )
wireType := int ( wire & 0x7 )
if wireType == 4 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: Biscuit: wiretype end group for non-group" )
2024-07-05 22:20:13 -04:00
}
if fieldNum <= 0 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: Biscuit: illegal tag %d (wire type %d)" , fieldNum , wire )
2024-07-05 22:20:13 -04:00
}
switch fieldNum {
case 1 :
2024-09-25 19:45:28 -04:00
if wireType != 0 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Id" , wireType )
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
x . Id = 0
2024-07-05 22:20:13 -04:00
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
2024-11-18 19:04:10 -05:00
x . Id |= uint64 ( b & 0x7F ) << shift
2024-07-05 22:20:13 -04:00
if b < 0x80 {
break
}
}
case 2 :
if wireType != 2 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Controller" , wireType )
2024-07-05 22:20:13 -04:00
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
2024-11-18 19:04:10 -05:00
x . Controller = string ( dAtA [ iNdEx : postIndex ] )
2024-07-05 22:20:13 -04:00
iNdEx = postIndex
case 3 :
if wireType != 2 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Subject" , wireType )
2024-07-05 22:20:13 -04:00
}
2024-09-19 02:04:22 -04:00
var stringLen uint64
2024-07-05 22:20:13 -04:00
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
2024-09-19 02:04:22 -04:00
stringLen |= uint64 ( b & 0x7F ) << shift
2024-07-05 22:20:13 -04:00
if b < 0x80 {
break
}
}
2024-09-19 02:04:22 -04:00
intStringLen := int ( stringLen )
if intStringLen < 0 {
2024-07-05 22:20:13 -04:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
2024-09-19 02:04:22 -04:00
postIndex := iNdEx + intStringLen
2024-07-05 22:20:13 -04:00
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
2024-11-18 19:04:10 -05:00
x . Subject = string ( dAtA [ iNdEx : postIndex ] )
2024-07-05 22:20:13 -04:00
iNdEx = postIndex
case 4 :
2024-09-19 02:04:22 -04:00
if wireType != 2 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Origin" , wireType )
2024-09-19 02:04:22 -04:00
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
2024-11-18 19:04:10 -05:00
x . Origin = string ( dAtA [ iNdEx : postIndex ] )
2024-09-19 02:04:22 -04:00
iNdEx = postIndex
case 5 :
2024-11-18 19:04:10 -05:00
if wireType != 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field ExpiryHeight" , wireType )
2024-09-19 02:04:22 -04:00
}
2024-11-18 19:04:10 -05:00
x . ExpiryHeight = 0
2024-09-19 02:04:22 -04:00
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
2024-11-18 19:04:10 -05:00
x . ExpiryHeight |= int64 ( b & 0x7F ) << shift
2024-09-19 02:04:22 -04:00
if b < 0x80 {
break
}
}
case 6 :
2024-08-31 16:54:16 -04:00
if wireType != 2 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Macaroon" , wireType )
2024-08-31 16:54:16 -04:00
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
2024-11-18 19:04:10 -05:00
x . Macaroon = string ( dAtA [ iNdEx : postIndex ] )
2024-08-31 16:54:16 -04:00
iNdEx = postIndex
2024-07-05 22:20:13 -04:00
default :
iNdEx = preIndex
skippy , err := runtime . Skip ( dAtA [ iNdEx : ] )
if err != nil {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , err
}
if ( skippy < 0 ) || ( iNdEx + skippy ) < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if ( iNdEx + skippy ) > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
if ! options . DiscardUnknown {
x . unknownFields = append ( x . unknownFields , dAtA [ iNdEx : iNdEx + skippy ] ... )
}
iNdEx += skippy
}
}
if iNdEx > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , nil
}
return & protoiface . Methods {
NoUnkeyedLiterals : struct { } { } ,
Flags : protoiface . SupportMarshalDeterministic | protoiface . SupportUnmarshalDiscardUnknown ,
Size : size ,
Marshal : marshal ,
Unmarshal : unmarshal ,
Merge : nil ,
CheckInitialized : nil ,
}
}
2024-11-01 14:42:56 -04:00
var (
2024-11-18 19:04:10 -05:00
md_Controller protoreflect . MessageDescriptor
fd_Controller_number protoreflect . FieldDescriptor
fd_Controller_did protoreflect . FieldDescriptor
fd_Controller_sonr_address protoreflect . FieldDescriptor
fd_Controller_eth_address protoreflect . FieldDescriptor
fd_Controller_btc_address protoreflect . FieldDescriptor
fd_Controller_public_key_hex protoreflect . FieldDescriptor
fd_Controller_ks_val protoreflect . FieldDescriptor
fd_Controller_claimed_block protoreflect . FieldDescriptor
fd_Controller_creation_block protoreflect . FieldDescriptor
2024-11-01 14:42:56 -04:00
)
func init ( ) {
file_did_v1_state_proto_init ( )
2024-11-18 19:04:10 -05:00
md_Controller = File_did_v1_state_proto . Messages ( ) . ByName ( "Controller" )
fd_Controller_number = md_Controller . Fields ( ) . ByName ( "number" )
fd_Controller_did = md_Controller . Fields ( ) . ByName ( "did" )
fd_Controller_sonr_address = md_Controller . Fields ( ) . ByName ( "sonr_address" )
fd_Controller_eth_address = md_Controller . Fields ( ) . ByName ( "eth_address" )
fd_Controller_btc_address = md_Controller . Fields ( ) . ByName ( "btc_address" )
fd_Controller_public_key_hex = md_Controller . Fields ( ) . ByName ( "public_key_hex" )
fd_Controller_ks_val = md_Controller . Fields ( ) . ByName ( "ks_val" )
fd_Controller_claimed_block = md_Controller . Fields ( ) . ByName ( "claimed_block" )
fd_Controller_creation_block = md_Controller . Fields ( ) . ByName ( "creation_block" )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
var _ protoreflect . Message = ( * fastReflection_Controller ) ( nil )
2024-11-01 14:42:56 -04:00
2024-11-18 19:04:10 -05:00
type fastReflection_Controller Controller
2024-11-01 14:42:56 -04:00
2024-11-18 19:04:10 -05:00
func ( x * Controller ) ProtoReflect ( ) protoreflect . Message {
return ( * fastReflection_Controller ) ( x )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
func ( x * Controller ) slowProtoReflect ( ) protoreflect . Message {
2024-11-01 14:42:56 -04:00
mi := & file_did_v1_state_proto_msgTypes [ 3 ]
if protoimpl . UnsafeEnabled && x != nil {
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
if ms . LoadMessageInfo ( ) == nil {
ms . StoreMessageInfo ( mi )
}
return ms
}
return mi . MessageOf ( x )
}
2024-11-18 19:04:10 -05:00
var _fastReflection_Controller_messageType fastReflection_Controller_messageType
var _ protoreflect . MessageType = fastReflection_Controller_messageType { }
2024-11-01 14:42:56 -04:00
2024-11-18 19:04:10 -05:00
type fastReflection_Controller_messageType struct { }
2024-11-01 14:42:56 -04:00
2024-11-18 19:04:10 -05:00
func ( x fastReflection_Controller_messageType ) Zero ( ) protoreflect . Message {
return ( * fastReflection_Controller ) ( nil )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
func ( x fastReflection_Controller_messageType ) New ( ) protoreflect . Message {
return new ( fastReflection_Controller )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
func ( x fastReflection_Controller_messageType ) Descriptor ( ) protoreflect . MessageDescriptor {
return md_Controller
2024-11-01 14:42:56 -04:00
}
// Descriptor returns message descriptor, which contains only the protobuf
// type information for the message.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) Descriptor ( ) protoreflect . MessageDescriptor {
return md_Controller
2024-11-01 14:42:56 -04:00
}
// Type returns the message type, which encapsulates both Go and protobuf
// type information. If the Go type information is not needed,
// it is recommended that the message descriptor be used instead.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) Type ( ) protoreflect . MessageType {
return _fastReflection_Controller_messageType
2024-11-01 14:42:56 -04:00
}
// New returns a newly allocated and mutable empty message.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) New ( ) protoreflect . Message {
return new ( fastReflection_Controller )
2024-11-01 14:42:56 -04:00
}
// Interface unwraps the message reflection interface and
// returns the underlying ProtoMessage interface.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) Interface ( ) protoreflect . ProtoMessage {
return ( * Controller ) ( x )
2024-11-01 14:42:56 -04:00
}
// Range iterates over every populated field in an undefined order,
// calling f for each field descriptor and value encountered.
// Range returns immediately if f returns false.
// While iterating, mutating operations may only be performed
// on the current field descriptor.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) Range ( f func ( protoreflect . FieldDescriptor , protoreflect . Value ) bool ) {
if x . Number != uint64 ( 0 ) {
value := protoreflect . ValueOfUint64 ( x . Number )
if ! f ( fd_Controller_number , value ) {
2024-11-01 14:42:56 -04:00
return
}
}
2024-11-18 19:04:10 -05:00
if x . Did != "" {
value := protoreflect . ValueOfString ( x . Did )
if ! f ( fd_Controller_did , value ) {
return
2024-11-01 14:42:56 -04:00
}
}
2024-11-18 19:04:10 -05:00
if x . SonrAddress != "" {
value := protoreflect . ValueOfString ( x . SonrAddress )
if ! f ( fd_Controller_sonr_address , value ) {
return
2024-11-01 14:42:56 -04:00
}
}
2024-11-18 19:04:10 -05:00
if x . EthAddress != "" {
value := protoreflect . ValueOfString ( x . EthAddress )
if ! f ( fd_Controller_eth_address , value ) {
2024-11-01 14:42:56 -04:00
return
}
}
2024-11-18 19:04:10 -05:00
if x . BtcAddress != "" {
value := protoreflect . ValueOfString ( x . BtcAddress )
if ! f ( fd_Controller_btc_address , value ) {
2024-11-01 14:42:56 -04:00
return
}
}
2024-11-18 19:04:10 -05:00
if x . PublicKeyHex != "" {
value := protoreflect . ValueOfString ( x . PublicKeyHex )
if ! f ( fd_Controller_public_key_hex , value ) {
2024-11-01 14:42:56 -04:00
return
}
}
2024-11-18 19:04:10 -05:00
if x . KsVal != "" {
value := protoreflect . ValueOfString ( x . KsVal )
if ! f ( fd_Controller_ks_val , value ) {
2024-11-01 14:42:56 -04:00
return
}
}
2024-11-18 19:04:10 -05:00
if x . ClaimedBlock != int64 ( 0 ) {
value := protoreflect . ValueOfInt64 ( x . ClaimedBlock )
if ! f ( fd_Controller_claimed_block , value ) {
2024-11-01 14:42:56 -04:00
return
}
}
2024-11-18 19:04:10 -05:00
if x . CreationBlock != int64 ( 0 ) {
value := protoreflect . ValueOfInt64 ( x . CreationBlock )
if ! f ( fd_Controller_creation_block , value ) {
2024-11-01 14:42:56 -04:00
return
}
}
}
// Has reports whether a field is populated.
//
// Some fields have the property of nullability where it is possible to
// distinguish between the default value of a field and whether the field
// was explicitly populated with the default value. Singular message fields,
// member fields of a oneof, and proto2 scalar fields are nullable. Such
// fields are populated only if explicitly set.
//
// In other cases (aside from the nullable cases above),
// a proto3 scalar field is populated if it contains a non-zero value, and
// a repeated field is populated if it is non-empty.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) Has ( fd protoreflect . FieldDescriptor ) bool {
2024-11-01 14:42:56 -04:00
switch fd . FullName ( ) {
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.number" :
return x . Number != uint64 ( 0 )
case "did.v1.Controller.did" :
return x . Did != ""
case "did.v1.Controller.sonr_address" :
return x . SonrAddress != ""
case "did.v1.Controller.eth_address" :
return x . EthAddress != ""
case "did.v1.Controller.btc_address" :
return x . BtcAddress != ""
case "did.v1.Controller.public_key_hex" :
return x . PublicKeyHex != ""
case "did.v1.Controller.ks_val" :
return x . KsVal != ""
case "did.v1.Controller.claimed_block" :
return x . ClaimedBlock != int64 ( 0 )
case "did.v1.Controller.creation_block" :
return x . CreationBlock != int64 ( 0 )
2024-11-01 14:42:56 -04:00
default :
if fd . IsExtension ( ) {
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Controller" ) )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "message did.v1.Controller does not contain field %s" , fd . FullName ( ) ) )
2024-11-01 14:42:56 -04:00
}
}
// Clear clears the field such that a subsequent Has call reports false.
//
// Clearing an extension field clears both the extension type and value
// associated with the given field number.
//
// Clear is a mutating operation and unsafe for concurrent use.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) Clear ( fd protoreflect . FieldDescriptor ) {
2024-11-01 14:42:56 -04:00
switch fd . FullName ( ) {
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.number" :
x . Number = uint64 ( 0 )
case "did.v1.Controller.did" :
x . Did = ""
case "did.v1.Controller.sonr_address" :
x . SonrAddress = ""
case "did.v1.Controller.eth_address" :
x . EthAddress = ""
case "did.v1.Controller.btc_address" :
x . BtcAddress = ""
case "did.v1.Controller.public_key_hex" :
x . PublicKeyHex = ""
case "did.v1.Controller.ks_val" :
x . KsVal = ""
case "did.v1.Controller.claimed_block" :
x . ClaimedBlock = int64 ( 0 )
case "did.v1.Controller.creation_block" :
x . CreationBlock = int64 ( 0 )
2024-11-01 14:42:56 -04:00
default :
if fd . IsExtension ( ) {
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Controller" ) )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "message did.v1.Controller does not contain field %s" , fd . FullName ( ) ) )
2024-11-01 14:42:56 -04:00
}
}
// Get retrieves the value for a field.
//
// For unpopulated scalars, it returns the default value, where
// the default value of a bytes scalar is guaranteed to be a copy.
// For unpopulated composite types, it returns an empty, read-only view
// of the value; to obtain a mutable reference, use Mutable.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) Get ( descriptor protoreflect . FieldDescriptor ) protoreflect . Value {
2024-11-01 14:42:56 -04:00
switch descriptor . FullName ( ) {
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.number" :
value := x . Number
2024-11-01 14:42:56 -04:00
return protoreflect . ValueOfUint64 ( value )
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.did" :
value := x . Did
2024-11-01 14:42:56 -04:00
return protoreflect . ValueOfString ( value )
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.sonr_address" :
value := x . SonrAddress
2024-11-01 14:42:56 -04:00
return protoreflect . ValueOfString ( value )
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.eth_address" :
value := x . EthAddress
2024-11-01 14:42:56 -04:00
return protoreflect . ValueOfString ( value )
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.btc_address" :
value := x . BtcAddress
return protoreflect . ValueOfString ( value )
case "did.v1.Controller.public_key_hex" :
value := x . PublicKeyHex
return protoreflect . ValueOfString ( value )
case "did.v1.Controller.ks_val" :
value := x . KsVal
return protoreflect . ValueOfString ( value )
case "did.v1.Controller.claimed_block" :
value := x . ClaimedBlock
return protoreflect . ValueOfInt64 ( value )
case "did.v1.Controller.creation_block" :
value := x . CreationBlock
2024-11-01 14:42:56 -04:00
return protoreflect . ValueOfInt64 ( value )
default :
if descriptor . IsExtension ( ) {
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Controller" ) )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "message did.v1.Controller does not contain field %s" , descriptor . FullName ( ) ) )
2024-11-01 14:42:56 -04:00
}
}
// Set stores the value for a field.
//
// For a field belonging to a oneof, it implicitly clears any other field
// that may be currently set within the same oneof.
// For extension fields, it implicitly stores the provided ExtensionType.
// When setting a composite type, it is unspecified whether the stored value
// aliases the source's memory in any way. If the composite value is an
// empty, read-only value, then it panics.
//
// Set is a mutating operation and unsafe for concurrent use.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) Set ( fd protoreflect . FieldDescriptor , value protoreflect . Value ) {
2024-11-01 14:42:56 -04:00
switch fd . FullName ( ) {
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.number" :
x . Number = value . Uint ( )
case "did.v1.Controller.did" :
x . Did = value . Interface ( ) . ( string )
case "did.v1.Controller.sonr_address" :
x . SonrAddress = value . Interface ( ) . ( string )
case "did.v1.Controller.eth_address" :
x . EthAddress = value . Interface ( ) . ( string )
case "did.v1.Controller.btc_address" :
x . BtcAddress = value . Interface ( ) . ( string )
case "did.v1.Controller.public_key_hex" :
x . PublicKeyHex = value . Interface ( ) . ( string )
case "did.v1.Controller.ks_val" :
x . KsVal = value . Interface ( ) . ( string )
case "did.v1.Controller.claimed_block" :
x . ClaimedBlock = value . Int ( )
case "did.v1.Controller.creation_block" :
x . CreationBlock = value . Int ( )
2024-11-01 14:42:56 -04:00
default :
if fd . IsExtension ( ) {
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Controller" ) )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "message did.v1.Controller does not contain field %s" , fd . FullName ( ) ) )
2024-11-01 14:42:56 -04:00
}
}
// Mutable returns a mutable reference to a composite type.
//
// If the field is unpopulated, it may allocate a composite value.
// For a field belonging to a oneof, it implicitly clears any other field
// that may be currently set within the same oneof.
// For extension fields, it implicitly stores the provided ExtensionType
// if not already stored.
// It panics if the field does not contain a composite type.
//
// Mutable is a mutating operation and unsafe for concurrent use.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) Mutable ( fd protoreflect . FieldDescriptor ) protoreflect . Value {
2024-11-01 14:42:56 -04:00
switch fd . FullName ( ) {
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.number" :
panic ( fmt . Errorf ( "field number of message did.v1.Controller is not mutable" ) )
case "did.v1.Controller.did" :
panic ( fmt . Errorf ( "field did of message did.v1.Controller is not mutable" ) )
case "did.v1.Controller.sonr_address" :
panic ( fmt . Errorf ( "field sonr_address of message did.v1.Controller is not mutable" ) )
case "did.v1.Controller.eth_address" :
panic ( fmt . Errorf ( "field eth_address of message did.v1.Controller is not mutable" ) )
case "did.v1.Controller.btc_address" :
panic ( fmt . Errorf ( "field btc_address of message did.v1.Controller is not mutable" ) )
case "did.v1.Controller.public_key_hex" :
panic ( fmt . Errorf ( "field public_key_hex of message did.v1.Controller is not mutable" ) )
case "did.v1.Controller.ks_val" :
panic ( fmt . Errorf ( "field ks_val of message did.v1.Controller is not mutable" ) )
case "did.v1.Controller.claimed_block" :
panic ( fmt . Errorf ( "field claimed_block of message did.v1.Controller is not mutable" ) )
case "did.v1.Controller.creation_block" :
panic ( fmt . Errorf ( "field creation_block of message did.v1.Controller is not mutable" ) )
2024-11-01 14:42:56 -04:00
default :
if fd . IsExtension ( ) {
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Controller" ) )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "message did.v1.Controller does not contain field %s" , fd . FullName ( ) ) )
2024-11-01 14:42:56 -04:00
}
}
// NewField returns a new value that is assignable to the field
// for the given descriptor. For scalars, this returns the default value.
// For lists, maps, and messages, this returns a new, empty, mutable value.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) NewField ( fd protoreflect . FieldDescriptor ) protoreflect . Value {
2024-11-01 14:42:56 -04:00
switch fd . FullName ( ) {
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.number" :
2024-11-01 14:42:56 -04:00
return protoreflect . ValueOfUint64 ( uint64 ( 0 ) )
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.did" :
2024-11-01 14:42:56 -04:00
return protoreflect . ValueOfString ( "" )
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.sonr_address" :
2024-11-01 14:42:56 -04:00
return protoreflect . ValueOfString ( "" )
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.eth_address" :
2024-11-01 14:42:56 -04:00
return protoreflect . ValueOfString ( "" )
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.btc_address" :
return protoreflect . ValueOfString ( "" )
case "did.v1.Controller.public_key_hex" :
return protoreflect . ValueOfString ( "" )
case "did.v1.Controller.ks_val" :
2024-11-01 14:42:56 -04:00
return protoreflect . ValueOfString ( "" )
2024-11-18 19:04:10 -05:00
case "did.v1.Controller.claimed_block" :
return protoreflect . ValueOfInt64 ( int64 ( 0 ) )
case "did.v1.Controller.creation_block" :
return protoreflect . ValueOfInt64 ( int64 ( 0 ) )
2024-11-01 14:42:56 -04:00
default :
if fd . IsExtension ( ) {
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Controller" ) )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "message did.v1.Controller does not contain field %s" , fd . FullName ( ) ) )
2024-11-01 14:42:56 -04:00
}
}
// WhichOneof reports which field within the oneof is populated,
// returning nil if none are populated.
// It panics if the oneof descriptor does not belong to this message.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) WhichOneof ( d protoreflect . OneofDescriptor ) protoreflect . FieldDescriptor {
2024-11-01 14:42:56 -04:00
switch d . FullName ( ) {
default :
2024-11-18 19:04:10 -05:00
panic ( fmt . Errorf ( "%s is not a oneof field in did.v1.Controller" , d . FullName ( ) ) )
2024-11-01 14:42:56 -04:00
}
panic ( "unreachable" )
}
// GetUnknown retrieves the entire list of unknown fields.
// The caller may only mutate the contents of the RawFields
// if the mutated bytes are stored back into the message with SetUnknown.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) GetUnknown ( ) protoreflect . RawFields {
2024-11-01 14:42:56 -04:00
return x . unknownFields
}
// SetUnknown stores an entire list of unknown fields.
// The raw fields must be syntactically valid according to the wire format.
// An implementation may panic if this is not the case.
// Once stored, the caller must not mutate the content of the RawFields.
// An empty RawFields may be passed to clear the fields.
//
// SetUnknown is a mutating operation and unsafe for concurrent use.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) SetUnknown ( fields protoreflect . RawFields ) {
2024-11-01 14:42:56 -04:00
x . unknownFields = fields
}
// IsValid reports whether the message is valid.
//
// An invalid message is an empty, read-only value.
//
// An invalid message often corresponds to a nil pointer of the concrete
// message type, but the details are implementation dependent.
// Validity is not part of the protobuf data model, and may not
// be preserved in marshaling or other operations.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) IsValid ( ) bool {
2024-11-01 14:42:56 -04:00
return x != nil
}
// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
// This method may return nil.
//
// The returned methods type is identical to
// "google.golang.org/protobuf/runtime/protoiface".Methods.
// Consult the protoiface package documentation for details.
2024-11-18 19:04:10 -05:00
func ( x * fastReflection_Controller ) ProtoMethods ( ) * protoiface . Methods {
2024-11-01 14:42:56 -04:00
size := func ( input protoiface . SizeInput ) protoiface . SizeOutput {
2024-11-18 19:04:10 -05:00
x := input . Message . Interface ( ) . ( * Controller )
2024-11-01 14:42:56 -04:00
if x == nil {
return protoiface . SizeOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Size : 0 ,
}
}
options := runtime . SizeInputToOptions ( input )
_ = options
var n int
var l int
_ = l
2024-11-18 19:04:10 -05:00
if x . Number != 0 {
n += 1 + runtime . Sov ( uint64 ( x . Number ) )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
l = len ( x . Did )
2024-11-01 14:42:56 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-11-18 19:04:10 -05:00
l = len ( x . SonrAddress )
2024-11-01 14:42:56 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-11-18 19:04:10 -05:00
l = len ( x . EthAddress )
2024-11-01 14:42:56 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-11-18 19:04:10 -05:00
l = len ( x . BtcAddress )
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
l = len ( x . PublicKeyHex )
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
l = len ( x . KsVal )
2024-11-01 14:42:56 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-11-18 19:04:10 -05:00
if x . ClaimedBlock != 0 {
n += 1 + runtime . Sov ( uint64 ( x . ClaimedBlock ) )
}
if x . CreationBlock != 0 {
n += 1 + runtime . Sov ( uint64 ( x . CreationBlock ) )
}
2024-11-01 14:42:56 -04:00
if x . unknownFields != nil {
n += len ( x . unknownFields )
}
return protoiface . SizeOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Size : n ,
}
}
marshal := func ( input protoiface . MarshalInput ) ( protoiface . MarshalOutput , error ) {
2024-11-18 19:04:10 -05:00
x := input . Message . Interface ( ) . ( * Controller )
2024-11-01 14:42:56 -04:00
if x == nil {
return protoiface . MarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Buf : input . Buf ,
} , nil
}
options := runtime . MarshalInputToOptions ( input )
_ = options
size := options . Size ( x )
dAtA := make ( [ ] byte , size )
i := len ( dAtA )
_ = i
var l int
_ = l
if x . unknownFields != nil {
i -= len ( x . unknownFields )
copy ( dAtA [ i : ] , x . unknownFields )
}
2024-11-18 19:04:10 -05:00
if x . CreationBlock != 0 {
i = runtime . EncodeVarint ( dAtA , i , uint64 ( x . CreationBlock ) )
i --
dAtA [ i ] = 0x48
}
if x . ClaimedBlock != 0 {
i = runtime . EncodeVarint ( dAtA , i , uint64 ( x . ClaimedBlock ) )
i --
dAtA [ i ] = 0x40
}
if len ( x . KsVal ) > 0 {
i -= len ( x . KsVal )
copy ( dAtA [ i : ] , x . KsVal )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . KsVal ) ) )
i --
dAtA [ i ] = 0x3a
}
if len ( x . PublicKeyHex ) > 0 {
i -= len ( x . PublicKeyHex )
copy ( dAtA [ i : ] , x . PublicKeyHex )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . PublicKeyHex ) ) )
2024-11-01 14:42:56 -04:00
i --
dAtA [ i ] = 0x32
}
2024-11-18 19:04:10 -05:00
if len ( x . BtcAddress ) > 0 {
i -= len ( x . BtcAddress )
copy ( dAtA [ i : ] , x . BtcAddress )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . BtcAddress ) ) )
2024-11-01 14:42:56 -04:00
i --
2024-11-18 19:04:10 -05:00
dAtA [ i ] = 0x2a
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
if len ( x . EthAddress ) > 0 {
i -= len ( x . EthAddress )
copy ( dAtA [ i : ] , x . EthAddress )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . EthAddress ) ) )
2024-11-01 14:42:56 -04:00
i --
dAtA [ i ] = 0x22
}
2024-11-18 19:04:10 -05:00
if len ( x . SonrAddress ) > 0 {
i -= len ( x . SonrAddress )
copy ( dAtA [ i : ] , x . SonrAddress )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . SonrAddress ) ) )
2024-11-01 14:42:56 -04:00
i --
dAtA [ i ] = 0x1a
}
2024-11-18 19:04:10 -05:00
if len ( x . Did ) > 0 {
i -= len ( x . Did )
copy ( dAtA [ i : ] , x . Did )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Did ) ) )
2024-11-01 14:42:56 -04:00
i --
dAtA [ i ] = 0x12
}
2024-11-18 19:04:10 -05:00
if x . Number != 0 {
i = runtime . EncodeVarint ( dAtA , i , uint64 ( x . Number ) )
2024-11-01 14:42:56 -04:00
i --
dAtA [ i ] = 0x8
}
if input . Buf != nil {
input . Buf = append ( input . Buf , dAtA ... )
} else {
input . Buf = dAtA
}
return protoiface . MarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Buf : input . Buf ,
} , nil
}
unmarshal := func ( input protoiface . UnmarshalInput ) ( protoiface . UnmarshalOutput , error ) {
2024-11-18 19:04:10 -05:00
x := input . Message . Interface ( ) . ( * Controller )
2024-11-01 14:42:56 -04:00
if x == nil {
return protoiface . UnmarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Flags : input . Flags ,
} , nil
}
options := runtime . UnmarshalInputToOptions ( input )
_ = options
dAtA := input . Buf
l := len ( dAtA )
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
wire |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
fieldNum := int32 ( wire >> 3 )
wireType := int ( wire & 0x7 )
if wireType == 4 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: Controller: wiretype end group for non-group" )
2024-11-01 14:42:56 -04:00
}
if fieldNum <= 0 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: Controller: illegal tag %d (wire type %d)" , fieldNum , wire )
2024-11-01 14:42:56 -04:00
}
switch fieldNum {
case 1 :
if wireType != 0 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Number" , wireType )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
x . Number = 0
2024-11-01 14:42:56 -04:00
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
2024-11-18 19:04:10 -05:00
x . Number |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
case 2 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Did" , wireType )
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . Did = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 3 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field SonrAddress" , wireType )
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . SonrAddress = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 4 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field EthAddress" , wireType )
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
2024-11-01 14:42:56 -04:00
if b < 0x80 {
break
}
}
2024-11-18 19:04:10 -05:00
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . EthAddress = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 5 :
2024-11-01 14:42:56 -04:00
if wireType != 2 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field BtcAddress" , wireType )
2024-11-01 14:42:56 -04:00
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
2024-11-18 19:04:10 -05:00
x . BtcAddress = string ( dAtA [ iNdEx : postIndex ] )
2024-11-01 14:42:56 -04:00
iNdEx = postIndex
2024-11-18 19:04:10 -05:00
case 6 :
2024-11-01 14:42:56 -04:00
if wireType != 2 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field PublicKeyHex" , wireType )
2024-11-01 14:42:56 -04:00
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
2024-11-18 19:04:10 -05:00
x . PublicKeyHex = string ( dAtA [ iNdEx : postIndex ] )
2024-11-01 14:42:56 -04:00
iNdEx = postIndex
2024-11-18 19:04:10 -05:00
case 7 :
2024-11-01 14:42:56 -04:00
if wireType != 2 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field KsVal" , wireType )
2024-11-01 14:42:56 -04:00
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
2024-11-18 19:04:10 -05:00
x . KsVal = string ( dAtA [ iNdEx : postIndex ] )
2024-11-01 14:42:56 -04:00
iNdEx = postIndex
2024-11-18 19:04:10 -05:00
case 8 :
2024-11-01 14:42:56 -04:00
if wireType != 0 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field ClaimedBlock" , wireType )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
x . ClaimedBlock = 0
2024-11-01 14:42:56 -04:00
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
2024-11-18 19:04:10 -05:00
x . ClaimedBlock |= int64 ( b & 0x7F ) << shift
2024-11-01 14:42:56 -04:00
if b < 0x80 {
break
}
}
2024-11-18 19:04:10 -05:00
case 9 :
if wireType != 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field CreationBlock" , wireType )
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
x . CreationBlock = 0
2024-11-01 14:42:56 -04:00
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
2024-11-18 19:04:10 -05:00
x . CreationBlock |= int64 ( b & 0x7F ) << shift
2024-11-01 14:42:56 -04:00
if b < 0x80 {
break
}
}
default :
iNdEx = preIndex
skippy , err := runtime . Skip ( dAtA [ iNdEx : ] )
if err != nil {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , err
}
if ( skippy < 0 ) || ( iNdEx + skippy ) < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if ( iNdEx + skippy ) > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
if ! options . DiscardUnknown {
x . unknownFields = append ( x . unknownFields , dAtA [ iNdEx : iNdEx + skippy ] ... )
}
iNdEx += skippy
}
}
if iNdEx > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , nil
}
return & protoiface . Methods {
NoUnkeyedLiterals : struct { } { } ,
Flags : protoiface . SupportMarshalDeterministic | protoiface . SupportUnmarshalDiscardUnknown ,
Size : size ,
Marshal : marshal ,
Unmarshal : unmarshal ,
Merge : nil ,
CheckInitialized : nil ,
}
}
2024-09-29 14:40:36 -04:00
var _ protoreflect . Map = ( * _Verification_8_map ) ( nil )
type _Verification_8_map struct {
m * map [ string ] string
}
func ( x * _Verification_8_map ) Len ( ) int {
if x . m == nil {
return 0
}
return len ( * x . m )
}
func ( x * _Verification_8_map ) Range ( f func ( protoreflect . MapKey , protoreflect . Value ) bool ) {
if x . m == nil {
return
}
for k , v := range * x . m {
mapKey := ( protoreflect . MapKey ) ( protoreflect . ValueOfString ( k ) )
mapValue := protoreflect . ValueOfString ( v )
if ! f ( mapKey , mapValue ) {
break
}
}
}
func ( x * _Verification_8_map ) Has ( key protoreflect . MapKey ) bool {
if x . m == nil {
return false
}
keyUnwrapped := key . String ( )
concreteValue := keyUnwrapped
_ , ok := ( * x . m ) [ concreteValue ]
return ok
}
func ( x * _Verification_8_map ) Clear ( key protoreflect . MapKey ) {
if x . m == nil {
return
}
keyUnwrapped := key . String ( )
concreteKey := keyUnwrapped
delete ( * x . m , concreteKey )
}
func ( x * _Verification_8_map ) Get ( key protoreflect . MapKey ) protoreflect . Value {
if x . m == nil {
return protoreflect . Value { }
}
keyUnwrapped := key . String ( )
concreteKey := keyUnwrapped
v , ok := ( * x . m ) [ concreteKey ]
if ! ok {
return protoreflect . Value { }
}
return protoreflect . ValueOfString ( v )
}
func ( x * _Verification_8_map ) Set ( key protoreflect . MapKey , value protoreflect . Value ) {
if ! key . IsValid ( ) || ! value . IsValid ( ) {
panic ( "invalid key or value provided" )
}
keyUnwrapped := key . String ( )
concreteKey := keyUnwrapped
valueUnwrapped := value . String ( )
concreteValue := valueUnwrapped
( * x . m ) [ concreteKey ] = concreteValue
}
func ( x * _Verification_8_map ) Mutable ( key protoreflect . MapKey ) protoreflect . Value {
panic ( "should not call Mutable on protoreflect.Map whose value is not of type protoreflect.Message" )
}
func ( x * _Verification_8_map ) NewValue ( ) protoreflect . Value {
v := ""
return protoreflect . ValueOfString ( v )
}
func ( x * _Verification_8_map ) IsValid ( ) bool {
return x . m != nil
}
2024-09-11 15:10:54 -04:00
var (
2024-09-19 02:04:22 -04:00
md_Verification protoreflect . MessageDescriptor
2024-09-25 19:45:28 -04:00
fd_Verification_did protoreflect . FieldDescriptor
2024-09-19 02:04:22 -04:00
fd_Verification_controller protoreflect . FieldDescriptor
fd_Verification_did_method protoreflect . FieldDescriptor
fd_Verification_issuer protoreflect . FieldDescriptor
fd_Verification_subject protoreflect . FieldDescriptor
2024-11-18 19:04:10 -05:00
fd_Verification_public_key_hex protoreflect . FieldDescriptor
2024-09-19 02:04:22 -04:00
fd_Verification_verification_type protoreflect . FieldDescriptor
2024-09-29 14:40:36 -04:00
fd_Verification_metadata protoreflect . FieldDescriptor
fd_Verification_creation_block protoreflect . FieldDescriptor
2024-09-11 15:10:54 -04:00
)
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
2024-09-11 15:10:54 -04:00
func init ( ) {
file_did_v1_state_proto_init ( )
2024-09-18 17:27:30 -04:00
md_Verification = File_did_v1_state_proto . Messages ( ) . ByName ( "Verification" )
2024-09-25 19:45:28 -04:00
fd_Verification_did = md_Verification . Fields ( ) . ByName ( "did" )
2024-09-18 17:27:30 -04:00
fd_Verification_controller = md_Verification . Fields ( ) . ByName ( "controller" )
2024-09-19 02:04:22 -04:00
fd_Verification_did_method = md_Verification . Fields ( ) . ByName ( "did_method" )
2024-09-18 17:27:30 -04:00
fd_Verification_issuer = md_Verification . Fields ( ) . ByName ( "issuer" )
fd_Verification_subject = md_Verification . Fields ( ) . ByName ( "subject" )
2024-11-18 19:04:10 -05:00
fd_Verification_public_key_hex = md_Verification . Fields ( ) . ByName ( "public_key_hex" )
2024-09-19 02:04:22 -04:00
fd_Verification_verification_type = md_Verification . Fields ( ) . ByName ( "verification_type" )
2024-09-29 14:40:36 -04:00
fd_Verification_metadata = md_Verification . Fields ( ) . ByName ( "metadata" )
fd_Verification_creation_block = md_Verification . Fields ( ) . ByName ( "creation_block" )
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
}
2024-09-18 17:27:30 -04:00
var _ protoreflect . Message = ( * fastReflection_Verification ) ( nil )
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
2024-09-18 17:27:30 -04:00
type fastReflection_Verification Verification
2024-09-11 15:10:54 -04:00
2024-09-18 17:27:30 -04:00
func ( x * Verification ) ProtoReflect ( ) protoreflect . Message {
return ( * fastReflection_Verification ) ( x )
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
}
2024-09-18 17:27:30 -04:00
func ( x * Verification ) slowProtoReflect ( ) protoreflect . Message {
2024-11-18 19:04:10 -05:00
mi := & file_did_v1_state_proto_msgTypes [ 4 ]
2024-09-11 15:10:54 -04:00
if protoimpl . UnsafeEnabled && x != nil {
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
if ms . LoadMessageInfo ( ) == nil {
ms . StoreMessageInfo ( mi )
}
return ms
}
return mi . MessageOf ( x )
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
}
2024-09-18 17:27:30 -04:00
var _fastReflection_Verification_messageType fastReflection_Verification_messageType
var _ protoreflect . MessageType = fastReflection_Verification_messageType { }
2024-07-05 22:20:13 -04:00
2024-09-18 17:27:30 -04:00
type fastReflection_Verification_messageType struct { }
2024-07-05 22:20:13 -04:00
2024-09-18 17:27:30 -04:00
func ( x fastReflection_Verification_messageType ) Zero ( ) protoreflect . Message {
return ( * fastReflection_Verification ) ( nil )
2024-07-05 22:20:13 -04:00
}
2024-09-18 17:27:30 -04:00
func ( x fastReflection_Verification_messageType ) New ( ) protoreflect . Message {
return new ( fastReflection_Verification )
2024-07-05 22:20:13 -04:00
}
2024-09-18 17:27:30 -04:00
func ( x fastReflection_Verification_messageType ) Descriptor ( ) protoreflect . MessageDescriptor {
return md_Verification
2024-07-05 22:20:13 -04:00
}
// Descriptor returns message descriptor, which contains only the protobuf
// type information for the message.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) Descriptor ( ) protoreflect . MessageDescriptor {
return md_Verification
2024-07-05 22:20:13 -04:00
}
// Type returns the message type, which encapsulates both Go and protobuf
// type information. If the Go type information is not needed,
// it is recommended that the message descriptor be used instead.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) Type ( ) protoreflect . MessageType {
return _fastReflection_Verification_messageType
2024-07-05 22:20:13 -04:00
}
// New returns a newly allocated and mutable empty message.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) New ( ) protoreflect . Message {
return new ( fastReflection_Verification )
2024-07-05 22:20:13 -04:00
}
// Interface unwraps the message reflection interface and
// returns the underlying ProtoMessage interface.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) Interface ( ) protoreflect . ProtoMessage {
return ( * Verification ) ( x )
2024-07-05 22:20:13 -04:00
}
// Range iterates over every populated field in an undefined order,
// calling f for each field descriptor and value encountered.
// Range returns immediately if f returns false.
// While iterating, mutating operations may only be performed
// on the current field descriptor.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) Range ( f func ( protoreflect . FieldDescriptor , protoreflect . Value ) bool ) {
2024-09-25 19:45:28 -04:00
if x . Did != "" {
value := protoreflect . ValueOfString ( x . Did )
if ! f ( fd_Verification_did , value ) {
2024-07-05 22:20:13 -04:00
return
}
}
2024-09-11 15:10:54 -04:00
if x . Controller != "" {
value := protoreflect . ValueOfString ( x . Controller )
2024-09-18 17:27:30 -04:00
if ! f ( fd_Verification_controller , value ) {
return
}
}
2024-09-19 02:04:22 -04:00
if x . DidMethod != "" {
value := protoreflect . ValueOfString ( x . DidMethod )
if ! f ( fd_Verification_did_method , value ) {
2024-07-05 22:20:13 -04:00
return
}
}
2024-09-11 15:10:54 -04:00
if x . Issuer != "" {
value := protoreflect . ValueOfString ( x . Issuer )
2024-09-18 17:27:30 -04:00
if ! f ( fd_Verification_issuer , value ) {
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
return
}
}
2024-09-18 17:27:30 -04:00
if x . Subject != "" {
value := protoreflect . ValueOfString ( x . Subject )
if ! f ( fd_Verification_subject , value ) {
2024-07-05 22:20:13 -04:00
return
}
}
2024-11-18 19:04:10 -05:00
if x . PublicKeyHex != "" {
value := protoreflect . ValueOfString ( x . PublicKeyHex )
if ! f ( fd_Verification_public_key_hex , value ) {
2024-09-11 15:10:54 -04:00
return
}
}
2024-09-19 02:04:22 -04:00
if x . VerificationType != "" {
value := protoreflect . ValueOfString ( x . VerificationType )
if ! f ( fd_Verification_verification_type , value ) {
2024-07-05 22:20:13 -04:00
return
}
}
2024-09-29 14:40:36 -04:00
if len ( x . Metadata ) != 0 {
value := protoreflect . ValueOfMap ( & _Verification_8_map { m : & x . Metadata } )
if ! f ( fd_Verification_metadata , value ) {
return
}
}
if x . CreationBlock != int64 ( 0 ) {
value := protoreflect . ValueOfInt64 ( x . CreationBlock )
if ! f ( fd_Verification_creation_block , value ) {
return
}
}
2024-07-05 22:20:13 -04:00
}
// Has reports whether a field is populated.
//
// Some fields have the property of nullability where it is possible to
// distinguish between the default value of a field and whether the field
// was explicitly populated with the default value. Singular message fields,
// member fields of a oneof, and proto2 scalar fields are nullable. Such
// fields are populated only if explicitly set.
//
// In other cases (aside from the nullable cases above),
// a proto3 scalar field is populated if it contains a non-zero value, and
// a repeated field is populated if it is non-empty.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) Has ( fd protoreflect . FieldDescriptor ) bool {
2024-07-05 22:20:13 -04:00
switch fd . FullName ( ) {
2024-09-25 19:45:28 -04:00
case "did.v1.Verification.did" :
return x . Did != ""
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.controller" :
2024-09-11 15:10:54 -04:00
return x . Controller != ""
2024-09-19 02:04:22 -04:00
case "did.v1.Verification.did_method" :
return x . DidMethod != ""
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.issuer" :
2024-09-11 15:10:54 -04:00
return x . Issuer != ""
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.subject" :
return x . Subject != ""
2024-11-18 19:04:10 -05:00
case "did.v1.Verification.public_key_hex" :
return x . PublicKeyHex != ""
2024-09-19 02:04:22 -04:00
case "did.v1.Verification.verification_type" :
return x . VerificationType != ""
2024-09-29 14:40:36 -04:00
case "did.v1.Verification.metadata" :
return len ( x . Metadata ) != 0
case "did.v1.Verification.creation_block" :
return x . CreationBlock != int64 ( 0 )
2024-07-05 22:20:13 -04:00
default :
if fd . IsExtension ( ) {
2024-09-18 17:27:30 -04:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Verification" ) )
2024-07-05 22:20:13 -04:00
}
2024-09-18 17:27:30 -04:00
panic ( fmt . Errorf ( "message did.v1.Verification does not contain field %s" , fd . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
}
// Clear clears the field such that a subsequent Has call reports false.
//
// Clearing an extension field clears both the extension type and value
// associated with the given field number.
//
// Clear is a mutating operation and unsafe for concurrent use.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) Clear ( fd protoreflect . FieldDescriptor ) {
2024-07-05 22:20:13 -04:00
switch fd . FullName ( ) {
2024-09-25 19:45:28 -04:00
case "did.v1.Verification.did" :
x . Did = ""
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.controller" :
2024-09-11 15:10:54 -04:00
x . Controller = ""
2024-09-19 02:04:22 -04:00
case "did.v1.Verification.did_method" :
x . DidMethod = ""
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.issuer" :
2024-09-11 15:10:54 -04:00
x . Issuer = ""
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.subject" :
x . Subject = ""
2024-11-18 19:04:10 -05:00
case "did.v1.Verification.public_key_hex" :
x . PublicKeyHex = ""
2024-09-19 02:04:22 -04:00
case "did.v1.Verification.verification_type" :
x . VerificationType = ""
2024-09-29 14:40:36 -04:00
case "did.v1.Verification.metadata" :
x . Metadata = nil
case "did.v1.Verification.creation_block" :
x . CreationBlock = int64 ( 0 )
2024-07-05 22:20:13 -04:00
default :
if fd . IsExtension ( ) {
2024-09-18 17:27:30 -04:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Verification" ) )
2024-07-05 22:20:13 -04:00
}
2024-09-18 17:27:30 -04:00
panic ( fmt . Errorf ( "message did.v1.Verification does not contain field %s" , fd . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
}
// Get retrieves the value for a field.
//
// For unpopulated scalars, it returns the default value, where
// the default value of a bytes scalar is guaranteed to be a copy.
// For unpopulated composite types, it returns an empty, read-only view
// of the value; to obtain a mutable reference, use Mutable.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) Get ( descriptor protoreflect . FieldDescriptor ) protoreflect . Value {
2024-07-05 22:20:13 -04:00
switch descriptor . FullName ( ) {
2024-09-25 19:45:28 -04:00
case "did.v1.Verification.did" :
value := x . Did
2024-07-05 22:20:13 -04:00
return protoreflect . ValueOfString ( value )
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.controller" :
2024-09-11 15:10:54 -04:00
value := x . Controller
2024-07-06 03:02:45 -04:00
return protoreflect . ValueOfString ( value )
2024-09-19 02:04:22 -04:00
case "did.v1.Verification.did_method" :
value := x . DidMethod
return protoreflect . ValueOfString ( value )
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.issuer" :
2024-09-11 15:10:54 -04:00
value := x . Issuer
return protoreflect . ValueOfString ( value )
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.subject" :
value := x . Subject
return protoreflect . ValueOfString ( value )
2024-11-18 19:04:10 -05:00
case "did.v1.Verification.public_key_hex" :
value := x . PublicKeyHex
return protoreflect . ValueOfString ( value )
2024-09-19 02:04:22 -04:00
case "did.v1.Verification.verification_type" :
value := x . VerificationType
2024-07-05 22:20:13 -04:00
return protoreflect . ValueOfString ( value )
2024-09-29 14:40:36 -04:00
case "did.v1.Verification.metadata" :
if len ( x . Metadata ) == 0 {
return protoreflect . ValueOfMap ( & _Verification_8_map { } )
}
mapValue := & _Verification_8_map { m : & x . Metadata }
return protoreflect . ValueOfMap ( mapValue )
case "did.v1.Verification.creation_block" :
value := x . CreationBlock
return protoreflect . ValueOfInt64 ( value )
2024-07-05 22:20:13 -04:00
default :
if descriptor . IsExtension ( ) {
2024-09-18 17:27:30 -04:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Verification" ) )
2024-07-05 22:20:13 -04:00
}
2024-09-18 17:27:30 -04:00
panic ( fmt . Errorf ( "message did.v1.Verification does not contain field %s" , descriptor . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
}
// Set stores the value for a field.
//
// For a field belonging to a oneof, it implicitly clears any other field
// that may be currently set within the same oneof.
// For extension fields, it implicitly stores the provided ExtensionType.
// When setting a composite type, it is unspecified whether the stored value
// aliases the source's memory in any way. If the composite value is an
// empty, read-only value, then it panics.
//
// Set is a mutating operation and unsafe for concurrent use.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) Set ( fd protoreflect . FieldDescriptor , value protoreflect . Value ) {
2024-07-05 22:20:13 -04:00
switch fd . FullName ( ) {
2024-09-25 19:45:28 -04:00
case "did.v1.Verification.did" :
x . Did = value . Interface ( ) . ( string )
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.controller" :
2024-09-11 15:10:54 -04:00
x . Controller = value . Interface ( ) . ( string )
2024-09-19 02:04:22 -04:00
case "did.v1.Verification.did_method" :
x . DidMethod = value . Interface ( ) . ( string )
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.issuer" :
2024-09-11 15:10:54 -04:00
x . Issuer = value . Interface ( ) . ( string )
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.subject" :
x . Subject = value . Interface ( ) . ( string )
2024-11-18 19:04:10 -05:00
case "did.v1.Verification.public_key_hex" :
x . PublicKeyHex = value . Interface ( ) . ( string )
2024-09-19 02:04:22 -04:00
case "did.v1.Verification.verification_type" :
x . VerificationType = value . Interface ( ) . ( string )
2024-09-29 14:40:36 -04:00
case "did.v1.Verification.metadata" :
mv := value . Map ( )
cmv := mv . ( * _Verification_8_map )
x . Metadata = * cmv . m
case "did.v1.Verification.creation_block" :
x . CreationBlock = value . Int ( )
2024-07-05 22:20:13 -04:00
default :
if fd . IsExtension ( ) {
2024-09-18 17:27:30 -04:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Verification" ) )
2024-07-05 22:20:13 -04:00
}
2024-09-18 17:27:30 -04:00
panic ( fmt . Errorf ( "message did.v1.Verification does not contain field %s" , fd . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
}
// Mutable returns a mutable reference to a composite type.
//
// If the field is unpopulated, it may allocate a composite value.
// For a field belonging to a oneof, it implicitly clears any other field
// that may be currently set within the same oneof.
// For extension fields, it implicitly stores the provided ExtensionType
// if not already stored.
// It panics if the field does not contain a composite type.
//
// Mutable is a mutating operation and unsafe for concurrent use.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) Mutable ( fd protoreflect . FieldDescriptor ) protoreflect . Value {
2024-07-05 22:20:13 -04:00
switch fd . FullName ( ) {
2024-09-29 14:40:36 -04:00
case "did.v1.Verification.metadata" :
if x . Metadata == nil {
x . Metadata = make ( map [ string ] string )
}
value := & _Verification_8_map { m : & x . Metadata }
return protoreflect . ValueOfMap ( value )
2024-09-25 19:45:28 -04:00
case "did.v1.Verification.did" :
panic ( fmt . Errorf ( "field did of message did.v1.Verification is not mutable" ) )
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.controller" :
panic ( fmt . Errorf ( "field controller of message did.v1.Verification is not mutable" ) )
2024-09-19 02:04:22 -04:00
case "did.v1.Verification.did_method" :
panic ( fmt . Errorf ( "field did_method of message did.v1.Verification is not mutable" ) )
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.issuer" :
panic ( fmt . Errorf ( "field issuer of message did.v1.Verification is not mutable" ) )
case "did.v1.Verification.subject" :
panic ( fmt . Errorf ( "field subject of message did.v1.Verification is not mutable" ) )
2024-11-18 19:04:10 -05:00
case "did.v1.Verification.public_key_hex" :
panic ( fmt . Errorf ( "field public_key_hex of message did.v1.Verification is not mutable" ) )
2024-09-19 02:04:22 -04:00
case "did.v1.Verification.verification_type" :
panic ( fmt . Errorf ( "field verification_type of message did.v1.Verification is not mutable" ) )
2024-09-29 14:40:36 -04:00
case "did.v1.Verification.creation_block" :
panic ( fmt . Errorf ( "field creation_block of message did.v1.Verification is not mutable" ) )
2024-07-05 22:20:13 -04:00
default :
if fd . IsExtension ( ) {
2024-09-18 17:27:30 -04:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Verification" ) )
2024-07-05 22:20:13 -04:00
}
2024-09-18 17:27:30 -04:00
panic ( fmt . Errorf ( "message did.v1.Verification does not contain field %s" , fd . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
}
// NewField returns a new value that is assignable to the field
// for the given descriptor. For scalars, this returns the default value.
// For lists, maps, and messages, this returns a new, empty, mutable value.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) NewField ( fd protoreflect . FieldDescriptor ) protoreflect . Value {
2024-07-05 22:20:13 -04:00
switch fd . FullName ( ) {
2024-09-25 19:45:28 -04:00
case "did.v1.Verification.did" :
2024-07-05 22:20:13 -04:00
return protoreflect . ValueOfString ( "" )
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.controller" :
return protoreflect . ValueOfString ( "" )
2024-09-19 02:04:22 -04:00
case "did.v1.Verification.did_method" :
return protoreflect . ValueOfString ( "" )
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.issuer" :
2024-07-06 03:02:45 -04:00
return protoreflect . ValueOfString ( "" )
2024-09-18 17:27:30 -04:00
case "did.v1.Verification.subject" :
2024-07-05 22:20:13 -04:00
return protoreflect . ValueOfString ( "" )
2024-11-18 19:04:10 -05:00
case "did.v1.Verification.public_key_hex" :
return protoreflect . ValueOfString ( "" )
2024-09-19 02:04:22 -04:00
case "did.v1.Verification.verification_type" :
2024-09-11 15:10:54 -04:00
return protoreflect . ValueOfString ( "" )
2024-09-29 14:40:36 -04:00
case "did.v1.Verification.metadata" :
m := make ( map [ string ] string )
return protoreflect . ValueOfMap ( & _Verification_8_map { m : & m } )
case "did.v1.Verification.creation_block" :
return protoreflect . ValueOfInt64 ( int64 ( 0 ) )
2024-07-05 22:20:13 -04:00
default :
if fd . IsExtension ( ) {
2024-09-18 17:27:30 -04:00
panic ( fmt . Errorf ( "proto3 declared messages do not support extensions: did.v1.Verification" ) )
2024-07-05 22:20:13 -04:00
}
2024-09-18 17:27:30 -04:00
panic ( fmt . Errorf ( "message did.v1.Verification does not contain field %s" , fd . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
}
// WhichOneof reports which field within the oneof is populated,
// returning nil if none are populated.
// It panics if the oneof descriptor does not belong to this message.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) WhichOneof ( d protoreflect . OneofDescriptor ) protoreflect . FieldDescriptor {
2024-07-05 22:20:13 -04:00
switch d . FullName ( ) {
default :
2024-09-18 17:27:30 -04:00
panic ( fmt . Errorf ( "%s is not a oneof field in did.v1.Verification" , d . FullName ( ) ) )
2024-07-05 22:20:13 -04:00
}
panic ( "unreachable" )
}
// GetUnknown retrieves the entire list of unknown fields.
// The caller may only mutate the contents of the RawFields
// if the mutated bytes are stored back into the message with SetUnknown.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) GetUnknown ( ) protoreflect . RawFields {
2024-07-05 22:20:13 -04:00
return x . unknownFields
}
// SetUnknown stores an entire list of unknown fields.
// The raw fields must be syntactically valid according to the wire format.
// An implementation may panic if this is not the case.
// Once stored, the caller must not mutate the content of the RawFields.
// An empty RawFields may be passed to clear the fields.
//
// SetUnknown is a mutating operation and unsafe for concurrent use.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) SetUnknown ( fields protoreflect . RawFields ) {
2024-07-05 22:20:13 -04:00
x . unknownFields = fields
}
// IsValid reports whether the message is valid.
//
// An invalid message is an empty, read-only value.
//
// An invalid message often corresponds to a nil pointer of the concrete
// message type, but the details are implementation dependent.
// Validity is not part of the protobuf data model, and may not
// be preserved in marshaling or other operations.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) IsValid ( ) bool {
2024-07-05 22:20:13 -04:00
return x != nil
}
// ProtoMethods returns optional fastReflectionFeature-path implementations of various operations.
// This method may return nil.
//
// The returned methods type is identical to
// "google.golang.org/protobuf/runtime/protoiface".Methods.
// Consult the protoiface package documentation for details.
2024-09-18 17:27:30 -04:00
func ( x * fastReflection_Verification ) ProtoMethods ( ) * protoiface . Methods {
2024-07-05 22:20:13 -04:00
size := func ( input protoiface . SizeInput ) protoiface . SizeOutput {
2024-09-18 17:27:30 -04:00
x := input . Message . Interface ( ) . ( * Verification )
2024-07-05 22:20:13 -04:00
if x == nil {
return protoiface . SizeOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Size : 0 ,
}
}
options := runtime . SizeInputToOptions ( input )
_ = options
var n int
var l int
_ = l
2024-09-25 19:45:28 -04:00
l = len ( x . Did )
2024-07-05 22:20:13 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-09-11 15:10:54 -04:00
l = len ( x . Controller )
2024-07-05 22:20:13 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-09-19 02:04:22 -04:00
l = len ( x . DidMethod )
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
2024-09-18 17:27:30 -04:00
}
2024-09-11 15:10:54 -04:00
l = len ( x . Issuer )
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
}
2024-09-18 17:27:30 -04:00
l = len ( x . Subject )
2024-09-11 15:10:54 -04:00
if l > 0 {
2024-07-05 22:20:13 -04:00
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-11-18 19:04:10 -05:00
l = len ( x . PublicKeyHex )
if l > 0 {
2024-09-11 15:10:54 -04:00
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-09-19 02:04:22 -04:00
l = len ( x . VerificationType )
2024-07-05 22:20:13 -04:00
if l > 0 {
n += 1 + l + runtime . Sov ( uint64 ( l ) )
}
2024-09-29 14:40:36 -04:00
if len ( x . Metadata ) > 0 {
SiZeMaP := func ( k string , v string ) {
mapEntrySize := 1 + len ( k ) + runtime . Sov ( uint64 ( len ( k ) ) ) + 1 + len ( v ) + runtime . Sov ( uint64 ( len ( v ) ) )
n += mapEntrySize + 1 + runtime . Sov ( uint64 ( mapEntrySize ) )
}
if options . Deterministic {
sortme := make ( [ ] string , 0 , len ( x . Metadata ) )
for k := range x . Metadata {
sortme = append ( sortme , k )
}
sort . Strings ( sortme )
for _ , k := range sortme {
v := x . Metadata [ k ]
SiZeMaP ( k , v )
}
} else {
for k , v := range x . Metadata {
SiZeMaP ( k , v )
}
}
}
if x . CreationBlock != 0 {
n += 1 + runtime . Sov ( uint64 ( x . CreationBlock ) )
}
2024-07-05 22:20:13 -04:00
if x . unknownFields != nil {
n += len ( x . unknownFields )
}
return protoiface . SizeOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Size : n ,
}
}
marshal := func ( input protoiface . MarshalInput ) ( protoiface . MarshalOutput , error ) {
2024-09-18 17:27:30 -04:00
x := input . Message . Interface ( ) . ( * Verification )
2024-07-05 22:20:13 -04:00
if x == nil {
return protoiface . MarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Buf : input . Buf ,
} , nil
}
options := runtime . MarshalInputToOptions ( input )
_ = options
size := options . Size ( x )
dAtA := make ( [ ] byte , size )
i := len ( dAtA )
_ = i
var l int
_ = l
if x . unknownFields != nil {
i -= len ( x . unknownFields )
copy ( dAtA [ i : ] , x . unknownFields )
}
2024-09-29 14:40:36 -04:00
if x . CreationBlock != 0 {
i = runtime . EncodeVarint ( dAtA , i , uint64 ( x . CreationBlock ) )
i --
dAtA [ i ] = 0x48
}
if len ( x . Metadata ) > 0 {
MaRsHaLmAp := func ( k string , v string ) ( protoiface . MarshalOutput , error ) {
baseI := i
i -= len ( v )
copy ( dAtA [ i : ] , v )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( v ) ) )
i --
dAtA [ i ] = 0x12
i -= len ( k )
copy ( dAtA [ i : ] , k )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( k ) ) )
i --
dAtA [ i ] = 0xa
i = runtime . EncodeVarint ( dAtA , i , uint64 ( baseI - i ) )
i --
dAtA [ i ] = 0x42
return protoiface . MarshalOutput { } , nil
}
if options . Deterministic {
keysForMetadata := make ( [ ] string , 0 , len ( x . Metadata ) )
for k := range x . Metadata {
keysForMetadata = append ( keysForMetadata , string ( k ) )
}
sort . Slice ( keysForMetadata , func ( i , j int ) bool {
return keysForMetadata [ i ] < keysForMetadata [ j ]
} )
for iNdEx := len ( keysForMetadata ) - 1 ; iNdEx >= 0 ; iNdEx -- {
v := x . Metadata [ string ( keysForMetadata [ iNdEx ] ) ]
out , err := MaRsHaLmAp ( keysForMetadata [ iNdEx ] , v )
if err != nil {
return out , err
}
}
} else {
for k := range x . Metadata {
v := x . Metadata [ k ]
out , err := MaRsHaLmAp ( k , v )
if err != nil {
return out , err
}
}
}
}
2024-09-19 02:04:22 -04:00
if len ( x . VerificationType ) > 0 {
i -= len ( x . VerificationType )
copy ( dAtA [ i : ] , x . VerificationType )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . VerificationType ) ) )
2024-09-11 15:10:54 -04:00
i --
2024-09-18 17:27:30 -04:00
dAtA [ i ] = 0x3a
2024-09-11 15:10:54 -04:00
}
2024-11-18 19:04:10 -05:00
if len ( x . PublicKeyHex ) > 0 {
i -= len ( x . PublicKeyHex )
copy ( dAtA [ i : ] , x . PublicKeyHex )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . PublicKeyHex ) ) )
2024-07-05 22:20:13 -04:00
i --
2024-09-18 17:27:30 -04:00
dAtA [ i ] = 0x32
2024-07-05 22:20:13 -04:00
}
2024-09-18 17:27:30 -04:00
if len ( x . Subject ) > 0 {
i -= len ( x . Subject )
copy ( dAtA [ i : ] , x . Subject )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Subject ) ) )
2024-07-05 22:20:13 -04:00
i --
2024-09-18 17:27:30 -04:00
dAtA [ i ] = 0x2a
2024-07-05 22:20:13 -04:00
}
2024-09-11 15:10:54 -04:00
if len ( x . Issuer ) > 0 {
i -= len ( x . Issuer )
copy ( dAtA [ i : ] , x . Issuer )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Issuer ) ) )
i --
2024-09-18 17:27:30 -04:00
dAtA [ i ] = 0x22
}
2024-09-19 02:04:22 -04:00
if len ( x . DidMethod ) > 0 {
i -= len ( x . DidMethod )
copy ( dAtA [ i : ] , x . DidMethod )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . DidMethod ) ) )
2024-09-18 17:27:30 -04:00
i --
2024-09-19 02:04:22 -04:00
dAtA [ i ] = 0x1a
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
}
2024-09-11 15:10:54 -04:00
if len ( x . Controller ) > 0 {
i -= len ( x . Controller )
copy ( dAtA [ i : ] , x . Controller )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Controller ) ) )
2024-07-05 22:20:13 -04:00
i --
dAtA [ i ] = 0x12
}
2024-09-25 19:45:28 -04:00
if len ( x . Did ) > 0 {
i -= len ( x . Did )
copy ( dAtA [ i : ] , x . Did )
i = runtime . EncodeVarint ( dAtA , i , uint64 ( len ( x . Did ) ) )
2024-07-05 22:20:13 -04:00
i --
dAtA [ i ] = 0xa
}
if input . Buf != nil {
input . Buf = append ( input . Buf , dAtA ... )
} else {
input . Buf = dAtA
}
return protoiface . MarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Buf : input . Buf ,
} , nil
}
unmarshal := func ( input protoiface . UnmarshalInput ) ( protoiface . UnmarshalOutput , error ) {
2024-09-29 14:40:36 -04:00
x := input . Message . Interface ( ) . ( * Verification )
if x == nil {
return protoiface . UnmarshalOutput {
NoUnkeyedLiterals : input . NoUnkeyedLiterals ,
Flags : input . Flags ,
} , nil
}
options := runtime . UnmarshalInputToOptions ( input )
_ = options
dAtA := input . Buf
l := len ( dAtA )
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
wire |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
fieldNum := int32 ( wire >> 3 )
wireType := int ( wire & 0x7 )
if wireType == 4 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: Verification: wiretype end group for non-group" )
}
if fieldNum <= 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: Verification: illegal tag %d (wire type %d)" , fieldNum , wire )
}
switch fieldNum {
case 1 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Did" , wireType )
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . Did = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 2 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Controller" , wireType )
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . Controller = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 3 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field DidMethod" , wireType )
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . DidMethod = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 4 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Issuer" , wireType )
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . Issuer = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 5 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Subject" , wireType )
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . Subject = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 6 :
if wireType != 2 {
2024-11-18 19:04:10 -05:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field PublicKeyHex" , wireType )
2024-09-29 14:40:36 -04:00
}
2024-11-18 19:04:10 -05:00
var stringLen uint64
2024-09-29 14:40:36 -04:00
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
2024-11-18 19:04:10 -05:00
stringLen |= uint64 ( b & 0x7F ) << shift
2024-09-29 14:40:36 -04:00
if b < 0x80 {
break
}
}
2024-11-18 19:04:10 -05:00
intStringLen := int ( stringLen )
if intStringLen < 0 {
2024-09-29 14:40:36 -04:00
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
2024-11-18 19:04:10 -05:00
postIndex := iNdEx + intStringLen
2024-09-29 14:40:36 -04:00
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
2024-11-18 19:04:10 -05:00
x . PublicKeyHex = string ( dAtA [ iNdEx : postIndex ] )
2024-09-29 14:40:36 -04:00
iNdEx = postIndex
case 7 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field VerificationType" , wireType )
}
var stringLen uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLen |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLen := int ( stringLen )
if intStringLen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
x . VerificationType = string ( dAtA [ iNdEx : postIndex ] )
iNdEx = postIndex
case 8 :
if wireType != 2 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field Metadata" , wireType )
}
var msglen int
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
msglen |= int ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postIndex := iNdEx + msglen
if postIndex < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postIndex > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
if x . Metadata == nil {
x . Metadata = make ( map [ string ] string )
}
var mapkey string
var mapvalue string
for iNdEx < postIndex {
entryPreIndex := iNdEx
var wire uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
wire |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
fieldNum := int32 ( wire >> 3 )
if fieldNum == 1 {
var stringLenmapkey uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLenmapkey |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLenmapkey := int ( stringLenmapkey )
if intStringLenmapkey < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postStringIndexmapkey := iNdEx + intStringLenmapkey
if postStringIndexmapkey < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postStringIndexmapkey > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
mapkey = string ( dAtA [ iNdEx : postStringIndexmapkey ] )
iNdEx = postStringIndexmapkey
} else if fieldNum == 2 {
var stringLenmapvalue uint64
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
stringLenmapvalue |= uint64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
intStringLenmapvalue := int ( stringLenmapvalue )
if intStringLenmapvalue < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
postStringIndexmapvalue := iNdEx + intStringLenmapvalue
if postStringIndexmapvalue < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if postStringIndexmapvalue > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
mapvalue = string ( dAtA [ iNdEx : postStringIndexmapvalue ] )
iNdEx = postStringIndexmapvalue
} else {
iNdEx = entryPreIndex
skippy , err := runtime . Skip ( dAtA [ iNdEx : ] )
if err != nil {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , err
}
if ( skippy < 0 ) || ( iNdEx + skippy ) < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if ( iNdEx + skippy ) > postIndex {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
iNdEx += skippy
}
}
x . Metadata [ mapkey ] = mapvalue
iNdEx = postIndex
case 9 :
if wireType != 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , fmt . Errorf ( "proto: wrong wireType = %d for field CreationBlock" , wireType )
}
x . CreationBlock = 0
for shift := uint ( 0 ) ; ; shift += 7 {
if shift >= 64 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrIntOverflow
}
if iNdEx >= l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
b := dAtA [ iNdEx ]
iNdEx ++
x . CreationBlock |= int64 ( b & 0x7F ) << shift
if b < 0x80 {
break
}
}
default :
iNdEx = preIndex
skippy , err := runtime . Skip ( dAtA [ iNdEx : ] )
if err != nil {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , err
}
if ( skippy < 0 ) || ( iNdEx + skippy ) < 0 {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , runtime . ErrInvalidLength
}
if ( iNdEx + skippy ) > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
if ! options . DiscardUnknown {
x . unknownFields = append ( x . unknownFields , dAtA [ iNdEx : iNdEx + skippy ] ... )
}
iNdEx += skippy
}
}
if iNdEx > l {
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , io . ErrUnexpectedEOF
}
return protoiface . UnmarshalOutput { NoUnkeyedLiterals : input . NoUnkeyedLiterals , Flags : input . Flags } , nil
}
return & protoiface . Methods {
NoUnkeyedLiterals : struct { } { } ,
Flags : protoiface . SupportMarshalDeterministic | protoiface . SupportUnmarshalDiscardUnknown ,
Size : size ,
Marshal : marshal ,
Unmarshal : unmarshal ,
Merge : nil ,
CheckInitialized : nil ,
}
}
2024-09-27 20:58:05 -04:00
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.27.0
// protoc (unknown)
// source: did/v1/state.proto
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl . EnforceVersion ( 20 - protoimpl . MinVersion )
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl . EnforceVersion ( protoimpl . MaxVersion - 20 )
)
2024-10-15 14:31:19 -04:00
type Assertion struct {
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
// The unique identifier of the assertion
Did string ` protobuf:"bytes,1,opt,name=did,proto3" json:"did,omitempty" `
// The authentication of the DID
Controller string ` protobuf:"bytes,2,opt,name=controller,proto3" json:"controller,omitempty" `
// Origin of the authentication
Subject string ` protobuf:"bytes,3,opt,name=subject,proto3" json:"subject,omitempty" `
2024-11-18 19:04:10 -05:00
// string is the verification method
PublicKeyHex string ` protobuf:"bytes,4,opt,name=public_key_hex,json=publicKeyHex,proto3" json:"public_key_hex,omitempty" `
2024-10-15 14:31:19 -04:00
// AssertionType is the assertion type
AssertionType string ` protobuf:"bytes,5,opt,name=assertion_type,json=assertionType,proto3" json:"assertion_type,omitempty" `
// Metadata of the authentication
Accumulator map [ string ] [ ] byte ` protobuf:"bytes,6,rep,name=accumulator,proto3" json:"accumulator,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3" `
// CreationBlock is the block number of the creation of the authentication
CreationBlock int64 ` protobuf:"varint,7,opt,name=creation_block,json=creationBlock,proto3" json:"creation_block,omitempty" `
}
func ( x * Assertion ) Reset ( ) {
* x = Assertion { }
if protoimpl . UnsafeEnabled {
mi := & file_did_v1_state_proto_msgTypes [ 0 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
}
func ( x * Assertion ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
}
func ( * Assertion ) ProtoMessage ( ) { }
// Deprecated: Use Assertion.ProtoReflect.Descriptor instead.
func ( * Assertion ) Descriptor ( ) ( [ ] byte , [ ] int ) {
return file_did_v1_state_proto_rawDescGZIP ( ) , [ ] int { 0 }
}
func ( x * Assertion ) GetDid ( ) string {
if x != nil {
return x . Did
}
return ""
}
func ( x * Assertion ) GetController ( ) string {
if x != nil {
return x . Controller
}
return ""
}
func ( x * Assertion ) GetSubject ( ) string {
if x != nil {
return x . Subject
}
return ""
}
2024-11-18 19:04:10 -05:00
func ( x * Assertion ) GetPublicKeyHex ( ) string {
2024-10-15 14:31:19 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . PublicKeyHex
2024-10-15 14:31:19 -04:00
}
2024-11-18 19:04:10 -05:00
return ""
2024-10-15 14:31:19 -04:00
}
func ( x * Assertion ) GetAssertionType ( ) string {
if x != nil {
return x . AssertionType
}
return ""
}
func ( x * Assertion ) GetAccumulator ( ) map [ string ] [ ] byte {
if x != nil {
return x . Accumulator
}
return nil
}
func ( x * Assertion ) GetCreationBlock ( ) int64 {
if x != nil {
return x . CreationBlock
}
return 0
}
2024-09-27 20:58:05 -04:00
type Authentication struct {
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
// The unique identifier of the authentication
Did string ` protobuf:"bytes,1,opt,name=did,proto3" json:"did,omitempty" `
// The authentication of the DID
Controller string ` protobuf:"bytes,2,opt,name=controller,proto3" json:"controller,omitempty" `
// Origin of the authentication
Subject string ` protobuf:"bytes,3,opt,name=subject,proto3" json:"subject,omitempty" `
2024-11-18 19:04:10 -05:00
// string is the verification method
PublicKeyHex string ` protobuf:"bytes,4,opt,name=public_key_hex,json=publicKeyHex,proto3" json:"public_key_hex,omitempty" `
2024-09-29 14:40:36 -04:00
// CredentialID is the byte representation of the credential ID
CredentialId [ ] byte ` protobuf:"bytes,5,opt,name=credential_id,json=credentialId,proto3" json:"credential_id,omitempty" `
// Metadata of the authentication
Metadata map [ string ] string ` protobuf:"bytes,6,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3" `
// CreationBlock is the block number of the creation of the authentication
CreationBlock int64 ` protobuf:"varint,7,opt,name=creation_block,json=creationBlock,proto3" json:"creation_block,omitempty" `
2024-09-27 20:58:05 -04:00
}
func ( x * Authentication ) Reset ( ) {
* x = Authentication { }
if protoimpl . UnsafeEnabled {
2024-10-15 14:31:19 -04:00
mi := & file_did_v1_state_proto_msgTypes [ 1 ]
2024-09-27 20:58:05 -04:00
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
}
func ( x * Authentication ) String ( ) string {
return protoimpl . X . MessageStringOf ( x )
}
func ( * Authentication ) ProtoMessage ( ) { }
// Deprecated: Use Authentication.ProtoReflect.Descriptor instead.
func ( * Authentication ) Descriptor ( ) ( [ ] byte , [ ] int ) {
2024-10-15 14:31:19 -04:00
return file_did_v1_state_proto_rawDescGZIP ( ) , [ ] int { 1 }
2024-09-27 20:58:05 -04:00
}
func ( x * Authentication ) GetDid ( ) string {
if x != nil {
return x . Did
}
return ""
}
func ( x * Authentication ) GetController ( ) string {
if x != nil {
return x . Controller
}
return ""
}
func ( x * Authentication ) GetSubject ( ) string {
if x != nil {
return x . Subject
}
return ""
}
2024-11-18 19:04:10 -05:00
func ( x * Authentication ) GetPublicKeyHex ( ) string {
2024-09-27 20:58:05 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . PublicKeyHex
2024-09-27 20:58:05 -04:00
}
2024-11-18 19:04:10 -05:00
return ""
2024-09-27 20:58:05 -04:00
}
2024-09-29 14:40:36 -04:00
func ( x * Authentication ) GetCredentialId ( ) [ ] byte {
if x != nil {
return x . CredentialId
}
return nil
}
func ( x * Authentication ) GetMetadata ( ) map [ string ] string {
if x != nil {
return x . Metadata
}
return nil
}
func ( x * Authentication ) GetCreationBlock ( ) int64 {
if x != nil {
return x . CreationBlock
}
return 0
}
2024-11-18 19:04:10 -05:00
// Macaroon is a Macaroon message type.
type Biscuit struct {
2024-09-27 20:58:05 -04:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2024-11-18 19:04:10 -05:00
Id uint64 ` protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty" `
Controller string ` protobuf:"bytes,2,opt,name=controller,proto3" json:"controller,omitempty" `
Subject string ` protobuf:"bytes,3,opt,name=subject,proto3" json:"subject,omitempty" `
Origin string ` protobuf:"bytes,4,opt,name=origin,proto3" json:"origin,omitempty" `
ExpiryHeight int64 ` protobuf:"varint,5,opt,name=expiry_height,json=expiryHeight,proto3" json:"expiry_height,omitempty" `
Macaroon string ` protobuf:"bytes,6,opt,name=macaroon,proto3" json:"macaroon,omitempty" `
2024-09-27 20:58:05 -04:00
}
2024-11-18 19:04:10 -05:00
func ( x * Biscuit ) Reset ( ) {
* x = Biscuit { }
2024-09-27 20:58:05 -04:00
if protoimpl . UnsafeEnabled {
2024-10-15 14:31:19 -04:00
mi := & file_did_v1_state_proto_msgTypes [ 2 ]
2024-09-27 20:58:05 -04:00
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
}
2024-11-18 19:04:10 -05:00
func ( x * Biscuit ) String ( ) string {
2024-09-27 20:58:05 -04:00
return protoimpl . X . MessageStringOf ( x )
}
2024-11-18 19:04:10 -05:00
func ( * Biscuit ) ProtoMessage ( ) { }
2024-09-27 20:58:05 -04:00
2024-11-18 19:04:10 -05:00
// Deprecated: Use Biscuit.ProtoReflect.Descriptor instead.
func ( * Biscuit ) Descriptor ( ) ( [ ] byte , [ ] int ) {
2024-10-15 14:31:19 -04:00
return file_did_v1_state_proto_rawDescGZIP ( ) , [ ] int { 2 }
2024-09-27 20:58:05 -04:00
}
2024-11-18 19:04:10 -05:00
func ( x * Biscuit ) GetId ( ) uint64 {
2024-09-27 20:58:05 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . Id
2024-09-27 20:58:05 -04:00
}
return 0
2024-09-25 19:45:28 -04:00
}
2024-11-18 19:04:10 -05:00
func ( x * Biscuit ) GetController ( ) string {
2024-09-19 02:04:22 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . Controller
2024-09-19 02:04:22 -04:00
}
return ""
}
2024-11-18 19:04:10 -05:00
func ( x * Biscuit ) GetSubject ( ) string {
2024-09-19 02:04:22 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . Subject
2024-09-19 02:04:22 -04:00
}
return ""
}
2024-11-18 19:04:10 -05:00
func ( x * Biscuit ) GetOrigin ( ) string {
2024-07-05 22:20:13 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . Origin
2024-07-05 22:20:13 -04:00
}
return ""
}
2024-11-18 19:04:10 -05:00
func ( x * Biscuit ) GetExpiryHeight ( ) int64 {
2024-09-29 14:40:36 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . ExpiryHeight
2024-09-29 14:40:36 -04:00
}
return 0
}
2024-11-18 19:04:10 -05:00
func ( x * Biscuit ) GetMacaroon ( ) string {
2024-07-05 22:20:13 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . Macaroon
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
return ""
2024-07-05 22:20:13 -04:00
}
2024-11-18 19:04:10 -05:00
// Controller represents a Sonr DWN Vault
type Controller struct {
2024-11-01 14:42:56 -04:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
2024-11-18 19:04:10 -05:00
// The unique identifier of the controller
Number uint64 ` protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty" `
// The unique identifier of the controller
Did string ` protobuf:"bytes,2,opt,name=did,proto3" json:"did,omitempty" `
// The DID of the controller
SonrAddress string ` protobuf:"bytes,3,opt,name=sonr_address,json=sonrAddress,proto3" json:"sonr_address,omitempty" `
// The DID of the controller
EthAddress string ` protobuf:"bytes,4,opt,name=eth_address,json=ethAddress,proto3" json:"eth_address,omitempty" `
// The DID of the controller
BtcAddress string ` protobuf:"bytes,5,opt,name=btc_address,json=btcAddress,proto3" json:"btc_address,omitempty" `
// string is the verification method
PublicKeyHex string ` protobuf:"bytes,6,opt,name=public_key_hex,json=publicKeyHex,proto3" json:"public_key_hex,omitempty" `
// Pointer to the Keyshares
KsVal string ` protobuf:"bytes,7,opt,name=ks_val,json=ksVal,proto3" json:"ks_val,omitempty" `
// The block number of when a user claimed the controller
ClaimedBlock int64 ` protobuf:"varint,8,opt,name=claimed_block,json=claimedBlock,proto3" json:"claimed_block,omitempty" `
// CreationBlock is the block number of the creation of the controller
CreationBlock int64 ` protobuf:"varint,9,opt,name=creation_block,json=creationBlock,proto3" json:"creation_block,omitempty" `
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
func ( x * Controller ) Reset ( ) {
* x = Controller { }
2024-11-01 14:42:56 -04:00
if protoimpl . UnsafeEnabled {
mi := & file_did_v1_state_proto_msgTypes [ 3 ]
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
}
2024-11-18 19:04:10 -05:00
func ( x * Controller ) String ( ) string {
2024-11-01 14:42:56 -04:00
return protoimpl . X . MessageStringOf ( x )
}
2024-11-18 19:04:10 -05:00
func ( * Controller ) ProtoMessage ( ) { }
2024-11-01 14:42:56 -04:00
2024-11-18 19:04:10 -05:00
// Deprecated: Use Controller.ProtoReflect.Descriptor instead.
func ( * Controller ) Descriptor ( ) ( [ ] byte , [ ] int ) {
2024-11-01 14:42:56 -04:00
return file_did_v1_state_proto_rawDescGZIP ( ) , [ ] int { 3 }
}
2024-11-18 19:04:10 -05:00
func ( x * Controller ) GetNumber ( ) uint64 {
2024-11-01 14:42:56 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . Number
2024-11-01 14:42:56 -04:00
}
return 0
}
2024-11-18 19:04:10 -05:00
func ( x * Controller ) GetDid ( ) string {
2024-11-01 14:42:56 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . Did
2024-11-01 14:42:56 -04:00
}
return ""
}
2024-11-18 19:04:10 -05:00
func ( x * Controller ) GetSonrAddress ( ) string {
2024-11-01 14:42:56 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . SonrAddress
2024-11-01 14:42:56 -04:00
}
return ""
}
2024-11-18 19:04:10 -05:00
func ( x * Controller ) GetEthAddress ( ) string {
2024-11-01 14:42:56 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . EthAddress
2024-11-01 14:42:56 -04:00
}
return ""
}
2024-11-18 19:04:10 -05:00
func ( x * Controller ) GetBtcAddress ( ) string {
2024-11-01 14:42:56 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . BtcAddress
2024-11-01 14:42:56 -04:00
}
return ""
}
2024-11-18 19:04:10 -05:00
func ( x * Controller ) GetPublicKeyHex ( ) string {
2024-11-01 14:42:56 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . PublicKeyHex
2024-11-01 14:42:56 -04:00
}
return ""
}
2024-11-18 19:04:10 -05:00
func ( x * Controller ) GetKsVal ( ) string {
2024-11-01 14:42:56 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . KsVal
2024-11-01 14:42:56 -04:00
}
return ""
}
2024-11-18 19:04:10 -05:00
func ( x * Controller ) GetClaimedBlock ( ) int64 {
2024-11-01 14:42:56 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . ClaimedBlock
2024-11-01 14:42:56 -04:00
}
return 0
}
2024-11-18 19:04:10 -05:00
func ( x * Controller ) GetCreationBlock ( ) int64 {
2024-11-01 14:42:56 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . CreationBlock
2024-11-01 14:42:56 -04:00
}
2024-11-18 19:04:10 -05:00
return 0
2024-11-01 14:42:56 -04:00
}
2024-09-29 14:40:36 -04:00
// Verification represents a verification method
2024-09-18 17:27:30 -04:00
type Verification struct {
2024-09-11 15:10:54 -04:00
state protoimpl . MessageState
sizeCache protoimpl . SizeCache
unknownFields protoimpl . UnknownFields
// The unique identifier of the verification
2024-09-25 19:45:28 -04:00
Did string ` protobuf:"bytes,1,opt,name=did,proto3" json:"did,omitempty" `
2024-09-11 15:10:54 -04:00
// The controller of the verification
Controller string ` protobuf:"bytes,2,opt,name=controller,proto3" json:"controller,omitempty" `
// The DIDNamespace of the verification
2024-09-19 02:04:22 -04:00
DidMethod string ` protobuf:"bytes,3,opt,name=did_method,json=didMethod,proto3" json:"did_method,omitempty" `
2024-09-11 15:10:54 -04:00
// The value of the linked identifier
Issuer string ` protobuf:"bytes,4,opt,name=issuer,proto3" json:"issuer,omitempty" `
// The subject of the verification
Subject string ` protobuf:"bytes,5,opt,name=subject,proto3" json:"subject,omitempty" `
// The public key of the verification
2024-11-18 19:04:10 -05:00
PublicKeyHex string ` protobuf:"bytes,6,opt,name=public_key_hex,json=publicKeyHex,proto3" json:"public_key_hex,omitempty" `
2024-09-29 14:40:36 -04:00
// The verification method type
2024-09-19 02:04:22 -04:00
VerificationType string ` protobuf:"bytes,7,opt,name=verification_type,json=verificationType,proto3" json:"verification_type,omitempty" `
2024-09-29 14:40:36 -04:00
// Metadata of the verification
Metadata map [ string ] string ` protobuf:"bytes,8,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3" `
// CreationBlock is the block number of the creation of the controller
CreationBlock int64 ` protobuf:"varint,9,opt,name=creation_block,json=creationBlock,proto3" json:"creation_block,omitempty" `
2024-09-11 15:10:54 -04:00
}
2024-09-18 17:27:30 -04:00
func ( x * Verification ) Reset ( ) {
* x = Verification { }
2024-09-11 15:10:54 -04:00
if protoimpl . UnsafeEnabled {
2024-11-18 19:04:10 -05:00
mi := & file_did_v1_state_proto_msgTypes [ 4 ]
2024-09-11 15:10:54 -04:00
ms := protoimpl . X . MessageStateOf ( protoimpl . Pointer ( x ) )
ms . StoreMessageInfo ( mi )
}
}
2024-09-18 17:27:30 -04:00
func ( x * Verification ) String ( ) string {
2024-09-11 15:10:54 -04:00
return protoimpl . X . MessageStringOf ( x )
}
2024-09-18 17:27:30 -04:00
func ( * Verification ) ProtoMessage ( ) { }
2024-09-11 15:10:54 -04:00
2024-09-18 17:27:30 -04:00
// Deprecated: Use Verification.ProtoReflect.Descriptor instead.
func ( * Verification ) Descriptor ( ) ( [ ] byte , [ ] int ) {
2024-11-18 19:04:10 -05:00
return file_did_v1_state_proto_rawDescGZIP ( ) , [ ] int { 4 }
2024-09-11 15:10:54 -04:00
}
2024-09-25 19:45:28 -04:00
func ( x * Verification ) GetDid ( ) string {
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
if x != nil {
2024-09-25 19:45:28 -04:00
return x . Did
2024-09-11 15:10:54 -04:00
}
return ""
}
2024-09-18 17:27:30 -04:00
func ( x * Verification ) GetController ( ) string {
2024-09-11 15:10:54 -04:00
if x != nil {
return x . Controller
}
return ""
}
2024-09-19 02:04:22 -04:00
func ( x * Verification ) GetDidMethod ( ) string {
2024-09-11 15:10:54 -04:00
if x != nil {
2024-09-19 02:04:22 -04:00
return x . DidMethod
2024-09-11 15:10:54 -04:00
}
2024-09-19 02:04:22 -04:00
return ""
2024-09-11 15:10:54 -04:00
}
2024-09-18 17:27:30 -04:00
func ( x * Verification ) GetIssuer ( ) string {
2024-09-11 15:10:54 -04:00
if x != nil {
return x . Issuer
}
return ""
}
2024-09-18 17:27:30 -04:00
func ( x * Verification ) GetSubject ( ) string {
2024-09-11 15:10:54 -04:00
if x != nil {
return x . Subject
}
return ""
}
2024-11-18 19:04:10 -05:00
func ( x * Verification ) GetPublicKeyHex ( ) string {
2024-09-11 15:10:54 -04:00
if x != nil {
2024-11-18 19:04:10 -05:00
return x . PublicKeyHex
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
}
2024-11-18 19:04:10 -05:00
return ""
Feature/update dockerfile (#6)
* chore: remove unused new.Dockerfile
* feat: add DID model definitions
* fix: Fix EncodePublicKey method in KeyInfo struct
* feat: Update `EncodePublicKey` to be the inverse of `DecodePublicKey`
* refactor: update AssetInfo protobuf definition
* fix: update default assets with correct asset types
* fix: Initialize IPFS client and check for mounted directories
* feat: Improve IPFS client initialization and mount checking
* feat: Add local filesystem check for IPFS and IPNS
* fix: Use Unixfs().Get() instead of Cat() for IPFS and IPNS content retrieval
* feat: Update GetCID and GetIPNS functions to read data from IPFS node
* fix: Ensure IPFS client is initialized before pinning CID
* feat: Add AddFile and AddFolder methods
* feat: add IPFS file system abstraction
* feat: Implement IPFS file, location, and filesystem abstractions
* refactor: remove unused functions and types
* refactor: remove unused FileSystem interface
* feat: add initial wasm entrypoint
* feat: add basic vault command operations
* docs: add vault module features
* test: remove test for MsgUpdateParams
* refactor: Replace PrimaryKey with Property struct in zkprop.go
* feat: Update the `CreateWitness` and `CreateAccumulator` and `VerifyWitness` and `UpdateAccumulator` to Use the new `Accumulator` and `Witness` types. Then Clean up the code in the file and refactor the marshalling methods
* <no value>
* feat: add KeyCurve and KeyType to KeyInfo in genesis
* feat: add WASM build step to devbox.json
* feat: Add zkgate.go file
* feat: Uncomment and modify zkgate code to work with Property struct
* feat: Merge zkgate.go and zkprop.go logic
* feat: implement API endpoints for profile management
* refactor: remove unused template file
* feat(orm): remove unused ORM models
* feat: add persistent SQLite database support in WASM
* fix: Update module names in protobuf files
* feat: Add method to initialize SQLite database
* fix: update go-sqlite3 dependency to version 1.14.23
* feat: introduce database layer
* feat: Implement database layer for Vault node
* feature/update-dockerfile
* feat: Add keyshares table
* fix: Reorder the SQL statements in the tables.go file
* feat: Update the `createCredentialsTable` method to match the proper Credential struct
* feat: Update createProfilesTable and add createPropertiesTable
* feat: Add constant SQL queries to queries.go and use prepared statements in db.go
* feat: Add createKeysharesTable to internal/db/db.go
* feat: Update `createPermissionsTable` to match Permissions struct
* feat: Add database enum types
* feat: Add DIDNamespace and PermissionScope enums
* feat: Add DBConfig and DBOption types
* feat: Update the db implementation to use the provided go library
* fix: update db implementation to use go-sqlite3 v0.18.2
* fix: Refactor database connection and statement handling
* feat: Simplify db.go implementation
* feat: Convert constant SQL queries to functions in queries.go and update db.go to use prepared statements
* feat: Add models.go file with database table structs
* fix: Remove unused statement map and prepare statements
diff --git a/internal/db/db.go b/internal/db/db.go
index 201d09b..d4d4d4e 100644
--- a/internal/db/db.go
+++ b/internal/db/db.go
@@ -32,11 +32,6 @@ func Open(config *DBConfig) (*DB, error) {
Conn: conn,
}
- if err := createTables(db); err != nil {
- conn.Close()
- return nil, fmt.Errorf("failed to create tables: %w", err)
- }
-
return db, nil
}
@@ -61,114 +56,3 @@ func createTables(db *DB) error {
return nil
}
-// AddAccount adds a new account to the database
-func (db *DB) AddAccount(name, address string) error {
- return db.Exec(insertAccountQuery(name, address))
-}
-
-// AddAsset adds a new asset to the database
-func (db *DB) AddAsset(name, symbol string, decimals int, chainID int64) error {
- return db.Exec(insertAssetQuery(name, symbol, decimals, chainID))
-}
-
-// AddChain adds a new chain to the database
-func (db *DB) AddChain(name, networkID string) error {
- return db.Exec(insertChainQuery(name, networkID))
-}
-
-// AddCredential adds a new credential to the database
-func (db *DB) AddCredential(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) error {
- return db.Exec(insertCredentialQuery(
- handle,
- controller,
- attestationType,
- origin,
- credentialID,
- publicKey,
- transport,
- signCount,
- userPresent,
- userVerified,
- backupEligible,
- backupState,
- cloneWarning,
- ))
-}
-
-// AddProfile adds a new profile to the database
-func (db *DB) AddProfile(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) error {
- return db.statements["insertProfile"].Exec(
- id, subject, controller, originURI, publicMetadata, privateMetadata,
- )
-}
-
-// AddProperty adds a new property to the database
-func (db *DB) AddProperty(
- profileID, key, accumulator, propertyKey string,
-) error {
- return db.statements["insertProperty"].Exec(
- profileID, key, accumulator, propertyKey,
- )
-}
-
-// AddPermission adds a new permission to the database
-func (db *DB) AddPermission(
- serviceID string,
- grants []DIDNamespace,
- scopes []PermissionScope,
-) error {
- grantsJSON, err := json.Marshal(grants)
- if err != nil {
- return fmt.Errorf("failed to marshal grants: %w", err)
- }
-
- scopesJSON, err := json.Marshal(scopes)
- if err != nil {
- return fmt.Errorf("failed to marshal scopes: %w", err)
- }
-
- return db.statements["insertPermission"].Exec(
- serviceID, string(grantsJSON), string(scopesJSON),
- )
-}
-
-// GetPermission retrieves the permission for the given service ID
-func (db *DB) GetPermission(serviceID string) ([]DIDNamespace, []PermissionScope, error) {
- row := db.statements["getPermission"].QueryRow(serviceID)
-
- var grantsJSON, scopesJSON string
- if err := row.Scan(&grantsJSON, &scopesJSON); err != nil {
- return nil, nil, fmt.Errorf("failed to get permission: %w", err)
- }
-
- var grants []DIDNamespace
- if err := json.Unmarshal([]byte(grantsJSON), &grants); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal grants: %w", err)
- }
-
- var scopes []PermissionScope
- if err := json.Unmarshal([]byte(scopesJSON), &scopes); err != nil {
- return nil, nil, fmt.Errorf("failed to unmarshal scopes: %w", err)
- }
-
- return grants, scopes, nil
-}
-
-// Close closes the database connection and finalizes all prepared statements
-func (db *DB) Close() error {
- for _, stmt := range db.statements {
- stmt.Finalize()
- }
- return db.Conn.Close()
-}
diff --git a/internal/db/queries.go b/internal/db/queries.go
index 807d701..e69de29 100644
--- a/internal/db/queries.go
+++ b/internal/db/queries.go
@@ -1,79 +0,0 @@
-package db
-
-import "fmt"
-
-// Account queries
-func insertAccountQuery(name, address string) string {
- return fmt.Sprintf(`INSERT INTO accounts (name, address) VALUES (%s, %s)`, name, address)
-}
-
-// Asset queries
-func insertAssetQuery(name, symbol string, decimals int, chainID int64) string {
- return fmt.Sprintf(
- `INSERT INTO assets (name, symbol, decimals, chain_id) VALUES (%s, %s, %d, %d)`,
- name,
- symbol,
- decimals,
- chainID,
- )
-}
-
-// Chain queries
-func insertChainQuery(name string, networkID string) string {
- return fmt.Sprintf(`INSERT INTO chains (name, network_id) VALUES (%s, %d)`, name, networkID)
-}
-
-// Credential queries
-func insertCredentialQuery(
- handle, controller, attestationType, origin string,
- credentialID, publicKey []byte,
- transport string,
- signCount uint32,
- userPresent, userVerified, backupEligible, backupState, cloneWarning bool,
-) string {
- return fmt.Sprintf(`INSERT INTO credentials (
- handle, controller, attestation_type, origin,
- credential_id, public_key, transport, sign_count,
- user_present, user_verified, backup_eligible,
- backup_state, clone_warning
- ) VALUES (%s, %s, %s, %s, %s, %s, %s, %d, %t, %t, %t, %t, %t)`,
- handle, controller, attestationType, origin,
- credentialID, publicKey, transport, signCount,
- userPresent, userVerified, backupEligible,
- backupState, cloneWarning)
-}
-
-// Profile queries
-func insertProfileQuery(
- id, subject, controller, originURI, publicMetadata, privateMetadata string,
-) string {
- return fmt.Sprintf(`INSERT INTO profiles (
- id, subject, controller, origin_uri,
- public_metadata, private_metadata
- ) VALUES (%s, %s, %s, %s, %s, %s)`,
- id, subject, controller, originURI,
- publicMetadata, privateMetadata)
-}
-
-// Property queries
-func insertPropertyQuery(profileID, key, accumulator, propertyKey string) string {
- return fmt.Sprintf(`INSERT INTO properties (
- profile_id, key, accumulator, property_key
- ) VALUES (%s, %s, %s, %s)`,
- profileID, key, accumulator, propertyKey)
-}
-
-// Permission queries
-func insertPermissionQuery(serviceID, grants, scopes string) string {
- return fmt.Sprintf(
- `INSERT INTO permissions (service_id, grants, scopes) VALUES (%s, %s, %s)`,
- serviceID,
- grants,
- scopes,
- )
-}
-
-// GetPermission query
-func getPermissionQuery(serviceID string) string {
- return fmt.Sprintf(`SELECT grants, scopes FROM permissions WHERE service_id = %s`, serviceID)
-}
* fix: update Makefile to use sonrd instead of wasmd
* feat: Add targets for templ and vault in Makefile and use only make in devbox.json
* feat: add SQLite database support
* bump: version 0.6.0 → 0.7.0
* refactor: upgrade actions to latest versions
2024-09-05 01:24:57 -04:00
}
2024-09-19 02:04:22 -04:00
func ( x * Verification ) GetVerificationType ( ) string {
2024-09-18 17:27:30 -04:00
if x != nil {
2024-09-19 02:04:22 -04:00
return x . VerificationType
2024-09-18 17:27:30 -04:00
}
return ""
}
2024-09-29 14:40:36 -04:00
func ( x * Verification ) GetMetadata ( ) map [ string ] string {
if x != nil {
return x . Metadata
}
return nil
}
func ( x * Verification ) GetCreationBlock ( ) int64 {
if x != nil {
return x . CreationBlock
}
return 0
}
2024-07-05 22:20:13 -04:00
var File_did_v1_state_proto protoreflect . FileDescriptor
var file_did_v1_state_proto_rawDesc = [ ] byte {
0x0a , 0x12 , 0x64 , 0x69 , 0x64 , 0x2f , 0x76 , 0x31 , 0x2f , 0x73 , 0x74 , 0x61 , 0x74 , 0x65 , 0x2e , 0x70 ,
0x72 , 0x6f , 0x74 , 0x6f , 0x12 , 0x06 , 0x64 , 0x69 , 0x64 , 0x2e , 0x76 , 0x31 , 0x1a , 0x17 , 0x63 , 0x6f ,
0x73 , 0x6d , 0x6f , 0x73 , 0x2f , 0x6f , 0x72 , 0x6d , 0x2f , 0x76 , 0x31 , 0x2f , 0x6f , 0x72 , 0x6d , 0x2e ,
2024-10-08 16:43:59 -04:00
0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x1a , 0x14 , 0x64 , 0x69 , 0x64 , 0x2f , 0x76 , 0x31 , 0x2f , 0x67 , 0x65 ,
2024-11-18 19:04:10 -05:00
0x6e , 0x65 , 0x73 , 0x69 , 0x73 , 0x2e , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x22 , 0xfc , 0x02 , 0x0a , 0x09 ,
2024-10-15 14:31:19 -04:00
0x41 , 0x73 , 0x73 , 0x65 , 0x72 , 0x74 , 0x69 , 0x6f , 0x6e , 0x12 , 0x10 , 0x0a , 0x03 , 0x64 , 0x69 , 0x64 ,
0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x03 , 0x64 , 0x69 , 0x64 , 0x12 , 0x1e , 0x0a , 0x0a , 0x63 ,
0x6f , 0x6e , 0x74 , 0x72 , 0x6f , 0x6c , 0x6c , 0x65 , 0x72 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 ,
0x0a , 0x63 , 0x6f , 0x6e , 0x74 , 0x72 , 0x6f , 0x6c , 0x6c , 0x65 , 0x72 , 0x12 , 0x18 , 0x0a , 0x07 , 0x73 ,
0x75 , 0x62 , 0x6a , 0x65 , 0x63 , 0x74 , 0x18 , 0x03 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x07 , 0x73 , 0x75 ,
2024-11-18 19:04:10 -05:00
0x62 , 0x6a , 0x65 , 0x63 , 0x74 , 0x12 , 0x24 , 0x0a , 0x0e , 0x70 , 0x75 , 0x62 , 0x6c , 0x69 , 0x63 , 0x5f ,
0x6b , 0x65 , 0x79 , 0x5f , 0x68 , 0x65 , 0x78 , 0x18 , 0x04 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x0c , 0x70 ,
0x75 , 0x62 , 0x6c , 0x69 , 0x63 , 0x4b , 0x65 , 0x79 , 0x48 , 0x65 , 0x78 , 0x12 , 0x25 , 0x0a , 0x0e , 0x61 ,
0x73 , 0x73 , 0x65 , 0x72 , 0x74 , 0x69 , 0x6f , 0x6e , 0x5f , 0x74 , 0x79 , 0x70 , 0x65 , 0x18 , 0x05 , 0x20 ,
0x01 , 0x28 , 0x09 , 0x52 , 0x0d , 0x61 , 0x73 , 0x73 , 0x65 , 0x72 , 0x74 , 0x69 , 0x6f , 0x6e , 0x54 , 0x79 ,
0x70 , 0x65 , 0x12 , 0x44 , 0x0a , 0x0b , 0x61 , 0x63 , 0x63 , 0x75 , 0x6d , 0x75 , 0x6c , 0x61 , 0x74 , 0x6f ,
0x72 , 0x18 , 0x06 , 0x20 , 0x03 , 0x28 , 0x0b , 0x32 , 0x22 , 0x2e , 0x64 , 0x69 , 0x64 , 0x2e , 0x76 , 0x31 ,
0x2e , 0x41 , 0x73 , 0x73 , 0x65 , 0x72 , 0x74 , 0x69 , 0x6f , 0x6e , 0x2e , 0x41 , 0x63 , 0x63 , 0x75 , 0x6d ,
0x75 , 0x6c , 0x61 , 0x74 , 0x6f , 0x72 , 0x45 , 0x6e , 0x74 , 0x72 , 0x79 , 0x52 , 0x0b , 0x61 , 0x63 , 0x63 ,
0x75 , 0x6d , 0x75 , 0x6c , 0x61 , 0x74 , 0x6f , 0x72 , 0x12 , 0x25 , 0x0a , 0x0e , 0x63 , 0x72 , 0x65 , 0x61 ,
2024-10-15 14:31:19 -04:00
0x74 , 0x69 , 0x6f , 0x6e , 0x5f , 0x62 , 0x6c , 0x6f , 0x63 , 0x6b , 0x18 , 0x07 , 0x20 , 0x01 , 0x28 , 0x03 ,
0x52 , 0x0d , 0x63 , 0x72 , 0x65 , 0x61 , 0x74 , 0x69 , 0x6f , 0x6e , 0x42 , 0x6c , 0x6f , 0x63 , 0x6b , 0x1a ,
2024-11-18 19:04:10 -05:00
0x3e , 0x0a , 0x10 , 0x41 , 0x63 , 0x63 , 0x75 , 0x6d , 0x75 , 0x6c , 0x61 , 0x74 , 0x6f , 0x72 , 0x45 , 0x6e ,
0x74 , 0x72 , 0x79 , 0x12 , 0x10 , 0x0a , 0x03 , 0x6b , 0x65 , 0x79 , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x09 ,
0x52 , 0x03 , 0x6b , 0x65 , 0x79 , 0x12 , 0x14 , 0x0a , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x18 , 0x02 ,
0x20 , 0x01 , 0x28 , 0x0c , 0x52 , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x3a , 0x02 , 0x38 , 0x01 , 0x3a ,
0x29 , 0xf2 , 0x9e , 0xd3 , 0x8e , 0x03 , 0x23 , 0x0a , 0x05 , 0x0a , 0x03 , 0x64 , 0x69 , 0x64 , 0x12 , 0x18 ,
0x0a , 0x12 , 0x63 , 0x6f , 0x6e , 0x74 , 0x72 , 0x6f , 0x6c , 0x6c , 0x65 , 0x72 , 0x2c , 0x73 , 0x75 , 0x62 ,
0x6a , 0x65 , 0x63 , 0x74 , 0x10 , 0x01 , 0x18 , 0x01 , 0x18 , 0x01 , 0x22 , 0xf8 , 0x02 , 0x0a , 0x0e , 0x41 ,
0x75 , 0x74 , 0x68 , 0x65 , 0x6e , 0x74 , 0x69 , 0x63 , 0x61 , 0x74 , 0x69 , 0x6f , 0x6e , 0x12 , 0x10 , 0x0a ,
0x03 , 0x64 , 0x69 , 0x64 , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x03 , 0x64 , 0x69 , 0x64 , 0x12 ,
0x1e , 0x0a , 0x0a , 0x63 , 0x6f , 0x6e , 0x74 , 0x72 , 0x6f , 0x6c , 0x6c , 0x65 , 0x72 , 0x18 , 0x02 , 0x20 ,
0x01 , 0x28 , 0x09 , 0x52 , 0x0a , 0x63 , 0x6f , 0x6e , 0x74 , 0x72 , 0x6f , 0x6c , 0x6c , 0x65 , 0x72 , 0x12 ,
0x18 , 0x0a , 0x07 , 0x73 , 0x75 , 0x62 , 0x6a , 0x65 , 0x63 , 0x74 , 0x18 , 0x03 , 0x20 , 0x01 , 0x28 , 0x09 ,
0x52 , 0x07 , 0x73 , 0x75 , 0x62 , 0x6a , 0x65 , 0x63 , 0x74 , 0x12 , 0x24 , 0x0a , 0x0e , 0x70 , 0x75 , 0x62 ,
0x6c , 0x69 , 0x63 , 0x5f , 0x6b , 0x65 , 0x79 , 0x5f , 0x68 , 0x65 , 0x78 , 0x18 , 0x04 , 0x20 , 0x01 , 0x28 ,
0x09 , 0x52 , 0x0c , 0x70 , 0x75 , 0x62 , 0x6c , 0x69 , 0x63 , 0x4b , 0x65 , 0x79 , 0x48 , 0x65 , 0x78 , 0x12 ,
0x23 , 0x0a , 0x0d , 0x63 , 0x72 , 0x65 , 0x64 , 0x65 , 0x6e , 0x74 , 0x69 , 0x61 , 0x6c , 0x5f , 0x69 , 0x64 ,
0x18 , 0x05 , 0x20 , 0x01 , 0x28 , 0x0c , 0x52 , 0x0c , 0x63 , 0x72 , 0x65 , 0x64 , 0x65 , 0x6e , 0x74 , 0x69 ,
0x61 , 0x6c , 0x49 , 0x64 , 0x12 , 0x40 , 0x0a , 0x08 , 0x6d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 ,
0x18 , 0x06 , 0x20 , 0x03 , 0x28 , 0x0b , 0x32 , 0x24 , 0x2e , 0x64 , 0x69 , 0x64 , 0x2e , 0x76 , 0x31 , 0x2e ,
0x41 , 0x75 , 0x74 , 0x68 , 0x65 , 0x6e , 0x74 , 0x69 , 0x63 , 0x61 , 0x74 , 0x69 , 0x6f , 0x6e , 0x2e , 0x4d ,
0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x45 , 0x6e , 0x74 , 0x72 , 0x79 , 0x52 , 0x08 , 0x6d , 0x65 ,
0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x12 , 0x25 , 0x0a , 0x0e , 0x63 , 0x72 , 0x65 , 0x61 , 0x74 , 0x69 ,
0x6f , 0x6e , 0x5f , 0x62 , 0x6c , 0x6f , 0x63 , 0x6b , 0x18 , 0x07 , 0x20 , 0x01 , 0x28 , 0x03 , 0x52 , 0x0d ,
0x63 , 0x72 , 0x65 , 0x61 , 0x74 , 0x69 , 0x6f , 0x6e , 0x42 , 0x6c , 0x6f , 0x63 , 0x6b , 0x1a , 0x3b , 0x0a ,
0x0d , 0x4d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x45 , 0x6e , 0x74 , 0x72 , 0x79 , 0x12 , 0x10 ,
0x0a , 0x03 , 0x6b , 0x65 , 0x79 , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x03 , 0x6b , 0x65 , 0x79 ,
0x12 , 0x14 , 0x0a , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 ,
0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x3a , 0x02 , 0x38 , 0x01 , 0x3a , 0x29 , 0xf2 , 0x9e , 0xd3 , 0x8e ,
0x03 , 0x23 , 0x0a , 0x05 , 0x0a , 0x03 , 0x64 , 0x69 , 0x64 , 0x12 , 0x18 , 0x0a , 0x12 , 0x63 , 0x6f , 0x6e ,
0x74 , 0x72 , 0x6f , 0x6c , 0x6c , 0x65 , 0x72 , 0x2c , 0x73 , 0x75 , 0x62 , 0x6a , 0x65 , 0x63 , 0x74 , 0x10 ,
0x01 , 0x18 , 0x01 , 0x18 , 0x02 , 0x22 , 0xd4 , 0x01 , 0x0a , 0x07 , 0x42 , 0x69 , 0x73 , 0x63 , 0x75 , 0x69 ,
0x74 , 0x12 , 0x0e , 0x0a , 0x02 , 0x69 , 0x64 , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x02 , 0x69 ,
0x64 , 0x12 , 0x1e , 0x0a , 0x0a , 0x63 , 0x6f , 0x6e , 0x74 , 0x72 , 0x6f , 0x6c , 0x6c , 0x65 , 0x72 , 0x18 ,
0x02 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x0a , 0x63 , 0x6f , 0x6e , 0x74 , 0x72 , 0x6f , 0x6c , 0x6c , 0x65 ,
0x72 , 0x12 , 0x18 , 0x0a , 0x07 , 0x73 , 0x75 , 0x62 , 0x6a , 0x65 , 0x63 , 0x74 , 0x18 , 0x03 , 0x20 , 0x01 ,
0x28 , 0x09 , 0x52 , 0x07 , 0x73 , 0x75 , 0x62 , 0x6a , 0x65 , 0x63 , 0x74 , 0x12 , 0x16 , 0x0a , 0x06 , 0x6f ,
0x72 , 0x69 , 0x67 , 0x69 , 0x6e , 0x18 , 0x04 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x06 , 0x6f , 0x72 , 0x69 ,
0x67 , 0x69 , 0x6e , 0x12 , 0x23 , 0x0a , 0x0d , 0x65 , 0x78 , 0x70 , 0x69 , 0x72 , 0x79 , 0x5f , 0x68 , 0x65 ,
0x69 , 0x67 , 0x68 , 0x74 , 0x18 , 0x05 , 0x20 , 0x01 , 0x28 , 0x03 , 0x52 , 0x0c , 0x65 , 0x78 , 0x70 , 0x69 ,
0x72 , 0x79 , 0x48 , 0x65 , 0x69 , 0x67 , 0x68 , 0x74 , 0x12 , 0x1a , 0x0a , 0x08 , 0x6d , 0x61 , 0x63 , 0x61 ,
0x72 , 0x6f , 0x6f , 0x6e , 0x18 , 0x06 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x08 , 0x6d , 0x61 , 0x63 , 0x61 ,
0x72 , 0x6f , 0x6f , 0x6e , 0x3a , 0x26 , 0xf2 , 0x9e , 0xd3 , 0x8e , 0x03 , 0x20 , 0x0a , 0x06 , 0x0a , 0x02 ,
0x69 , 0x64 , 0x10 , 0x01 , 0x12 , 0x14 , 0x0a , 0x0e , 0x73 , 0x75 , 0x62 , 0x6a , 0x65 , 0x63 , 0x74 , 0x2c ,
0x6f , 0x72 , 0x69 , 0x67 , 0x69 , 0x6e , 0x10 , 0x01 , 0x18 , 0x01 , 0x18 , 0x05 , 0x22 , 0xff , 0x02 , 0x0a ,
0x0a , 0x43 , 0x6f , 0x6e , 0x74 , 0x72 , 0x6f , 0x6c , 0x6c , 0x65 , 0x72 , 0x12 , 0x16 , 0x0a , 0x06 , 0x6e ,
0x75 , 0x6d , 0x62 , 0x65 , 0x72 , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x04 , 0x52 , 0x06 , 0x6e , 0x75 , 0x6d ,
0x62 , 0x65 , 0x72 , 0x12 , 0x10 , 0x0a , 0x03 , 0x64 , 0x69 , 0x64 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x09 ,
0x52 , 0x03 , 0x64 , 0x69 , 0x64 , 0x12 , 0x21 , 0x0a , 0x0c , 0x73 , 0x6f , 0x6e , 0x72 , 0x5f , 0x61 , 0x64 ,
0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x18 , 0x03 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x0b , 0x73 , 0x6f , 0x6e ,
0x72 , 0x41 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x12 , 0x1f , 0x0a , 0x0b , 0x65 , 0x74 , 0x68 , 0x5f ,
0x61 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x18 , 0x04 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x0a , 0x65 ,
0x74 , 0x68 , 0x41 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x12 , 0x1f , 0x0a , 0x0b , 0x62 , 0x74 , 0x63 ,
0x5f , 0x61 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x18 , 0x05 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x0a ,
0x62 , 0x74 , 0x63 , 0x41 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x12 , 0x24 , 0x0a , 0x0e , 0x70 , 0x75 ,
0x62 , 0x6c , 0x69 , 0x63 , 0x5f , 0x6b , 0x65 , 0x79 , 0x5f , 0x68 , 0x65 , 0x78 , 0x18 , 0x06 , 0x20 , 0x01 ,
0x28 , 0x09 , 0x52 , 0x0c , 0x70 , 0x75 , 0x62 , 0x6c , 0x69 , 0x63 , 0x4b , 0x65 , 0x79 , 0x48 , 0x65 , 0x78 ,
0x12 , 0x15 , 0x0a , 0x06 , 0x6b , 0x73 , 0x5f , 0x76 , 0x61 , 0x6c , 0x18 , 0x07 , 0x20 , 0x01 , 0x28 , 0x09 ,
0x52 , 0x05 , 0x6b , 0x73 , 0x56 , 0x61 , 0x6c , 0x12 , 0x23 , 0x0a , 0x0d , 0x63 , 0x6c , 0x61 , 0x69 , 0x6d ,
0x65 , 0x64 , 0x5f , 0x62 , 0x6c , 0x6f , 0x63 , 0x6b , 0x18 , 0x08 , 0x20 , 0x01 , 0x28 , 0x03 , 0x52 , 0x0c ,
0x63 , 0x6c , 0x61 , 0x69 , 0x6d , 0x65 , 0x64 , 0x42 , 0x6c , 0x6f , 0x63 , 0x6b , 0x12 , 0x25 , 0x0a , 0x0e ,
0x63 , 0x72 , 0x65 , 0x61 , 0x74 , 0x69 , 0x6f , 0x6e , 0x5f , 0x62 , 0x6c , 0x6f , 0x63 , 0x6b , 0x18 , 0x09 ,
0x20 , 0x01 , 0x28 , 0x03 , 0x52 , 0x0d , 0x63 , 0x72 , 0x65 , 0x61 , 0x74 , 0x69 , 0x6f , 0x6e , 0x42 , 0x6c ,
0x6f , 0x63 , 0x6b , 0x3a , 0x59 , 0xf2 , 0x9e , 0xd3 , 0x8e , 0x03 , 0x53 , 0x0a , 0x0a , 0x0a , 0x06 , 0x6e ,
0x75 , 0x6d , 0x62 , 0x65 , 0x72 , 0x10 , 0x01 , 0x12 , 0x12 , 0x0a , 0x0c , 0x73 , 0x6f , 0x6e , 0x72 , 0x5f ,
0x61 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x10 , 0x01 , 0x18 , 0x01 , 0x12 , 0x11 , 0x0a , 0x0b , 0x65 ,
0x74 , 0x68 , 0x5f , 0x61 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x10 , 0x02 , 0x18 , 0x01 , 0x12 , 0x11 ,
0x0a , 0x0b , 0x62 , 0x74 , 0x63 , 0x5f , 0x61 , 0x64 , 0x64 , 0x72 , 0x65 , 0x73 , 0x73 , 0x10 , 0x03 , 0x18 ,
0x01 , 0x12 , 0x09 , 0x0a , 0x03 , 0x64 , 0x69 , 0x64 , 0x10 , 0x04 , 0x18 , 0x01 , 0x18 , 0x03 , 0x22 , 0xfb ,
0x03 , 0x0a , 0x0c , 0x56 , 0x65 , 0x72 , 0x69 , 0x66 , 0x69 , 0x63 , 0x61 , 0x74 , 0x69 , 0x6f , 0x6e , 0x12 ,
0x10 , 0x0a , 0x03 , 0x64 , 0x69 , 0x64 , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x03 , 0x64 , 0x69 ,
0x64 , 0x12 , 0x1e , 0x0a , 0x0a , 0x63 , 0x6f , 0x6e , 0x74 , 0x72 , 0x6f , 0x6c , 0x6c , 0x65 , 0x72 , 0x18 ,
0x02 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x0a , 0x63 , 0x6f , 0x6e , 0x74 , 0x72 , 0x6f , 0x6c , 0x6c , 0x65 ,
0x72 , 0x12 , 0x1d , 0x0a , 0x0a , 0x64 , 0x69 , 0x64 , 0x5f , 0x6d , 0x65 , 0x74 , 0x68 , 0x6f , 0x64 , 0x18 ,
0x03 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x09 , 0x64 , 0x69 , 0x64 , 0x4d , 0x65 , 0x74 , 0x68 , 0x6f , 0x64 ,
0x12 , 0x16 , 0x0a , 0x06 , 0x69 , 0x73 , 0x73 , 0x75 , 0x65 , 0x72 , 0x18 , 0x04 , 0x20 , 0x01 , 0x28 , 0x09 ,
0x52 , 0x06 , 0x69 , 0x73 , 0x73 , 0x75 , 0x65 , 0x72 , 0x12 , 0x18 , 0x0a , 0x07 , 0x73 , 0x75 , 0x62 , 0x6a ,
0x65 , 0x63 , 0x74 , 0x18 , 0x05 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x07 , 0x73 , 0x75 , 0x62 , 0x6a , 0x65 ,
0x63 , 0x74 , 0x12 , 0x24 , 0x0a , 0x0e , 0x70 , 0x75 , 0x62 , 0x6c , 0x69 , 0x63 , 0x5f , 0x6b , 0x65 , 0x79 ,
0x5f , 0x68 , 0x65 , 0x78 , 0x18 , 0x06 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x0c , 0x70 , 0x75 , 0x62 , 0x6c ,
0x69 , 0x63 , 0x4b , 0x65 , 0x79 , 0x48 , 0x65 , 0x78 , 0x12 , 0x2b , 0x0a , 0x11 , 0x76 , 0x65 , 0x72 , 0x69 ,
0x66 , 0x69 , 0x63 , 0x61 , 0x74 , 0x69 , 0x6f , 0x6e , 0x5f , 0x74 , 0x79 , 0x70 , 0x65 , 0x18 , 0x07 , 0x20 ,
0x01 , 0x28 , 0x09 , 0x52 , 0x10 , 0x76 , 0x65 , 0x72 , 0x69 , 0x66 , 0x69 , 0x63 , 0x61 , 0x74 , 0x69 , 0x6f ,
0x6e , 0x54 , 0x79 , 0x70 , 0x65 , 0x12 , 0x3e , 0x0a , 0x08 , 0x6d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 ,
0x61 , 0x18 , 0x08 , 0x20 , 0x03 , 0x28 , 0x0b , 0x32 , 0x22 , 0x2e , 0x64 , 0x69 , 0x64 , 0x2e , 0x76 , 0x31 ,
0x2e , 0x56 , 0x65 , 0x72 , 0x69 , 0x66 , 0x69 , 0x63 , 0x61 , 0x74 , 0x69 , 0x6f , 0x6e , 0x2e , 0x4d , 0x65 ,
0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x45 , 0x6e , 0x74 , 0x72 , 0x79 , 0x52 , 0x08 , 0x6d , 0x65 , 0x74 ,
0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x12 , 0x25 , 0x0a , 0x0e , 0x63 , 0x72 , 0x65 , 0x61 , 0x74 , 0x69 , 0x6f ,
0x6e , 0x5f , 0x62 , 0x6c , 0x6f , 0x63 , 0x6b , 0x18 , 0x09 , 0x20 , 0x01 , 0x28 , 0x03 , 0x52 , 0x0d , 0x63 ,
0x72 , 0x65 , 0x61 , 0x74 , 0x69 , 0x6f , 0x6e , 0x42 , 0x6c , 0x6f , 0x63 , 0x6b , 0x1a , 0x3b , 0x0a , 0x0d ,
0x4d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0x45 , 0x6e , 0x74 , 0x72 , 0x79 , 0x12 , 0x10 , 0x0a ,
0x03 , 0x6b , 0x65 , 0x79 , 0x18 , 0x01 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x03 , 0x6b , 0x65 , 0x79 , 0x12 ,
0x14 , 0x0a , 0x05 , 0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x18 , 0x02 , 0x20 , 0x01 , 0x28 , 0x09 , 0x52 , 0x05 ,
0x76 , 0x61 , 0x6c , 0x75 , 0x65 , 0x3a , 0x02 , 0x38 , 0x01 , 0x3a , 0x71 , 0xf2 , 0x9e , 0xd3 , 0x8e , 0x03 ,
0x6b , 0x0a , 0x05 , 0x0a , 0x03 , 0x64 , 0x69 , 0x64 , 0x12 , 0x14 , 0x0a , 0x0e , 0x69 , 0x73 , 0x73 , 0x75 ,
0x65 , 0x72 , 0x2c , 0x73 , 0x75 , 0x62 , 0x6a , 0x65 , 0x63 , 0x74 , 0x10 , 0x01 , 0x18 , 0x01 , 0x12 , 0x22 ,
0x0a , 0x1c , 0x63 , 0x6f , 0x6e , 0x74 , 0x72 , 0x6f , 0x6c , 0x6c , 0x65 , 0x72 , 0x2c , 0x64 , 0x69 , 0x64 ,
0x5f , 0x6d , 0x65 , 0x74 , 0x68 , 0x6f , 0x64 , 0x2c , 0x69 , 0x73 , 0x73 , 0x75 , 0x65 , 0x72 , 0x10 , 0x02 ,
0x18 , 0x01 , 0x12 , 0x26 , 0x0a , 0x20 , 0x76 , 0x65 , 0x72 , 0x69 , 0x66 , 0x69 , 0x63 , 0x61 , 0x74 , 0x69 ,
0x6f , 0x6e , 0x5f , 0x74 , 0x79 , 0x70 , 0x65 , 0x2c , 0x73 , 0x75 , 0x62 , 0x6a , 0x65 , 0x63 , 0x74 , 0x2c ,
0x69 , 0x73 , 0x73 , 0x75 , 0x65 , 0x72 , 0x10 , 0x03 , 0x18 , 0x01 , 0x18 , 0x06 , 0x42 , 0x7a , 0x0a , 0x0a ,
0x63 , 0x6f , 0x6d , 0x2e , 0x64 , 0x69 , 0x64 , 0x2e , 0x76 , 0x31 , 0x42 , 0x0a , 0x53 , 0x74 , 0x61 , 0x74 ,
0x65 , 0x50 , 0x72 , 0x6f , 0x74 , 0x6f , 0x50 , 0x01 , 0x5a , 0x27 , 0x67 , 0x69 , 0x74 , 0x68 , 0x75 , 0x62 ,
0x2e , 0x63 , 0x6f , 0x6d , 0x2f , 0x6f , 0x6e , 0x73 , 0x6f , 0x6e , 0x72 , 0x2f , 0x73 , 0x6f , 0x6e , 0x72 ,
0x2f , 0x61 , 0x70 , 0x69 , 0x2f , 0x64 , 0x69 , 0x64 , 0x2f , 0x76 , 0x31 , 0x3b , 0x64 , 0x69 , 0x64 , 0x76 ,
0x31 , 0xa2 , 0x02 , 0x03 , 0x44 , 0x58 , 0x58 , 0xaa , 0x02 , 0x06 , 0x44 , 0x69 , 0x64 , 0x2e , 0x56 , 0x31 ,
0xca , 0x02 , 0x06 , 0x44 , 0x69 , 0x64 , 0x5c , 0x56 , 0x31 , 0xe2 , 0x02 , 0x12 , 0x44 , 0x69 , 0x64 , 0x5c ,
0x56 , 0x31 , 0x5c , 0x47 , 0x50 , 0x42 , 0x4d , 0x65 , 0x74 , 0x61 , 0x64 , 0x61 , 0x74 , 0x61 , 0xea , 0x02 ,
0x07 , 0x44 , 0x69 , 0x64 , 0x3a , 0x3a , 0x56 , 0x31 , 0x62 , 0x06 , 0x70 , 0x72 , 0x6f , 0x74 , 0x6f , 0x33 ,
2024-07-05 22:20:13 -04:00
}
var (
file_did_v1_state_proto_rawDescOnce sync . Once
file_did_v1_state_proto_rawDescData = file_did_v1_state_proto_rawDesc
)
func file_did_v1_state_proto_rawDescGZIP ( ) [ ] byte {
file_did_v1_state_proto_rawDescOnce . Do ( func ( ) {
file_did_v1_state_proto_rawDescData = protoimpl . X . CompressGZIP ( file_did_v1_state_proto_rawDescData )
} )
return file_did_v1_state_proto_rawDescData
}
2024-11-18 19:04:10 -05:00
var file_did_v1_state_proto_msgTypes = make ( [ ] protoimpl . MessageInfo , 8 )
2024-07-05 22:20:13 -04:00
var file_did_v1_state_proto_goTypes = [ ] interface { } {
2024-10-15 14:31:19 -04:00
( * Assertion ) ( nil ) , // 0: did.v1.Assertion
( * Authentication ) ( nil ) , // 1: did.v1.Authentication
2024-11-18 19:04:10 -05:00
( * Biscuit ) ( nil ) , // 2: did.v1.Biscuit
( * Controller ) ( nil ) , // 3: did.v1.Controller
( * Verification ) ( nil ) , // 4: did.v1.Verification
nil , // 5: did.v1.Assertion.AccumulatorEntry
nil , // 6: did.v1.Authentication.MetadataEntry
nil , // 7: did.v1.Verification.MetadataEntry
2024-07-05 22:20:13 -04:00
}
var file_did_v1_state_proto_depIdxs = [ ] int32 {
2024-11-18 19:04:10 -05:00
5 , // 0: did.v1.Assertion.accumulator:type_name -> did.v1.Assertion.AccumulatorEntry
6 , // 1: did.v1.Authentication.metadata:type_name -> did.v1.Authentication.MetadataEntry
7 , // 2: did.v1.Verification.metadata:type_name -> did.v1.Verification.MetadataEntry
3 , // [3:3] is the sub-list for method output_type
3 , // [3:3] is the sub-list for method input_type
3 , // [3:3] is the sub-list for extension type_name
3 , // [3:3] is the sub-list for extension extendee
0 , // [0:3] is the sub-list for field type_name
2024-07-05 22:20:13 -04:00
}
func init ( ) { file_did_v1_state_proto_init ( ) }
func file_did_v1_state_proto_init ( ) {
if File_did_v1_state_proto != nil {
return
}
2024-10-08 16:43:59 -04:00
file_did_v1_genesis_proto_init ( )
2024-07-05 22:20:13 -04:00
if ! protoimpl . UnsafeEnabled {
file_did_v1_state_proto_msgTypes [ 0 ] . Exporter = func ( v interface { } , i int ) interface { } {
2024-10-15 14:31:19 -04:00
switch v := v . ( * Assertion ) ; i {
2024-07-05 22:20:13 -04:00
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
2024-08-31 16:54:16 -04:00
file_did_v1_state_proto_msgTypes [ 1 ] . Exporter = func ( v interface { } , i int ) interface { } {
2024-10-15 14:31:19 -04:00
switch v := v . ( * Authentication ) ; i {
2024-07-05 22:20:13 -04:00
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
2024-08-31 16:54:16 -04:00
file_did_v1_state_proto_msgTypes [ 2 ] . Exporter = func ( v interface { } , i int ) interface { } {
2024-11-18 19:04:10 -05:00
switch v := v . ( * Biscuit ) ; i {
2024-10-15 14:31:19 -04:00
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_did_v1_state_proto_msgTypes [ 3 ] . Exporter = func ( v interface { } , i int ) interface { } {
2024-11-18 19:04:10 -05:00
switch v := v . ( * Controller ) ; i {
2024-11-01 14:42:56 -04:00
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
file_did_v1_state_proto_msgTypes [ 4 ] . Exporter = func ( v interface { } , i int ) interface { } {
2024-09-18 17:27:30 -04:00
switch v := v . ( * Verification ) ; i {
2024-07-05 22:20:13 -04:00
case 0 :
return & v . state
case 1 :
return & v . sizeCache
case 2 :
return & v . unknownFields
default :
return nil
}
}
}
type x struct { }
out := protoimpl . TypeBuilder {
File : protoimpl . DescBuilder {
GoPackagePath : reflect . TypeOf ( x { } ) . PkgPath ( ) ,
RawDescriptor : file_did_v1_state_proto_rawDesc ,
NumEnums : 0 ,
2024-11-18 19:04:10 -05:00
NumMessages : 8 ,
2024-07-05 22:20:13 -04:00
NumExtensions : 0 ,
NumServices : 0 ,
} ,
GoTypes : file_did_v1_state_proto_goTypes ,
DependencyIndexes : file_did_v1_state_proto_depIdxs ,
MessageInfos : file_did_v1_state_proto_msgTypes ,
} . Build ( )
File_did_v1_state_proto = out . File
file_did_v1_state_proto_rawDesc = nil
file_did_v1_state_proto_goTypes = nil
file_did_v1_state_proto_depIdxs = nil
}