Compare commits

..
31 Commits
Author SHA1 Message Date
github-actions[bot] 1a3641e605 bump: version 0.5.1 → 0.5.2 2024-10-02 08:38:11 +00:00
Prad Nukala a05d1bb5d2 refactor: revert version bump to 0.5.1 2024-10-02 04:36:50 -04:00
Prad Nukala aaea70786b style: remove unnecessary period from telegram message template 2024-10-02 04:36:14 -04:00
github-actions[bot] 3d17feef0a bump: version 0.5.1 → 0.5.2 2024-10-02 08:22:50 +00:00
Prad Nukala 9e938adc29 Merge branch 'develop' 2024-10-02 04:21:16 -04:00
Prad NukalaandGitHub 8ef7a7eab7 feat(service): integrate group module (#1104) 2024-10-02 04:20:55 -04:00
github-actions[bot] 03f822b117 bump: version 0.5.0 → 0.5.1 2024-10-02 06:15:07 +00:00
Prad Nukala ae56055640 refactor: move Motr API to state package 2024-10-02 02:13:25 -04:00
github-actions[bot] 75c65228fc bump: version 0.4.5 → 0.5.0 2024-10-02 05:46:00 +00:00
Prad Nukala 52b9f60261 feat: allow multiple macaroons with the same id 2024-10-02 01:44:30 -04:00
Prad NukalaandGitHub edb109b542 feature/dwn sw js (#1103)
- **feat(macaroon): add  and  to macaroon genesis**
- **refactor: move schema definitions to dedicated file**
- **feat: remove Session model**
- **refactor: move session middleware to internal package**
2024-10-02 01:40:49 -04:00
github-actions[bot] d62fb30eb8 bump: version 0.4.4 → 0.4.5 2024-10-02 03:33:40 +00:00
Prad Nukala c1bdcc2d93 Merge branch 'feature/dwn-sw-js' 2024-10-01 23:32:13 -04:00
Prad Nukala 35bedf8f65 fix: use correct secret for docker login 2024-10-01 23:32:06 -04:00
github-actions[bot] 7f54ad66f7 bump: version 0.4.3 → 0.4.4 2024-10-02 03:31:22 +00:00
Prad Nukala 0b70938525 chore: add docker login step in workflow 2024-10-01 23:30:41 -04:00
Prad Nukala 5a2ac6ae31 chore: remove duplicate docker image tags 2024-10-01 23:29:42 -04:00
github-actions[bot] 3aed1522cd bump: version 0.4.2 → 0.4.3 2024-10-02 02:19:15 +00:00
Prad Nukala b5ad833965 refactor: use single GITHUB_TOKEN for release workflow 2024-10-01 22:17:44 -04:00
Prad Nukala a8c48d4961 refactor: update workflow variables 2024-10-01 22:16:05 -04:00
github-actions[bot] b56c98c678 bump: version 0.4.2 → 0.5.0 2024-10-02 02:03:58 +00:00
Prad Nukala cea6b77fdd feat(release): add docker images for sonrd and motr 2024-10-01 22:02:14 -04:00
Prad Nukala 5bc9ff07c0 fix(layout): add missing favicon 2024-10-01 19:36:15 -04:00
Prad Nukala 08451a846c feat: update homepage with new visual design 2024-10-01 19:23:24 -04:00
Prad Nukala fa6bb93c78 feat: add DID to vault genesis schema 2024-10-01 18:55:02 -04:00
Prad Nukala f5f0578dcc feat: add video component 2024-10-01 18:14:03 -04:00
Prad Nukala ca2aa476d9 feat: add video component 2024-10-01 18:06:43 -04:00
Prad Nukala ab33d8235f fix(hero): Use hx-swap for primary button to prevent flicker 2024-10-01 17:58:05 -04:00
Prad Nukala 730cda4390 feat: add hx-get attribute to primary button in hero section 2024-10-01 17:52:04 -04:00
github-actions[bot] 1f5c735b31 bump: version 0.4.1 → 0.4.2 2024-10-01 21:27:52 +00:00
Prad Nukala 3b93b782fe refactor: use single GITHUB_TOKEN for release workflow 2024-10-01 17:26:15 -04:00
87 changed files with 3525 additions and 714 deletions
+1 -1
View File
@@ -2,6 +2,6 @@
name = "cz_conventional_commits"
tag_format = "v$version"
version_scheme = "semver"
version = "0.4.1"
version = "0.5.2"
update_changelog_on_bump = true
major_version_zero = true
+11 -2
View File
@@ -27,6 +27,12 @@ jobs:
go-version: "1.22"
check-latest: true
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Release
uses: goreleaser/goreleaser-action@v6
with:
@@ -34,6 +40,9 @@ jobs:
version: latest
args: release --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GH_RELEASER_TOKEN }}
GORELEASER_KEY: ${{ secrets.GORELEASER_KEY }}
GITHUB_PERSONAL_AUTH_TOKEN: ${{ secrets.GH_PAT_TOKEN }}
GITHUB_PERSONAL_AUTH_TOKEN: ${{ secrets.GH_RELEASER_TOKEN }}
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
TELEGRAM_TOKEN: ${{ secrets.TELEGRAM_TOKEN }}
+54 -12
View File
@@ -1,3 +1,4 @@
# yaml-language-server: $schema=https://goreleaser.com/static/schema-pro.json
version: 2
project_name: sonr
@@ -13,22 +14,22 @@ builds:
ldflags:
- -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}}
- id: motr
- id: hway
goos: [linux, darwin]
goarch: [amd64, arm64]
main: ./cmd/motr
binary: motr
main: ./cmd/hway
binary: hway
builder: go
gobinary: go
command: build
ldflags:
- -s -w -X main.version={{.Version}} -X main.commit={{.Commit}} -X main.date={{.Date}}
- id: dwn
- id: motr
goos: [js]
goarch: [wasm]
main: ./cmd/dwn/dwn.go
binary: dwn
main: ./cmd/motr/motr.go
binary: motr
builder: go
gobinary: go
command: build
@@ -42,8 +43,8 @@ archives:
- src: README*
- src: CHANGELOG*
- id: motr
builds: [motr]
- id: hway
builds: [hway]
name_template: '{{ .Binary }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}{{ with .Arm }}v{{ . }}{{ end }}{{ with .Mips }}_{{ . }}{{ end }}{{ if not (eq .Amd64 "v1") }}{{ .Amd64 }}{{ end }}'
format: tar.gz
files:
@@ -71,7 +72,7 @@ brews:
name: goreleaserbot
email: bot@goreleaser.com
directory: Formula
caveats: "Run a local sonr node and access it with the motr proxy"
caveats: "Run a local sonr node and access it with the hway proxy"
homepage: "https://sonr.io/"
description: "Sonr is a decentralized, permissionless, and censorship-resistant identity network."
dependencies:
@@ -82,13 +83,13 @@ brews:
branch: master
token: "{{ .Env.GITHUB_PERSONAL_AUTH_TOKEN }}"
- name: motr
ids: [motr]
- name: hway
ids: [hway]
commit_author:
name: goreleaserbot
email: bot@goreleaser.com
directory: Formula
caveats: "Use motr to interact with the Sonr network"
caveats: "Use hway to interact with the Sonr network"
homepage: "https://sonr.io/"
description: "Motr is a proxy for interacting with the Sonr network."
dependencies:
@@ -97,3 +98,44 @@ brews:
owner: onsonr
name: homebrew-tap
branch: master
# .goreleaser.yaml
dockers:
- # Sonr Binary
id: sonrd
goos: linux
goarch: amd64
ids:
- sonr
image_templates:
- "onsonr/sonrd:latest"
- "onsonr/sonrd:{{ .Tag }}"
dockerfile: "./deploy/release/sonrd.Dockerfile"
build_flag_templates:
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.title=sonrd"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
- # Motr Binary
id: hway
goos: linux
goarch: amd64
ids:
- hway
image_templates:
- "onsonr/hway:latest"
- "onsonr/hway:{{ .Tag }}"
dockerfile: "./deploy/release/hway.Dockerfile"
build_flag_templates:
- "--label=org.opencontainers.image.created={{.Date}}"
- "--label=org.opencontainers.image.title=hway"
- "--label=org.opencontainers.image.revision={{.FullCommit}}"
- "--label=org.opencontainers.image.version={{.Version}}"
announce:
telegram:
enabled: true
chat_id: -1002222617755
message_template: "__*New Sonr Release*__ *{{.Tag}}* is out"
parse_mode: MarkdownV2
+59 -2
View File
@@ -1,3 +1,60 @@
## v0.5.2 (2024-10-02)
### Feat
- **service**: integrate group module (#1104)
### Refactor
- revert version bump to 0.5.1
## v0.5.1 (2024-10-02)
### Refactor
- move Motr API to state package
## v0.5.0 (2024-10-02)
### Feat
- allow multiple macaroons with the same id
## v0.4.5 (2024-10-02)
### Fix
- use correct secret for docker login
## v0.4.4 (2024-10-02)
## v0.4.3 (2024-10-02)
### Feat
- **release**: add docker images for sonrd and motr
- update homepage with new visual design
- add DID to vault genesis schema
- add video component
- add video component
- add hx-get attribute to primary button in hero section
### Fix
- **layout**: add missing favicon
- **hero**: Use hx-swap for primary button to prevent flicker
### Refactor
- use single GITHUB_TOKEN for release workflow
- update workflow variables
## v0.4.2 (2024-10-01)
### Refactor
- use single GITHUB_TOKEN for release workflow
## v0.4.1 (2024-10-01)
### Feat
@@ -24,7 +81,7 @@
- **cta**: Fix typo in CTA title
- change bento section title to reflect security focus
- adjust hero image dimensions
- **Input**: Change type from to
- **Input**: Change type from to
- update hero image height in config.pkl
### Refactor
@@ -34,7 +91,7 @@
- update hero image dimensions
- move nebula configuration to static file
- rename buf-publish.yml to publish-assets.yml
- remove unused field from
- remove unused field from
## v0.4.0 (2024-09-30)
+9 -9
View File
@@ -295,15 +295,15 @@ sh-testnet: mod-tidy
### templ & vault ###
###############################################################################
.PHONY: dwn motr templ pkl nebula
.PHONY: motr hway templ pkl nebula
hway:
@echo "(motr) Building Highway gateway"
go build -o ./build/hway ./cmd/hway
motr:
@echo "(motr) Building motr gateway"
go build -o ./build/motr ./cmd/motr
dwn:
@echo "(dwn) Building dwn.wasm -> IPFS Vault"
GOOS=js GOARCH=wasm go build -o ./pkg/dwn/app.wasm ./cmd/dwn/dwn.go
@echo "(dwn) Building motr.wasm -> Service Worker IPFS Vault"
GOOS=js GOARCH=wasm go build -o ./pkg/dwn/app.wasm ./cmd/motr/motr.go
templ:
@echo "(templ) Generating templ files"
@@ -325,9 +325,9 @@ start-caddy:
@echo "(start-caddy) Starting caddy"
./build/caddy run --config ./config/caddy/Caddyfile
start-motr: motr
start-hway: hway
@echo "(start-proxy) Starting proxy server"
./build/motr start
./build/hway start
###############################################################################
### help ###
+435 -150
View File
@@ -1042,61 +1042,63 @@ func (x *fastReflection_Params) ProtoMethods() *protoiface.Methods {
}
}
var _ protoreflect.List = (*_Methods_1_list)(nil)
var _ protoreflect.List = (*_Methods_2_list)(nil)
type _Methods_1_list struct {
type _Methods_2_list struct {
list *[]string
}
func (x *_Methods_1_list) Len() int {
func (x *_Methods_2_list) Len() int {
if x.list == nil {
return 0
}
return len(*x.list)
}
func (x *_Methods_1_list) Get(i int) protoreflect.Value {
func (x *_Methods_2_list) Get(i int) protoreflect.Value {
return protoreflect.ValueOfString((*x.list)[i])
}
func (x *_Methods_1_list) Set(i int, value protoreflect.Value) {
func (x *_Methods_2_list) Set(i int, value protoreflect.Value) {
valueUnwrapped := value.String()
concreteValue := valueUnwrapped
(*x.list)[i] = concreteValue
}
func (x *_Methods_1_list) Append(value protoreflect.Value) {
func (x *_Methods_2_list) Append(value protoreflect.Value) {
valueUnwrapped := value.String()
concreteValue := valueUnwrapped
*x.list = append(*x.list, concreteValue)
}
func (x *_Methods_1_list) AppendMutable() protoreflect.Value {
panic(fmt.Errorf("AppendMutable can not be called on message Methods at list field Methods as it is not of Message kind"))
func (x *_Methods_2_list) AppendMutable() protoreflect.Value {
panic(fmt.Errorf("AppendMutable can not be called on message Methods at list field Supported as it is not of Message kind"))
}
func (x *_Methods_1_list) Truncate(n int) {
func (x *_Methods_2_list) Truncate(n int) {
*x.list = (*x.list)[:n]
}
func (x *_Methods_1_list) NewElement() protoreflect.Value {
func (x *_Methods_2_list) NewElement() protoreflect.Value {
v := ""
return protoreflect.ValueOfString(v)
}
func (x *_Methods_1_list) IsValid() bool {
func (x *_Methods_2_list) IsValid() bool {
return x.list != nil
}
var (
md_Methods protoreflect.MessageDescriptor
fd_Methods_methods protoreflect.FieldDescriptor
md_Methods protoreflect.MessageDescriptor
fd_Methods_default protoreflect.FieldDescriptor
fd_Methods_supported protoreflect.FieldDescriptor
)
func init() {
file_macaroon_v1_genesis_proto_init()
md_Methods = File_macaroon_v1_genesis_proto.Messages().ByName("Methods")
fd_Methods_methods = md_Methods.Fields().ByName("methods")
fd_Methods_default = md_Methods.Fields().ByName("default")
fd_Methods_supported = md_Methods.Fields().ByName("supported")
}
var _ protoreflect.Message = (*fastReflection_Methods)(nil)
@@ -1164,9 +1166,15 @@ func (x *fastReflection_Methods) Interface() protoreflect.ProtoMessage {
// While iterating, mutating operations may only be performed
// on the current field descriptor.
func (x *fastReflection_Methods) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
if len(x.Methods) != 0 {
value := protoreflect.ValueOfList(&_Methods_1_list{list: &x.Methods})
if !f(fd_Methods_methods, value) {
if x.Default != "" {
value := protoreflect.ValueOfString(x.Default)
if !f(fd_Methods_default, value) {
return
}
}
if len(x.Supported) != 0 {
value := protoreflect.ValueOfList(&_Methods_2_list{list: &x.Supported})
if !f(fd_Methods_supported, value) {
return
}
}
@@ -1185,8 +1193,10 @@ func (x *fastReflection_Methods) Range(f func(protoreflect.FieldDescriptor, prot
// a repeated field is populated if it is non-empty.
func (x *fastReflection_Methods) Has(fd protoreflect.FieldDescriptor) bool {
switch fd.FullName() {
case "macaroon.v1.Methods.methods":
return len(x.Methods) != 0
case "macaroon.v1.Methods.default":
return x.Default != ""
case "macaroon.v1.Methods.supported":
return len(x.Supported) != 0
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Methods"))
@@ -1203,8 +1213,10 @@ func (x *fastReflection_Methods) Has(fd protoreflect.FieldDescriptor) bool {
// Clear is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Methods) Clear(fd protoreflect.FieldDescriptor) {
switch fd.FullName() {
case "macaroon.v1.Methods.methods":
x.Methods = nil
case "macaroon.v1.Methods.default":
x.Default = ""
case "macaroon.v1.Methods.supported":
x.Supported = nil
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Methods"))
@@ -1221,11 +1233,14 @@ func (x *fastReflection_Methods) Clear(fd protoreflect.FieldDescriptor) {
// of the value; to obtain a mutable reference, use Mutable.
func (x *fastReflection_Methods) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
switch descriptor.FullName() {
case "macaroon.v1.Methods.methods":
if len(x.Methods) == 0 {
return protoreflect.ValueOfList(&_Methods_1_list{})
case "macaroon.v1.Methods.default":
value := x.Default
return protoreflect.ValueOfString(value)
case "macaroon.v1.Methods.supported":
if len(x.Supported) == 0 {
return protoreflect.ValueOfList(&_Methods_2_list{})
}
listValue := &_Methods_1_list{list: &x.Methods}
listValue := &_Methods_2_list{list: &x.Supported}
return protoreflect.ValueOfList(listValue)
default:
if descriptor.IsExtension() {
@@ -1247,10 +1262,12 @@ func (x *fastReflection_Methods) Get(descriptor protoreflect.FieldDescriptor) pr
// Set is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Methods) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
switch fd.FullName() {
case "macaroon.v1.Methods.methods":
case "macaroon.v1.Methods.default":
x.Default = value.Interface().(string)
case "macaroon.v1.Methods.supported":
lv := value.List()
clv := lv.(*_Methods_1_list)
x.Methods = *clv.list
clv := lv.(*_Methods_2_list)
x.Supported = *clv.list
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Methods"))
@@ -1271,12 +1288,14 @@ func (x *fastReflection_Methods) Set(fd protoreflect.FieldDescriptor, value prot
// Mutable is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Methods) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "macaroon.v1.Methods.methods":
if x.Methods == nil {
x.Methods = []string{}
case "macaroon.v1.Methods.supported":
if x.Supported == nil {
x.Supported = []string{}
}
value := &_Methods_1_list{list: &x.Methods}
value := &_Methods_2_list{list: &x.Supported}
return protoreflect.ValueOfList(value)
case "macaroon.v1.Methods.default":
panic(fmt.Errorf("field default of message macaroon.v1.Methods is not mutable"))
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Methods"))
@@ -1290,9 +1309,11 @@ func (x *fastReflection_Methods) Mutable(fd protoreflect.FieldDescriptor) protor
// For lists, maps, and messages, this returns a new, empty, mutable value.
func (x *fastReflection_Methods) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "macaroon.v1.Methods.methods":
case "macaroon.v1.Methods.default":
return protoreflect.ValueOfString("")
case "macaroon.v1.Methods.supported":
list := []string{}
return protoreflect.ValueOfList(&_Methods_1_list{list: &list})
return protoreflect.ValueOfList(&_Methods_2_list{list: &list})
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Methods"))
@@ -1362,8 +1383,12 @@ func (x *fastReflection_Methods) ProtoMethods() *protoiface.Methods {
var n int
var l int
_ = l
if len(x.Methods) > 0 {
for _, s := range x.Methods {
l = len(x.Default)
if l > 0 {
n += 1 + l + runtime.Sov(uint64(l))
}
if len(x.Supported) > 0 {
for _, s := range x.Supported {
l = len(s)
n += 1 + l + runtime.Sov(uint64(l))
}
@@ -1397,15 +1422,22 @@ func (x *fastReflection_Methods) ProtoMethods() *protoiface.Methods {
i -= len(x.unknownFields)
copy(dAtA[i:], x.unknownFields)
}
if len(x.Methods) > 0 {
for iNdEx := len(x.Methods) - 1; iNdEx >= 0; iNdEx-- {
i -= len(x.Methods[iNdEx])
copy(dAtA[i:], x.Methods[iNdEx])
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Methods[iNdEx])))
if len(x.Supported) > 0 {
for iNdEx := len(x.Supported) - 1; iNdEx >= 0; iNdEx-- {
i -= len(x.Supported[iNdEx])
copy(dAtA[i:], x.Supported[iNdEx])
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Supported[iNdEx])))
i--
dAtA[i] = 0xa
dAtA[i] = 0x12
}
}
if len(x.Default) > 0 {
i -= len(x.Default)
copy(dAtA[i:], x.Default)
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Default)))
i--
dAtA[i] = 0xa
}
if input.Buf != nil {
input.Buf = append(input.Buf, dAtA...)
} else {
@@ -1457,7 +1489,7 @@ func (x *fastReflection_Methods) ProtoMethods() *protoiface.Methods {
switch fieldNum {
case 1:
if wireType != 2 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Methods", wireType)
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Default", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
@@ -1485,7 +1517,39 @@ func (x *fastReflection_Methods) ProtoMethods() *protoiface.Methods {
if postIndex > l {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
}
x.Methods = append(x.Methods, string(dAtA[iNdEx:postIndex]))
x.Default = 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 Supported", 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.Supported = append(x.Supported, string(dAtA[iNdEx:postIndex]))
iNdEx = postIndex
default:
iNdEx = preIndex
@@ -1522,61 +1586,63 @@ func (x *fastReflection_Methods) ProtoMethods() *protoiface.Methods {
}
}
var _ protoreflect.List = (*_Scopes_1_list)(nil)
var _ protoreflect.List = (*_Scopes_2_list)(nil)
type _Scopes_1_list struct {
type _Scopes_2_list struct {
list *[]string
}
func (x *_Scopes_1_list) Len() int {
func (x *_Scopes_2_list) Len() int {
if x.list == nil {
return 0
}
return len(*x.list)
}
func (x *_Scopes_1_list) Get(i int) protoreflect.Value {
func (x *_Scopes_2_list) Get(i int) protoreflect.Value {
return protoreflect.ValueOfString((*x.list)[i])
}
func (x *_Scopes_1_list) Set(i int, value protoreflect.Value) {
func (x *_Scopes_2_list) Set(i int, value protoreflect.Value) {
valueUnwrapped := value.String()
concreteValue := valueUnwrapped
(*x.list)[i] = concreteValue
}
func (x *_Scopes_1_list) Append(value protoreflect.Value) {
func (x *_Scopes_2_list) Append(value protoreflect.Value) {
valueUnwrapped := value.String()
concreteValue := valueUnwrapped
*x.list = append(*x.list, concreteValue)
}
func (x *_Scopes_1_list) AppendMutable() protoreflect.Value {
panic(fmt.Errorf("AppendMutable can not be called on message Scopes at list field Scopes as it is not of Message kind"))
func (x *_Scopes_2_list) AppendMutable() protoreflect.Value {
panic(fmt.Errorf("AppendMutable can not be called on message Scopes at list field Supported as it is not of Message kind"))
}
func (x *_Scopes_1_list) Truncate(n int) {
func (x *_Scopes_2_list) Truncate(n int) {
*x.list = (*x.list)[:n]
}
func (x *_Scopes_1_list) NewElement() protoreflect.Value {
func (x *_Scopes_2_list) NewElement() protoreflect.Value {
v := ""
return protoreflect.ValueOfString(v)
}
func (x *_Scopes_1_list) IsValid() bool {
func (x *_Scopes_2_list) IsValid() bool {
return x.list != nil
}
var (
md_Scopes protoreflect.MessageDescriptor
fd_Scopes_scopes protoreflect.FieldDescriptor
md_Scopes protoreflect.MessageDescriptor
fd_Scopes_base protoreflect.FieldDescriptor
fd_Scopes_supported protoreflect.FieldDescriptor
)
func init() {
file_macaroon_v1_genesis_proto_init()
md_Scopes = File_macaroon_v1_genesis_proto.Messages().ByName("Scopes")
fd_Scopes_scopes = md_Scopes.Fields().ByName("scopes")
fd_Scopes_base = md_Scopes.Fields().ByName("base")
fd_Scopes_supported = md_Scopes.Fields().ByName("supported")
}
var _ protoreflect.Message = (*fastReflection_Scopes)(nil)
@@ -1644,9 +1710,15 @@ func (x *fastReflection_Scopes) Interface() protoreflect.ProtoMessage {
// While iterating, mutating operations may only be performed
// on the current field descriptor.
func (x *fastReflection_Scopes) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
if len(x.Scopes) != 0 {
value := protoreflect.ValueOfList(&_Scopes_1_list{list: &x.Scopes})
if !f(fd_Scopes_scopes, value) {
if x.Base != "" {
value := protoreflect.ValueOfString(x.Base)
if !f(fd_Scopes_base, value) {
return
}
}
if len(x.Supported) != 0 {
value := protoreflect.ValueOfList(&_Scopes_2_list{list: &x.Supported})
if !f(fd_Scopes_supported, value) {
return
}
}
@@ -1665,8 +1737,10 @@ func (x *fastReflection_Scopes) Range(f func(protoreflect.FieldDescriptor, proto
// a repeated field is populated if it is non-empty.
func (x *fastReflection_Scopes) Has(fd protoreflect.FieldDescriptor) bool {
switch fd.FullName() {
case "macaroon.v1.Scopes.scopes":
return len(x.Scopes) != 0
case "macaroon.v1.Scopes.base":
return x.Base != ""
case "macaroon.v1.Scopes.supported":
return len(x.Supported) != 0
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Scopes"))
@@ -1683,8 +1757,10 @@ func (x *fastReflection_Scopes) Has(fd protoreflect.FieldDescriptor) bool {
// Clear is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Scopes) Clear(fd protoreflect.FieldDescriptor) {
switch fd.FullName() {
case "macaroon.v1.Scopes.scopes":
x.Scopes = nil
case "macaroon.v1.Scopes.base":
x.Base = ""
case "macaroon.v1.Scopes.supported":
x.Supported = nil
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Scopes"))
@@ -1701,11 +1777,14 @@ func (x *fastReflection_Scopes) Clear(fd protoreflect.FieldDescriptor) {
// of the value; to obtain a mutable reference, use Mutable.
func (x *fastReflection_Scopes) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
switch descriptor.FullName() {
case "macaroon.v1.Scopes.scopes":
if len(x.Scopes) == 0 {
return protoreflect.ValueOfList(&_Scopes_1_list{})
case "macaroon.v1.Scopes.base":
value := x.Base
return protoreflect.ValueOfString(value)
case "macaroon.v1.Scopes.supported":
if len(x.Supported) == 0 {
return protoreflect.ValueOfList(&_Scopes_2_list{})
}
listValue := &_Scopes_1_list{list: &x.Scopes}
listValue := &_Scopes_2_list{list: &x.Supported}
return protoreflect.ValueOfList(listValue)
default:
if descriptor.IsExtension() {
@@ -1727,10 +1806,12 @@ func (x *fastReflection_Scopes) Get(descriptor protoreflect.FieldDescriptor) pro
// Set is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Scopes) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
switch fd.FullName() {
case "macaroon.v1.Scopes.scopes":
case "macaroon.v1.Scopes.base":
x.Base = value.Interface().(string)
case "macaroon.v1.Scopes.supported":
lv := value.List()
clv := lv.(*_Scopes_1_list)
x.Scopes = *clv.list
clv := lv.(*_Scopes_2_list)
x.Supported = *clv.list
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Scopes"))
@@ -1751,12 +1832,14 @@ func (x *fastReflection_Scopes) Set(fd protoreflect.FieldDescriptor, value proto
// Mutable is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Scopes) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "macaroon.v1.Scopes.scopes":
if x.Scopes == nil {
x.Scopes = []string{}
case "macaroon.v1.Scopes.supported":
if x.Supported == nil {
x.Supported = []string{}
}
value := &_Scopes_1_list{list: &x.Scopes}
value := &_Scopes_2_list{list: &x.Supported}
return protoreflect.ValueOfList(value)
case "macaroon.v1.Scopes.base":
panic(fmt.Errorf("field base of message macaroon.v1.Scopes is not mutable"))
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Scopes"))
@@ -1770,9 +1853,11 @@ func (x *fastReflection_Scopes) Mutable(fd protoreflect.FieldDescriptor) protore
// For lists, maps, and messages, this returns a new, empty, mutable value.
func (x *fastReflection_Scopes) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "macaroon.v1.Scopes.scopes":
case "macaroon.v1.Scopes.base":
return protoreflect.ValueOfString("")
case "macaroon.v1.Scopes.supported":
list := []string{}
return protoreflect.ValueOfList(&_Scopes_1_list{list: &list})
return protoreflect.ValueOfList(&_Scopes_2_list{list: &list})
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Scopes"))
@@ -1842,8 +1927,12 @@ func (x *fastReflection_Scopes) ProtoMethods() *protoiface.Methods {
var n int
var l int
_ = l
if len(x.Scopes) > 0 {
for _, s := range x.Scopes {
l = len(x.Base)
if l > 0 {
n += 1 + l + runtime.Sov(uint64(l))
}
if len(x.Supported) > 0 {
for _, s := range x.Supported {
l = len(s)
n += 1 + l + runtime.Sov(uint64(l))
}
@@ -1877,15 +1966,22 @@ func (x *fastReflection_Scopes) ProtoMethods() *protoiface.Methods {
i -= len(x.unknownFields)
copy(dAtA[i:], x.unknownFields)
}
if len(x.Scopes) > 0 {
for iNdEx := len(x.Scopes) - 1; iNdEx >= 0; iNdEx-- {
i -= len(x.Scopes[iNdEx])
copy(dAtA[i:], x.Scopes[iNdEx])
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Scopes[iNdEx])))
if len(x.Supported) > 0 {
for iNdEx := len(x.Supported) - 1; iNdEx >= 0; iNdEx-- {
i -= len(x.Supported[iNdEx])
copy(dAtA[i:], x.Supported[iNdEx])
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Supported[iNdEx])))
i--
dAtA[i] = 0xa
dAtA[i] = 0x12
}
}
if len(x.Base) > 0 {
i -= len(x.Base)
copy(dAtA[i:], x.Base)
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Base)))
i--
dAtA[i] = 0xa
}
if input.Buf != nil {
input.Buf = append(input.Buf, dAtA...)
} else {
@@ -1937,7 +2033,7 @@ func (x *fastReflection_Scopes) ProtoMethods() *protoiface.Methods {
switch fieldNum {
case 1:
if wireType != 2 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Scopes", wireType)
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Base", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
@@ -1965,7 +2061,39 @@ func (x *fastReflection_Scopes) ProtoMethods() *protoiface.Methods {
if postIndex > l {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
}
x.Scopes = append(x.Scopes, string(dAtA[iNdEx:postIndex]))
x.Base = 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 Supported", 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.Supported = append(x.Supported, string(dAtA[iNdEx:postIndex]))
iNdEx = postIndex
default:
iNdEx = preIndex
@@ -2032,7 +2160,7 @@ func (x *_Caveats_1_list) Append(value protoreflect.Value) {
}
func (x *_Caveats_1_list) AppendMutable() protoreflect.Value {
panic(fmt.Errorf("AppendMutable can not be called on message Caveats at list field Caveats as it is not of Message kind"))
panic(fmt.Errorf("AppendMutable can not be called on message Caveats at list field SupportedFirstParty as it is not of Message kind"))
}
func (x *_Caveats_1_list) Truncate(n int) {
@@ -2048,15 +2176,63 @@ func (x *_Caveats_1_list) IsValid() bool {
return x.list != nil
}
var _ protoreflect.List = (*_Caveats_2_list)(nil)
type _Caveats_2_list struct {
list *[]string
}
func (x *_Caveats_2_list) Len() int {
if x.list == nil {
return 0
}
return len(*x.list)
}
func (x *_Caveats_2_list) Get(i int) protoreflect.Value {
return protoreflect.ValueOfString((*x.list)[i])
}
func (x *_Caveats_2_list) Set(i int, value protoreflect.Value) {
valueUnwrapped := value.String()
concreteValue := valueUnwrapped
(*x.list)[i] = concreteValue
}
func (x *_Caveats_2_list) Append(value protoreflect.Value) {
valueUnwrapped := value.String()
concreteValue := valueUnwrapped
*x.list = append(*x.list, concreteValue)
}
func (x *_Caveats_2_list) AppendMutable() protoreflect.Value {
panic(fmt.Errorf("AppendMutable can not be called on message Caveats at list field SupportedThirdParty as it is not of Message kind"))
}
func (x *_Caveats_2_list) Truncate(n int) {
*x.list = (*x.list)[:n]
}
func (x *_Caveats_2_list) NewElement() protoreflect.Value {
v := ""
return protoreflect.ValueOfString(v)
}
func (x *_Caveats_2_list) IsValid() bool {
return x.list != nil
}
var (
md_Caveats protoreflect.MessageDescriptor
fd_Caveats_caveats protoreflect.FieldDescriptor
md_Caveats protoreflect.MessageDescriptor
fd_Caveats_supported_first_party protoreflect.FieldDescriptor
fd_Caveats_supported_third_party protoreflect.FieldDescriptor
)
func init() {
file_macaroon_v1_genesis_proto_init()
md_Caveats = File_macaroon_v1_genesis_proto.Messages().ByName("Caveats")
fd_Caveats_caveats = md_Caveats.Fields().ByName("caveats")
fd_Caveats_supported_first_party = md_Caveats.Fields().ByName("supported_first_party")
fd_Caveats_supported_third_party = md_Caveats.Fields().ByName("supported_third_party")
}
var _ protoreflect.Message = (*fastReflection_Caveats)(nil)
@@ -2124,9 +2300,15 @@ func (x *fastReflection_Caveats) Interface() protoreflect.ProtoMessage {
// While iterating, mutating operations may only be performed
// on the current field descriptor.
func (x *fastReflection_Caveats) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
if len(x.Caveats) != 0 {
value := protoreflect.ValueOfList(&_Caveats_1_list{list: &x.Caveats})
if !f(fd_Caveats_caveats, value) {
if len(x.SupportedFirstParty) != 0 {
value := protoreflect.ValueOfList(&_Caveats_1_list{list: &x.SupportedFirstParty})
if !f(fd_Caveats_supported_first_party, value) {
return
}
}
if len(x.SupportedThirdParty) != 0 {
value := protoreflect.ValueOfList(&_Caveats_2_list{list: &x.SupportedThirdParty})
if !f(fd_Caveats_supported_third_party, value) {
return
}
}
@@ -2145,8 +2327,10 @@ func (x *fastReflection_Caveats) Range(f func(protoreflect.FieldDescriptor, prot
// a repeated field is populated if it is non-empty.
func (x *fastReflection_Caveats) Has(fd protoreflect.FieldDescriptor) bool {
switch fd.FullName() {
case "macaroon.v1.Caveats.caveats":
return len(x.Caveats) != 0
case "macaroon.v1.Caveats.supported_first_party":
return len(x.SupportedFirstParty) != 0
case "macaroon.v1.Caveats.supported_third_party":
return len(x.SupportedThirdParty) != 0
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Caveats"))
@@ -2163,8 +2347,10 @@ func (x *fastReflection_Caveats) Has(fd protoreflect.FieldDescriptor) bool {
// Clear is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Caveats) Clear(fd protoreflect.FieldDescriptor) {
switch fd.FullName() {
case "macaroon.v1.Caveats.caveats":
x.Caveats = nil
case "macaroon.v1.Caveats.supported_first_party":
x.SupportedFirstParty = nil
case "macaroon.v1.Caveats.supported_third_party":
x.SupportedThirdParty = nil
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Caveats"))
@@ -2181,11 +2367,17 @@ func (x *fastReflection_Caveats) Clear(fd protoreflect.FieldDescriptor) {
// of the value; to obtain a mutable reference, use Mutable.
func (x *fastReflection_Caveats) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
switch descriptor.FullName() {
case "macaroon.v1.Caveats.caveats":
if len(x.Caveats) == 0 {
case "macaroon.v1.Caveats.supported_first_party":
if len(x.SupportedFirstParty) == 0 {
return protoreflect.ValueOfList(&_Caveats_1_list{})
}
listValue := &_Caveats_1_list{list: &x.Caveats}
listValue := &_Caveats_1_list{list: &x.SupportedFirstParty}
return protoreflect.ValueOfList(listValue)
case "macaroon.v1.Caveats.supported_third_party":
if len(x.SupportedThirdParty) == 0 {
return protoreflect.ValueOfList(&_Caveats_2_list{})
}
listValue := &_Caveats_2_list{list: &x.SupportedThirdParty}
return protoreflect.ValueOfList(listValue)
default:
if descriptor.IsExtension() {
@@ -2207,10 +2399,14 @@ func (x *fastReflection_Caveats) Get(descriptor protoreflect.FieldDescriptor) pr
// Set is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Caveats) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
switch fd.FullName() {
case "macaroon.v1.Caveats.caveats":
case "macaroon.v1.Caveats.supported_first_party":
lv := value.List()
clv := lv.(*_Caveats_1_list)
x.Caveats = *clv.list
x.SupportedFirstParty = *clv.list
case "macaroon.v1.Caveats.supported_third_party":
lv := value.List()
clv := lv.(*_Caveats_2_list)
x.SupportedThirdParty = *clv.list
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Caveats"))
@@ -2231,11 +2427,17 @@ func (x *fastReflection_Caveats) Set(fd protoreflect.FieldDescriptor, value prot
// Mutable is a mutating operation and unsafe for concurrent use.
func (x *fastReflection_Caveats) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "macaroon.v1.Caveats.caveats":
if x.Caveats == nil {
x.Caveats = []string{}
case "macaroon.v1.Caveats.supported_first_party":
if x.SupportedFirstParty == nil {
x.SupportedFirstParty = []string{}
}
value := &_Caveats_1_list{list: &x.Caveats}
value := &_Caveats_1_list{list: &x.SupportedFirstParty}
return protoreflect.ValueOfList(value)
case "macaroon.v1.Caveats.supported_third_party":
if x.SupportedThirdParty == nil {
x.SupportedThirdParty = []string{}
}
value := &_Caveats_2_list{list: &x.SupportedThirdParty}
return protoreflect.ValueOfList(value)
default:
if fd.IsExtension() {
@@ -2250,9 +2452,12 @@ func (x *fastReflection_Caveats) Mutable(fd protoreflect.FieldDescriptor) protor
// For lists, maps, and messages, this returns a new, empty, mutable value.
func (x *fastReflection_Caveats) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "macaroon.v1.Caveats.caveats":
case "macaroon.v1.Caveats.supported_first_party":
list := []string{}
return protoreflect.ValueOfList(&_Caveats_1_list{list: &list})
case "macaroon.v1.Caveats.supported_third_party":
list := []string{}
return protoreflect.ValueOfList(&_Caveats_2_list{list: &list})
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Caveats"))
@@ -2322,8 +2527,14 @@ func (x *fastReflection_Caveats) ProtoMethods() *protoiface.Methods {
var n int
var l int
_ = l
if len(x.Caveats) > 0 {
for _, s := range x.Caveats {
if len(x.SupportedFirstParty) > 0 {
for _, s := range x.SupportedFirstParty {
l = len(s)
n += 1 + l + runtime.Sov(uint64(l))
}
}
if len(x.SupportedThirdParty) > 0 {
for _, s := range x.SupportedThirdParty {
l = len(s)
n += 1 + l + runtime.Sov(uint64(l))
}
@@ -2357,11 +2568,20 @@ func (x *fastReflection_Caveats) ProtoMethods() *protoiface.Methods {
i -= len(x.unknownFields)
copy(dAtA[i:], x.unknownFields)
}
if len(x.Caveats) > 0 {
for iNdEx := len(x.Caveats) - 1; iNdEx >= 0; iNdEx-- {
i -= len(x.Caveats[iNdEx])
copy(dAtA[i:], x.Caveats[iNdEx])
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Caveats[iNdEx])))
if len(x.SupportedThirdParty) > 0 {
for iNdEx := len(x.SupportedThirdParty) - 1; iNdEx >= 0; iNdEx-- {
i -= len(x.SupportedThirdParty[iNdEx])
copy(dAtA[i:], x.SupportedThirdParty[iNdEx])
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.SupportedThirdParty[iNdEx])))
i--
dAtA[i] = 0x12
}
}
if len(x.SupportedFirstParty) > 0 {
for iNdEx := len(x.SupportedFirstParty) - 1; iNdEx >= 0; iNdEx-- {
i -= len(x.SupportedFirstParty[iNdEx])
copy(dAtA[i:], x.SupportedFirstParty[iNdEx])
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.SupportedFirstParty[iNdEx])))
i--
dAtA[i] = 0xa
}
@@ -2417,7 +2637,7 @@ func (x *fastReflection_Caveats) ProtoMethods() *protoiface.Methods {
switch fieldNum {
case 1:
if wireType != 2 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Caveats", wireType)
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field SupportedFirstParty", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
@@ -2445,7 +2665,39 @@ func (x *fastReflection_Caveats) ProtoMethods() *protoiface.Methods {
if postIndex > l {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, io.ErrUnexpectedEOF
}
x.Caveats = append(x.Caveats, string(dAtA[iNdEx:postIndex]))
x.SupportedFirstParty = append(x.SupportedFirstParty, 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 SupportedThirdParty", 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.SupportedThirdParty = append(x.SupportedThirdParty, string(dAtA[iNdEx:postIndex]))
iNdEx = postIndex
default:
iNdEx = preIndex
@@ -2593,7 +2845,8 @@ type Methods struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Methods []string `protobuf:"bytes,1,rep,name=methods,proto3" json:"methods,omitempty"`
Default string `protobuf:"bytes,1,opt,name=default,proto3" json:"default,omitempty"`
Supported []string `protobuf:"bytes,2,rep,name=supported,proto3" json:"supported,omitempty"`
}
func (x *Methods) Reset() {
@@ -2616,9 +2869,16 @@ func (*Methods) Descriptor() ([]byte, []int) {
return file_macaroon_v1_genesis_proto_rawDescGZIP(), []int{2}
}
func (x *Methods) GetMethods() []string {
func (x *Methods) GetDefault() string {
if x != nil {
return x.Methods
return x.Default
}
return ""
}
func (x *Methods) GetSupported() []string {
if x != nil {
return x.Supported
}
return nil
}
@@ -2629,7 +2889,8 @@ type Scopes struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Scopes []string `protobuf:"bytes,1,rep,name=scopes,proto3" json:"scopes,omitempty"`
Base string `protobuf:"bytes,1,opt,name=base,proto3" json:"base,omitempty"`
Supported []string `protobuf:"bytes,2,rep,name=supported,proto3" json:"supported,omitempty"`
}
func (x *Scopes) Reset() {
@@ -2652,9 +2913,16 @@ func (*Scopes) Descriptor() ([]byte, []int) {
return file_macaroon_v1_genesis_proto_rawDescGZIP(), []int{3}
}
func (x *Scopes) GetScopes() []string {
func (x *Scopes) GetBase() string {
if x != nil {
return x.Scopes
return x.Base
}
return ""
}
func (x *Scopes) GetSupported() []string {
if x != nil {
return x.Supported
}
return nil
}
@@ -2665,7 +2933,8 @@ type Caveats struct {
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Caveats []string `protobuf:"bytes,1,rep,name=caveats,proto3" json:"caveats,omitempty"`
SupportedFirstParty []string `protobuf:"bytes,1,rep,name=supported_first_party,json=supportedFirstParty,proto3" json:"supported_first_party,omitempty"`
SupportedThirdParty []string `protobuf:"bytes,2,rep,name=supported_third_party,json=supportedThirdParty,proto3" json:"supported_third_party,omitempty"`
}
func (x *Caveats) Reset() {
@@ -2688,9 +2957,16 @@ func (*Caveats) Descriptor() ([]byte, []int) {
return file_macaroon_v1_genesis_proto_rawDescGZIP(), []int{4}
}
func (x *Caveats) GetCaveats() []string {
func (x *Caveats) GetSupportedFirstParty() []string {
if x != nil {
return x.Caveats
return x.SupportedFirstParty
}
return nil
}
func (x *Caveats) GetSupportedThirdParty() []string {
if x != nil {
return x.SupportedThirdParty
}
return nil
}
@@ -2718,29 +2994,38 @@ var file_macaroon_v1_genesis_proto_rawDesc = []byte{
0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x61, 0x76, 0x65,
0x61, 0x74, 0x73, 0x52, 0x07, 0x63, 0x61, 0x76, 0x65, 0x61, 0x74, 0x73, 0x3a, 0x1c, 0x98, 0xa0,
0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x01, 0x8a, 0xe7, 0xb0, 0x2a, 0x0f, 0x6d, 0x61, 0x63, 0x61, 0x72,
0x6f, 0x6f, 0x6e, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x3e, 0x0a, 0x07, 0x4d, 0x65,
0x74, 0x68, 0x6f, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73,
0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x3a,
0x19, 0xe8, 0xa0, 0x1f, 0x01, 0x8a, 0xe7, 0xb0, 0x2a, 0x10, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f,
0x6f, 0x6e, 0x2f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x22, 0x3a, 0x0a, 0x06, 0x53, 0x63,
0x6f, 0x70, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x18, 0x01,
0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x3a, 0x18, 0xe8, 0xa0,
0x1f, 0x01, 0x8a, 0xe7, 0xb0, 0x2a, 0x0f, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2f,
0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x22, 0x3d, 0x0a, 0x07, 0x43, 0x61, 0x76, 0x65, 0x61, 0x74,
0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x61, 0x76, 0x65, 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03,
0x28, 0x09, 0x52, 0x07, 0x63, 0x61, 0x76, 0x65, 0x61, 0x74, 0x73, 0x3a, 0x18, 0xe8, 0xa0, 0x1f,
0x01, 0x8a, 0xe7, 0xb0, 0x2a, 0x0f, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2f, 0x63,
0x61, 0x76, 0x65, 0x61, 0x74, 0x42, 0x9f, 0x01, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x2e, 0x6d, 0x61,
0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x47, 0x65, 0x6e, 0x65, 0x73,
0x69, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x31, 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, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2f, 0x76,
0x31, 0x3b, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x4d,
0x58, 0x58, 0xaa, 0x02, 0x0b, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2e, 0x56, 0x31,
0xca, 0x02, 0x0b, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x5c, 0x56, 0x31, 0xe2, 0x02,
0x17, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42,
0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0c, 0x4d, 0x61, 0x63, 0x61, 0x72,
0x6f, 0x6f, 0x6e, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x6f, 0x6f, 0x6e, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x5c, 0x0a, 0x07, 0x4d, 0x65,
0x74, 0x68, 0x6f, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12,
0x1c, 0x0a, 0x09, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x03,
0x28, 0x09, 0x52, 0x09, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x3a, 0x19, 0xe8,
0xa0, 0x1f, 0x01, 0x8a, 0xe7, 0xb0, 0x2a, 0x10, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e,
0x2f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x22, 0x54, 0x0a, 0x06, 0x53, 0x63, 0x6f, 0x70,
0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
0x52, 0x04, 0x62, 0x61, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72,
0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x73, 0x75, 0x70, 0x70, 0x6f,
0x72, 0x74, 0x65, 0x64, 0x3a, 0x18, 0xe8, 0xa0, 0x1f, 0x01, 0x8a, 0xe7, 0xb0, 0x2a, 0x0f, 0x6d,
0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2f, 0x73, 0x63, 0x6f, 0x70, 0x65, 0x73, 0x22, 0x8b,
0x01, 0x0a, 0x07, 0x43, 0x61, 0x76, 0x65, 0x61, 0x74, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x75,
0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x66, 0x69, 0x72, 0x73, 0x74, 0x5f, 0x70, 0x61,
0x72, 0x74, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x13, 0x73, 0x75, 0x70, 0x70, 0x6f,
0x72, 0x74, 0x65, 0x64, 0x46, 0x69, 0x72, 0x73, 0x74, 0x50, 0x61, 0x72, 0x74, 0x79, 0x12, 0x32,
0x0a, 0x15, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x68, 0x69, 0x72,
0x64, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x79, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x13, 0x73,
0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x54, 0x68, 0x69, 0x72, 0x64, 0x50, 0x61, 0x72,
0x74, 0x79, 0x3a, 0x18, 0xe8, 0xa0, 0x1f, 0x01, 0x8a, 0xe7, 0xb0, 0x2a, 0x0f, 0x6d, 0x61, 0x63,
0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2f, 0x63, 0x61, 0x76, 0x65, 0x61, 0x74, 0x42, 0x9f, 0x01, 0x0a,
0x0f, 0x63, 0x6f, 0x6d, 0x2e, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2e, 0x76, 0x31,
0x42, 0x0c, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
0x5a, 0x31, 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, 0x6d, 0x61, 0x63,
0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x3b, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f,
0x6e, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x4d, 0x58, 0x58, 0xaa, 0x02, 0x0b, 0x4d, 0x61, 0x63, 0x61,
0x72, 0x6f, 0x6f, 0x6e, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x0b, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f,
0x6f, 0x6e, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x17, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e,
0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea,
0x02, 0x0c, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
+180 -1
View File
@@ -176,20 +176,193 @@ func NewGrantTable(db ormtable.Schema) (GrantTable, error) {
return grantTable{table.(ormtable.AutoIncrementTable)}, nil
}
type MacaroonTable interface {
Insert(ctx context.Context, macaroon *Macaroon) error
InsertReturningId(ctx context.Context, macaroon *Macaroon) (uint64, error)
LastInsertedSequence(ctx context.Context) (uint64, error)
Update(ctx context.Context, macaroon *Macaroon) error
Save(ctx context.Context, macaroon *Macaroon) error
Delete(ctx context.Context, macaroon *Macaroon) error
Has(ctx context.Context, id uint64) (found bool, err error)
// Get returns nil and an error which responds true to ormerrors.IsNotFound() if the record was not found.
Get(ctx context.Context, id uint64) (*Macaroon, error)
HasBySubjectOrigin(ctx context.Context, subject string, origin string) (found bool, err error)
// GetBySubjectOrigin returns nil and an error which responds true to ormerrors.IsNotFound() if the record was not found.
GetBySubjectOrigin(ctx context.Context, subject string, origin string) (*Macaroon, error)
List(ctx context.Context, prefixKey MacaroonIndexKey, opts ...ormlist.Option) (MacaroonIterator, error)
ListRange(ctx context.Context, from, to MacaroonIndexKey, opts ...ormlist.Option) (MacaroonIterator, error)
DeleteBy(ctx context.Context, prefixKey MacaroonIndexKey) error
DeleteRange(ctx context.Context, from, to MacaroonIndexKey) error
doNotImplement()
}
type MacaroonIterator struct {
ormtable.Iterator
}
func (i MacaroonIterator) Value() (*Macaroon, error) {
var macaroon Macaroon
err := i.UnmarshalMessage(&macaroon)
return &macaroon, err
}
type MacaroonIndexKey interface {
id() uint32
values() []interface{}
macaroonIndexKey()
}
// primary key starting index..
type MacaroonPrimaryKey = MacaroonIdIndexKey
type MacaroonIdIndexKey struct {
vs []interface{}
}
func (x MacaroonIdIndexKey) id() uint32 { return 0 }
func (x MacaroonIdIndexKey) values() []interface{} { return x.vs }
func (x MacaroonIdIndexKey) macaroonIndexKey() {}
func (this MacaroonIdIndexKey) WithId(id uint64) MacaroonIdIndexKey {
this.vs = []interface{}{id}
return this
}
type MacaroonSubjectOriginIndexKey struct {
vs []interface{}
}
func (x MacaroonSubjectOriginIndexKey) id() uint32 { return 1 }
func (x MacaroonSubjectOriginIndexKey) values() []interface{} { return x.vs }
func (x MacaroonSubjectOriginIndexKey) macaroonIndexKey() {}
func (this MacaroonSubjectOriginIndexKey) WithSubject(subject string) MacaroonSubjectOriginIndexKey {
this.vs = []interface{}{subject}
return this
}
func (this MacaroonSubjectOriginIndexKey) WithSubjectOrigin(subject string, origin string) MacaroonSubjectOriginIndexKey {
this.vs = []interface{}{subject, origin}
return this
}
type macaroonTable struct {
table ormtable.AutoIncrementTable
}
func (this macaroonTable) Insert(ctx context.Context, macaroon *Macaroon) error {
return this.table.Insert(ctx, macaroon)
}
func (this macaroonTable) Update(ctx context.Context, macaroon *Macaroon) error {
return this.table.Update(ctx, macaroon)
}
func (this macaroonTable) Save(ctx context.Context, macaroon *Macaroon) error {
return this.table.Save(ctx, macaroon)
}
func (this macaroonTable) Delete(ctx context.Context, macaroon *Macaroon) error {
return this.table.Delete(ctx, macaroon)
}
func (this macaroonTable) InsertReturningId(ctx context.Context, macaroon *Macaroon) (uint64, error) {
return this.table.InsertReturningPKey(ctx, macaroon)
}
func (this macaroonTable) LastInsertedSequence(ctx context.Context) (uint64, error) {
return this.table.LastInsertedSequence(ctx)
}
func (this macaroonTable) Has(ctx context.Context, id uint64) (found bool, err error) {
return this.table.PrimaryKey().Has(ctx, id)
}
func (this macaroonTable) Get(ctx context.Context, id uint64) (*Macaroon, error) {
var macaroon Macaroon
found, err := this.table.PrimaryKey().Get(ctx, &macaroon, id)
if err != nil {
return nil, err
}
if !found {
return nil, ormerrors.NotFound
}
return &macaroon, nil
}
func (this macaroonTable) HasBySubjectOrigin(ctx context.Context, subject string, origin string) (found bool, err error) {
return this.table.GetIndexByID(1).(ormtable.UniqueIndex).Has(ctx,
subject,
origin,
)
}
func (this macaroonTable) GetBySubjectOrigin(ctx context.Context, subject string, origin string) (*Macaroon, error) {
var macaroon Macaroon
found, err := this.table.GetIndexByID(1).(ormtable.UniqueIndex).Get(ctx, &macaroon,
subject,
origin,
)
if err != nil {
return nil, err
}
if !found {
return nil, ormerrors.NotFound
}
return &macaroon, nil
}
func (this macaroonTable) List(ctx context.Context, prefixKey MacaroonIndexKey, opts ...ormlist.Option) (MacaroonIterator, error) {
it, err := this.table.GetIndexByID(prefixKey.id()).List(ctx, prefixKey.values(), opts...)
return MacaroonIterator{it}, err
}
func (this macaroonTable) ListRange(ctx context.Context, from, to MacaroonIndexKey, opts ...ormlist.Option) (MacaroonIterator, error) {
it, err := this.table.GetIndexByID(from.id()).ListRange(ctx, from.values(), to.values(), opts...)
return MacaroonIterator{it}, err
}
func (this macaroonTable) DeleteBy(ctx context.Context, prefixKey MacaroonIndexKey) error {
return this.table.GetIndexByID(prefixKey.id()).DeleteBy(ctx, prefixKey.values()...)
}
func (this macaroonTable) DeleteRange(ctx context.Context, from, to MacaroonIndexKey) error {
return this.table.GetIndexByID(from.id()).DeleteRange(ctx, from.values(), to.values())
}
func (this macaroonTable) doNotImplement() {}
var _ MacaroonTable = macaroonTable{}
func NewMacaroonTable(db ormtable.Schema) (MacaroonTable, error) {
table := db.GetTable(&Macaroon{})
if table == nil {
return nil, ormerrors.TableNotFound.Wrap(string((&Macaroon{}).ProtoReflect().Descriptor().FullName()))
}
return macaroonTable{table.(ormtable.AutoIncrementTable)}, nil
}
type StateStore interface {
GrantTable() GrantTable
MacaroonTable() MacaroonTable
doNotImplement()
}
type stateStore struct {
grant GrantTable
grant GrantTable
macaroon MacaroonTable
}
func (x stateStore) GrantTable() GrantTable {
return x.grant
}
func (x stateStore) MacaroonTable() MacaroonTable {
return x.macaroon
}
func (stateStore) doNotImplement() {}
var _ StateStore = stateStore{}
@@ -200,7 +373,13 @@ func NewStateStore(db ormtable.Schema) (StateStore, error) {
return nil, err
}
macaroonTable, err := NewMacaroonTable(db)
if err != nil {
return nil, err
}
return stateStore{
grantTable,
macaroonTable,
}, nil
}
+824 -14
View File
@@ -657,6 +657,714 @@ func (x *fastReflection_Grant) ProtoMethods() *protoiface.Methods {
}
}
var (
md_Macaroon protoreflect.MessageDescriptor
fd_Macaroon_id protoreflect.FieldDescriptor
fd_Macaroon_controller protoreflect.FieldDescriptor
fd_Macaroon_subject protoreflect.FieldDescriptor
fd_Macaroon_origin protoreflect.FieldDescriptor
fd_Macaroon_expiry_height protoreflect.FieldDescriptor
fd_Macaroon_macaroon protoreflect.FieldDescriptor
)
func init() {
file_macaroon_v1_state_proto_init()
md_Macaroon = File_macaroon_v1_state_proto.Messages().ByName("Macaroon")
fd_Macaroon_id = md_Macaroon.Fields().ByName("id")
fd_Macaroon_controller = md_Macaroon.Fields().ByName("controller")
fd_Macaroon_subject = md_Macaroon.Fields().ByName("subject")
fd_Macaroon_origin = md_Macaroon.Fields().ByName("origin")
fd_Macaroon_expiry_height = md_Macaroon.Fields().ByName("expiry_height")
fd_Macaroon_macaroon = md_Macaroon.Fields().ByName("macaroon")
}
var _ protoreflect.Message = (*fastReflection_Macaroon)(nil)
type fastReflection_Macaroon Macaroon
func (x *Macaroon) ProtoReflect() protoreflect.Message {
return (*fastReflection_Macaroon)(x)
}
func (x *Macaroon) slowProtoReflect() protoreflect.Message {
mi := &file_macaroon_v1_state_proto_msgTypes[1]
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_Macaroon_messageType fastReflection_Macaroon_messageType
var _ protoreflect.MessageType = fastReflection_Macaroon_messageType{}
type fastReflection_Macaroon_messageType struct{}
func (x fastReflection_Macaroon_messageType) Zero() protoreflect.Message {
return (*fastReflection_Macaroon)(nil)
}
func (x fastReflection_Macaroon_messageType) New() protoreflect.Message {
return new(fastReflection_Macaroon)
}
func (x fastReflection_Macaroon_messageType) Descriptor() protoreflect.MessageDescriptor {
return md_Macaroon
}
// Descriptor returns message descriptor, which contains only the protobuf
// type information for the message.
func (x *fastReflection_Macaroon) Descriptor() protoreflect.MessageDescriptor {
return md_Macaroon
}
// 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_Macaroon) Type() protoreflect.MessageType {
return _fastReflection_Macaroon_messageType
}
// New returns a newly allocated and mutable empty message.
func (x *fastReflection_Macaroon) New() protoreflect.Message {
return new(fastReflection_Macaroon)
}
// Interface unwraps the message reflection interface and
// returns the underlying ProtoMessage interface.
func (x *fastReflection_Macaroon) Interface() protoreflect.ProtoMessage {
return (*Macaroon)(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_Macaroon) Range(f func(protoreflect.FieldDescriptor, protoreflect.Value) bool) {
if x.Id != uint64(0) {
value := protoreflect.ValueOfUint64(x.Id)
if !f(fd_Macaroon_id, value) {
return
}
}
if x.Controller != "" {
value := protoreflect.ValueOfString(x.Controller)
if !f(fd_Macaroon_controller, value) {
return
}
}
if x.Subject != "" {
value := protoreflect.ValueOfString(x.Subject)
if !f(fd_Macaroon_subject, value) {
return
}
}
if x.Origin != "" {
value := protoreflect.ValueOfString(x.Origin)
if !f(fd_Macaroon_origin, value) {
return
}
}
if x.ExpiryHeight != int64(0) {
value := protoreflect.ValueOfInt64(x.ExpiryHeight)
if !f(fd_Macaroon_expiry_height, value) {
return
}
}
if x.Macaroon != "" {
value := protoreflect.ValueOfString(x.Macaroon)
if !f(fd_Macaroon_macaroon, 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_Macaroon) Has(fd protoreflect.FieldDescriptor) bool {
switch fd.FullName() {
case "macaroon.v1.Macaroon.id":
return x.Id != uint64(0)
case "macaroon.v1.Macaroon.controller":
return x.Controller != ""
case "macaroon.v1.Macaroon.subject":
return x.Subject != ""
case "macaroon.v1.Macaroon.origin":
return x.Origin != ""
case "macaroon.v1.Macaroon.expiry_height":
return x.ExpiryHeight != int64(0)
case "macaroon.v1.Macaroon.macaroon":
return x.Macaroon != ""
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Macaroon"))
}
panic(fmt.Errorf("message macaroon.v1.Macaroon 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_Macaroon) Clear(fd protoreflect.FieldDescriptor) {
switch fd.FullName() {
case "macaroon.v1.Macaroon.id":
x.Id = uint64(0)
case "macaroon.v1.Macaroon.controller":
x.Controller = ""
case "macaroon.v1.Macaroon.subject":
x.Subject = ""
case "macaroon.v1.Macaroon.origin":
x.Origin = ""
case "macaroon.v1.Macaroon.expiry_height":
x.ExpiryHeight = int64(0)
case "macaroon.v1.Macaroon.macaroon":
x.Macaroon = ""
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Macaroon"))
}
panic(fmt.Errorf("message macaroon.v1.Macaroon 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_Macaroon) Get(descriptor protoreflect.FieldDescriptor) protoreflect.Value {
switch descriptor.FullName() {
case "macaroon.v1.Macaroon.id":
value := x.Id
return protoreflect.ValueOfUint64(value)
case "macaroon.v1.Macaroon.controller":
value := x.Controller
return protoreflect.ValueOfString(value)
case "macaroon.v1.Macaroon.subject":
value := x.Subject
return protoreflect.ValueOfString(value)
case "macaroon.v1.Macaroon.origin":
value := x.Origin
return protoreflect.ValueOfString(value)
case "macaroon.v1.Macaroon.expiry_height":
value := x.ExpiryHeight
return protoreflect.ValueOfInt64(value)
case "macaroon.v1.Macaroon.macaroon":
value := x.Macaroon
return protoreflect.ValueOfString(value)
default:
if descriptor.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Macaroon"))
}
panic(fmt.Errorf("message macaroon.v1.Macaroon 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_Macaroon) Set(fd protoreflect.FieldDescriptor, value protoreflect.Value) {
switch fd.FullName() {
case "macaroon.v1.Macaroon.id":
x.Id = value.Uint()
case "macaroon.v1.Macaroon.controller":
x.Controller = value.Interface().(string)
case "macaroon.v1.Macaroon.subject":
x.Subject = value.Interface().(string)
case "macaroon.v1.Macaroon.origin":
x.Origin = value.Interface().(string)
case "macaroon.v1.Macaroon.expiry_height":
x.ExpiryHeight = value.Int()
case "macaroon.v1.Macaroon.macaroon":
x.Macaroon = value.Interface().(string)
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Macaroon"))
}
panic(fmt.Errorf("message macaroon.v1.Macaroon 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_Macaroon) Mutable(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "macaroon.v1.Macaroon.id":
panic(fmt.Errorf("field id of message macaroon.v1.Macaroon is not mutable"))
case "macaroon.v1.Macaroon.controller":
panic(fmt.Errorf("field controller of message macaroon.v1.Macaroon is not mutable"))
case "macaroon.v1.Macaroon.subject":
panic(fmt.Errorf("field subject of message macaroon.v1.Macaroon is not mutable"))
case "macaroon.v1.Macaroon.origin":
panic(fmt.Errorf("field origin of message macaroon.v1.Macaroon is not mutable"))
case "macaroon.v1.Macaroon.expiry_height":
panic(fmt.Errorf("field expiry_height of message macaroon.v1.Macaroon is not mutable"))
case "macaroon.v1.Macaroon.macaroon":
panic(fmt.Errorf("field macaroon of message macaroon.v1.Macaroon is not mutable"))
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Macaroon"))
}
panic(fmt.Errorf("message macaroon.v1.Macaroon 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_Macaroon) NewField(fd protoreflect.FieldDescriptor) protoreflect.Value {
switch fd.FullName() {
case "macaroon.v1.Macaroon.id":
return protoreflect.ValueOfUint64(uint64(0))
case "macaroon.v1.Macaroon.controller":
return protoreflect.ValueOfString("")
case "macaroon.v1.Macaroon.subject":
return protoreflect.ValueOfString("")
case "macaroon.v1.Macaroon.origin":
return protoreflect.ValueOfString("")
case "macaroon.v1.Macaroon.expiry_height":
return protoreflect.ValueOfInt64(int64(0))
case "macaroon.v1.Macaroon.macaroon":
return protoreflect.ValueOfString("")
default:
if fd.IsExtension() {
panic(fmt.Errorf("proto3 declared messages do not support extensions: macaroon.v1.Macaroon"))
}
panic(fmt.Errorf("message macaroon.v1.Macaroon 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_Macaroon) WhichOneof(d protoreflect.OneofDescriptor) protoreflect.FieldDescriptor {
switch d.FullName() {
default:
panic(fmt.Errorf("%s is not a oneof field in macaroon.v1.Macaroon", 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_Macaroon) 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_Macaroon) 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_Macaroon) 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_Macaroon) ProtoMethods() *protoiface.Methods {
size := func(input protoiface.SizeInput) protoiface.SizeOutput {
x := input.Message.Interface().(*Macaroon)
if x == nil {
return protoiface.SizeOutput{
NoUnkeyedLiterals: input.NoUnkeyedLiterals,
Size: 0,
}
}
options := runtime.SizeInputToOptions(input)
_ = options
var n int
var l int
_ = l
if x.Id != 0 {
n += 1 + runtime.Sov(uint64(x.Id))
}
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))
}
l = len(x.Origin)
if l > 0 {
n += 1 + l + runtime.Sov(uint64(l))
}
if x.ExpiryHeight != 0 {
n += 1 + runtime.Sov(uint64(x.ExpiryHeight))
}
l = len(x.Macaroon)
if l > 0 {
n += 1 + l + runtime.Sov(uint64(l))
}
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().(*Macaroon)
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 len(x.Macaroon) > 0 {
i -= len(x.Macaroon)
copy(dAtA[i:], x.Macaroon)
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Macaroon)))
i--
dAtA[i] = 0x32
}
if x.ExpiryHeight != 0 {
i = runtime.EncodeVarint(dAtA, i, uint64(x.ExpiryHeight))
i--
dAtA[i] = 0x28
}
if len(x.Origin) > 0 {
i -= len(x.Origin)
copy(dAtA[i:], x.Origin)
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Origin)))
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 x.Id != 0 {
i = runtime.EncodeVarint(dAtA, i, uint64(x.Id))
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) {
x := input.Message.Interface().(*Macaroon)
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: Macaroon: wiretype end group for non-group")
}
if fieldNum <= 0 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: Macaroon: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 0 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
}
x.Id = 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.Id |= 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 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 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Origin", 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.Origin = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 5:
if wireType != 0 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field ExpiryHeight", wireType)
}
x.ExpiryHeight = 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.ExpiryHeight |= int64(b&0x7F) << shift
if b < 0x80 {
break
}
}
case 6:
if wireType != 2 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Macaroon", 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.Macaroon = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
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,
}
}
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.27.0
@@ -737,6 +1445,81 @@ func (x *Grant) GetExpiryHeight() int64 {
return 0
}
type Macaroon struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
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"`
}
func (x *Macaroon) Reset() {
*x = Macaroon{}
if protoimpl.UnsafeEnabled {
mi := &file_macaroon_v1_state_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Macaroon) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Macaroon) ProtoMessage() {}
// Deprecated: Use Macaroon.ProtoReflect.Descriptor instead.
func (*Macaroon) Descriptor() ([]byte, []int) {
return file_macaroon_v1_state_proto_rawDescGZIP(), []int{1}
}
func (x *Macaroon) GetId() uint64 {
if x != nil {
return x.Id
}
return 0
}
func (x *Macaroon) GetController() string {
if x != nil {
return x.Controller
}
return ""
}
func (x *Macaroon) GetSubject() string {
if x != nil {
return x.Subject
}
return ""
}
func (x *Macaroon) GetOrigin() string {
if x != nil {
return x.Origin
}
return ""
}
func (x *Macaroon) GetExpiryHeight() int64 {
if x != nil {
return x.ExpiryHeight
}
return 0
}
func (x *Macaroon) GetMacaroon() string {
if x != nil {
return x.Macaroon
}
return ""
}
var File_macaroon_v1_state_proto protoreflect.FileDescriptor
var file_macaroon_v1_state_proto_rawDesc = []byte{
@@ -755,17 +1538,31 @@ var file_macaroon_v1_state_proto_rawDesc = []byte{
0x28, 0x03, 0x52, 0x0c, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74,
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, 0x01, 0x42, 0x9d, 0x01, 0x0a, 0x0f, 0x63, 0x6f, 0x6d,
0x2e, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x53, 0x74,
0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x31, 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, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2f,
0x76, 0x31, 0x3b, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x76, 0x31, 0xa2, 0x02, 0x03,
0x4d, 0x58, 0x58, 0xaa, 0x02, 0x0b, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2e, 0x56,
0x31, 0xca, 0x02, 0x0b, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x5c, 0x56, 0x31, 0xe2,
0x02, 0x17, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50,
0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0c, 0x4d, 0x61, 0x63, 0x61,
0x72, 0x6f, 0x6f, 0x6e, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x69, 0x6e, 0x10, 0x01, 0x18, 0x01, 0x18, 0x01, 0x22, 0xd5, 0x01, 0x0a, 0x08, 0x4d, 0x61, 0x63,
0x61, 0x72, 0x6f, 0x6f, 0x6e, 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, 0x02,
0x42, 0x9d, 0x01, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x2e, 0x6d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f,
0x6e, 0x2e, 0x76, 0x31, 0x42, 0x0a, 0x53, 0x74, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f,
0x50, 0x01, 0x5a, 0x31, 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, 0x6d,
0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x3b, 0x6d, 0x61, 0x63, 0x61, 0x72,
0x6f, 0x6f, 0x6e, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x4d, 0x58, 0x58, 0xaa, 0x02, 0x0b, 0x4d, 0x61,
0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x0b, 0x4d, 0x61, 0x63, 0x61,
0x72, 0x6f, 0x6f, 0x6e, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x17, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f,
0x6f, 0x6e, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
0x61, 0xea, 0x02, 0x0c, 0x4d, 0x61, 0x63, 0x61, 0x72, 0x6f, 0x6f, 0x6e, 0x3a, 0x3a, 0x56, 0x31,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
@@ -780,9 +1577,10 @@ func file_macaroon_v1_state_proto_rawDescGZIP() []byte {
return file_macaroon_v1_state_proto_rawDescData
}
var file_macaroon_v1_state_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
var file_macaroon_v1_state_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
var file_macaroon_v1_state_proto_goTypes = []interface{}{
(*Grant)(nil), // 0: macaroon.v1.Grant
(*Grant)(nil), // 0: macaroon.v1.Grant
(*Macaroon)(nil), // 1: macaroon.v1.Macaroon
}
var file_macaroon_v1_state_proto_depIdxs = []int32{
0, // [0:0] is the sub-list for method output_type
@@ -810,6 +1608,18 @@ func file_macaroon_v1_state_proto_init() {
return nil
}
}
file_macaroon_v1_state_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Macaroon); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
@@ -817,7 +1627,7 @@ func file_macaroon_v1_state_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_macaroon_v1_state_proto_rawDesc,
NumEnums: 0,
NumMessages: 1,
NumMessages: 2,
NumExtensions: 0,
NumServices: 0,
},
+100 -27
View File
@@ -999,6 +999,7 @@ var (
fd_Schema_asset protoreflect.FieldDescriptor
fd_Schema_chain protoreflect.FieldDescriptor
fd_Schema_credential protoreflect.FieldDescriptor
fd_Schema_did protoreflect.FieldDescriptor
fd_Schema_jwk protoreflect.FieldDescriptor
fd_Schema_grant protoreflect.FieldDescriptor
fd_Schema_keyshare protoreflect.FieldDescriptor
@@ -1013,6 +1014,7 @@ func init() {
fd_Schema_asset = md_Schema.Fields().ByName("asset")
fd_Schema_chain = md_Schema.Fields().ByName("chain")
fd_Schema_credential = md_Schema.Fields().ByName("credential")
fd_Schema_did = md_Schema.Fields().ByName("did")
fd_Schema_jwk = md_Schema.Fields().ByName("jwk")
fd_Schema_grant = md_Schema.Fields().ByName("grant")
fd_Schema_keyshare = md_Schema.Fields().ByName("keyshare")
@@ -1114,6 +1116,12 @@ func (x *fastReflection_Schema) Range(f func(protoreflect.FieldDescriptor, proto
return
}
}
if x.Did != "" {
value := protoreflect.ValueOfString(x.Did)
if !f(fd_Schema_did, value) {
return
}
}
if x.Jwk != "" {
value := protoreflect.ValueOfString(x.Jwk)
if !f(fd_Schema_jwk, value) {
@@ -1163,6 +1171,8 @@ func (x *fastReflection_Schema) Has(fd protoreflect.FieldDescriptor) bool {
return x.Chain != ""
case "vault.v1.Schema.credential":
return x.Credential != ""
case "vault.v1.Schema.did":
return x.Did != ""
case "vault.v1.Schema.jwk":
return x.Jwk != ""
case "vault.v1.Schema.grant":
@@ -1197,6 +1207,8 @@ func (x *fastReflection_Schema) Clear(fd protoreflect.FieldDescriptor) {
x.Chain = ""
case "vault.v1.Schema.credential":
x.Credential = ""
case "vault.v1.Schema.did":
x.Did = ""
case "vault.v1.Schema.jwk":
x.Jwk = ""
case "vault.v1.Schema.grant":
@@ -1236,6 +1248,9 @@ func (x *fastReflection_Schema) Get(descriptor protoreflect.FieldDescriptor) pro
case "vault.v1.Schema.credential":
value := x.Credential
return protoreflect.ValueOfString(value)
case "vault.v1.Schema.did":
value := x.Did
return protoreflect.ValueOfString(value)
case "vault.v1.Schema.jwk":
value := x.Jwk
return protoreflect.ValueOfString(value)
@@ -1278,6 +1293,8 @@ func (x *fastReflection_Schema) Set(fd protoreflect.FieldDescriptor, value proto
x.Chain = value.Interface().(string)
case "vault.v1.Schema.credential":
x.Credential = value.Interface().(string)
case "vault.v1.Schema.did":
x.Did = value.Interface().(string)
case "vault.v1.Schema.jwk":
x.Jwk = value.Interface().(string)
case "vault.v1.Schema.grant":
@@ -1316,6 +1333,8 @@ func (x *fastReflection_Schema) Mutable(fd protoreflect.FieldDescriptor) protore
panic(fmt.Errorf("field chain of message vault.v1.Schema is not mutable"))
case "vault.v1.Schema.credential":
panic(fmt.Errorf("field credential of message vault.v1.Schema is not mutable"))
case "vault.v1.Schema.did":
panic(fmt.Errorf("field did of message vault.v1.Schema is not mutable"))
case "vault.v1.Schema.jwk":
panic(fmt.Errorf("field jwk of message vault.v1.Schema is not mutable"))
case "vault.v1.Schema.grant":
@@ -1347,6 +1366,8 @@ func (x *fastReflection_Schema) NewField(fd protoreflect.FieldDescriptor) protor
return protoreflect.ValueOfString("")
case "vault.v1.Schema.credential":
return protoreflect.ValueOfString("")
case "vault.v1.Schema.did":
return protoreflect.ValueOfString("")
case "vault.v1.Schema.jwk":
return protoreflect.ValueOfString("")
case "vault.v1.Schema.grant":
@@ -1443,6 +1464,10 @@ func (x *fastReflection_Schema) ProtoMethods() *protoiface.Methods {
if l > 0 {
n += 1 + l + runtime.Sov(uint64(l))
}
l = len(x.Did)
if l > 0 {
n += 1 + l + runtime.Sov(uint64(l))
}
l = len(x.Jwk)
if l > 0 {
n += 1 + l + runtime.Sov(uint64(l))
@@ -1493,27 +1518,34 @@ func (x *fastReflection_Schema) ProtoMethods() *protoiface.Methods {
copy(dAtA[i:], x.Profile)
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Profile)))
i--
dAtA[i] = 0x4a
dAtA[i] = 0x52
}
if len(x.Keyshare) > 0 {
i -= len(x.Keyshare)
copy(dAtA[i:], x.Keyshare)
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Keyshare)))
i--
dAtA[i] = 0x42
dAtA[i] = 0x4a
}
if len(x.Grant) > 0 {
i -= len(x.Grant)
copy(dAtA[i:], x.Grant)
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Grant)))
i--
dAtA[i] = 0x3a
dAtA[i] = 0x42
}
if len(x.Jwk) > 0 {
i -= len(x.Jwk)
copy(dAtA[i:], x.Jwk)
i = runtime.EncodeVarint(dAtA, i, uint64(len(x.Jwk)))
i--
dAtA[i] = 0x3a
}
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] = 0x32
}
if len(x.Credential) > 0 {
@@ -1746,6 +1778,38 @@ func (x *fastReflection_Schema) ProtoMethods() *protoiface.Methods {
x.Credential = 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 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 7:
if wireType != 2 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Jwk", wireType)
}
@@ -1777,7 +1841,7 @@ func (x *fastReflection_Schema) ProtoMethods() *protoiface.Methods {
}
x.Jwk = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 7:
case 8:
if wireType != 2 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Grant", wireType)
}
@@ -1809,7 +1873,7 @@ func (x *fastReflection_Schema) ProtoMethods() *protoiface.Methods {
}
x.Grant = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 8:
case 9:
if wireType != 2 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Keyshare", wireType)
}
@@ -1841,7 +1905,7 @@ func (x *fastReflection_Schema) ProtoMethods() *protoiface.Methods {
}
x.Keyshare = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 9:
case 10:
if wireType != 2 {
return protoiface.UnmarshalOutput{NoUnkeyedLiterals: input.NoUnkeyedLiterals, Flags: input.Flags}, fmt.Errorf("proto: wrong wireType = %d for field Profile", wireType)
}
@@ -2020,10 +2084,11 @@ type Schema struct {
Asset string `protobuf:"bytes,3,opt,name=asset,proto3" json:"asset,omitempty"`
Chain string `protobuf:"bytes,4,opt,name=chain,proto3" json:"chain,omitempty"`
Credential string `protobuf:"bytes,5,opt,name=credential,proto3" json:"credential,omitempty"`
Jwk string `protobuf:"bytes,6,opt,name=jwk,proto3" json:"jwk,omitempty"`
Grant string `protobuf:"bytes,7,opt,name=grant,proto3" json:"grant,omitempty"`
Keyshare string `protobuf:"bytes,8,opt,name=keyshare,proto3" json:"keyshare,omitempty"`
Profile string `protobuf:"bytes,9,opt,name=profile,proto3" json:"profile,omitempty"`
Did string `protobuf:"bytes,6,opt,name=did,proto3" json:"did,omitempty"`
Jwk string `protobuf:"bytes,7,opt,name=jwk,proto3" json:"jwk,omitempty"`
Grant string `protobuf:"bytes,8,opt,name=grant,proto3" json:"grant,omitempty"`
Keyshare string `protobuf:"bytes,9,opt,name=keyshare,proto3" json:"keyshare,omitempty"`
Profile string `protobuf:"bytes,10,opt,name=profile,proto3" json:"profile,omitempty"`
}
func (x *Schema) Reset() {
@@ -2081,6 +2146,13 @@ func (x *Schema) GetCredential() string {
return ""
}
func (x *Schema) GetDid() string {
if x != nil {
return x.Did
}
return ""
}
func (x *Schema) GetJwk() string {
if x != nil {
return x.Jwk
@@ -2131,7 +2203,7 @@ var file_vault_v1_genesis_proto_rawDesc = []byte{
0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x76, 0x61, 0x75, 0x6c, 0x74, 0x2e, 0x76, 0x31,
0x2e, 0x53, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x52, 0x06, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x3a,
0x19, 0x98, 0xa0, 0x1f, 0x00, 0xe8, 0xa0, 0x1f, 0x01, 0x8a, 0xe7, 0xb0, 0x2a, 0x0c, 0x76, 0x61,
0x75, 0x6c, 0x74, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xe6, 0x01, 0x0a, 0x06, 0x53,
0x75, 0x6c, 0x74, 0x2f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xf8, 0x01, 0x0a, 0x06, 0x53,
0x63, 0x68, 0x65, 0x6d, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
0x18, 0x0a, 0x07, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
@@ -2140,22 +2212,23 @@ var file_vault_v1_genesis_proto_rawDesc = []byte{
0x14, 0x0a, 0x05, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
0x63, 0x68, 0x61, 0x69, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74,
0x69, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x65,
0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x6a, 0x77, 0x6b, 0x18, 0x06, 0x20, 0x01,
0x28, 0x09, 0x52, 0x03, 0x6a, 0x77, 0x6b, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x61, 0x6e, 0x74,
0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x12, 0x1a, 0x0a,
0x08, 0x6b, 0x65, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
0x08, 0x6b, 0x65, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f,
0x66, 0x69, 0x6c, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x66,
0x69, 0x6c, 0x65, 0x42, 0x8a, 0x01, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x2e, 0x76, 0x61, 0x75, 0x6c,
0x74, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x50, 0x72, 0x6f,
0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2b, 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, 0x76, 0x61, 0x75, 0x6c, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x76, 0x61, 0x75, 0x6c, 0x74, 0x76,
0x31, 0xa2, 0x02, 0x03, 0x56, 0x58, 0x58, 0xaa, 0x02, 0x08, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x2e,
0x56, 0x31, 0xca, 0x02, 0x08, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x14,
0x56, 0x61, 0x75, 0x6c, 0x74, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61,
0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x09, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x3a, 0x3a, 0x56, 0x31,
0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
0x6e, 0x74, 0x69, 0x61, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01,
0x28, 0x09, 0x52, 0x03, 0x64, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6a, 0x77, 0x6b, 0x18, 0x07,
0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6a, 0x77, 0x6b, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x72, 0x61,
0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x67, 0x72, 0x61, 0x6e, 0x74, 0x12,
0x1a, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28,
0x09, 0x52, 0x08, 0x6b, 0x65, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70,
0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72,
0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x8a, 0x01, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x2e, 0x76, 0x61,
0x75, 0x6c, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x47, 0x65, 0x6e, 0x65, 0x73, 0x69, 0x73, 0x50,
0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x2b, 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, 0x76, 0x61, 0x75, 0x6c, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x76, 0x61, 0x75, 0x6c,
0x74, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x56, 0x58, 0x58, 0xaa, 0x02, 0x08, 0x56, 0x61, 0x75, 0x6c,
0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x08, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x5c, 0x56, 0x31, 0xe2,
0x02, 0x14, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65,
0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x09, 0x56, 0x61, 0x75, 0x6c, 0x74, 0x3a, 0x3a,
0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
+30 -24
View File
@@ -626,28 +626,15 @@ func NewChainApp(
// If evidence needs to be handled for the app, set routes in router here and seal
app.EvidenceKeeper = *evidenceKeeper
// Create the oracle Keeper
app.OracleKeeper = oraclekeeper.NewKeeper(
// Create the did Keeper
app.DidKeeper = didkeeper.NewKeeper(
appCodec,
sdkruntime.NewKVStoreService(keys[oracletypes.StoreKey]),
logger,
authtypes.NewModuleAddress(govtypes.ModuleName).String(),
)
// Create the service Keeper
app.ServiceKeeper = servicekeeper.NewKeeper(
appCodec,
sdkruntime.NewKVStoreService(keys[servicetypes.StoreKey]),
logger,
authtypes.NewModuleAddress(govtypes.ModuleName).String(),
)
// Create the macaroon Keeper
app.MacaroonKeeper = macaroonkeeper.NewKeeper(
appCodec,
sdkruntime.NewKVStoreService(keys[macaroontypes.StoreKey]),
sdkruntime.NewKVStoreService(keys[didtypes.StoreKey]),
logger,
authtypes.NewModuleAddress(govtypes.ModuleName).String(),
app.AccountKeeper,
app.NFTKeeper,
app.StakingKeeper,
)
// Create the vault Keeper
@@ -656,16 +643,35 @@ func NewChainApp(
sdkruntime.NewKVStoreService(keys[vaulttypes.StoreKey]),
logger,
authtypes.NewModuleAddress(govtypes.ModuleName).String(),
app.AccountKeeper,
app.DidKeeper,
)
// Create the macaroon Keeper
app.MacaroonKeeper = macaroonkeeper.NewKeeper(
appCodec,
sdkruntime.NewKVStoreService(keys[macaroontypes.StoreKey]),
logger,
authtypes.NewModuleAddress(govtypes.ModuleName).String(),
app.AccountKeeper,
app.DidKeeper,
)
// Create the did Keeper
app.DidKeeper = didkeeper.NewKeeper(
// Create the service Keeper
app.ServiceKeeper = servicekeeper.NewKeeper(
appCodec,
sdkruntime.NewKVStoreService(keys[didtypes.StoreKey]),
app.AccountKeeper,
sdkruntime.NewKVStoreService(keys[servicetypes.StoreKey]),
logger,
authtypes.NewModuleAddress(govtypes.ModuleName).String(),
app.DidKeeper,
app.GroupKeeper,
app.MacaroonKeeper,
app.NFTKeeper,
app.StakingKeeper,
)
// Create the oracle Keeper
app.OracleKeeper = oraclekeeper.NewKeeper(
appCodec,
sdkruntime.NewKVStoreService(keys[oracletypes.StoreKey]),
logger,
authtypes.NewModuleAddress(govtypes.ModuleName).String(),
)
+3 -9
View File
@@ -5,10 +5,8 @@ import (
"fmt"
"log"
cmtproto "github.com/cometbft/cometbft/proto/tendermint/types"
storetypes "cosmossdk.io/store/types"
cmtproto "github.com/cometbft/cometbft/proto/tendermint/types"
servertypes "github.com/cosmos/cosmos-sdk/server/types"
sdk "github.com/cosmos/cosmos-sdk/types"
slashingtypes "github.com/cosmos/cosmos-sdk/x/slashing/types"
@@ -45,7 +43,7 @@ func (app *SonrApp) ExportAppStateAndValidators(forZeroHeight bool, jailAllowedA
AppState: appState,
Validators: validators,
Height: height,
ConsensusParams: app.BaseApp.GetConsensusParams(ctx),
ConsensusParams: app.GetConsensusParams(ctx),
}, err
}
@@ -54,13 +52,9 @@ func (app *SonrApp) ExportAppStateAndValidators(forZeroHeight bool, jailAllowedA
//
// in favor of export at a block height
func (app *SonrApp) prepForZeroHeightGenesis(ctx sdk.Context, jailAllowedAddrs []string) {
applyAllowedAddrs := false
applyAllowedAddrs := len(jailAllowedAddrs) > 0
// check if there is a allowed address list
if len(jailAllowedAddrs) > 0 {
applyAllowedAddrs = true
}
allowedAddrsMap := make(map[string]bool)
for _, addr := range jailAllowedAddrs {
@@ -1,4 +1,4 @@
package main
package commands
import "github.com/spf13/cobra"
+18
View File
@@ -0,0 +1,18 @@
package commands
import (
"github.com/spf13/cobra"
"github.com/onsonr/sonr/cmd/hway/server"
)
func NewStartCmd() *cobra.Command {
return &cobra.Command{
Use: "start",
Short: "Starts the DWN proxy server for the local IPFS node",
Run: func(cmd *cobra.Command, args []string) {
s := server.New()
s.Start()
},
}
}
+13
View File
@@ -0,0 +1,13 @@
package main
import (
"github.com/onsonr/sonr/cmd/hway/commands"
)
func main() {
rootCmd := commands.NewRootCmd()
rootCmd.AddCommand(commands.NewStartCmd())
if err := rootCmd.Execute(); err != nil {
panic(err)
}
}
+1
View File
@@ -0,0 +1 @@
package handlers
+1
View File
@@ -0,0 +1 @@
package handlers
+1
View File
@@ -0,0 +1 @@
package handlers
+1
View File
@@ -0,0 +1 @@
package handlers
+41
View File
@@ -0,0 +1,41 @@
package server
import (
"net/http"
"github.com/labstack/echo/v4"
"github.com/labstack/gommon/log"
"github.com/onsonr/sonr/internal/session"
"github.com/onsonr/sonr/pkg/nebula"
"github.com/onsonr/sonr/pkg/nebula/pages"
)
type Server struct {
*echo.Echo
}
func New() *Server {
s := &Server{Echo: echo.New()}
s.Logger.SetLevel(log.INFO)
s.Use(session.UseSession)
// Configure the server
if err := nebula.UseAssets(s.Echo); err != nil {
s.Logger.Fatal(err)
}
s.GET("/", pages.Home)
s.GET("/login", pages.Login)
s.GET("/register", pages.Register)
s.GET("/profile", pages.Profile)
s.GET("/allocate", pages.Profile)
return s
}
func (s *Server) Start() {
if err := s.Echo.Start(":1323"); err != http.ErrServerClosed {
log.Fatal(err)
}
}
-9
View File
@@ -1,9 +0,0 @@
package main
func main() {
rootCmd := NewRootCmd()
rootCmd.AddCommand(NewProxyCmd())
if err := rootCmd.Execute(); err != nil {
panic(err)
}
}
+3 -3
View File
@@ -15,14 +15,14 @@ import (
"github.com/labstack/echo/v4"
promise "github.com/nlepage/go-js-promise"
"github.com/onsonr/sonr/cmd/dwn/middleware"
"github.com/onsonr/sonr/cmd/dwn/state"
"github.com/onsonr/sonr/cmd/motr/state"
"github.com/onsonr/sonr/internal/session"
"github.com/onsonr/sonr/pkg/nebula/pages"
)
func main() {
e := echo.New()
e.Use(middleware.UseSession)
e.Use(session.UseSession)
registerViews(e)
registerState(e)
Serve(e)
-39
View File
@@ -1,39 +0,0 @@
package main
import (
"net/http"
"github.com/labstack/echo/v4"
"github.com/labstack/gommon/log"
"github.com/spf13/cobra"
"github.com/onsonr/sonr/pkg/nebula"
"github.com/onsonr/sonr/pkg/nebula/pages"
)
func NewProxyCmd() *cobra.Command {
return &cobra.Command{
Use: "start",
Short: "Starts the DWN proxy server for the local IPFS node",
Run: func(cmd *cobra.Command, args []string) {
// Echo instance
e := echo.New()
e.Logger.SetLevel(log.INFO)
// Configure the server
if err := nebula.UseAssets(e); err != nil {
e.Logger.Fatal(err)
}
e.GET("/", pages.Home)
e.GET("/login", pages.Login)
e.GET("/register", pages.Register)
e.GET("/profile", pages.Profile)
e.GET("/allocate", pages.Profile)
if err := e.Start(":1323"); err != http.ErrServerClosed {
log.Fatal(err)
}
},
}
}
+49
View File
@@ -0,0 +1,49 @@
root = "."
testdata_dir = "testdata"
tmp_dir = "tmp"
[build]
delay = 1000
cmd = "devbox run build:motr"
exclude_dir = ["assets", "tmp", "vendor", "testdata"]
exclude_file = []
exclude_regex = ["_test.go"]
exclude_unchanged = true
follow_symlink = false
full_bin = "devbox run start"
include_dir = ["cmd/dwn", "cmd/motr", "internal", "models", "pkl"]
include_ext = ["go", "templ", "html", "pkl", "js", "mjs", "proto"]
include_file = [
"Dockerfile",
".goreleaser.yaml",
"go.mod",
"devbox.json",
".air.toml",
]
kill_delay = "10s"
log = "build-errors.log"
poll = false
poll_interval = 0
post_cmd = ["devbox run stop"]
pre_cmd = ["templ generate"]
rerun = false
rerun_delay = 1000
send_interrupt = true
stop_on_error = false
[color]
build = "yellow"
main = "magenta"
runner = "green"
watcher = "cyan"
[log]
main_only = true
time = true
[misc]
clean_on_exit = true
[screen]
clear_on_rebuild = true
keep_scroll = true
+49
View File
@@ -0,0 +1,49 @@
root = "."
testdata_dir = "testdata"
tmp_dir = "tmp"
[build]
delay = 1000
cmd = "devbox run build:motr"
exclude_dir = ["assets", "tmp", "vendor", "testdata"]
exclude_file = []
exclude_regex = ["_test.go"]
exclude_unchanged = true
follow_symlink = false
full_bin = "devbox run start"
include_dir = ["cmd/dwn", "cmd/motr", "internal", "models", "pkl"]
include_ext = ["go", "templ", "html", "pkl", "js", "mjs", "proto"]
include_file = [
"Dockerfile",
".goreleaser.yaml",
"go.mod",
"devbox.json",
".air.toml",
]
kill_delay = "10s"
log = "build-errors.log"
poll = false
poll_interval = 0
post_cmd = ["devbox run stop"]
pre_cmd = ["templ generate"]
rerun = false
rerun_delay = 1000
send_interrupt = true
stop_on_error = false
[color]
build = "yellow"
main = "magenta"
runner = "green"
watcher = "cyan"
[log]
main_only = true
time = true
[misc]
clean_on_exit = true
[screen]
clear_on_rebuild = true
keep_scroll = true
+3
View File
@@ -0,0 +1,3 @@
FROM scratch
ENTRYPOINT ["/hway"]
COPY hway /
+3
View File
@@ -0,0 +1,3 @@
FROM scratch
ENTRYPOINT ["/sonrd"]
COPY sonrd /
+37
View File
@@ -0,0 +1,37 @@
# This file is used to create docker images using the heighliner binary.
# see: https://github.com/strangelove-ventures/heighliner
# Sonr Node - Identity
- name: sonr
github-organization: onsonr
github-repo: sonr
dockerfile: cosmos
build-target: make install
binaries:
- /go/bin/sonrd
build-env:
- LEDGER_ENABLED=false
- BUILD_TAGS=muslc
# Ethereum Node - Web3
- name: evmos
github-organization: tharsis
github-repo: evmos
dockerfile: cosmos
build-target: make install
binaries:
- /go/bin/evmosd
# Bitcoin Node - Gold
- name: nomic
github-organization: nomic-io
github-repo: nomic
dockerfile: cargo
build-target: |
TOOLCHAIN=$(cat rust-toolchain.toml | grep channel | awk '{print $3}' | tr -d '"')
rustup component add rust-src --toolchain ${TOOLCHAIN}-$(uname -m)-unknown-linux-gnu
cargo install --locked --path . -Zbuild-std
binaries:
- /build/nomic/target/${ARCH}-unknown-linux-gnu/release/nomic
platforms:
- linux/amd64
+92
View File
@@ -0,0 +1,92 @@
{
"$schema": "https://raw.githubusercontent.com/jetify-com/devbox/0.12.0/.schema/devbox.schema.json",
"packages": [
"go@1.22",
"air@latest",
"bun@latest",
"ipfs@latest",
"skate@latest",
"cloudflared@latest",
"process-compose@latest"
],
"env": {
"GOPATH": "$HOME/go",
"PATH": "$HOME/go/bin:$PATH",
"CHAIN_ID": "sonr-testnet-1",
"DENOM": "usnr",
"KEYRING": "test",
"MONIKER": "florence",
"BINARY": "sonrd",
"ACC0_NAME": "acc0",
"ACC1_NAME": "acc1",
"ACC0_ADDRESS": "idx1efd63aw40lxf3n4mhf7dzhjkr453axur9vjt6y",
"ACC1_ADDRESS": "idx1hj5fveer5cjtn4wd6wstzugjfdxzl0xpecp0nd",
"ACC0_MNEMONIC": "$(skate get ACC0_MNEMONIC)",
"ACC1_MNEMONIC": "$(skate get ACC1_MNEMONIC)",
"TUNNEL_TOKEN": "$(skate get CLOUDFLARE_TUNNEL_TOKEN)",
"TEMPL_EXPERIMENT": "rawgo"
},
"shell": {
"scripts": {
"dev": [
"air"
],
"build:docker": [
"make local-image"
],
"build:motr": [
"make nebula",
"make motr"
],
"build:nebula": [
"make nebula"
],
"build:sonrd": [
"make dwn",
"make build"
],
"build": [
"make dwn",
"make build",
"make motr"
],
"gen:proto": [
"make proto-gen"
],
"gen:pkl": [
"make pkl"
],
"gen:templ": [
"make templ"
],
"start:motr": [
"make templ",
"make motr",
"make start-motr"
],
"start:testnet": [
"make templ",
"make install",
"make sh-testnet"
],
"start": [
"process-compose up -d"
],
"stop": [
"process-compose down"
],
"test:e2e": [
"make templ",
"make test-e2e"
],
"test:unit": [
"make templ",
"make test-unit"
],
"test": [
"make templ",
"make test"
]
}
}
}
+30
View File
@@ -0,0 +1,30 @@
version: "3"
services:
sonr-node:
build:
context: .
dockerfile: Dockerfile
volumes:
- /home/prad/.scnr:/root/.sonr
ports:
- "26657:26657"
- "1317:1317"
- "9090:9090"
environment:
- CHAIN_ID=local-1
- MONIKER=localvalidator
- KEYRING=test
- KEY=user1
- KEY2=user2
- DENOM=usnr
- CLEAN=true
- BLOCK_TIME=5s
command: "start --pruning=nothing"
restart: always
networks:
- sonr-network
networks:
sonr-network:
name: sonr-network
+35
View File
@@ -0,0 +1,35 @@
version: "0.6"
processes:
ipfs:
namespace: testnet
command: "sh scripts/setup_ipfs.sh"
background: true
availability:
restart: on_failure
max_restarts: 0
sonr:
namespace: testnet
command: "devbox run start:testnet"
restart: on_failure
max_restarts: 1
depends:
- ipfs
motr:
namespace: testnet
command: "devbox run start:motr"
restart: on_failure
max_restarts: 1
depends:
- ipfs
- sonr
tunnel:
namespace: public
command: "cloudflared tunnel run --token $TUNNEL_TOKEN"
restart: on_failure
max_restarts: 1
depends:
- caddy
+8 -8
View File
@@ -34,21 +34,21 @@
"build:docker": [
"make local-image"
],
"build:motr": [
"build:hway": [
"make nebula",
"make motr"
"make hway"
],
"build:nebula": [
"make nebula"
],
"build:sonrd": [
"make dwn",
"make motr",
"make build"
],
"build": [
"make dwn",
"make motr",
"make build",
"make motr"
"make hway"
],
"gen:proto": [
"make proto-gen"
@@ -59,10 +59,10 @@
"gen:templ": [
"make templ"
],
"start:motr": [
"start:hway": [
"make templ",
"make motr",
"make start-motr"
"make hway",
"make start-hway"
],
"start:testnet": [
"make templ",
@@ -1,4 +1,4 @@
package middleware
package auth
import (
"fmt"
@@ -1,4 +1,4 @@
package middleware
package auth
import (
"net/http"
@@ -7,21 +7,6 @@ import (
"gopkg.in/macaroon.v2"
)
// GetSession returns the current Session
func GetSession(c echo.Context) *Session {
return c.(*Session)
}
// UseSession establishes a Session Cookie.
func UseSession(next echo.HandlerFunc) echo.HandlerFunc {
return func(c echo.Context) error {
sc := initSession(c)
headers := new(RequestHeaders)
sc.Bind(headers)
return next(sc)
}
}
func MacaroonMiddleware(secretKeyStr string, location string) echo.MiddlewareFunc {
secretKey := []byte(secretKeyStr)
return func(next echo.HandlerFunc) echo.HandlerFunc {
+28
View File
@@ -0,0 +1,28 @@
package headers
type RequestHeaders struct {
Authorization *string `header:"Authorization"`
CacheControl *string `header:"Cache-Control"`
DeviceMemory *string `header:"Device-Memory"`
Forwarded *string `header:"Forwarded"`
From *string `header:"From"`
Host *string `header:"Host"`
Link *string `header:"Link"`
PermissionsPolicy *string `header:"Permissions-Policy"`
ProxyAuthorization *string `header:"Proxy-Authorization"`
Referer *string `header:"Referer"`
UserAgent *string `header:"User-Agent"`
ViewportWidth *string `header:"Viewport-Width"`
Width *string `header:"Width"`
WWWAuthenticate *string `header:"WWW-Authenticate"`
// HTMX Specific
HXBoosted *string `header:"HX-Boosted"`
HXCurrentURL *string `header:"HX-Current-URL"`
HXHistoryRestoreRequest *string `header:"HX-History-Restore-Request"`
HXPrompt *string `header:"HX-Prompt"`
HXRequest *string `header:"HX-Request"`
HXTarget *string `header:"HX-Target"`
HXTriggerName *string `header:"HX-Trigger-Name"`
HXTrigger *string `header:"HX-Trigger"`
}
@@ -1,31 +1,4 @@
package middleware
type RequestHeaders struct {
Authorization *string `header:"Authorization"`
CacheControl *string `header:"Cache-Control"`
DeviceMemory *string `header:"Device-Memory"`
Forwarded *string `header:"Forwarded"`
From *string `header:"From"`
Host *string `header:"Host"`
Link *string `header:"Link"`
PermissionsPolicy *string `header:"Permissions-Policy"`
ProxyAuthorization *string `header:"Proxy-Authorization"`
Referer *string `header:"Referer"`
UserAgent *string `header:"User-Agent"`
ViewportWidth *string `header:"Viewport-Width"`
Width *string `header:"Width"`
WWWAuthenticate *string `header:"WWW-Authenticate"`
// HTMX Specific
HXBoosted *string `header:"HX-Boosted"`
HXCurrentURL *string `header:"HX-Current-URL"`
HXHistoryRestoreRequest *string `header:"HX-History-Restore-Request"`
HXPrompt *string `header:"HX-Prompt"`
HXRequest *string `header:"HX-Request"`
HXTarget *string `header:"HX-Target"`
HXTriggerName *string `header:"HX-Trigger-Name"`
HXTrigger *string `header:"HX-Trigger"`
}
package headers
type ResponseHeaders struct {
AcceptCH *string `header:"Accept-CH"`
@@ -1,4 +1,4 @@
package middleware
package session
import (
"net/http"
@@ -6,7 +6,6 @@ import (
"github.com/donseba/go-htmx"
"github.com/labstack/echo/v4"
"github.com/segmentio/ksuid"
)
type Session struct {
@@ -22,15 +21,6 @@ func (c *Session) ID() string {
return ReadCookie(c, "session")
}
func initSession(c echo.Context) *Session {
s := &Session{Context: c}
if val := ReadCookie(c, "session"); val == "" {
id := ksuid.New().String()
WriteCookie(c, "session", id)
}
return s
}
func ReadCookie(c echo.Context, key string) string {
cookie, err := c.Cookie(key)
if err != nil {
+35
View File
@@ -0,0 +1,35 @@
package session
import (
"github.com/labstack/echo/v4"
"github.com/segmentio/ksuid"
"github.com/onsonr/sonr/internal/headers"
)
// GetSession returns the current Session
func GetSession(c echo.Context) *Session {
return c.(*Session)
}
// UseSession establishes a Session Cookie.
func UseSession(next echo.HandlerFunc) echo.HandlerFunc {
return func(c echo.Context) error {
sc := initSession(c)
headers := new(headers.RequestHeaders)
err := sc.Bind(headers)
if err != nil {
return err
}
return next(sc)
}
}
func initSession(c echo.Context) *Session {
s := &Session{Context: c}
if val := ReadCookie(c, "session"); val == "" {
id := ksuid.New().String()
WriteCookie(c, "session", id)
}
return s
}
@@ -14,6 +14,7 @@ templ Layout(title string, remote bool) {
<!-- Sets the status bar style to transparent -->
<meta name="apple-mobile-web-app-capable" content="yes"/>
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/>
<link rel="icon" type="image/png" href="https://cdn.sonr.id/favicon.png"/>
</head>
<body class="flex items-center justify-center h-full bg-neutral-50 lg:p-24 md:16 p-4">
<main class="flex-row items-center justify-center mx-auto w-fit max-w-screen-sm gap-y-3">
@@ -34,6 +35,7 @@ templ LayoutNoBody(title string, remote bool) {
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<title>{ title }</title>
<link rel="icon" type="image/png" href="https://cdn.sonr.id/favicon.png"/>
<!-- Sets the status bar style to transparent -->
<meta name="apple-mobile-web-app-capable" content="yes"/>
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/>
+3 -3
View File
@@ -58,7 +58,7 @@ func Layout(title string, remote bool) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</title><!-- Sets the status bar style to transparent --><meta name=\"apple-mobile-web-app-capable\" content=\"yes\"><meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\"></head><body class=\"flex items-center justify-center h-full bg-neutral-50 lg:p-24 md:16 p-4\"><main class=\"flex-row items-center justify-center mx-auto w-fit max-w-screen-sm gap-y-3\">")
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</title><!-- Sets the status bar style to transparent --><meta name=\"apple-mobile-web-app-capable\" content=\"yes\"><meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\"><link rel=\"icon\" type=\"image/png\" href=\"https://cdn.sonr.id/favicon.png\"></head><body class=\"flex items-center justify-center h-full bg-neutral-50 lg:p-24 md:16 p-4\"><main class=\"flex-row items-center justify-center mx-auto w-fit max-w-screen-sm gap-y-3\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -118,13 +118,13 @@ func LayoutNoBody(title string, remote bool) templ.Component {
var templ_7745c5c3_Var4 string
templ_7745c5c3_Var4, templ_7745c5c3_Err = templ.JoinStringErrs(title)
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `pkg/nebula/components/blocks/layout.templ`, Line: 36, Col: 17}
return templ.Error{Err: templ_7745c5c3_Err, FileName: `pkg/nebula/components/blocks/layout.templ`, Line: 37, Col: 17}
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var4))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</title><!-- Sets the status bar style to transparent --><meta name=\"apple-mobile-web-app-capable\" content=\"yes\"><meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\"></head><main class=\"grow\"><body class=\"font-inter antialiased bg-white text-zinc-900 tracking-tight\"><div class=\"flex flex-col min-h-screen overflow-hidden supports-[overflow:clip]:overflow-clip\">")
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</title><link rel=\"icon\" type=\"image/png\" href=\"https://cdn.sonr.id/favicon.png\"><!-- Sets the status bar style to transparent --><meta name=\"apple-mobile-web-app-capable\" content=\"yes\"><meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\"></head><main class=\"grow\"><body class=\"font-inter antialiased bg-white text-zinc-900 tracking-tight\"><div class=\"flex flex-col min-h-screen overflow-hidden supports-[overflow:clip]:overflow-clip\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
+317
View File
@@ -0,0 +1,317 @@
package blocks
templ Video() {
<div
x-data="{
sources: {
mp4: 'https://cdn.devdojo.com/pines/videos/coast.mp4',
webm: 'https://cdn.devdojo.com/pines/videos/coast.webm',
ogg: 'https://cdn.devdojo.com/pines/videos/coast.ogg'
},
playing: false,
controls: true,
muted: false,
muteForced: false,
fullscreen: false,
ended: false,
mouseleave: false,
autoHideControlsDelay: 3000,
controlsHideTimeout: null,
poster: null,
videoDuration: 0,
timeDurationString: '00:00',
timeElapsedString: '00:00',
showTime: false,
volume: 1,
volumeBeforeMute: 1,
videoPlayerReady: false,
timelineSeek(e) {
time = this.formatTime(Math.round(e.target.value));
this.timeElapsedString = `${time.minutes}:${time.seconds}`;
},
metaDataLoaded(event) {
this.videoDuration = event.target.duration;
this.$refs.videoProgress.setAttribute('max', this.videoDuration);
time = this.formatTime(Math.round(this.videoDuration));
this.timeDurationString = `${time.minutes}:${time.seconds}`;
this.showTime = true;
this.videoPlayerReady = true;
},
togglePlay(e) {
if (this.$refs.player.paused || this.$refs.player.ended) {
this.playing = true;
this.$refs.player.play();
} else {
this.$refs.player.pause();
this.playing = false;
}
},
toggleMute(){
this.muted = !this.muted;
this.$refs.player.muted = this.muted;
if(this.muted){
this.volumeBeforeMute = this.volume;
this.volume = 0;
} else {
this.volume = this.volumeBeforeMute;
}
},
timeUpdatedInterval() {
if (!this.$refs.videoProgress.getAttribute('max'))
this.$refs.videoProgress.setAttribute('max', $refs.player.duration);
this.$refs.videoProgress.value = this.$refs.player.currentTime;
time = this.formatTime(Math.round(this.$refs.player.currentTime));
this.timeElapsedString = `${time.minutes}:${time.seconds}`;
},
updateVolume(e) {
this.volume = e.target.value;
this.$refs.player.volume = this.volume;
if(this.volume == 0){
this.muted = true;
}
if(this.muted && this.volume > 0){
this.muted = false;
}
},
timelineClicked(e) {
rect = this.$refs.videoProgress.getBoundingClientRect();
pos = (e.pageX - rect.left) / this.$refs.videoProgress.offsetWidth;
this.$refs.player.currentTime = pos * this.$refs.player.duration;
},
handleFullscreen() {
if (document.fullscreenElement !== null) {
// The document is in fullscreen mode
document.exitFullscreen();
} else {
// The document is not in fullscreen mode
this.$refs.videoContainer.requestFullscreen();
}
},
mousemoveVideo() {
if(this.playing){
this.resetControlsTimeout();
} else {
this.controls=true;
clearTimeout(this.controlsHideTimeout);
}
},
videoEnded() {
this.ended = true;
this.playing = false;
this.$refs.player.currentTime = 0;
},
resetControlsTimeout() {
this.controls = true;
clearTimeout(this.controlsHideTimeout);
let that = this;
this.controlsHideTimeout = setTimeout(function(){
that.controls=false
}, this.autoHideControlsDelay);
},
formatTime(timeInSeconds) {
result = new Date(timeInSeconds * 1000).toISOString().substring(11, 19);
return {
minutes: result.substring(3, 5),
seconds: result.substring(6, 8),
};
}
}"
x-init="
supportsVideo = document.createElement('video').canPlayType;
if (!supportsVideo) {
alert('This browser does not support the video element');
}
$refs.player.load();
// Hide the default player controls
$refs.player.controls = false;
$watch('playing', (value) => {
if (value) {
ended = false;
controlsHideTimeout = setTimeout(() => {
controls = false;
}, autoHideControlsDelay);
} else {
clearTimeout(controlsHideTimeout);
controls = true;
}
});
if (!document?.fullscreenEnabled) {
$refs.fullscreenButton.style.display = 'none';
}
document.addEventListener('fullscreenchange', (e) => {
fullscreen = !!document.fullscreenElement;
});
"
x-ref="videoContainer"
@mouseleave="mouseleave=true"
@mousemove="mousemoveVideo"
class="relative h-[360px] min-w-[640px] overflow-hidden rounded-md aspect-video"
>
<video
x-ref="player"
@loadedmetadata="metaDataLoaded"
@timeupdate="timeUpdatedInterval"
@ended="videoEnded"
preload="metadata"
:poster="poster"
class="relative z-10 object-cover w-full h-full bg-black"
crossorigin="anonymous"
>
<source :src="sources.mp4" type="video/mp4"/>
<source :src="sources.webm" type="video/webm"/>
<source :src="sources.ogg" type="video/ogg"/>
</video>
<div x-show="videoPlayerReady" class="absolute inset-0 w-full h-full">
<div x-ref="videoBackground" @click="togglePlay()" class="absolute inset-0 z-30 flex items-center justify-center w-full h-full bg-black bg-opacity-0 cursor-pointer group">
<div
x-show="playing"
x-transition:enter="transition ease-out duration-1000"
x-transition:enter-start="scale-50 opacity-100"
x-transition:enter-end="scale-100 opacity-0"
class="absolute z-20 flex items-center justify-center w-24 h-24 bg-blue-600 rounded-full opacity-0 bg-opacity-20"
x-cloak
>
<svg class="w-10 h-10 translate-x-0.5 text-white" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.42737 3.41611C6.46665 2.24586 4.00008 3.67188 4.00007 5.9427L4 18.0572C3.99999 20.329 6.46837 21.7549 8.42907 20.5828L18.5698 14.5207C20.4775 13.3802 20.4766 10.6076 18.568 9.46853L8.42737 3.41611Z" fill="currentColor"></path></svg>
</div>
<div
x-show="!playing && !ended"
x-transition:enter="transition ease-out duration-1000"
x-transition:enter-start="scale-50 opacity-100"
x-transition:enter-end="scale-100 opacity-0"
class="absolute z-20 flex items-center justify-center w-24 h-24 bg-blue-600 rounded-full opacity-0 bg-opacity-20"
x-cloak
>
<svg class="w-10 h-10 text-white" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 3C8.55228 3 9 3.44772 9 4L9 20C9 20.5523 8.55228 21 8 21C7.44772 21 7 20.5523 7 20L7 4C7 3.44772 7.44772 3 8 3ZM16 3C16.5523 3 17 3.44772 17 4V20C17 20.5523 16.5523 21 16 21C15.4477 21 15 20.5523 15 20V4C15 3.44772 15.4477 3 16 3Z" fill="currentColor"></path></svg>
</div>
<div class="absolute z-10 duration-300 ease-out group-hover:scale-110">
<button
x-show="!playing"
x-transition:enter="transition ease-in delay-200 duration-300"
x-transition:enter-start="opacity-0 scale-75"
x-transition:enter-end="opacity-100 scale-100"
x-transition:leave="transition ease-out duration-300"
x-transition:leave-start="opacity-100"
x-transition:leave-end="opacity-0"
class="flex items-center justify-center w-12 h-12 text-white duration-150 ease-out bg-blue-600 rounded-full cursor-pointer bg-opacity-80"
type="button"
>
<svg class="w-5 h-5 translate-x-px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.42737 3.41611C6.46665 2.24586 4.00008 3.67188 4.00007 5.9427L4 18.0572C3.99999 20.329 6.46837 21.7549 8.42907 20.5828L18.5698 14.5207C20.4775 13.3802 20.4766 10.6076 18.568 9.46853L8.42737 3.41611Z" fill="currentColor" x-cloak></path></svg>
</button>
</div>
</div>
<div
x-show="controls"
x-transition:enter="transition ease-out duration-300"
x-transition:enter-start="-translate-y-full"
x-transition:enter-end="translate-y-0"
x-transition:leave="transition ease-in duration-300"
x-transition:leave-start="translate-y-0"
x-transition:leave-end="-translate-y-full"
class="absolute top-0 left-0 z-20 w-full h-1/4 opacity-20 bg-gradient-to-b from-black to-transparent"
x-cloak
></div>
<div
x-show="controls"
x-transition:enter="transition ease-out duration-300"
x-transition:enter-start="translate-y-full"
x-transition:enter-end="translate-y-0"
x-transition:leave="transition ease-in duration-300"
x-transition:leave-start="translate-y-0"
x-transition:leave-end="translate-y-full"
class="absolute bottom-0 left-0 z-20 w-full h-1/4 opacity-20 bg-gradient-to-b from-transparent to-black"
x-cloak
></div>
<div
x-show="controls"
@click="resetControlsTimeout"
x-transition:enter="transition ease-out duration-300"
x-transition:enter-start="-translate-y-full"
x-transition:enter-end="translate-y-0"
x-transition:leave="transition ease-in duration-300"
x-transition:leave-start="translate-y-0"
x-transition:leave-end="-translate-y-full"
class="absolute top-0 left-0 z-40 flex items-center w-full h-12 text-white"
x-cloak
>
<div class="absolute right-0 top-0 mr-0.5 mt-0.5 flex items-center">
<div class="flex items-center h-auto group">
<button @click="toggleMute()" type="button" class="flex items-center justify-center w-6 h-auto duration-150 ease-out opacity-80 hover:opacity-100">
<svg x-show="!muted" class="w-[18px] h-[18px]" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" x-cloak><path d="M13.5 4.06c0-1.336-1.616-2.005-2.56-1.06l-4.5 4.5H4.508c-1.141 0-2.318.664-2.66 1.905A9.76 9.76 0 001.5 12c0 .898.121 1.768.35 2.595.341 1.24 1.518 1.905 2.659 1.905h1.93l4.5 4.5c.945.945 2.561.276 2.561-1.06V4.06zM18.584 5.106a.75.75 0 011.06 0c3.808 3.807 3.808 9.98 0 13.788a.75.75 0 11-1.06-1.06 8.25 8.25 0 000-11.668.75.75 0 010-1.06z"></path><path d="M15.932 7.757a.75.75 0 011.061 0 6 6 0 010 8.486.75.75 0 01-1.06-1.061 4.5 4.5 0 000-6.364.75.75 0 010-1.06z"></path></svg>
<svg x-show="muted" class="w-[18px] h-[18px]" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" x-cloak><path d="M13.5 4.06c0-1.336-1.616-2.005-2.56-1.06l-4.5 4.5H4.508c-1.141 0-2.318.664-2.66 1.905A9.76 9.76 0 001.5 12c0 .898.121 1.768.35 2.595.341 1.24 1.518 1.905 2.659 1.905h1.93l4.5 4.5c.945.945 2.561.276 2.561-1.06V4.06zM17.78 9.22a.75.75 0 10-1.06 1.06L18.44 12l-1.72 1.72a.75.75 0 001.06 1.06l1.72-1.72 1.72 1.72a.75.75 0 101.06-1.06L20.56 12l1.72-1.72a.75.75 0 00-1.06-1.06l-1.72 1.72-1.72-1.72z"></path></svg>
</button>
<div class="relative h-1.5 mx-0 group-hover:mx-1 rounded-full group-hover:w-12 invisible group-hover:visible w-0 ease-out duration-300">
<input
x-ref="volume"
@input="updateVolume(event)"
type="range"
min="0"
max="1"
:value="volume"
step="0.01"
class="w-full h-full appearance-none flex items-center cursor-pointer bg-transparent z-30
[&::-webkit-slider-thumb]:bg-white [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:border-0 [&::-webkit-slider-thumb]:w-2 [&::-webkit-slider-thumb]:h-2 [&::-webkit-slider-thumb]:appearance-none
[&::-moz-range-thumb]:bg-white [&::-moz-range-thumb]:rounded-full [&::-moz-range-thumb]:border-0 [&::-moz-range-thumb]:w-2 [&::-moz-range-thumb]:h-2 [&::-moz-range-thumb]:appearance-none
[&::-ms-thumb]:bg-white [&::-ms-thumb]:rounded-full [&::-ms-thumb]:border-0 [&::-ms-thumb]:w-2 [&::-ms-thumb]:h-2 [&::-ms-thumb]:appearance-none
[&::-webkit-slider-runnable-track]:bg-white [&::-webkit-slider-runnable-track]:bg-opacity-30 [&::-webkit-slider-runnable-track]:rounded-full [&::-webkit-slider-runnable-track]:overflow-hidden [&::-moz-range-track]:bg-neutral-200 [&::-moz-range-track]:rounded-full [&::-ms-track]:bg-neutral-200 [&::-ms-track]:rounded-full
[&::-moz-range-progress]:bg-white [&::-moz-range-progress]:bg-opacity-80 [&::-moz-range-progress]:rounded-full [&::-ms-fill-lower]:bg-white [&::-ms-fill-lower]:bg-opacity-80 [&::-ms-fill-lower]:rounded-full [&::-webkit-slider-thumb]:shadow-[-995px_0px_0px_990px_rgba(255,_255,_255,_0.8)]
"
/>
</div>
</div>
<button x-ref="fullscreenButton" @click="handleFullscreen" class="flex items-center justify-center w-10 h-10 duration-150 ease-out scale-90 opacity-80 hover:opacity-100 hover:scale-100" type="button">
<svg class="w-5 h-5" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M6.72685 5C5.77328 5 5 5.77318 5 6.72727V9C5 9.55228 4.55228 10 4 10C3.44772 10 3 9.55228 3 9V6.72727C3 4.6689 4.66842 3 6.72685 3H9C9.55228 3 10 3.44772 10 4C10 4.55228 9.55228 5 9 5H6.72685ZM14 4C14 3.44772 14.4477 3 15 3H17.2727C19.3312 3 21 4.66876 21 6.72727V9C21 9.55228 20.5523 10 20 10C19.4477 10 19 9.55228 19 9V6.72727C19 5.77333 18.2267 5 17.2727 5H15C14.4477 5 14 4.55228 14 4ZM4 14C4.55228 14 5 14.4477 5 15V17.2727C5 18.2268 5.77328 19 6.72685 19H9C9.55228 19 10 19.4477 10 20C10 20.5523 9.55228 21 9 21H6.72685C4.66842 21 3 19.3311 3 17.2727V15C3 14.4477 3.44772 14 4 14ZM20 14C20.5523 14 21 14.4477 21 15V17.2727C21 19.3312 19.3312 21 17.2727 21H15C14.4477 21 14 20.5523 14 20C14 19.4477 14.4477 19 15 19H17.2727C18.2267 19 19 18.2267 19 17.2727V15C19 14.4477 19.4477 14 20 14Z" fill="currentColor"></path></svg>
</button>
</div>
</div>
<div
x-show="controls"
@click="resetControlsTimeout"
x-transition:enter="transition ease-out duration-300"
x-transition:enter-start="translate-y-full"
x-transition:enter-end="translate-y-0"
x-transition:leave="transition ease-in duration-300"
x-transition:leave-start="translate-y-0"
x-transition:leave-end="translate-y-full"
class="absolute bottom-0 left-0 z-40 w-full h-12"
x-cloak
>
<div class="absolute bottom-0 z-30 w-full px-2.5 -translate-y-8">
<div class="relative w-full h-1 rounded-full">
<input
x-ref="videoProgress"
@click="timelineClicked"
@input="timelineSeek(event)"
type="range"
min="0"
max="100"
value="0"
step="any"
class="w-full h-full appearance-none flex items-center cursor-pointer bg-transparent z-30
[&::-webkit-slider-thumb]:bg-white [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:border-0 [&::-webkit-slider-thumb]:w-1.5 [&::-webkit-slider-thumb]:h-1.5 [&::-webkit-slider-thumb]:appearance-none
[&::-moz-range-thumb]:bg-white [&::-moz-range-thumb]:rounded-full [&::-moz-range-thumb]:border-0 [&::-moz-range-thumb]:w-1.5 [&::-moz-range-thumb]:h-1.5 [&::-moz-range-thumb]:appearance-none
[&::-ms-thumb]:bg-white [&::-ms-thumb]:rounded-full [&::-ms-thumb]:border-0 [&::-ms-thumb]:w-1.5 [&::-ms-thumb]:h-1.5 [&::-ms-thumb]:appearance-none
[&::-webkit-slider-runnable-track]:bg-white [&::-webkit-slider-runnable-track]:bg-opacity-30 [&::-webkit-slider-runnable-track]:rounded-full [&::-webkit-slider-runnable-track]:overflow-hidden [&::-moz-range-track]:bg-neutral-200 [&::-moz-range-track]:rounded-full [&::-ms-track]:bg-neutral-200 [&::-ms-track]:rounded-full
[&::-moz-range-progress]:bg-blue-600 [&::-moz-range-progress]:rounded-full [&::-ms-fill-lower]:bg-blue-600 [&::-ms-fill-lower]:rounded-full [&::-webkit-slider-thumb]:shadow-[-995px_0px_0px_990px_#2463eb]
"
/>
</div>
</div>
<div class="absolute bottom-0 left-0 z-20 flex items-center w-full h-8 text-white">
<div x-show="showTime" class="flex items-center justify-between w-full mx-3 font-mono text-xs opacity-80 hover:opacity-100" x-cloak>
<time x-ref="timeElapsed" x-text="timeElapsedString">00:00</time>
<time x-ref="timeDuration" x-text="timeDurationString">00:00</time>
</div>
</div>
</div>
</div>
</div>
}
File diff suppressed because one or more lines are too long
+3 -3
View File
@@ -186,10 +186,10 @@ templ Features() {
<!-- Gear illustration -->
<img
class="absolute left-0 bottom-0 -translate-x-1/2 translate-y-1/3 mix-blend-exclusion max-lg:w-32"
src="./images/features-illustration.png"
src="https://cdn.sonr.id/img/secure-vault.svg"
alt="Features 02 illustration"
width="173"
height="167"
width="224"
height="224"
aria-hidden="true"
/>
</div>
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -21,7 +21,7 @@ templ MarketingHeader() {
<a class="text-sm font-medium text-zinc-500 hover:text-zinc-900 px-3 lg:px-5 py-2 flex items-center transition" href="/login">Log in</a>
</li>
<li class="ml-1">
<a class="btn-sm text-zinc-100 bg-zinc-900 hover:bg-zinc-800 w-full shadow" href="/register">Register</a>
<div class="btn-sm text-zinc-100 cursor-pointer bg-zinc-900 hover:bg-zinc-800 w-full shadow" hx-swap="afterend" hx-get="/register">Register</div>
</li>
</ul>
</nav>
+1 -1
View File
@@ -29,7 +29,7 @@ func MarketingHeader() templ.Component {
templ_7745c5c3_Var1 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<!-- Site header --><header class=\"absolute top-2 md:top-6 w-full z-30\"><div class=\"px-4 sm:px-6\"><div class=\"max-w-3xl mx-auto\"><div class=\"flex items-center justify-between h-14 border border-transparent [background:linear-gradient(theme(colors.white),theme(colors.white))_padding-box,linear-gradient(120deg,theme(colors.zinc.300),theme(colors.zinc.100),theme(colors.zinc.300))_border-box] rounded-lg px-3\"><!-- Site branding --><div class=\"shrink-0 mr-4\"><!-- Logo --><a class=\"flex items-center justify-center bg-white w-8 h-8 rounded shadow-sm shadow-zinc-950/20\" href=\"/\"><img src=\"https://cdn.sonr.id/img/logo-zinc.svg\" width=\"24\" height=\"24\" alt=\"Logo\"></a></div><!-- Desktop navigation --><nav class=\"flex grow\"><!-- Desktop sign in links --><ul class=\"flex grow justify-end flex-wrap items-center\"><li><a class=\"text-sm font-medium text-zinc-500 hover:text-zinc-900 px-3 lg:px-5 py-2 flex items-center transition\" href=\"/login\">Log in</a></li><li class=\"ml-1\"><a class=\"btn-sm text-zinc-100 bg-zinc-900 hover:bg-zinc-800 w-full shadow\" href=\"/register\">Register</a></li></ul></nav></div></div></div></header>")
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<!-- Site header --><header class=\"absolute top-2 md:top-6 w-full z-30\"><div class=\"px-4 sm:px-6\"><div class=\"max-w-3xl mx-auto\"><div class=\"flex items-center justify-between h-14 border border-transparent [background:linear-gradient(theme(colors.white),theme(colors.white))_padding-box,linear-gradient(120deg,theme(colors.zinc.300),theme(colors.zinc.100),theme(colors.zinc.300))_border-box] rounded-lg px-3\"><!-- Site branding --><div class=\"shrink-0 mr-4\"><!-- Logo --><a class=\"flex items-center justify-center bg-white w-8 h-8 rounded shadow-sm shadow-zinc-950/20\" href=\"/\"><img src=\"https://cdn.sonr.id/img/logo-zinc.svg\" width=\"24\" height=\"24\" alt=\"Logo\"></a></div><!-- Desktop navigation --><nav class=\"flex grow\"><!-- Desktop sign in links --><ul class=\"flex grow justify-end flex-wrap items-center\"><li><a class=\"text-sm font-medium text-zinc-500 hover:text-zinc-900 px-3 lg:px-5 py-2 flex items-center transition\" href=\"/login\">Log in</a></li><li class=\"ml-1\"><div class=\"btn-sm text-zinc-100 cursor-pointer bg-zinc-900 hover:bg-zinc-800 w-full shadow\" hx-swap=\"afterend\" hx-get=\"/register\">Register</div></li></ul></nav></div></div></div></header>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
+2 -2
View File
@@ -25,10 +25,10 @@ templ SectionHero(hero *models.Hero) {
</p>
<div class="max-w-xs mx-auto sm:max-w-none sm:inline-flex sm:justify-center space-y-4 sm:space-y-0 sm:space-x-4">
<div>
<div class="btn text-zinc-100 bg-zinc-900 hover:bg-zinc-800 w-full shadow" hx-get={ hero.PrimaryButton.Href }>{ hero.PrimaryButton.Text }</div>
<div class="btn cursor-pointer text-zinc-100 bg-zinc-900 hover:bg-zinc-800 w-full shadow" hx-swap="afterend" hx-get={ hero.PrimaryButton.Href }>{ hero.PrimaryButton.Text }</div>
</div>
<div>
<a class="btn text-zinc-600 bg-white hover:text-zinc-900 w-full shadow" href={ templ.SafeURL(hero.SecondaryButton.Href) }>{ hero.SecondaryButton.Text }</a>
<div class="btn cursor-pointer text-zinc-600 bg-white hover:text-zinc-900 w-full shadow" hx-swap="afterend" hx-get={ hero.SecondaryButton.Href }>{ hero.SecondaryButton.Text }</div>
</div>
</div>
</div>
+17 -9
View File
@@ -83,12 +83,16 @@ func SectionHero(hero *models.Hero) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</p><div class=\"max-w-xs mx-auto sm:max-w-none sm:inline-flex sm:justify-center space-y-4 sm:space-y-0 sm:space-x-4\"><div><a class=\"btn text-zinc-100 bg-zinc-900 hover:bg-zinc-800 w-full shadow\" href=\"")
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</p><div class=\"max-w-xs mx-auto sm:max-w-none sm:inline-flex sm:justify-center space-y-4 sm:space-y-0 sm:space-x-4\"><div><div class=\"btn cursor-pointer text-zinc-100 bg-zinc-900 hover:bg-zinc-800 w-full shadow\" hx-swap=\"afterend\" hx-get=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
var templ_7745c5c3_Var6 templ.SafeURL = templ.SafeURL(hero.PrimaryButton.Href)
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(string(templ_7745c5c3_Var6)))
var templ_7745c5c3_Var6 string
templ_7745c5c3_Var6, templ_7745c5c3_Err = templ.JoinStringErrs(hero.PrimaryButton.Href)
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `pkg/nebula/components/home/hero.templ`, Line: 28, Col: 149}
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var6))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -99,18 +103,22 @@ func SectionHero(hero *models.Hero) templ.Component {
var templ_7745c5c3_Var7 string
templ_7745c5c3_Var7, templ_7745c5c3_Err = templ.JoinStringErrs(hero.PrimaryButton.Text)
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `pkg/nebula/components/home/hero.templ`, Line: 28, Col: 154}
return templ.Error{Err: templ_7745c5c3_Err, FileName: `pkg/nebula/components/home/hero.templ`, Line: 28, Col: 177}
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var7))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</a></div><div><a class=\"btn text-zinc-600 bg-white hover:text-zinc-900 w-full shadow\" href=\"")
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</div></div><div><div class=\"btn cursor-pointer text-zinc-600 bg-white hover:text-zinc-900 w-full shadow\" hx-swap=\"afterend\" hx-get=\"")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
var templ_7745c5c3_Var8 templ.SafeURL = templ.SafeURL(hero.SecondaryButton.Href)
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(string(templ_7745c5c3_Var8)))
var templ_7745c5c3_Var8 string
templ_7745c5c3_Var8, templ_7745c5c3_Err = templ.JoinStringErrs(hero.SecondaryButton.Href)
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `pkg/nebula/components/home/hero.templ`, Line: 31, Col: 150}
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var8))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -121,13 +129,13 @@ func SectionHero(hero *models.Hero) templ.Component {
var templ_7745c5c3_Var9 string
templ_7745c5c3_Var9, templ_7745c5c3_Err = templ.JoinStringErrs(hero.SecondaryButton.Text)
if templ_7745c5c3_Err != nil {
return templ.Error{Err: templ_7745c5c3_Err, FileName: `pkg/nebula/components/home/hero.templ`, Line: 31, Col: 157}
return templ.Error{Err: templ_7745c5c3_Err, FileName: `pkg/nebula/components/home/hero.templ`, Line: 31, Col: 180}
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var9))
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</a></div></div></div></div>")
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</div></div></div></div></div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
+18 -19
View File
@@ -12,9 +12,8 @@ templ Highlights() {
The Internet Rebuilt for You
</h2>
<p class="text-lg text-zinc-500">
AI reads and understands your designs, and with nothing more
than a single line of feedback, perform complex actions
autonomously.
Sonr is a comprehensive system for Identity Management which proteects users across their digital personas while
providing Developers a cost-effective solution for decentralized authentication.
</p>
</div>
<div x-data="{ tab: '1' }">
@@ -146,10 +145,10 @@ templ Highlights() {
alt="Feature 01"
/>
<img
class="absolute top-0 left-full -translate-x-[70%] -mr-20 max-md:w-[45%]"
src="./images/feature-illustration.png"
width="273"
height="288"
class="absolute top-0 left-full mix-blend-exclusion -translate-x-[70%] -mr-20 max-md:w-[45%]"
src="https://cdn.sonr.id/img/secure-keys.svg"
width="224"
height="224"
alt="Illustration"
aria-hidden="true"
/>
@@ -175,10 +174,10 @@ templ Highlights() {
alt="Feature 02"
/>
<img
class="absolute top-0 left-full -translate-x-[70%] -mr-20 max-md:w-[45%]"
src="./images/feature-illustration.png"
width="273"
height="288"
class="absolute top-0 left-full mix-blend-exclusion -translate-x-[70%] -mr-20 max-md:w-[45%]"
src="https://cdn.sonr.id/img/secure-keys.svg"
width="224"
height="224"
alt="Illustration"
aria-hidden="true"
/>
@@ -204,10 +203,10 @@ templ Highlights() {
alt="Feature 03"
/>
<img
class="absolute top-0 left-full -translate-x-[70%] -mr-20 max-md:w-[45%]"
src="./images/feature-illustration.png"
width="273"
height="288"
class="absolute top-0 left-full mix-blend-exclusion -translate-x-[70%] -mr-20 max-md:w-[45%]"
src="https://cdn.sonr.id/img/secure-keys.svg"
width="224"
height="224"
alt="Illustration"
aria-hidden="true"
/>
@@ -233,10 +232,10 @@ templ Highlights() {
alt="Feature 04"
/>
<img
class="absolute top-0 left-full -translate-x-[70%] -mr-20 max-md:w-[45%]"
src="./images/feature-illustration.png"
width="273"
height="288"
class="absolute top-0 left-full mix-blend-exclusion -translate-x-[70%] -mr-20 max-md:w-[45%]"
src="https://cdn.sonr.id/img/secure-keys.svg"
width="224"
height="224"
alt="Illustration"
aria-hidden="true"
/>
File diff suppressed because one or more lines are too long
+5 -11
View File
@@ -13,7 +13,6 @@ templ Modal(c echo.Context) {
:class="{ 'z-40': modalOpen }"
class="relative w-auto h-auto"
>
<button @click="modalOpen=true" class="inline-flex items-center justify-center h-10 px-4 py-2 text-sm font-medium transition-colors bg-white border rounded-md hover:bg-neutral-100 active:bg-white focus:bg-white focus:outline-none focus:ring-2 focus:ring-neutral-200/60 focus:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none">Open</button>
<template x-teleport="body">
<div x-show="modalOpen" class="fixed top-0 left-0 z-[99] flex items-center justify-center w-screen h-screen" x-cloak>
<div
@@ -25,7 +24,7 @@ templ Modal(c echo.Context) {
x-transition:leave-start="opacity-100"
x-transition:leave-end="opacity-0"
@click="modalOpen=false"
class="absolute inset-0 w-full h-full bg-gray-900 bg-opacity-50 backdrop-blur-sm"
class="absolute inset-0 w-full h-full bg-zinc-900 bg-opacity-50 backdrop-blur-sm"
></div>
<div
x-show="modalOpen"
@@ -39,24 +38,19 @@ templ Modal(c echo.Context) {
class="relative w-full py-6 bg-white shadow-md px-7 bg-opacity-90 drop-shadow-md backdrop-blur-sm sm:max-w-lg sm:rounded-lg"
>
<div class="flex items-center justify-between pb-3">
<h3 class="text-lg font-semibold">Modal Title</h3>
<button @click="modalOpen=false" class="absolute top-0 right-0 flex items-center justify-center w-8 h-8 mt-5 mr-5 text-gray-600 rounded-full hover:text-gray-800 hover:bg-gray-50">
<h3 class="text-lg font-semibold">Account Registration</h3>
<button @click="modalOpen=false" class="absolute top-0 right-0 flex items-center justify-center w-8 h-8 mt-5 mr-5 text-zinc-600 rounded-full hover:text-zinc-800 hover:bg-zinc-50">
<svg class="w-5 h-5" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"></path></svg>
</button>
</div>
<div class="relative w-auto pb-8">
<p>This is placeholder text. Replace it with your own content.</p>
<p>Enter your account information below to create your account.</p>
</div>
@blocks.H2("Account Registration")
@blocks.Spacer()
@blocks.Breadcrumbs()
@basicInfoForm(formstate.Initial)
@blocks.Spacer()
@blocks.Button(blocks.GET("/", "#register-view")) {
@blocks.Text("Cancel")
}
<div class="flex flex-col-reverse sm:flex-row sm:justify-between sm:space-x-2">
<button @click="modalOpen=false" type="button" class="inline-flex items-center justify-center h-10 px-4 py-2 text-sm font-medium transition-colors border rounded-md focus:outline-none focus:ring-2 focus:ring-neutral-100 focus:ring-offset-2">Previous</button>
<button @click="modalOpen=false" type="button" class="inline-flex items-center justify-center h-10 px-4 py-2 text-sm font-medium transition-colors border rounded-md focus:outline-none focus:ring-2 focus:ring-neutral-100 focus:ring-offset-2">Cancel</button>
<button @click="modalOpen=false" type="button" class="inline-flex items-center justify-center h-10 px-4 py-2 text-sm font-medium text-white transition-colors border border-transparent rounded-md focus:outline-none focus:ring-2 focus:ring-neutral-900 focus:ring-offset-2 bg-neutral-950 hover:bg-neutral-900">Next</button>
</div>
</div>
+2 -32
View File
@@ -35,15 +35,7 @@ func Modal(c echo.Context) templ.Component {
templ_7745c5c3_Var1 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<div x-data=\"{ modalOpen: true }\" @keydown.escape.window=\"modalOpen = false\" :class=\"{ &#39;z-40&#39;: modalOpen }\" class=\"relative w-auto h-auto\"><button @click=\"modalOpen=true\" class=\"inline-flex items-center justify-center h-10 px-4 py-2 text-sm font-medium transition-colors bg-white border rounded-md hover:bg-neutral-100 active:bg-white focus:bg-white focus:outline-none focus:ring-2 focus:ring-neutral-200/60 focus:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none\">Open</button><template x-teleport=\"body\"><div x-show=\"modalOpen\" class=\"fixed top-0 left-0 z-[99] flex items-center justify-center w-screen h-screen\" x-cloak><div x-show=\"modalOpen\" x-transition:enter=\"ease-out duration-300\" x-transition:enter-start=\"opacity-0\" x-transition:enter-end=\"opacity-100\" x-transition:leave=\"ease-in duration-300\" x-transition:leave-start=\"opacity-100\" x-transition:leave-end=\"opacity-0\" @click=\"modalOpen=false\" class=\"absolute inset-0 w-full h-full bg-gray-900 bg-opacity-50 backdrop-blur-sm\"></div><div x-show=\"modalOpen\" x-trap.inert.noscroll=\"modalOpen\" x-transition:enter=\"ease-out duration-300\" x-transition:enter-start=\"opacity-0 scale-90\" x-transition:enter-end=\"opacity-100 scale-100\" x-transition:leave=\"ease-in duration-200\" x-transition:leave-start=\"opacity-100 scale-100\" x-transition:leave-end=\"opacity-0 scale-90\" class=\"relative w-full py-6 bg-white shadow-md px-7 bg-opacity-90 drop-shadow-md backdrop-blur-sm sm:max-w-lg sm:rounded-lg\"><div class=\"flex items-center justify-between pb-3\"><h3 class=\"text-lg font-semibold\">Modal Title</h3><button @click=\"modalOpen=false\" class=\"absolute top-0 right-0 flex items-center justify-center w-8 h-8 mt-5 mr-5 text-gray-600 rounded-full hover:text-gray-800 hover:bg-gray-50\"><svg class=\"w-5 h-5\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M6 18L18 6M6 6l12 12\"></path></svg></button></div><div class=\"relative w-auto pb-8\"><p>This is placeholder text. Replace it with your own content.</p></div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = blocks.H2("Account Registration").Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = blocks.Spacer().Render(ctx, templ_7745c5c3_Buffer)
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<div x-data=\"{ modalOpen: true }\" @keydown.escape.window=\"modalOpen = false\" :class=\"{ &#39;z-40&#39;: modalOpen }\" class=\"relative w-auto h-auto\"><template x-teleport=\"body\"><div x-show=\"modalOpen\" class=\"fixed top-0 left-0 z-[99] flex items-center justify-center w-screen h-screen\" x-cloak><div x-show=\"modalOpen\" x-transition:enter=\"ease-out duration-300\" x-transition:enter-start=\"opacity-0\" x-transition:enter-end=\"opacity-100\" x-transition:leave=\"ease-in duration-300\" x-transition:leave-start=\"opacity-100\" x-transition:leave-end=\"opacity-0\" @click=\"modalOpen=false\" class=\"absolute inset-0 w-full h-full bg-zinc-900 bg-opacity-50 backdrop-blur-sm\"></div><div x-show=\"modalOpen\" x-trap.inert.noscroll=\"modalOpen\" x-transition:enter=\"ease-out duration-300\" x-transition:enter-start=\"opacity-0 scale-90\" x-transition:enter-end=\"opacity-100 scale-100\" x-transition:leave=\"ease-in duration-200\" x-transition:leave-start=\"opacity-100 scale-100\" x-transition:leave-end=\"opacity-0 scale-90\" class=\"relative w-full py-6 bg-white shadow-md px-7 bg-opacity-90 drop-shadow-md backdrop-blur-sm sm:max-w-lg sm:rounded-lg\"><div class=\"flex items-center justify-between pb-3\"><h3 class=\"text-lg font-semibold\">Account Registration</h3><button @click=\"modalOpen=false\" class=\"absolute top-0 right-0 flex items-center justify-center w-8 h-8 mt-5 mr-5 text-zinc-600 rounded-full hover:text-zinc-800 hover:bg-zinc-50\"><svg class=\"w-5 h-5\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\" stroke-width=\"1.5\" stroke=\"currentColor\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M6 18L18 6M6 6l12 12\"></path></svg></button></div><div class=\"relative w-auto pb-8\"><p>Enter your account information below to create your account.</p></div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
@@ -59,29 +51,7 @@ func Modal(c echo.Context) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Var2 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
defer func() {
templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
if templ_7745c5c3_Err == nil {
templ_7745c5c3_Err = templ_7745c5c3_BufErr
}
}()
}
ctx = templ.InitializeContext(ctx)
templ_7745c5c3_Err = blocks.Text("Cancel").Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return templ_7745c5c3_Err
})
templ_7745c5c3_Err = blocks.Button(blocks.GET("/", "#register-view")).Render(templ.WithChildren(ctx, templ_7745c5c3_Var2), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<div class=\"flex flex-col-reverse sm:flex-row sm:justify-between sm:space-x-2\"><button @click=\"modalOpen=false\" type=\"button\" class=\"inline-flex items-center justify-center h-10 px-4 py-2 text-sm font-medium transition-colors border rounded-md focus:outline-none focus:ring-2 focus:ring-neutral-100 focus:ring-offset-2\">Previous</button> <button @click=\"modalOpen=false\" type=\"button\" class=\"inline-flex items-center justify-center h-10 px-4 py-2 text-sm font-medium text-white transition-colors border border-transparent rounded-md focus:outline-none focus:ring-2 focus:ring-neutral-900 focus:ring-offset-2 bg-neutral-950 hover:bg-neutral-900\">Next</button></div></div></div></template></div>")
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<div class=\"flex flex-col-reverse sm:flex-row sm:justify-between sm:space-x-2\"><button @click=\"modalOpen=false\" type=\"button\" class=\"inline-flex items-center justify-center h-10 px-4 py-2 text-sm font-medium transition-colors border rounded-md focus:outline-none focus:ring-2 focus:ring-neutral-100 focus:ring-offset-2\">Cancel</button> <button @click=\"modalOpen=false\" type=\"button\" class=\"inline-flex items-center justify-center h-10 px-4 py-2 text-sm font-medium text-white transition-colors border border-transparent rounded-md focus:outline-none focus:ring-2 focus:ring-neutral-900 focus:ring-offset-2 bg-neutral-950 hover:bg-neutral-900\">Next</button></div></div></div></template></div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
+4 -11
View File
@@ -9,14 +9,10 @@ import (
templ View(c echo.Context) {
@blocks.Layout("Sonr.ID", true) {
@blocks.Card("register-view", blocks.SizeMedium) {
@blocks.H2("Account Registration")
@blocks.Spacer()
@blocks.Breadcrumbs()
@basicInfoForm(formstate.Initial)
@blocks.Spacer()
@blocks.Button(blocks.GET("/", "#register-view")) {
@blocks.Text("Cancel")
}
}
}
}
@@ -24,14 +20,11 @@ templ View(c echo.Context) {
templ basicInfoForm(state formstate.FormState) {
switch (state) {
default:
<div class="border rounded-lg shadow-sm bg-card text-neutral-900">
<div class="flex flex-col space-y-1.5 p-6">
<h3 class="text-lg font-semibold leading-none tracking-tight">Account</h3>
<p class="text-sm text-neutral-500">Make changes to your account here. Click save when you're done.</p>
</div>
<div class="border rounded-lg shadow-sm bg-card text-zinc-900">
<div class="flex flex-col space-y-1.5 p-6"></div>
<div class="p-6 pt-0 space-y-2">
<div class="space-y-1"><label class="text-xs font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" for="name">Name</label><input type="text" id="name" placeholder="Adam Wathan" class="flex w-full h-10 px-3 py-2 text-sm bg-white border rounded-md peer border-neutral-300 ring-offset-background placeholder:text-neutral-400 focus:border-neutral-300 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-neutral-400 disabled:cursor-not-allowed disabled:opacity-50"/></div>
<div class="space-y-1"><label class="text-xs font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" for="username">Handle</label><input type="text" id="handle" placeholder="angelo.snr" class="flex w-full h-10 px-3 py-2 text-sm bg-white border rounded-md peer border-neutral-300 ring-offset-background placeholder:text-neutral-400 focus:border-neutral-300 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-neutral-400 disabled:cursor-not-allowed disabled:opacity-50"/></div>
<div class="space-y-1"><label class="text-xs font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" for="name">Name</label><input type="text" id="name" placeholder="Adam Wathan" class="flex w-full h-10 px-3 py-2 text-sm bg-white border rounded-md peer border-zinc-300 ring-offset-background placeholder:text-zinc-400 focus:border-zinc-300 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-neutral-400 disabled:cursor-not-allowed disabled:opacity-50"/></div>
<div class="space-y-1"><label class="text-xs font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" for="username">Handle</label><input type="text" id="handle" placeholder="angelo.snr" class="flex w-full h-10 px-3 py-2 text-sm bg-white border rounded-md peer border-zinc-300 ring-offset-background placeholder:text-zinc-400 focus:border-zinc-300 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-neutral-400 disabled:cursor-not-allowed disabled:opacity-50"/></div>
</div>
</div>
}
+4 -38
View File
@@ -59,14 +59,6 @@ func View(c echo.Context) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
templ_7745c5c3_Err = blocks.H2("Account Registration").Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(" ")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = blocks.Spacer().Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
@@ -95,32 +87,6 @@ func View(c echo.Context) templ.Component {
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(" ")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Var4 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) {
templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W)
if !templ_7745c5c3_IsBuffer {
defer func() {
templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer)
if templ_7745c5c3_Err == nil {
templ_7745c5c3_Err = templ_7745c5c3_BufErr
}
}()
}
ctx = templ.InitializeContext(ctx)
templ_7745c5c3_Err = blocks.Text("Cancel").Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return templ_7745c5c3_Err
})
templ_7745c5c3_Err = blocks.Button(blocks.GET("/", "#register-view")).Render(templ.WithChildren(ctx, templ_7745c5c3_Var4), templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
return templ_7745c5c3_Err
})
templ_7745c5c3_Err = blocks.Card("register-view", blocks.SizeMedium).Render(templ.WithChildren(ctx, templ_7745c5c3_Var3), templ_7745c5c3_Buffer)
@@ -153,14 +119,14 @@ func basicInfoForm(state formstate.FormState) templ.Component {
}()
}
ctx = templ.InitializeContext(ctx)
templ_7745c5c3_Var5 := templ.GetChildren(ctx)
if templ_7745c5c3_Var5 == nil {
templ_7745c5c3_Var5 = templ.NopComponent
templ_7745c5c3_Var4 := templ.GetChildren(ctx)
if templ_7745c5c3_Var4 == nil {
templ_7745c5c3_Var4 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
switch state {
default:
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<div class=\"border rounded-lg shadow-sm bg-card text-neutral-900\"><div class=\"flex flex-col space-y-1.5 p-6\"><h3 class=\"text-lg font-semibold leading-none tracking-tight\">Account</h3><p class=\"text-sm text-neutral-500\">Make changes to your account here. Click save when you're done.</p></div><div class=\"p-6 pt-0 space-y-2\"><div class=\"space-y-1\"><label class=\"text-xs font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\" for=\"name\">Name</label><input type=\"text\" id=\"name\" placeholder=\"Adam Wathan\" class=\"flex w-full h-10 px-3 py-2 text-sm bg-white border rounded-md peer border-neutral-300 ring-offset-background placeholder:text-neutral-400 focus:border-neutral-300 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-neutral-400 disabled:cursor-not-allowed disabled:opacity-50\"></div><div class=\"space-y-1\"><label class=\"text-xs font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\" for=\"username\">Handle</label><input type=\"text\" id=\"handle\" placeholder=\"angelo.snr\" class=\"flex w-full h-10 px-3 py-2 text-sm bg-white border rounded-md peer border-neutral-300 ring-offset-background placeholder:text-neutral-400 focus:border-neutral-300 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-neutral-400 disabled:cursor-not-allowed disabled:opacity-50\"></div></div></div>")
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<div class=\"border rounded-lg shadow-sm bg-card text-zinc-900\"><div class=\"flex flex-col space-y-1.5 p-6\"></div><div class=\"p-6 pt-0 space-y-2\"><div class=\"space-y-1\"><label class=\"text-xs font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\" for=\"name\">Name</label><input type=\"text\" id=\"name\" placeholder=\"Adam Wathan\" class=\"flex w-full h-10 px-3 py-2 text-sm bg-white border rounded-md peer border-zinc-300 ring-offset-background placeholder:text-zinc-400 focus:border-zinc-300 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-neutral-400 disabled:cursor-not-allowed disabled:opacity-50\"></div><div class=\"space-y-1\"><label class=\"text-xs font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\" for=\"username\">Handle</label><input type=\"text\" id=\"handle\" placeholder=\"angelo.snr\" class=\"flex w-full h-10 px-3 py-2 text-sm bg-white border rounded-md peer border-zinc-300 ring-offset-background placeholder:text-zinc-400 focus:border-zinc-300 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-neutral-400 disabled:cursor-not-allowed disabled:opacity-50\"></div></div></div>")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
+3 -3
View File
@@ -14,9 +14,9 @@ hero = new Hero {
href = "/about";
};
image = new Image {
src = "https://cdn.sonr.id/img/hero-clipped.png";
width = "520";
height = "520";
src = "https://cdn.sonr.id/img/hero-clipped.svg";
width = "500";
height = "500";
};
};
@@ -9,8 +9,10 @@ import (
"github.com/onsonr/sonr/pkg/orm/keytype"
)
type PublicKey struct {
Role keyrole.KeyRole `pkl:"role" json:"role,omitempty" query:"role"`
type DID struct {
Id string `pkl:"id" json:"id,omitempty" query:"id"`
Role keyrole.KeyRole `pkl:"role"`
Algorithm keyalgorithm.KeyAlgorithm `pkl:"algorithm"`
+1 -1
View File
@@ -9,9 +9,9 @@ func init() {
pkl.RegisterMapping("orm#Asset", Asset{})
pkl.RegisterMapping("orm#Chain", Chain{})
pkl.RegisterMapping("orm#Credential", Credential{})
pkl.RegisterMapping("orm#DID", DID{})
pkl.RegisterMapping("orm#JWK", JWK{})
pkl.RegisterMapping("orm#Grant", Grant{})
pkl.RegisterMapping("orm#Keyshare", Keyshare{})
pkl.RegisterMapping("orm#PublicKey", PublicKey{})
pkl.RegisterMapping("orm#Profile", Profile{})
}
+39
View File
@@ -0,0 +1,39 @@
package orm
const SCHEMA_VERSION = 1
func AccountSchema() string {
return "++, id, name, address, publicKey, chainCode, index, controller, createdAt"
}
func AssetSchema() string {
return "++, id, name, symbol, decimals, chainCode, createdAt"
}
func ChainSchema() string {
return "++, id, name, networkId, chainCode, createdAt"
}
func CredentialSchema() string {
return "++, id, subject, controller, attestationType, origin, label, deviceId, credentialId, publicKey, transport, signCount, userPresent, userVerified, backupEligible, backupState, cloneWarning, createdAt, updatedAt"
}
func DIDSchema() string {
return "++, id, role, algorithm, encoding, curve, key_type, raw, jwk"
}
func JwkSchema() string {
return "++, kty, crv, x, y, n, e"
}
func GrantSchema() string {
return "++, subject, controller, origin, token, scopes, createdAt, updatedAt"
}
func KeyshareSchema() string {
return "++, id, data, role, createdAt, lastRefreshed"
}
func ProfileSchema() string {
return "++, id, subject, controller, originUri, publicMetadata, privateMetadata, createdAt, updatedAt"
}
+17 -39
View File
@@ -10,7 +10,6 @@ typealias Base64 = String
typealias Bech32 = String
typealias Keccak = String
typealias DID = String
typealias ChainCode = UInt
typealias Scope = String
@@ -53,7 +52,7 @@ typealias PermissionScope = "profile"|"metadata"|"permissions"|"wallets"|"transa
class Account {
@PrimaryKey
id: DID
id: String
@JsonField
name: String
@@ -79,7 +78,7 @@ class Account {
class Asset {
@PrimaryKey
id: DID
id: String
@JsonField
name: String
@@ -99,7 +98,7 @@ class Asset {
class Chain {
@PrimaryKey
id: DID
id: String
@JsonField
name: String
@@ -116,7 +115,7 @@ class Chain {
class Credential {
@PrimaryKey
id: DID
id: String
@JsonField
subject: String
@@ -170,6 +169,18 @@ class Credential {
updatedAt: String?
}
class DID {
@PrimaryKey
id: String
role: KeyRole
algorithm: KeyAlgorithm
encoding: KeyEncoding
curve: KeyCurve
key_type: KeyType
raw: Base64
jwk: JWK
}
class JWK {
@JsonField
kty: String
@@ -218,7 +229,7 @@ class Grant {
class Keyshare {
@PrimaryKey
id: DID
id: String
@JsonField
data: Base64
@@ -233,17 +244,6 @@ class Keyshare {
lastRefreshed: String?
}
class PublicKey {
@PrimaryKey
role: KeyRole
algorithm: KeyAlgorithm
encoding: KeyEncoding
curve: KeyCurve
key_type: KeyType
raw: Base58
jwk: JWK
}
class Profile {
@PrimaryKey
id: String
@@ -269,27 +269,5 @@ class Profile {
@JsonField
updatedAt: String?
}
class Session {
@PrimaryKey
id: String
@JsonField
subject: String
@JsonField
controller: Bech32
@JsonField
origin: String
@JsonField
createdAt: String?
@JsonField
updatedAt: String?
}
db_name: String = "vault"
db_version: Int = 1
+2 -2
View File
@@ -17,9 +17,9 @@ processes:
depends:
- ipfs
motr:
hway:
namespace: testnet
command: "devbox run start:motr"
command: "devbox run start:hway"
restart: on_failure
max_restarts: 1
depends:
+6 -5
View File
@@ -32,16 +32,16 @@ message Params {
message Methods {
option (amino.name) = "macaroon/methods";
option (gogoproto.equal) = true;
repeated string methods = 1;
string default = 1;
repeated string supported = 2;
}
// Scopes defines the set of scopes
message Scopes {
option (amino.name) = "macaroon/scopes";
option (gogoproto.equal) = true;
repeated string scopes = 1;
string base = 1;
repeated string supported = 2;
}
// Caveats defines the available caveats
@@ -49,5 +49,6 @@ message Caveats {
option (amino.name) = "macaroon/caveat";
option (gogoproto.equal) = true;
repeated string caveats = 1;
repeated string supported_first_party = 1;
repeated string supported_third_party = 2;
}
+22
View File
@@ -27,3 +27,25 @@ message Grant {
string origin = 4;
int64 expiry_height = 5;
}
message Macaroon {
option (cosmos.orm.v1.table) = {
id: 2
primary_key: {
fields: "id"
auto_increment: true
}
index: {
id: 1
fields: "subject,origin"
unique: true
}
};
uint64 id = 1;
string controller = 2;
string subject = 3;
string origin = 4;
int64 expiry_height = 5;
string macaroon = 6;
}
+5 -4
View File
@@ -29,8 +29,9 @@ message Schema {
string asset = 3;
string chain = 4;
string credential = 5;
string jwk = 6;
string grant = 7;
string keyshare = 8;
string profile = 9;
string did = 6;
string jwk = 7;
string grant = 8;
string keyshare = 9;
string profile = 10;
}
+1 -2
View File
@@ -13,7 +13,6 @@ import (
authkeeper "github.com/cosmos/cosmos-sdk/x/auth/keeper"
authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
slashingkeeper "github.com/cosmos/cosmos-sdk/x/slashing/keeper"
stakingkeeper "github.com/cosmos/cosmos-sdk/x/staking/keeper"
@@ -59,7 +58,7 @@ type ModuleOutputs struct {
func ProvideModule(in ModuleInputs) ModuleOutputs {
govAddr := authtypes.NewModuleAddress(govtypes.ModuleName).String()
k := keeper.NewKeeper(in.Cdc, in.StoreService, in.AccountKeeper, in.NFTKeeper, &in.StakingKeeper, log.NewLogger(os.Stderr), govAddr)
k := keeper.NewKeeper(in.Cdc, in.StoreService, log.NewLogger(os.Stderr), govAddr, in.AccountKeeper, in.NFTKeeper, &in.StakingKeeper)
m := NewAppModule(in.Cdc, k, in.NFTKeeper)
return ModuleOutputs{Module: m, Keeper: k, Out: depinject.Out{}}
+4 -5
View File
@@ -13,12 +13,11 @@ import (
sdk "github.com/cosmos/cosmos-sdk/types"
authkeeper "github.com/cosmos/cosmos-sdk/x/auth/keeper"
authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
"gopkg.in/macaroon.v2"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
stakkeeper "github.com/cosmos/cosmos-sdk/x/staking/keeper"
"github.com/onsonr/crypto/mpc"
"gopkg.in/macaroon.v2"
apiv1 "github.com/onsonr/sonr/api/did/v1"
"github.com/onsonr/sonr/x/did/types"
)
@@ -45,11 +44,11 @@ type Keeper struct {
func NewKeeper(
cdc codec.BinaryCodec,
storeService storetypes.KVStoreService,
logger log.Logger,
authority string,
accKeeper authkeeper.AccountKeeper,
nftKeeper nftkeeper.Keeper,
stkKeeper *stakkeeper.Keeper,
logger log.Logger,
authority string,
) Keeper {
logger = logger.With(log.ModuleKey, "x/"+types.ModuleName)
sb := collections.NewSchemaBuilder(storeService)
+1 -1
View File
@@ -79,7 +79,7 @@ func SetupTest(t *testing.T) *testFixture {
registerBaseSDKModules(f, encCfg, storeService, logger, require)
// Setup POA Keeper.
f.k = keeper.NewKeeper(encCfg.Codec, storeService, f.accountkeeper, f.nftKeeper, f.stakingKeeper, logger, f.govModAddr)
f.k = keeper.NewKeeper(encCfg.Codec, storeService, logger, f.govModAddr, f.accountkeeper, f.nftKeeper, f.stakingKeeper)
f.msgServer = keeper.NewMsgServerImpl(f.k)
f.queryServer = keeper.NewQuerier(f.k)
f.appModule = module.NewAppModule(encCfg.Codec, f.k, f.nftKeeper)
+2 -3
View File
@@ -4,6 +4,7 @@ import (
"context"
sdk "github.com/cosmos/cosmos-sdk/types"
"github.com/onsonr/sonr/x/did/types"
)
@@ -20,7 +21,7 @@ func NewQuerier(keeper Keeper) Querier {
// Params returns the total set of did parameters.
func (k Querier) Params(goCtx context.Context, req *types.QueryRequest) (*types.QueryParamsResponse, error) {
ctx := sdk.UnwrapSDKContext(goCtx)
p, err := k.Keeper.CurrentParams(ctx)
p, err := k.CurrentParams(ctx)
if err != nil {
return nil, err
}
@@ -35,13 +36,11 @@ func (k Querier) Resolve(goCtx context.Context, req *types.QueryRequest) (*types
// Sign implements types.QueryServer.
func (k Querier) Sign(goCtx context.Context, req *types.QuerySignRequest) (*types.QuerySignResponse, error) {
// ctx := sdk.UnwrapSDKContext(goCtx)
panic("Sign is unimplemented")
return &types.QuerySignResponse{}, nil
}
// Verify implements types.QueryServer.
func (k Querier) Verify(goCtx context.Context, req *types.QueryVerifyRequest) (*types.QueryVerifyResponse, error) {
// ctx := sdk.UnwrapSDKContext(goCtx)
panic("Verify is unimplemented")
return &types.QueryVerifyResponse{}, nil
}
+7 -5
View File
@@ -9,6 +9,7 @@ import (
"cosmossdk.io/depinject"
"cosmossdk.io/log"
"github.com/cosmos/cosmos-sdk/codec"
authkeeper "github.com/cosmos/cosmos-sdk/x/auth/keeper"
authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
slashingkeeper "github.com/cosmos/cosmos-sdk/x/slashing/keeper"
@@ -37,10 +38,11 @@ func init() {
type ModuleInputs struct {
depinject.In
Cdc codec.Codec
StoreService store.KVStoreService
AddressCodec address.Codec
DidKeeper didkeeper.Keeper
Cdc codec.Codec
StoreService store.KVStoreService
AddressCodec address.Codec
AccountKeeper authkeeper.AccountKeeper
DidKeeper didkeeper.Keeper
StakingKeeper stakingkeeper.Keeper
SlashingKeeper slashingkeeper.Keeper
@@ -56,7 +58,7 @@ type ModuleOutputs struct {
func ProvideModule(in ModuleInputs) ModuleOutputs {
govAddr := authtypes.NewModuleAddress(govtypes.ModuleName).String()
k := keeper.NewKeeper(in.Cdc, in.StoreService, log.NewLogger(os.Stderr), govAddr)
k := keeper.NewKeeper(in.Cdc, in.StoreService, log.NewLogger(os.Stderr), govAddr, in.AccountKeeper, in.DidKeeper)
m := NewAppModule(in.Cdc, k, in.DidKeeper)
return ModuleOutputs{Module: m, Keeper: k, Out: depinject.Out{}}
+10
View File
@@ -6,10 +6,12 @@ import (
"cosmossdk.io/log"
"cosmossdk.io/orm/model/ormdb"
"github.com/cosmos/cosmos-sdk/codec"
authkeeper "github.com/cosmos/cosmos-sdk/x/auth/keeper"
authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
apiv1 "github.com/onsonr/sonr/api/macaroon/v1"
didkeeper "github.com/onsonr/sonr/x/did/keeper"
"github.com/onsonr/sonr/x/macaroon/types"
)
@@ -23,6 +25,9 @@ type Keeper struct {
Params collections.Item[types.Params]
OrmDB apiv1.StateStore
AccountKeeper authkeeper.AccountKeeper
DIDKeeper didkeeper.Keeper
authority string
}
@@ -32,6 +37,8 @@ func NewKeeper(
storeService storetypes.KVStoreService,
logger log.Logger,
authority string,
accKeeper authkeeper.AccountKeeper,
didKeeper didkeeper.Keeper,
) Keeper {
logger = logger.With(log.ModuleKey, "x/"+types.ModuleName)
@@ -58,6 +65,9 @@ func NewKeeper(
Params: collections.NewItem(sb, types.ParamsKey, "params", codec.CollValue[types.Params](cdc)),
OrmDB: store,
AccountKeeper: accKeeper,
DIDKeeper: didKeeper,
authority: authority,
}
+1 -1
View File
@@ -78,7 +78,7 @@ func SetupTest(t *testing.T) *testFixture {
registerBaseSDKModules(f, encCfg, storeService, logger, require)
// Setup Keeper.
f.k = keeper.NewKeeper(encCfg.Codec, storeService, logger, f.govModAddr)
f.k = keeper.NewKeeper(encCfg.Codec, storeService, logger, f.govModAddr, f.accountkeeper, f.didk)
f.msgServer = keeper.NewMsgServerImpl(f.k)
f.queryServer = keeper.NewQuerier(f.k)
f.appModule = module.NewAppModule(encCfg.Codec, f.k, f.didk)
-2
View File
@@ -32,13 +32,11 @@ func (k Querier) Params(c context.Context, req *types.QueryParamsRequest) (*type
// RefreshToken implements types.QueryServer.
func (k Querier) RefreshToken(goCtx context.Context, req *types.QueryRefreshTokenRequest) (*types.QueryRefreshTokenResponse, error) {
// ctx := sdk.UnwrapSDKContext(goCtx)
panic("RefreshToken is unimplemented")
return &types.QueryRefreshTokenResponse{}, nil
}
// ValidateToken implements types.QueryServer.
func (k Querier) ValidateToken(goCtx context.Context, req *types.QueryValidateTokenRequest) (*types.QueryValidateTokenResponse, error) {
// ctx := sdk.UnwrapSDKContext(goCtx)
panic("ValidateToken is unimplemented")
return &types.QueryValidateTokenResponse{}, nil
}
+1 -3
View File
@@ -3,9 +3,9 @@ package keeper
import (
"context"
"cosmossdk.io/errors"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
"cosmossdk.io/errors"
"github.com/onsonr/sonr/x/macaroon/types"
)
@@ -31,13 +31,11 @@ func (ms msgServer) UpdateParams(ctx context.Context, msg *types.MsgUpdateParams
// AuthorizeService implements types.MsgServer.
func (ms msgServer) AuthorizeService(ctx context.Context, msg *types.MsgIssueMacaroon) (*types.MsgIssueMacaroonResponse, error) {
// ctx := sdk.UnwrapSDKContext(goCtx)
panic("AuthorizeService is unimplemented")
return &types.MsgIssueMacaroonResponse{}, nil
}
// IssueMacaroon implements types.MsgServer.
func (ms msgServer) IssueMacaroon(ctx context.Context, msg *types.MsgIssueMacaroon) (*types.MsgIssueMacaroonResponse, error) {
// ctx := sdk.UnwrapSDKContext(goCtx)
panic("IssueMacaroon is unimplemented")
return &types.MsgIssueMacaroonResponse{}, nil
}
+245 -70
View File
@@ -135,7 +135,8 @@ func (m *Params) GetCaveats() *Caveats {
// Methods defines the available DID methods
type Methods struct {
Methods []string `protobuf:"bytes,1,rep,name=methods,proto3" json:"methods,omitempty"`
Default string `protobuf:"bytes,1,opt,name=default,proto3" json:"default,omitempty"`
Supported []string `protobuf:"bytes,2,rep,name=supported,proto3" json:"supported,omitempty"`
}
func (m *Methods) Reset() { *m = Methods{} }
@@ -171,16 +172,24 @@ func (m *Methods) XXX_DiscardUnknown() {
var xxx_messageInfo_Methods proto.InternalMessageInfo
func (m *Methods) GetMethods() []string {
func (m *Methods) GetDefault() string {
if m != nil {
return m.Methods
return m.Default
}
return ""
}
func (m *Methods) GetSupported() []string {
if m != nil {
return m.Supported
}
return nil
}
// Scopes defines the set of scopes
type Scopes struct {
Scopes []string `protobuf:"bytes,1,rep,name=scopes,proto3" json:"scopes,omitempty"`
Base string `protobuf:"bytes,1,opt,name=base,proto3" json:"base,omitempty"`
Supported []string `protobuf:"bytes,2,rep,name=supported,proto3" json:"supported,omitempty"`
}
func (m *Scopes) Reset() { *m = Scopes{} }
@@ -216,16 +225,24 @@ func (m *Scopes) XXX_DiscardUnknown() {
var xxx_messageInfo_Scopes proto.InternalMessageInfo
func (m *Scopes) GetScopes() []string {
func (m *Scopes) GetBase() string {
if m != nil {
return m.Scopes
return m.Base
}
return ""
}
func (m *Scopes) GetSupported() []string {
if m != nil {
return m.Supported
}
return nil
}
// Caveats defines the available caveats
type Caveats struct {
Caveats []string `protobuf:"bytes,1,rep,name=caveats,proto3" json:"caveats,omitempty"`
SupportedFirstParty []string `protobuf:"bytes,1,rep,name=supported_first_party,json=supportedFirstParty,proto3" json:"supported_first_party,omitempty"`
SupportedThirdParty []string `protobuf:"bytes,2,rep,name=supported_third_party,json=supportedThirdParty,proto3" json:"supported_third_party,omitempty"`
}
func (m *Caveats) Reset() { *m = Caveats{} }
@@ -261,9 +278,16 @@ func (m *Caveats) XXX_DiscardUnknown() {
var xxx_messageInfo_Caveats proto.InternalMessageInfo
func (m *Caveats) GetCaveats() []string {
func (m *Caveats) GetSupportedFirstParty() []string {
if m != nil {
return m.Caveats
return m.SupportedFirstParty
}
return nil
}
func (m *Caveats) GetSupportedThirdParty() []string {
if m != nil {
return m.SupportedThirdParty
}
return nil
}
@@ -279,29 +303,33 @@ func init() {
func init() { proto.RegisterFile("macaroon/v1/genesis.proto", fileDescriptor_06e0b5dfdf5e52ba) }
var fileDescriptor_06e0b5dfdf5e52ba = []byte{
// 343 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0xcc, 0x4d, 0x4c, 0x4e,
0x2c, 0xca, 0xcf, 0xcf, 0xd3, 0x2f, 0x33, 0xd4, 0x4f, 0x4f, 0xcd, 0x4b, 0x2d, 0xce, 0x2c, 0xd6,
0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x86, 0x49, 0xe9, 0x95, 0x19, 0x4a, 0x09, 0x26, 0xe6,
0x66, 0xe6, 0xe5, 0xeb, 0x83, 0x49, 0x88, 0xbc, 0x94, 0x48, 0x7a, 0x7e, 0x7a, 0x3e, 0x98, 0xa9,
0x0f, 0x62, 0x41, 0x44, 0x95, 0x1c, 0xb9, 0x78, 0xdc, 0x21, 0xc6, 0x04, 0x97, 0x24, 0x96, 0xa4,
0x0a, 0x19, 0x72, 0xb1, 0x15, 0x24, 0x16, 0x25, 0xe6, 0x16, 0x4b, 0x30, 0x2a, 0x30, 0x6a, 0x70,
0x1b, 0x09, 0xeb, 0x21, 0x19, 0xab, 0x17, 0x00, 0x96, 0x72, 0x62, 0x39, 0x71, 0x4f, 0x9e, 0x21,
0x08, 0xaa, 0x50, 0x69, 0x33, 0x23, 0x17, 0x1b, 0x44, 0x42, 0x48, 0x8f, 0x8b, 0x3d, 0x37, 0xb5,
0x24, 0x23, 0x3f, 0x05, 0xa6, 0x5d, 0x04, 0x45, 0xbb, 0x2f, 0x44, 0x2e, 0x08, 0xa6, 0x48, 0x48,
0x9b, 0x8b, 0xad, 0x38, 0x39, 0xbf, 0x20, 0xb5, 0x58, 0x82, 0x09, 0x8b, 0x6d, 0xc1, 0x60, 0xa9,
0x20, 0xa8, 0x12, 0x90, 0xe1, 0xc9, 0x89, 0x65, 0xa9, 0x89, 0x25, 0xc5, 0x12, 0xcc, 0x58, 0x0c,
0x77, 0x86, 0xc8, 0x05, 0xc1, 0x14, 0x59, 0xc9, 0xcc, 0x58, 0x20, 0xcf, 0xf0, 0x62, 0x81, 0x3c,
0x63, 0xd7, 0xf3, 0x0d, 0x5a, 0xfc, 0xf0, 0x80, 0x83, 0xba, 0xda, 0x8e, 0x8b, 0x1d, 0xea, 0x1c,
0x21, 0x09, 0x64, 0x57, 0x33, 0x6b, 0x70, 0xc2, 0xdd, 0x67, 0x25, 0x09, 0xd3, 0x2e, 0x00, 0xd7,
0x0e, 0x95, 0x52, 0xb2, 0xe2, 0x62, 0x83, 0xb8, 0x4f, 0x48, 0x0c, 0xee, 0x09, 0x88, 0x6e, 0x28,
0xcf, 0x4a, 0x02, 0xd3, 0x6e, 0x88, 0x8c, 0x92, 0x2d, 0x17, 0x3b, 0xd4, 0xb5, 0x20, 0xbb, 0x61,
0x9e, 0x82, 0xda, 0x0d, 0x73, 0x3e, 0x16, 0xed, 0x10, 0x29, 0x27, 0xc7, 0x13, 0x8f, 0xe4, 0x18,
0x2f, 0x3c, 0x92, 0x63, 0x7c, 0xf0, 0x48, 0x8e, 0x71, 0xc2, 0x63, 0x39, 0x86, 0x0b, 0x8f, 0xe5,
0x18, 0x6e, 0x3c, 0x96, 0x63, 0x88, 0x52, 0x4f, 0xcf, 0x2c, 0xc9, 0x28, 0x4d, 0xd2, 0x4b, 0xce,
0xcf, 0xd5, 0xcf, 0xcf, 0x2b, 0xce, 0xcf, 0x2b, 0xd2, 0x07, 0x13, 0x15, 0xfa, 0x70, 0x33, 0x4a,
0x2a, 0x0b, 0x52, 0x8b, 0x93, 0xd8, 0xc0, 0xb1, 0x6f, 0x0c, 0x08, 0x00, 0x00, 0xff, 0xff, 0xe5,
0x08, 0x7e, 0x28, 0x50, 0x02, 0x00, 0x00,
// 414 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x92, 0x41, 0xcb, 0xd3, 0x30,
0x18, 0xc7, 0x9b, 0xbd, 0x2f, 0x2d, 0xcb, 0x2b, 0xa8, 0xd9, 0x84, 0x6e, 0x8c, 0x6e, 0xf4, 0xe2,
0x50, 0x68, 0xd9, 0xbc, 0xed, 0xb6, 0x09, 0x7a, 0x12, 0x46, 0xb7, 0x93, 0x08, 0x23, 0x6b, 0xb3,
0xae, 0x60, 0x9b, 0x92, 0x64, 0xc3, 0x7d, 0x05, 0xbd, 0x78, 0xf4, 0xb8, 0x8f, 0x20, 0xf8, 0x25,
0x76, 0xdc, 0xd1, 0x93, 0xc8, 0x76, 0xd0, 0x8f, 0x21, 0x4d, 0xd2, 0xea, 0x74, 0xe0, 0x25, 0x3c,
0xcd, 0xef, 0xf9, 0xff, 0xfb, 0x7f, 0x1e, 0x02, 0x5b, 0x29, 0x0e, 0x31, 0xa3, 0x34, 0xf3, 0xb7,
0x03, 0x3f, 0x26, 0x19, 0xe1, 0x09, 0xf7, 0x72, 0x46, 0x05, 0x45, 0x77, 0x25, 0xf2, 0xb6, 0x83,
0xf6, 0x43, 0x9c, 0x26, 0x19, 0xf5, 0xe5, 0xa9, 0x78, 0xbb, 0x19, 0xd3, 0x98, 0xca, 0xd2, 0x2f,
0x2a, 0x75, 0xeb, 0x8e, 0xe1, 0xbd, 0x97, 0xca, 0x66, 0x26, 0xb0, 0x20, 0x68, 0x00, 0xcd, 0x1c,
0x33, 0x9c, 0x72, 0x1b, 0xf4, 0x40, 0xff, 0x6e, 0xd8, 0xf0, 0xfe, 0xb0, 0xf5, 0xa6, 0x12, 0x4d,
0x6e, 0x0f, 0xdf, 0xba, 0x46, 0xa0, 0x1b, 0xdd, 0x2f, 0x00, 0x9a, 0x0a, 0x20, 0x0f, 0x5a, 0x29,
0x11, 0x6b, 0x1a, 0x95, 0xf2, 0xe6, 0x85, 0xfc, 0x95, 0x62, 0x41, 0xd9, 0x84, 0x9e, 0x42, 0x93,
0x87, 0x34, 0x27, 0xdc, 0xae, 0x5d, 0xf9, 0xdb, 0x4c, 0xa2, 0x40, 0xb7, 0x14, 0xe6, 0x21, 0xde,
0x12, 0x2c, 0xb8, 0x7d, 0x73, 0xc5, 0xfc, 0xb9, 0x62, 0x41, 0xd9, 0x34, 0xea, 0x7c, 0xda, 0x77,
0x8d, 0x9f, 0xfb, 0x2e, 0x78, 0xff, 0xe3, 0xf3, 0x93, 0xfb, 0xd5, 0xe2, 0x74, 0xea, 0x37, 0xd0,
0xd2, 0x71, 0x90, 0x0d, 0xad, 0x88, 0xac, 0xf0, 0xe6, 0xad, 0x90, 0xa9, 0xeb, 0x41, 0xf9, 0x89,
0x3a, 0xb0, 0xce, 0x37, 0x79, 0x4e, 0x99, 0x20, 0x91, 0x5d, 0xeb, 0xdd, 0xf4, 0xeb, 0xc1, 0xef,
0x8b, 0x51, 0xab, 0x34, 0x7f, 0x50, 0x99, 0xeb, 0xc1, 0xdc, 0x39, 0x34, 0x55, 0x7a, 0x84, 0xe0,
0xed, 0x12, 0x73, 0xa2, 0x9d, 0x65, 0xfd, 0x1f, 0x5b, 0xfb, 0xdf, 0xcc, 0x6a, 0x03, 0xee, 0x07,
0x00, 0x2d, 0x3d, 0x26, 0x1a, 0xc2, 0x47, 0x95, 0x64, 0xb1, 0x4a, 0x18, 0x17, 0x8b, 0x1c, 0x33,
0xb1, 0xb3, 0x81, 0xf4, 0x6b, 0x54, 0xf0, 0x45, 0xc1, 0xa6, 0x05, 0xba, 0xd4, 0x88, 0x75, 0xc2,
0x22, 0xad, 0xa9, 0xfd, 0xa5, 0x99, 0x17, 0x4c, 0x6a, 0xae, 0xa5, 0x51, 0x0b, 0x9e, 0x8c, 0x0f,
0x27, 0x07, 0x1c, 0x4f, 0x0e, 0xf8, 0x7e, 0x72, 0xc0, 0xc7, 0xb3, 0x63, 0x1c, 0xcf, 0x8e, 0xf1,
0xf5, 0xec, 0x18, 0xaf, 0x1f, 0xc7, 0x89, 0x58, 0x6f, 0x96, 0x5e, 0x48, 0x53, 0x9f, 0x66, 0x9c,
0x66, 0xcc, 0x97, 0xc7, 0x3b, 0xbf, 0xf2, 0x10, 0xbb, 0x9c, 0xf0, 0xa5, 0x29, 0x1f, 0xe1, 0xb3,
0x5f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xa7, 0xa6, 0x33, 0x5b, 0xd7, 0x02, 0x00, 0x00,
}
func (this *Params) Equal(that interface{}) bool {
@@ -353,11 +381,14 @@ func (this *Methods) Equal(that interface{}) bool {
} else if this == nil {
return false
}
if len(this.Methods) != len(that1.Methods) {
if this.Default != that1.Default {
return false
}
for i := range this.Methods {
if this.Methods[i] != that1.Methods[i] {
if len(this.Supported) != len(that1.Supported) {
return false
}
for i := range this.Supported {
if this.Supported[i] != that1.Supported[i] {
return false
}
}
@@ -382,11 +413,14 @@ func (this *Scopes) Equal(that interface{}) bool {
} else if this == nil {
return false
}
if len(this.Scopes) != len(that1.Scopes) {
if this.Base != that1.Base {
return false
}
for i := range this.Scopes {
if this.Scopes[i] != that1.Scopes[i] {
if len(this.Supported) != len(that1.Supported) {
return false
}
for i := range this.Supported {
if this.Supported[i] != that1.Supported[i] {
return false
}
}
@@ -411,11 +445,19 @@ func (this *Caveats) Equal(that interface{}) bool {
} else if this == nil {
return false
}
if len(this.Caveats) != len(that1.Caveats) {
if len(this.SupportedFirstParty) != len(that1.SupportedFirstParty) {
return false
}
for i := range this.Caveats {
if this.Caveats[i] != that1.Caveats[i] {
for i := range this.SupportedFirstParty {
if this.SupportedFirstParty[i] != that1.SupportedFirstParty[i] {
return false
}
}
if len(this.SupportedThirdParty) != len(that1.SupportedThirdParty) {
return false
}
for i := range this.SupportedThirdParty {
if this.SupportedThirdParty[i] != that1.SupportedThirdParty[i] {
return false
}
}
@@ -533,15 +575,22 @@ func (m *Methods) MarshalToSizedBuffer(dAtA []byte) (int, error) {
_ = i
var l int
_ = l
if len(m.Methods) > 0 {
for iNdEx := len(m.Methods) - 1; iNdEx >= 0; iNdEx-- {
i -= len(m.Methods[iNdEx])
copy(dAtA[i:], m.Methods[iNdEx])
i = encodeVarintGenesis(dAtA, i, uint64(len(m.Methods[iNdEx])))
if len(m.Supported) > 0 {
for iNdEx := len(m.Supported) - 1; iNdEx >= 0; iNdEx-- {
i -= len(m.Supported[iNdEx])
copy(dAtA[i:], m.Supported[iNdEx])
i = encodeVarintGenesis(dAtA, i, uint64(len(m.Supported[iNdEx])))
i--
dAtA[i] = 0xa
dAtA[i] = 0x12
}
}
if len(m.Default) > 0 {
i -= len(m.Default)
copy(dAtA[i:], m.Default)
i = encodeVarintGenesis(dAtA, i, uint64(len(m.Default)))
i--
dAtA[i] = 0xa
}
return len(dAtA) - i, nil
}
@@ -565,15 +614,22 @@ func (m *Scopes) MarshalToSizedBuffer(dAtA []byte) (int, error) {
_ = i
var l int
_ = l
if len(m.Scopes) > 0 {
for iNdEx := len(m.Scopes) - 1; iNdEx >= 0; iNdEx-- {
i -= len(m.Scopes[iNdEx])
copy(dAtA[i:], m.Scopes[iNdEx])
i = encodeVarintGenesis(dAtA, i, uint64(len(m.Scopes[iNdEx])))
if len(m.Supported) > 0 {
for iNdEx := len(m.Supported) - 1; iNdEx >= 0; iNdEx-- {
i -= len(m.Supported[iNdEx])
copy(dAtA[i:], m.Supported[iNdEx])
i = encodeVarintGenesis(dAtA, i, uint64(len(m.Supported[iNdEx])))
i--
dAtA[i] = 0xa
dAtA[i] = 0x12
}
}
if len(m.Base) > 0 {
i -= len(m.Base)
copy(dAtA[i:], m.Base)
i = encodeVarintGenesis(dAtA, i, uint64(len(m.Base)))
i--
dAtA[i] = 0xa
}
return len(dAtA) - i, nil
}
@@ -597,11 +653,20 @@ func (m *Caveats) MarshalToSizedBuffer(dAtA []byte) (int, error) {
_ = i
var l int
_ = l
if len(m.Caveats) > 0 {
for iNdEx := len(m.Caveats) - 1; iNdEx >= 0; iNdEx-- {
i -= len(m.Caveats[iNdEx])
copy(dAtA[i:], m.Caveats[iNdEx])
i = encodeVarintGenesis(dAtA, i, uint64(len(m.Caveats[iNdEx])))
if len(m.SupportedThirdParty) > 0 {
for iNdEx := len(m.SupportedThirdParty) - 1; iNdEx >= 0; iNdEx-- {
i -= len(m.SupportedThirdParty[iNdEx])
copy(dAtA[i:], m.SupportedThirdParty[iNdEx])
i = encodeVarintGenesis(dAtA, i, uint64(len(m.SupportedThirdParty[iNdEx])))
i--
dAtA[i] = 0x12
}
}
if len(m.SupportedFirstParty) > 0 {
for iNdEx := len(m.SupportedFirstParty) - 1; iNdEx >= 0; iNdEx-- {
i -= len(m.SupportedFirstParty[iNdEx])
copy(dAtA[i:], m.SupportedFirstParty[iNdEx])
i = encodeVarintGenesis(dAtA, i, uint64(len(m.SupportedFirstParty[iNdEx])))
i--
dAtA[i] = 0xa
}
@@ -658,8 +723,12 @@ func (m *Methods) Size() (n int) {
}
var l int
_ = l
if len(m.Methods) > 0 {
for _, s := range m.Methods {
l = len(m.Default)
if l > 0 {
n += 1 + l + sovGenesis(uint64(l))
}
if len(m.Supported) > 0 {
for _, s := range m.Supported {
l = len(s)
n += 1 + l + sovGenesis(uint64(l))
}
@@ -673,8 +742,12 @@ func (m *Scopes) Size() (n int) {
}
var l int
_ = l
if len(m.Scopes) > 0 {
for _, s := range m.Scopes {
l = len(m.Base)
if l > 0 {
n += 1 + l + sovGenesis(uint64(l))
}
if len(m.Supported) > 0 {
for _, s := range m.Supported {
l = len(s)
n += 1 + l + sovGenesis(uint64(l))
}
@@ -688,8 +761,14 @@ func (m *Caveats) Size() (n int) {
}
var l int
_ = l
if len(m.Caveats) > 0 {
for _, s := range m.Caveats {
if len(m.SupportedFirstParty) > 0 {
for _, s := range m.SupportedFirstParty {
l = len(s)
n += 1 + l + sovGenesis(uint64(l))
}
}
if len(m.SupportedThirdParty) > 0 {
for _, s := range m.SupportedThirdParty {
l = len(s)
n += 1 + l + sovGenesis(uint64(l))
}
@@ -975,7 +1054,7 @@ func (m *Methods) Unmarshal(dAtA []byte) error {
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Methods", wireType)
return fmt.Errorf("proto: wrong wireType = %d for field Default", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
@@ -1003,7 +1082,39 @@ func (m *Methods) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Methods = append(m.Methods, string(dAtA[iNdEx:postIndex]))
m.Default = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Supported", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenesis
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthGenesis
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return ErrInvalidLengthGenesis
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Supported = append(m.Supported, string(dAtA[iNdEx:postIndex]))
iNdEx = postIndex
default:
iNdEx = preIndex
@@ -1057,7 +1168,7 @@ func (m *Scopes) Unmarshal(dAtA []byte) error {
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Scopes", wireType)
return fmt.Errorf("proto: wrong wireType = %d for field Base", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
@@ -1085,7 +1196,39 @@ func (m *Scopes) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Scopes = append(m.Scopes, string(dAtA[iNdEx:postIndex]))
m.Base = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Supported", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenesis
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthGenesis
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return ErrInvalidLengthGenesis
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Supported = append(m.Supported, string(dAtA[iNdEx:postIndex]))
iNdEx = postIndex
default:
iNdEx = preIndex
@@ -1139,7 +1282,7 @@ func (m *Caveats) Unmarshal(dAtA []byte) error {
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Caveats", wireType)
return fmt.Errorf("proto: wrong wireType = %d for field SupportedFirstParty", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
@@ -1167,7 +1310,39 @@ func (m *Caveats) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Caveats = append(m.Caveats, string(dAtA[iNdEx:postIndex]))
m.SupportedFirstParty = append(m.SupportedFirstParty, string(dAtA[iNdEx:postIndex]))
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field SupportedThirdParty", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenesis
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthGenesis
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return ErrInvalidLengthGenesis
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.SupportedThirdParty = append(m.SupportedThirdParty, string(dAtA[iNdEx:postIndex]))
iNdEx = postIndex
default:
iNdEx = preIndex
+28 -3
View File
@@ -6,8 +6,11 @@ import (
// DefaultParams returns default module parameters.
func DefaultParams() Params {
// TODO:
return Params{}
return Params{
Methods: DefaultMethods(),
Scopes: DefaultScopes(),
Caveats: DefaultCaveats(),
}
}
// Stringer method for Params.
@@ -22,6 +25,28 @@ func (p Params) String() string {
// Validate does the sanity check on the params.
func (p Params) Validate() error {
// TODO:
return nil
}
func DefaultMethods() *Methods {
return &Methods{
Default: "did:sonr",
Supported: []string{"did:key", "did:web", "did:sonr", "did:ipfs", "did:btcr", "did:ethr"},
}
}
func DefaultScopes() *Scopes {
return &Scopes{
Base: "openid profile sonr.address",
Supported: []string{"create", "read", "update", "delete", "sign", "verify", "simulate", "execute", "broadcast", "admin"},
}
}
func DefaultCaveats() *Caveats {
return &Caveats{
// First party - JWT Format
SupportedFirstParty: []string{"aud", "exp", "iat", "iss", "nbf", "nonce", "sub"},
// Third party - UCAN Format
SupportedThirdParty: []string{"cap", "nbf", "exp", "att", "prf", "rmt", "sig", "ucv"},
}
}
+402 -7
View File
@@ -99,14 +99,99 @@ func (m *Grant) GetExpiryHeight() int64 {
return 0
}
type Macaroon struct {
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"`
}
func (m *Macaroon) Reset() { *m = Macaroon{} }
func (m *Macaroon) String() string { return proto.CompactTextString(m) }
func (*Macaroon) ProtoMessage() {}
func (*Macaroon) Descriptor() ([]byte, []int) {
return fileDescriptor_2ade56339acadfd8, []int{1}
}
func (m *Macaroon) XXX_Unmarshal(b []byte) error {
return m.Unmarshal(b)
}
func (m *Macaroon) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
if deterministic {
return xxx_messageInfo_Macaroon.Marshal(b, m, deterministic)
} else {
b = b[:cap(b)]
n, err := m.MarshalToSizedBuffer(b)
if err != nil {
return nil, err
}
return b[:n], nil
}
}
func (m *Macaroon) XXX_Merge(src proto.Message) {
xxx_messageInfo_Macaroon.Merge(m, src)
}
func (m *Macaroon) XXX_Size() int {
return m.Size()
}
func (m *Macaroon) XXX_DiscardUnknown() {
xxx_messageInfo_Macaroon.DiscardUnknown(m)
}
var xxx_messageInfo_Macaroon proto.InternalMessageInfo
func (m *Macaroon) GetId() uint64 {
if m != nil {
return m.Id
}
return 0
}
func (m *Macaroon) GetController() string {
if m != nil {
return m.Controller
}
return ""
}
func (m *Macaroon) GetSubject() string {
if m != nil {
return m.Subject
}
return ""
}
func (m *Macaroon) GetOrigin() string {
if m != nil {
return m.Origin
}
return ""
}
func (m *Macaroon) GetExpiryHeight() int64 {
if m != nil {
return m.ExpiryHeight
}
return 0
}
func (m *Macaroon) GetMacaroon() string {
if m != nil {
return m.Macaroon
}
return ""
}
func init() {
proto.RegisterType((*Grant)(nil), "macaroon.v1.Grant")
proto.RegisterType((*Macaroon)(nil), "macaroon.v1.Macaroon")
}
func init() { proto.RegisterFile("macaroon/v1/state.proto", fileDescriptor_2ade56339acadfd8) }
var fileDescriptor_2ade56339acadfd8 = []byte{
// 280 bytes of a gzipped FileDescriptorProto
// 307 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x12, 0xcf, 0x4d, 0x4c, 0x4e,
0x2c, 0xca, 0xcf, 0xcf, 0xd3, 0x2f, 0x33, 0xd4, 0x2f, 0x2e, 0x49, 0x2c, 0x49, 0xd5, 0x2b, 0x28,
0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x86, 0x49, 0xe8, 0x95, 0x19, 0x4a, 0x89, 0x27, 0xe7, 0x17, 0xe7,
@@ -119,12 +204,14 @@ var fileDescriptor_2ade56339acadfd8 = []byte{
0x99, 0x8b, 0x37, 0xb5, 0xa2, 0x20, 0xb3, 0xa8, 0x32, 0x3e, 0x23, 0x35, 0x33, 0x3d, 0xa3, 0x44,
0x82, 0x55, 0x81, 0x51, 0x83, 0x39, 0x88, 0x07, 0x22, 0xe8, 0x01, 0x16, 0xb3, 0x52, 0xfb, 0x34,
0xef, 0x72, 0x1f, 0xb3, 0x02, 0x17, 0x1b, 0xc8, 0x39, 0x02, 0x8c, 0x42, 0x22, 0x5c, 0x7c, 0x50,
0x73, 0x75, 0x20, 0xc6, 0x08, 0x30, 0x4a, 0x30, 0x4a, 0x30, 0x3a, 0x39, 0x9e, 0x78, 0x24, 0xc7,
0x78, 0xe1, 0x91, 0x1c, 0xe3, 0x83, 0x47, 0x72, 0x8c, 0x13, 0x1e, 0xcb, 0x31, 0x5c, 0x78, 0x2c,
0xc7, 0x70, 0xe3, 0xb1, 0x1c, 0x43, 0x94, 0x7a, 0x7a, 0x66, 0x49, 0x46, 0x69, 0x92, 0x5e, 0x72,
0x7e, 0xae, 0x7e, 0x7e, 0x5e, 0x71, 0x7e, 0x5e, 0x91, 0x3e, 0x98, 0xa8, 0xd0, 0x87, 0x07, 0x55,
0x49, 0x65, 0x41, 0x6a, 0x71, 0x12, 0x1b, 0x38, 0x08, 0x8c, 0x01, 0x01, 0x00, 0x00, 0xff, 0xff,
0x83, 0x14, 0xb8, 0x7a, 0x43, 0x01, 0x00, 0x00,
0x73, 0x75, 0x20, 0xc6, 0x08, 0x30, 0x4a, 0x30, 0x4a, 0x30, 0x2a, 0x5d, 0x65, 0xe4, 0xe2, 0xf0,
0x85, 0xfa, 0x70, 0x90, 0xb8, 0x5d, 0x48, 0x8a, 0x8b, 0x03, 0x16, 0xe8, 0x12, 0x6c, 0x60, 0xed,
0x70, 0x3e, 0x91, 0xfe, 0x62, 0x72, 0x72, 0x3c, 0xf1, 0x48, 0x8e, 0xf1, 0xc2, 0x23, 0x39, 0xc6,
0x07, 0x8f, 0xe4, 0x18, 0x27, 0x3c, 0x96, 0x63, 0xb8, 0xf0, 0x58, 0x8e, 0xe1, 0xc6, 0x63, 0x39,
0x86, 0x28, 0xf5, 0xf4, 0xcc, 0x92, 0x8c, 0xd2, 0x24, 0xbd, 0xe4, 0xfc, 0x5c, 0xfd, 0xfc, 0xbc,
0xe2, 0xfc, 0xbc, 0x22, 0x7d, 0x30, 0x51, 0xa1, 0x0f, 0x4f, 0x02, 0x25, 0x95, 0x05, 0xa9, 0xc5,
0x49, 0x6c, 0xe0, 0xa8, 0x35, 0x06, 0x04, 0x00, 0x00, 0xff, 0xff, 0xa8, 0x46, 0x4a, 0xd1, 0x1b,
0x02, 0x00, 0x00,
}
func (m *Grant) Marshal() (dAtA []byte, err error) {
@@ -181,6 +268,67 @@ func (m *Grant) MarshalToSizedBuffer(dAtA []byte) (int, error) {
return len(dAtA) - i, nil
}
func (m *Macaroon) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
n, err := m.MarshalToSizedBuffer(dAtA[:size])
if err != nil {
return nil, err
}
return dAtA[:n], nil
}
func (m *Macaroon) MarshalTo(dAtA []byte) (int, error) {
size := m.Size()
return m.MarshalToSizedBuffer(dAtA[:size])
}
func (m *Macaroon) MarshalToSizedBuffer(dAtA []byte) (int, error) {
i := len(dAtA)
_ = i
var l int
_ = l
if len(m.Macaroon) > 0 {
i -= len(m.Macaroon)
copy(dAtA[i:], m.Macaroon)
i = encodeVarintState(dAtA, i, uint64(len(m.Macaroon)))
i--
dAtA[i] = 0x32
}
if m.ExpiryHeight != 0 {
i = encodeVarintState(dAtA, i, uint64(m.ExpiryHeight))
i--
dAtA[i] = 0x28
}
if len(m.Origin) > 0 {
i -= len(m.Origin)
copy(dAtA[i:], m.Origin)
i = encodeVarintState(dAtA, i, uint64(len(m.Origin)))
i--
dAtA[i] = 0x22
}
if len(m.Subject) > 0 {
i -= len(m.Subject)
copy(dAtA[i:], m.Subject)
i = encodeVarintState(dAtA, i, uint64(len(m.Subject)))
i--
dAtA[i] = 0x1a
}
if len(m.Controller) > 0 {
i -= len(m.Controller)
copy(dAtA[i:], m.Controller)
i = encodeVarintState(dAtA, i, uint64(len(m.Controller)))
i--
dAtA[i] = 0x12
}
if m.Id != 0 {
i = encodeVarintState(dAtA, i, uint64(m.Id))
i--
dAtA[i] = 0x8
}
return len(dAtA) - i, nil
}
func encodeVarintState(dAtA []byte, offset int, v uint64) int {
offset -= sovState(v)
base := offset
@@ -219,6 +367,37 @@ func (m *Grant) Size() (n int) {
return n
}
func (m *Macaroon) Size() (n int) {
if m == nil {
return 0
}
var l int
_ = l
if m.Id != 0 {
n += 1 + sovState(uint64(m.Id))
}
l = len(m.Controller)
if l > 0 {
n += 1 + l + sovState(uint64(l))
}
l = len(m.Subject)
if l > 0 {
n += 1 + l + sovState(uint64(l))
}
l = len(m.Origin)
if l > 0 {
n += 1 + l + sovState(uint64(l))
}
if m.ExpiryHeight != 0 {
n += 1 + sovState(uint64(m.ExpiryHeight))
}
l = len(m.Macaroon)
if l > 0 {
n += 1 + l + sovState(uint64(l))
}
return n
}
func sovState(x uint64) (n int) {
return (math_bits.Len64(x|1) + 6) / 7
}
@@ -409,6 +588,222 @@ func (m *Grant) Unmarshal(dAtA []byte) error {
}
return nil
}
func (m *Macaroon) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowState
}
if iNdEx >= l {
return 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 fmt.Errorf("proto: Macaroon: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: Macaroon: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Id", wireType)
}
m.Id = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowState
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
m.Id |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Controller", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowState
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthState
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return ErrInvalidLengthState
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Controller = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 3:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Subject", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowState
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthState
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return ErrInvalidLengthState
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Subject = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 4:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Origin", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowState
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthState
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return ErrInvalidLengthState
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Origin = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 5:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field ExpiryHeight", wireType)
}
m.ExpiryHeight = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowState
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
m.ExpiryHeight |= int64(b&0x7F) << shift
if b < 0x80 {
break
}
}
case 6:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Macaroon", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowState
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthState
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return ErrInvalidLengthState
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Macaroon = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipState(dAtA[iNdEx:])
if err != nil {
return err
}
if (skippy < 0) || (iNdEx+skippy) < 0 {
return ErrInvalidLengthState
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipState(dAtA []byte) (n int, err error) {
l := len(dAtA)
iNdEx := 0
+5 -1
View File
@@ -8,9 +8,11 @@ import (
"cosmossdk.io/core/store"
"cosmossdk.io/depinject"
"cosmossdk.io/log"
nftkeeper "cosmossdk.io/x/nft/keeper"
"github.com/cosmos/cosmos-sdk/codec"
authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
groupkeeper "github.com/cosmos/cosmos-sdk/x/group/keeper"
slashingkeeper "github.com/cosmos/cosmos-sdk/x/slashing/keeper"
stakingkeeper "github.com/cosmos/cosmos-sdk/x/staking/keeper"
@@ -43,7 +45,9 @@ type ModuleInputs struct {
AddressCodec address.Codec
DidKeeper didkeeper.Keeper
GroupKeeper groupkeeper.Keeper
MacaroonKeeper macaroonkeeper.Keeper
NFTKeeper nftkeeper.Keeper
StakingKeeper stakingkeeper.Keeper
SlashingKeeper slashingkeeper.Keeper
}
@@ -58,7 +62,7 @@ type ModuleOutputs struct {
func ProvideModule(in ModuleInputs) ModuleOutputs {
govAddr := authtypes.NewModuleAddress(govtypes.ModuleName).String()
k := keeper.NewKeeper(in.Cdc, in.StoreService, log.NewLogger(os.Stderr), govAddr)
k := keeper.NewKeeper(in.Cdc, in.StoreService, log.NewLogger(os.Stderr), govAddr, in.DidKeeper, in.GroupKeeper, in.MacaroonKeeper, in.NFTKeeper)
m := NewAppModule(in.Cdc, k, in.DidKeeper, in.MacaroonKeeper)
return ModuleOutputs{Module: m, Keeper: k, Out: depinject.Out{}}
+18
View File
@@ -5,11 +5,15 @@ import (
storetypes "cosmossdk.io/core/store"
"cosmossdk.io/log"
"cosmossdk.io/orm/model/ormdb"
nftkeeper "cosmossdk.io/x/nft/keeper"
"github.com/cosmos/cosmos-sdk/codec"
authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
groupkeeper "github.com/cosmos/cosmos-sdk/x/group/keeper"
apiv1 "github.com/onsonr/sonr/api/service/v1"
didkeeper "github.com/onsonr/sonr/x/did/keeper"
macaroonkeeper "github.com/onsonr/sonr/x/macaroon/keeper"
"github.com/onsonr/sonr/x/service/types"
)
@@ -24,6 +28,11 @@ type Keeper struct {
OrmDB apiv1.StateStore
authority string
DidKeeper didkeeper.Keeper
GroupKeeper groupkeeper.Keeper
MacaroonKeeper macaroonkeeper.Keeper
NFTKeeper nftkeeper.Keeper
}
// NewKeeper creates a new Keeper instance
@@ -32,6 +41,10 @@ func NewKeeper(
storeService storetypes.KVStoreService,
logger log.Logger,
authority string,
didKeeper didkeeper.Keeper,
groupKeeper groupkeeper.Keeper,
macaroonKeeper macaroonkeeper.Keeper,
nftKeeper nftkeeper.Keeper,
) Keeper {
logger = logger.With(log.ModuleKey, "x/"+types.ModuleName)
@@ -59,6 +72,11 @@ func NewKeeper(
OrmDB: store,
authority: authority,
DidKeeper: didKeeper,
GroupKeeper: groupKeeper,
MacaroonKeeper: macaroonKeeper,
NFTKeeper: nftKeeper,
}
schema, err := sb.Build()
+5 -1
View File
@@ -6,6 +6,7 @@ import (
"cosmossdk.io/core/store"
"cosmossdk.io/log"
storetypes "cosmossdk.io/store/types"
nftkeeper "cosmossdk.io/x/nft/keeper"
"github.com/cosmos/cosmos-sdk/runtime"
"github.com/cosmos/cosmos-sdk/testutil"
simtestutil "github.com/cosmos/cosmos-sdk/testutil/sims"
@@ -16,6 +17,7 @@ import (
authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
bankkeeper "github.com/cosmos/cosmos-sdk/x/bank/keeper"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
groupkeeper "github.com/cosmos/cosmos-sdk/x/group/keeper"
mintkeeper "github.com/cosmos/cosmos-sdk/x/mint/keeper"
minttypes "github.com/cosmos/cosmos-sdk/x/mint/types"
stakingkeeper "github.com/cosmos/cosmos-sdk/x/staking/keeper"
@@ -50,9 +52,11 @@ type testFixture struct {
accountkeeper authkeeper.AccountKeeper
bankkeeper bankkeeper.BaseKeeper
didkeeper didkeeper.Keeper
groupkeeper groupkeeper.Keeper
mack macaroonkeeper.Keeper
stakingKeeper *stakingkeeper.Keeper
mintkeeper mintkeeper.Keeper
nftkeeper nftkeeper.Keeper
addrs []sdk.AccAddress
govModAddr string
@@ -80,7 +84,7 @@ func SetupTest(t *testing.T) *testFixture {
registerBaseSDKModules(f, encCfg, storeService, logger, require)
// Setup Keeper.
f.k = keeper.NewKeeper(encCfg.Codec, storeService, logger, f.govModAddr)
f.k = keeper.NewKeeper(encCfg.Codec, storeService, logger, f.govModAddr, f.didkeeper, f.groupkeeper, f.mack, f.nftkeeper)
f.msgServer = keeper.NewMsgServerImpl(f.k)
f.queryServer = keeper.NewQuerier(f.k)
f.appModule = module.NewAppModule(encCfg.Codec, f.k, f.didkeeper, f.mack)
+3 -1
View File
@@ -9,6 +9,7 @@ import (
"cosmossdk.io/depinject"
"cosmossdk.io/log"
"github.com/cosmos/cosmos-sdk/codec"
authkeeper "github.com/cosmos/cosmos-sdk/x/auth/keeper"
authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
slashingkeeper "github.com/cosmos/cosmos-sdk/x/slashing/keeper"
@@ -41,6 +42,7 @@ type ModuleInputs struct {
StoreService store.KVStoreService
AddressCodec address.Codec
AccountKeeper authkeeper.AccountKeeper
DidKeeper didkeeper.Keeper
StakingKeeper stakingkeeper.Keeper
SlashingKeeper slashingkeeper.Keeper
@@ -56,7 +58,7 @@ type ModuleOutputs struct {
func ProvideModule(in ModuleInputs) ModuleOutputs {
govAddr := authtypes.NewModuleAddress(govtypes.ModuleName).String()
k := keeper.NewKeeper(in.Cdc, in.StoreService, log.NewLogger(os.Stderr), govAddr, in.DidKeeper)
k := keeper.NewKeeper(in.Cdc, in.StoreService, log.NewLogger(os.Stderr), govAddr, in.AccountKeeper, in.DidKeeper)
m := NewAppModule(in.Cdc, k, in.DidKeeper)
return ModuleOutputs{Module: m, Keeper: k, Out: depinject.Out{}}
+10 -6
View File
@@ -10,6 +10,7 @@ import (
"cosmossdk.io/orm/model/ormdb"
"github.com/cosmos/cosmos-sdk/codec"
sdk "github.com/cosmos/cosmos-sdk/types"
authkeeper "github.com/cosmos/cosmos-sdk/x/auth/keeper"
authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
govtypes "github.com/cosmos/cosmos-sdk/x/gov/types"
"github.com/ipfs/kubo/client/rpc"
@@ -34,7 +35,8 @@ type Keeper struct {
ipfsClient *rpc.HttpApi
DIDKeeper didkeeper.Keeper
AccountKeeper authkeeper.AccountKeeper
DIDKeeper didkeeper.Keeper
}
// NewKeeper creates a new Keeper instance
@@ -43,6 +45,7 @@ func NewKeeper(
storeService storetypes.KVStoreService,
logger log.Logger,
authority string,
authKeeper authkeeper.AccountKeeper,
didk didkeeper.Keeper,
) Keeper {
logger = logger.With(log.ModuleKey, "x/"+types.ModuleName)
@@ -65,11 +68,12 @@ func NewKeeper(
ipfsClient, _ := rpc.NewLocalApi()
k := Keeper{
cdc: cdc,
logger: logger,
DIDKeeper: didk,
Params: collections.NewItem(sb, types.ParamsKey, "params", codec.CollValue[types.Params](cdc)),
OrmDB: store,
cdc: cdc,
logger: logger,
DIDKeeper: didk,
AccountKeeper: authKeeper,
Params: collections.NewItem(sb, types.ParamsKey, "params", codec.CollValue[types.Params](cdc)),
OrmDB: store,
ipfsClient: ipfsClient,
authority: authority,
+1 -1
View File
@@ -78,7 +78,7 @@ func SetupTest(t *testing.T) *testFixture {
registerBaseSDKModules(f, encCfg, storeService, logger, require)
// Setup Keeper.
f.k = keeper.NewKeeper(encCfg.Codec, storeService, logger, f.govModAddr, f.didk)
f.k = keeper.NewKeeper(encCfg.Codec, storeService, logger, f.govModAddr, f.accountkeeper, f.didk)
f.msgServer = keeper.NewMsgServerImpl(f.k)
f.queryServer = keeper.NewQuerier(f.k)
f.appModule = module.NewAppModule(encCfg.Codec, f.k, f.didk)
+1
View File
@@ -56,6 +56,7 @@ func NewAppModule(
return &AppModule{
AppModuleBasic: AppModuleBasic{cdc: cdc},
keeper: keeper,
didk: didkeeper,
}
}
+90 -38
View File
@@ -136,10 +136,11 @@ type Schema struct {
Asset string `protobuf:"bytes,3,opt,name=asset,proto3" json:"asset,omitempty"`
Chain string `protobuf:"bytes,4,opt,name=chain,proto3" json:"chain,omitempty"`
Credential string `protobuf:"bytes,5,opt,name=credential,proto3" json:"credential,omitempty"`
Jwk string `protobuf:"bytes,6,opt,name=jwk,proto3" json:"jwk,omitempty"`
Grant string `protobuf:"bytes,7,opt,name=grant,proto3" json:"grant,omitempty"`
Keyshare string `protobuf:"bytes,8,opt,name=keyshare,proto3" json:"keyshare,omitempty"`
Profile string `protobuf:"bytes,9,opt,name=profile,proto3" json:"profile,omitempty"`
Did string `protobuf:"bytes,6,opt,name=did,proto3" json:"did,omitempty"`
Jwk string `protobuf:"bytes,7,opt,name=jwk,proto3" json:"jwk,omitempty"`
Grant string `protobuf:"bytes,8,opt,name=grant,proto3" json:"grant,omitempty"`
Keyshare string `protobuf:"bytes,9,opt,name=keyshare,proto3" json:"keyshare,omitempty"`
Profile string `protobuf:"bytes,10,opt,name=profile,proto3" json:"profile,omitempty"`
}
func (m *Schema) Reset() { *m = Schema{} }
@@ -210,6 +211,13 @@ func (m *Schema) GetCredential() string {
return ""
}
func (m *Schema) GetDid() string {
if m != nil {
return m.Did
}
return ""
}
func (m *Schema) GetJwk() string {
if m != nil {
return m.Jwk
@@ -247,34 +255,35 @@ func init() {
func init() { proto.RegisterFile("vault/v1/genesis.proto", fileDescriptor_4c971b352fb6cc17) }
var fileDescriptor_4c971b352fb6cc17 = []byte{
// 423 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x5c, 0x92, 0xb1, 0x6e, 0xd4, 0x40,
0x10, 0x86, 0xbd, 0x24, 0xe7, 0xdc, 0x6d, 0x52, 0x84, 0x55, 0x84, 0x96, 0x2b, 0x7c, 0x28, 0xa2,
0x88, 0x28, 0x6c, 0x05, 0x3a, 0x84, 0x22, 0x11, 0x09, 0xd1, 0x22, 0xa7, 0xa3, 0x39, 0xcd, 0x6d,
0x26, 0xbe, 0x25, 0xbe, 0x5d, 0x6b, 0x77, 0xcf, 0x90, 0x57, 0xa0, 0xa2, 0xa4, 0xcc, 0x03, 0x50,
0xf0, 0x18, 0x29, 0x53, 0x52, 0x21, 0x74, 0x27, 0x01, 0x8f, 0x81, 0x3c, 0xeb, 0x43, 0x51, 0x9a,
0xd5, 0xfc, 0xdf, 0xff, 0x7b, 0xf4, 0x6b, 0x64, 0xfe, 0xa8, 0x85, 0x65, 0x1d, 0x8a, 0xf6, 0xb8,
0xa8, 0xd0, 0xa0, 0xd7, 0x3e, 0x6f, 0x9c, 0x0d, 0x56, 0x0c, 0x89, 0xe7, 0xed, 0xf1, 0xf8, 0x21,
0x2c, 0xb4, 0xb1, 0x05, 0xbd, 0xd1, 0x1c, 0x1f, 0x54, 0xb6, 0xb2, 0x34, 0x16, 0xdd, 0x14, 0xe9,
0xe1, 0x09, 0xdf, 0x7b, 0x1b, 0x77, 0x9c, 0x05, 0x08, 0x28, 0x72, 0x9e, 0x36, 0xe0, 0x60, 0xe1,
0x25, 0x7b, 0xc2, 0x8e, 0x76, 0x9f, 0xef, 0xe7, 0x9b, 0x9d, 0xf9, 0x3b, 0xe2, 0xa7, 0xdb, 0x37,
0x3f, 0x27, 0x49, 0xd9, 0xa7, 0x0e, 0xbf, 0x31, 0x9e, 0x46, 0x43, 0x4c, 0xf8, 0xae, 0x6e, 0x2e,
0xfc, 0x14, 0x54, 0xd0, 0x2d, 0xd2, 0xf7, 0xc3, 0x92, 0x77, 0xe8, 0x35, 0x11, 0xf1, 0x8a, 0x8f,
0x6b, 0xab, 0xa0, 0x9e, 0x3a, 0xac, 0xb4, 0x0f, 0x0e, 0x82, 0xb6, 0x66, 0x8a, 0x06, 0x66, 0x35,
0x9e, 0xcb, 0x07, 0x94, 0x97, 0x94, 0x28, 0xef, 0x04, 0xde, 0x44, 0x5f, 0x1c, 0xf1, 0xd4, 0xab,
0x39, 0x2e, 0x40, 0x6e, 0xdf, 0x6f, 0x76, 0x46, 0xbc, 0xec, 0xfd, 0x97, 0x8f, 0xbf, 0x5e, 0x4f,
0x92, 0xbf, 0xd7, 0x13, 0xf6, 0xf9, 0xcf, 0xf7, 0x67, 0x7b, 0xf1, 0x56, 0x7d, 0xdd, 0xdf, 0x8c,
0xa7, 0x31, 0x2d, 0x24, 0xdf, 0x69, 0xd1, 0x79, 0x6d, 0x0d, 0x55, 0x1d, 0x94, 0x1b, 0xd9, 0x39,
0xa0, 0x94, 0x5d, 0x9a, 0x40, 0xa5, 0x46, 0xe5, 0x46, 0x8a, 0x03, 0x3e, 0x00, 0xef, 0x31, 0xc8,
0x2d, 0xe2, 0x51, 0x74, 0x54, 0xcd, 0x41, 0x1b, 0x2a, 0x36, 0x2a, 0xa3, 0x10, 0x19, 0xe7, 0xca,
0xe1, 0x39, 0x9a, 0xa0, 0xa1, 0x96, 0x03, 0xb2, 0xee, 0x10, 0xb1, 0xcf, 0xb7, 0x3e, 0x7c, 0xbc,
0x94, 0x29, 0x19, 0xdd, 0xd8, 0xed, 0xa9, 0x1c, 0x98, 0x20, 0x77, 0xe2, 0x1e, 0x12, 0x62, 0xcc,
0x87, 0x97, 0x78, 0xe5, 0xe7, 0xe0, 0x50, 0x0e, 0xc9, 0xf8, 0xaf, 0xbb, 0xa6, 0x8d, 0xb3, 0x17,
0xba, 0x46, 0x39, 0x8a, 0x4d, 0x7b, 0x79, 0x7a, 0x72, 0xb3, 0xca, 0xd8, 0xed, 0x2a, 0x63, 0xbf,
0x56, 0x19, 0xfb, 0xb2, 0xce, 0x92, 0xdb, 0x75, 0x96, 0xfc, 0x58, 0x67, 0xc9, 0xfb, 0xa7, 0x95,
0x0e, 0xf3, 0xe5, 0x2c, 0x57, 0x76, 0x51, 0x58, 0xe3, 0xad, 0x71, 0x05, 0x3d, 0x9f, 0x8a, 0x78,
0xa9, 0x70, 0xd5, 0xa0, 0x9f, 0xa5, 0xf4, 0x7b, 0xbc, 0xf8, 0x17, 0x00, 0x00, 0xff, 0xff, 0xb6,
0xf1, 0x38, 0xc9, 0x6b, 0x02, 0x00, 0x00,
// 434 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x5c, 0x92, 0x31, 0x6f, 0xd3, 0x40,
0x14, 0xc7, 0x6d, 0xda, 0xb8, 0xc9, 0xb5, 0x43, 0x39, 0x55, 0xe8, 0xc8, 0xe0, 0xa0, 0x8a, 0xa1,
0x62, 0xb0, 0x55, 0xd8, 0x10, 0xaa, 0x44, 0x25, 0xc4, 0x8a, 0xdc, 0x8d, 0x25, 0x7a, 0x71, 0x5e,
0x9d, 0x6b, 0x9c, 0x3b, 0xeb, 0xee, 0xe2, 0xd2, 0xaf, 0xc0, 0xc4, 0xc8, 0xd8, 0x0f, 0xc0, 0xc0,
0xc7, 0xe8, 0xd8, 0x91, 0x09, 0xa1, 0x64, 0x80, 0x8f, 0xc0, 0x88, 0xee, 0x9d, 0x83, 0xa2, 0x2e,
0xa7, 0xf7, 0xff, 0xfd, 0xff, 0x7e, 0xfa, 0xeb, 0xc9, 0xec, 0x49, 0x0b, 0xcb, 0xda, 0xe5, 0xed,
0x69, 0x5e, 0xa1, 0x42, 0x2b, 0x6d, 0xd6, 0x18, 0xed, 0x34, 0xef, 0x13, 0xcf, 0xda, 0xd3, 0xe1,
0x63, 0x58, 0x48, 0xa5, 0x73, 0x7a, 0x83, 0x39, 0x3c, 0xaa, 0x74, 0xa5, 0x69, 0xcc, 0xfd, 0x14,
0xe8, 0xf1, 0x19, 0x3b, 0x78, 0x1f, 0x76, 0x5c, 0x38, 0x70, 0xc8, 0x33, 0x96, 0x34, 0x60, 0x60,
0x61, 0x45, 0xfc, 0x2c, 0x3e, 0xd9, 0x7f, 0x79, 0x98, 0x6d, 0x76, 0x66, 0x1f, 0x88, 0x9f, 0xef,
0xde, 0xfd, 0x1c, 0x45, 0x45, 0x97, 0x3a, 0xfe, 0x16, 0xb3, 0x24, 0x18, 0x7c, 0xc4, 0xf6, 0x65,
0x73, 0x69, 0xc7, 0x50, 0x3a, 0xd9, 0x22, 0x7d, 0xdf, 0x2f, 0x98, 0x47, 0x6f, 0x89, 0xf0, 0x37,
0x6c, 0x58, 0xeb, 0x12, 0xea, 0xb1, 0xc1, 0x4a, 0x5a, 0x67, 0xc0, 0x49, 0xad, 0xc6, 0xa8, 0x60,
0x52, 0xe3, 0x54, 0x3c, 0xa2, 0xbc, 0xa0, 0x44, 0xb1, 0x15, 0x78, 0x17, 0x7c, 0x7e, 0xc2, 0x12,
0x5b, 0xce, 0x70, 0x01, 0x62, 0xf7, 0x61, 0xb3, 0x0b, 0xe2, 0x45, 0xe7, 0xbf, 0x7e, 0xfa, 0xf5,
0x76, 0x14, 0xfd, 0xb9, 0x1d, 0xc5, 0x9f, 0x7f, 0x7f, 0x7f, 0x71, 0x10, 0x6e, 0xd5, 0xd5, 0xfd,
0x1b, 0xb3, 0x24, 0xa4, 0xb9, 0x60, 0x7b, 0x2d, 0x1a, 0x2b, 0xb5, 0xa2, 0xaa, 0xbd, 0x62, 0x23,
0xbd, 0x03, 0x65, 0xa9, 0x97, 0xca, 0x51, 0xa9, 0x41, 0xb1, 0x91, 0xfc, 0x88, 0xf5, 0xc0, 0x5a,
0x74, 0x62, 0x87, 0x78, 0x10, 0x9e, 0x96, 0x33, 0x90, 0x8a, 0x8a, 0x0d, 0x8a, 0x20, 0x78, 0xca,
0x58, 0x69, 0x70, 0x8a, 0xca, 0x49, 0xa8, 0x45, 0x8f, 0xac, 0x2d, 0xc2, 0x0f, 0xd9, 0xce, 0x54,
0x4e, 0x45, 0x42, 0x86, 0x1f, 0x3d, 0xb9, 0xba, 0x9e, 0x8b, 0xbd, 0x40, 0xae, 0xae, 0xe7, 0x7e,
0x73, 0x65, 0x40, 0x39, 0xd1, 0x0f, 0x9b, 0x49, 0xf0, 0x21, 0xeb, 0xcf, 0xf1, 0xc6, 0xce, 0xc0,
0xa0, 0x18, 0x90, 0xf1, 0x5f, 0xfb, 0xee, 0x8d, 0xd1, 0x97, 0xb2, 0x46, 0xc1, 0x42, 0xf7, 0x4e,
0x9e, 0x9f, 0xdd, 0xad, 0xd2, 0xf8, 0x7e, 0x95, 0xc6, 0xbf, 0x56, 0x69, 0xfc, 0x65, 0x9d, 0x46,
0xf7, 0xeb, 0x34, 0xfa, 0xb1, 0x4e, 0xa3, 0x8f, 0xcf, 0x2b, 0xe9, 0x66, 0xcb, 0x49, 0x56, 0xea,
0x45, 0xae, 0x95, 0xd5, 0xca, 0xe4, 0xf4, 0x7c, 0xca, 0xc3, 0xed, 0xdc, 0x4d, 0x83, 0x76, 0x92,
0xd0, 0x0f, 0xf3, 0xea, 0x5f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xc9, 0x54, 0x04, 0x35, 0x7d, 0x02,
0x00, 0x00,
}
func (this *Params) Equal(that interface{}) bool {
@@ -420,27 +429,34 @@ func (m *Schema) MarshalToSizedBuffer(dAtA []byte) (int, error) {
copy(dAtA[i:], m.Profile)
i = encodeVarintGenesis(dAtA, i, uint64(len(m.Profile)))
i--
dAtA[i] = 0x4a
dAtA[i] = 0x52
}
if len(m.Keyshare) > 0 {
i -= len(m.Keyshare)
copy(dAtA[i:], m.Keyshare)
i = encodeVarintGenesis(dAtA, i, uint64(len(m.Keyshare)))
i--
dAtA[i] = 0x42
dAtA[i] = 0x4a
}
if len(m.Grant) > 0 {
i -= len(m.Grant)
copy(dAtA[i:], m.Grant)
i = encodeVarintGenesis(dAtA, i, uint64(len(m.Grant)))
i--
dAtA[i] = 0x3a
dAtA[i] = 0x42
}
if len(m.Jwk) > 0 {
i -= len(m.Jwk)
copy(dAtA[i:], m.Jwk)
i = encodeVarintGenesis(dAtA, i, uint64(len(m.Jwk)))
i--
dAtA[i] = 0x3a
}
if len(m.Did) > 0 {
i -= len(m.Did)
copy(dAtA[i:], m.Did)
i = encodeVarintGenesis(dAtA, i, uint64(len(m.Did)))
i--
dAtA[i] = 0x32
}
if len(m.Credential) > 0 {
@@ -545,6 +561,10 @@ func (m *Schema) Size() (n int) {
if l > 0 {
n += 1 + l + sovGenesis(uint64(l))
}
l = len(m.Did)
if l > 0 {
n += 1 + l + sovGenesis(uint64(l))
}
l = len(m.Jwk)
if l > 0 {
n += 1 + l + sovGenesis(uint64(l))
@@ -956,6 +976,38 @@ func (m *Schema) Unmarshal(dAtA []byte) error {
m.Credential = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 6:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Did", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenesis
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthGenesis
}
postIndex := iNdEx + intStringLen
if postIndex < 0 {
return ErrInvalidLengthGenesis
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Did = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 7:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Jwk", wireType)
}
@@ -987,7 +1039,7 @@ func (m *Schema) Unmarshal(dAtA []byte) error {
}
m.Jwk = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 7:
case 8:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Grant", wireType)
}
@@ -1019,7 +1071,7 @@ func (m *Schema) Unmarshal(dAtA []byte) error {
}
m.Grant = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 8:
case 9:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Keyshare", wireType)
}
@@ -1051,7 +1103,7 @@ func (m *Schema) Unmarshal(dAtA []byte) error {
}
m.Keyshare = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 9:
case 10:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Profile", wireType)
}
+11 -9
View File
@@ -2,6 +2,8 @@ package types
import (
"encoding/json"
"github.com/onsonr/sonr/pkg/orm"
)
// DefaultParams returns default module parameters.
@@ -32,14 +34,14 @@ func (p Params) Validate() error {
// DefaultSchema returns the default schema
func DefaultSchema() *Schema {
return &Schema{
Version: 1,
Account: "++, id, name, address, publicKey, chainCode, index, controller, createdAt",
Asset: "++, id, name, symbol, decimals, chainCode, createdAt",
Chain: "++, id, name, networkId, chainCode, createdAt",
Credential: "++, id, subject, controller, attestationType, origin, label, deviceId, credentialId, publicKey, transport, signCount, userPresent, userVerified, backupEligible, backupState, cloneWarning, createdAt, updatedAt",
Jwk: "++, kty, crv, x, y, n, e",
Grant: "++, subject, controller, origin, token, scopes, createdAt, updatedAt",
Keyshare: "++, id, data, role, createdAt, lastRefreshed",
Profile: "++, id, subject, controller, originUri, publicMetadata, privateMetadata, createdAt, updatedAt",
Version: orm.SCHEMA_VERSION,
Account: orm.AccountSchema(),
Asset: orm.AssetSchema(),
Chain: orm.ChainSchema(),
Credential: orm.CredentialSchema(),
Jwk: orm.JwkSchema(),
Grant: orm.GrantSchema(),
Keyshare: orm.KeyshareSchema(),
Profile: orm.ProfileSchema(),
}
}