Compare commits
28 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| e5092d3898 | |||
| 754cfa602c | |||
| 0942490238 | |||
| 4ecce09b73 | |||
| cf871efc23 | |||
| cdd67e35a3 | |||
| 7459b363f6 | |||
| e097e6c8b5 | |||
| 92b96981e2 | |||
| b38c6b0a54 | |||
| ce8f58ed2d | |||
| a4a015a4cc | |||
| a90e43691d | |||
| 54c27ff977 | |||
| 6074dcd419 | |||
| 7fc04591ba | |||
| 519c58f847 | |||
| a9f1b2d3bd | |||
| ba705b25f7 | |||
| 6ea2a3bf54 | |||
| 7c15588651 | |||
| 9beccacda1 | |||
| eaebd96419 | |||
| 61030d84a1 | |||
| a9c51dba33 | |||
| c9db49c367 | |||
| 2dbc8e9a85 | |||
| f29641ae13 |
@@ -2,37 +2,30 @@
|
|||||||
|
|
||||||
[](https://pkg.go.dev/go.arsenm.dev/go-lemmy)
|
[](https://pkg.go.dev/go.arsenm.dev/go-lemmy)
|
||||||
|
|
||||||
Go bindings to the [Lemmy](https://join-lemmy.org) API, automatically generated directly from Lemmy's source code using the generator in [cmd/gen](cmd/gen).
|
Go bindings to the [Lemmy](https://join-lemmy.org) API
|
||||||
|
|
||||||
Examples:
|
Example:
|
||||||
|
|
||||||
- HTTP: [examples/http](examples/http)
|
```go
|
||||||
- WebSocket: [examples/websocket](examples/websocket)
|
ctx := context.Background()
|
||||||
|
|
||||||
### How to generate
|
c, err := lemmy.New("https://lemmygrad.ml")
|
||||||
|
if err != nil {
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
|
|
||||||
First, build the generator:
|
err = c.ClientLogin(ctx, types.Login{
|
||||||
|
UsernameOrEmail: "user@example.com",
|
||||||
|
Password: `TestPwd`,
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
|
|
||||||
```bash
|
_, err = c.SaveUserSettings(ctx, types.SaveUserSettings{
|
||||||
go build ./cmd/gen
|
BotAccount: types.NewOptional(true),
|
||||||
|
})
|
||||||
|
if err != nil {
|
||||||
|
panic(err)
|
||||||
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
Clone Lemmy's source code at whatever version you need:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
git clone https://github.com/LemmyNet/lemmy -b 0.16.7
|
|
||||||
```
|
|
||||||
|
|
||||||
Remove all the existing generated code:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
rm **/*.gen.go
|
|
||||||
```
|
|
||||||
|
|
||||||
Execute the generator:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
./gen -out-dir .
|
|
||||||
```
|
|
||||||
|
|
||||||
And that's it! Your generated code should be ready for use.
|
|
||||||
@@ -5,7 +5,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/dave/jennifer/jen"
|
"github.com/dave/jennifer/jen"
|
||||||
"go.elara.ws/go-lemmy/cmd/gen/parser"
|
"go.arsenm.dev/go-lemmy/cmd/gen/parser"
|
||||||
)
|
)
|
||||||
|
|
||||||
type RoutesGenerator struct {
|
type RoutesGenerator struct {
|
||||||
@@ -19,21 +19,19 @@ func NewRoutes(w io.Writer, pkgName string) *RoutesGenerator {
|
|||||||
|
|
||||||
func (r *RoutesGenerator) Generate(routes []parser.Route, impls map[string]string) error {
|
func (r *RoutesGenerator) Generate(routes []parser.Route, impls map[string]string) error {
|
||||||
f := jen.NewFile(r.PkgName)
|
f := jen.NewFile(r.PkgName)
|
||||||
f.HeaderComment("Code generated by go.elara.ws/go-lemmy/cmd/gen (routes generator). DO NOT EDIT.")
|
|
||||||
|
|
||||||
for _, r := range routes {
|
for _, r := range routes {
|
||||||
resStruct := impls[r.Struct]
|
resStruct := impls[r.Struct]
|
||||||
|
|
||||||
f.Func().Params(
|
f.Func().Params(
|
||||||
jen.Id("c").Id("*Client"),
|
jen.Id("c").Id("*Client"),
|
||||||
).Id(transformName(r.Struct)).Params(
|
).Id(strings.TrimPrefix(r.Struct, "Get")).Params(
|
||||||
jen.Id("ctx").Qual("context", "Context"),
|
jen.Id("ctx").Qual("context", "Context"),
|
||||||
jen.Id("data").Qual("go.elara.ws/go-lemmy/types", r.Struct),
|
jen.Id("data").Qual("go.arsenm.dev/go-lemmy/types", r.Struct),
|
||||||
).Params(
|
).Params(
|
||||||
jen.Op("*").Qual("go.elara.ws/go-lemmy/types", resStruct),
|
jen.Op("*").Qual("go.arsenm.dev/go-lemmy/types", resStruct),
|
||||||
jen.Error(),
|
jen.Error(),
|
||||||
).BlockFunc(func(g *jen.Group) {
|
).BlockFunc(func(g *jen.Group) {
|
||||||
g.Id("resData").Op(":=").Op("&").Qual("go.elara.ws/go-lemmy/types", resStruct).Block()
|
g.Id("resData").Op(":=").Op("&").Qual("go.arsenm.dev/go-lemmy/types", resStruct).Block()
|
||||||
|
|
||||||
var funcName string
|
var funcName string
|
||||||
switch r.Method {
|
switch r.Method {
|
||||||
@@ -61,9 +59,3 @@ func (r *RoutesGenerator) Generate(routes []parser.Route, impls map[string]strin
|
|||||||
|
|
||||||
return f.Render(r.w)
|
return f.Render(r.w)
|
||||||
}
|
}
|
||||||
|
|
||||||
func transformName(s string) string {
|
|
||||||
s = strings.TrimPrefix(s, "Get")
|
|
||||||
s = strings.TrimPrefix(s, "List")
|
|
||||||
return s
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"github.com/dave/jennifer/jen"
|
"github.com/dave/jennifer/jen"
|
||||||
"go.elara.ws/go-lemmy/cmd/gen/parser"
|
"go.arsenm.dev/go-lemmy/cmd/gen/parser"
|
||||||
)
|
)
|
||||||
|
|
||||||
type StructGenerator struct {
|
type StructGenerator struct {
|
||||||
@@ -19,8 +19,6 @@ func NewStruct(w io.Writer, pkgName string) *StructGenerator {
|
|||||||
|
|
||||||
func (s *StructGenerator) Generate(items []parser.Item) error {
|
func (s *StructGenerator) Generate(items []parser.Item) error {
|
||||||
f := jen.NewFile(s.PkgName)
|
f := jen.NewFile(s.PkgName)
|
||||||
f.HeaderComment("Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.")
|
|
||||||
|
|
||||||
for _, item := range items {
|
for _, item := range items {
|
||||||
if item.Struct != nil {
|
if item.Struct != nil {
|
||||||
st := item.Struct
|
st := item.Struct
|
||||||
|
|||||||
+11
-28
@@ -8,16 +8,10 @@ import (
|
|||||||
"strconv"
|
"strconv"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
"go.elara.ws/go-lemmy/cmd/gen/generator"
|
"go.arsenm.dev/go-lemmy/cmd/gen/generator"
|
||||||
"go.elara.ws/go-lemmy/cmd/gen/parser"
|
"go.arsenm.dev/go-lemmy/cmd/gen/parser"
|
||||||
"go.elara.ws/logger"
|
|
||||||
"go.elara.ws/logger/log"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func init() {
|
|
||||||
log.Logger = logger.NewPretty(os.Stderr)
|
|
||||||
}
|
|
||||||
|
|
||||||
var implDirs = [...]string{
|
var implDirs = [...]string{
|
||||||
"crates/api_crud/src",
|
"crates/api_crud/src",
|
||||||
"crates/apub/src/api",
|
"crates/apub/src/api",
|
||||||
@@ -35,7 +29,7 @@ var structDirs = [...]string{
|
|||||||
"crates/websocket/src/lib.rs",
|
"crates/websocket/src/lib.rs",
|
||||||
}
|
}
|
||||||
|
|
||||||
const routesFile = "src/api_routes_http.rs"
|
const routesFile = "src/api_routes.rs"
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
lemmyDir := flag.String("lemmy-dir", "lemmy", "Path to Lemmy repository")
|
lemmyDir := flag.String("lemmy-dir", "lemmy", "Path to Lemmy repository")
|
||||||
@@ -44,7 +38,7 @@ func main() {
|
|||||||
|
|
||||||
baseStructDir := filepath.Join(*outDir, "types")
|
baseStructDir := filepath.Join(*outDir, "types")
|
||||||
sp := parser.NewStruct(nil)
|
sp := parser.NewStruct(nil)
|
||||||
sp.Skip = []string{"LemmyContext", "Recipient", "WsMessage", "Connect", "SessionInfo"}
|
sp.Skip = []string{"LemmyContext"}
|
||||||
for _, structDir := range structDirs {
|
for _, structDir := range structDirs {
|
||||||
dir := filepath.Join(*lemmyDir, structDir)
|
dir := filepath.Join(*lemmyDir, structDir)
|
||||||
err := filepath.WalkDir(dir, func(path string, d fs.DirEntry, err error) error {
|
err := filepath.WalkDir(dir, func(path string, d fs.DirEntry, err error) error {
|
||||||
@@ -95,15 +89,10 @@ func main() {
|
|||||||
}
|
}
|
||||||
defer outFl.Close()
|
defer outFl.Close()
|
||||||
|
|
||||||
_, err = outFl.WriteString("// Source: " + path + "\n")
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return generator.NewStruct(outFl, "types").Generate(fileStructs)
|
return generator.NewStruct(outFl, "types").Generate(fileStructs)
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal("Error walking directory while parsing structs").Err(err).Str("dir", dir).Send()
|
panic(err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -142,36 +131,30 @@ func main() {
|
|||||||
return nil
|
return nil
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal("Error walking directory while parsing impls").Err(err).Str("dir", dir).Send()
|
panic(err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
routesPath := filepath.Join(*lemmyDir, routesFile)
|
rf, err := os.Open(filepath.Join(*lemmyDir, routesFile))
|
||||||
rf, err := os.Open(routesPath)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal("Error opening routes file").Err(err).Send()
|
panic(err)
|
||||||
}
|
}
|
||||||
defer rf.Close()
|
defer rf.Close()
|
||||||
|
|
||||||
rp := parser.NewRoutes(rf)
|
rp := parser.NewRoutes(rf)
|
||||||
routes, err := rp.Parse()
|
routes, err := rp.Parse()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal("Error parsing routes file").Err(err).Send()
|
panic(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
orf, err := os.Create(filepath.Join(*outDir, "routes.gen.go"))
|
orf, err := os.Create(filepath.Join(*outDir, "routes.gen.go"))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal("Error creating routes output file").Err(err).Send()
|
panic(err)
|
||||||
}
|
}
|
||||||
defer orf.Close()
|
defer orf.Close()
|
||||||
|
|
||||||
_, err = orf.WriteString("// Source: " + routesPath + "\n")
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal("Error writing source string to routes file").Err(err).Send()
|
|
||||||
}
|
|
||||||
|
|
||||||
err = generator.NewRoutes(orf, "lemmy").Generate(routes, impls)
|
err = generator.NewRoutes(orf, "lemmy").Generate(routes, impls)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal("Error generating output routes file").Err(err).Send()
|
panic(err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -71,7 +71,6 @@ func (s *StructParser) Parse() ([]Item, error) {
|
|||||||
if slices.Contains(s.Skip, structName) {
|
if slices.Contains(s.Skip, structName) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
structName = s.TransformName(structName)
|
|
||||||
|
|
||||||
// If the line ends with "}", this is a struct with no fields
|
// If the line ends with "}", this is a struct with no fields
|
||||||
if strings.HasSuffix(line, "}\n") {
|
if strings.HasSuffix(line, "}\n") {
|
||||||
@@ -98,9 +97,8 @@ func (s *StructParser) Parse() ([]Item, error) {
|
|||||||
enumName := enumRegex.FindStringSubmatch(line)[1]
|
enumName := enumRegex.FindStringSubmatch(line)[1]
|
||||||
if slices.Contains(s.Skip, enumName) {
|
if slices.Contains(s.Skip, enumName) {
|
||||||
continue
|
continue
|
||||||
}
|
|
||||||
enumName = s.TransformName(enumName)
|
|
||||||
|
|
||||||
|
}
|
||||||
members, err := s.parseEnumMemebers()
|
members, err := s.parseEnumMemebers()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@@ -235,8 +233,6 @@ func TransformTypeGo(t string) string {
|
|||||||
func TransformNameGo(s string) string {
|
func TransformNameGo(s string) string {
|
||||||
out := ""
|
out := ""
|
||||||
|
|
||||||
s = strings.ReplaceAll(s, "Crud", "CRUD")
|
|
||||||
|
|
||||||
splitName := strings.Split(s, "_")
|
splitName := strings.Split(s, "_")
|
||||||
for _, segment := range splitName {
|
for _, segment := range splitName {
|
||||||
switch segment {
|
switch segment {
|
||||||
@@ -246,10 +242,6 @@ func TransformNameGo(s string) string {
|
|||||||
out += "URL"
|
out += "URL"
|
||||||
case "nsfw":
|
case "nsfw":
|
||||||
out += "NSFW"
|
out += "NSFW"
|
||||||
case "jwt":
|
|
||||||
out += "JWT"
|
|
||||||
case "crud":
|
|
||||||
out += "CRUD"
|
|
||||||
default:
|
default:
|
||||||
if len(segment) == 0 {
|
if len(segment) == 0 {
|
||||||
continue
|
continue
|
||||||
|
|||||||
@@ -1,32 +0,0 @@
|
|||||||
package main
|
|
||||||
|
|
||||||
import (
|
|
||||||
"context"
|
|
||||||
|
|
||||||
"go.elara.ws/go-lemmy"
|
|
||||||
"go.elara.ws/go-lemmy/types"
|
|
||||||
)
|
|
||||||
|
|
||||||
func main() {
|
|
||||||
ctx := context.Background()
|
|
||||||
|
|
||||||
c, err := lemmy.New("https://lemmygrad.ml")
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
err = c.ClientLogin(ctx, types.Login{
|
|
||||||
UsernameOrEmail: "user@example.com",
|
|
||||||
Password: `TestPwd`,
|
|
||||||
})
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
_, err = c.SaveUserSettings(ctx, types.SaveUserSettings{
|
|
||||||
BotAccount: types.NewOptional(true),
|
|
||||||
})
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,66 +0,0 @@
|
|||||||
package main
|
|
||||||
|
|
||||||
import (
|
|
||||||
"context"
|
|
||||||
"log"
|
|
||||||
|
|
||||||
"go.elara.ws/go-lemmy"
|
|
||||||
"go.elara.ws/go-lemmy/types"
|
|
||||||
)
|
|
||||||
|
|
||||||
func main() {
|
|
||||||
ctx := context.Background()
|
|
||||||
|
|
||||||
c, err := lemmy.NewWebSocket("https://lemmygrad.ml")
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
err = c.ClientLogin(ctx, types.Login{
|
|
||||||
UsernameOrEmail: "user@example.com",
|
|
||||||
Password: `TestPwd`,
|
|
||||||
})
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
// If nil is passed as data, go-lemmy will just send
|
|
||||||
// the auth token, which is all that's needed for
|
|
||||||
// the UserJoin operation.
|
|
||||||
c.Request(types.UserOperationUserJoin, nil)
|
|
||||||
|
|
||||||
// Subscribe to all communities
|
|
||||||
c.Request(types.UserOperationCommunityJoin, types.CommunityJoin{
|
|
||||||
CommunityID: 0,
|
|
||||||
})
|
|
||||||
|
|
||||||
go handleErrors(c)
|
|
||||||
handleResponses(c)
|
|
||||||
}
|
|
||||||
|
|
||||||
func handleResponses(c *lemmy.WSClient) {
|
|
||||||
for res := range c.Responses() {
|
|
||||||
if res.IsOneOf(types.UserOperationCRUDCreateComment) {
|
|
||||||
var data types.CommentResponse
|
|
||||||
err := lemmy.DecodeResponse(res.Data, &data)
|
|
||||||
if err != nil {
|
|
||||||
log.Println("Error decoding response:", err)
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
err = c.Request(types.UserOperationCreateCommentLike, types.CreateCommentLike{
|
|
||||||
CommentID: data.CommentView.Comment.ID,
|
|
||||||
})
|
|
||||||
if err != nil {
|
|
||||||
log.Println("Error decoding response:", err)
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func handleErrors(c *lemmy.WSClient) {
|
|
||||||
for err := range c.Errors() {
|
|
||||||
log.Println("Error decoding response:", err)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,19 +1,12 @@
|
|||||||
module go.elara.ws/go-lemmy
|
module go.arsenm.dev/go-lemmy
|
||||||
|
|
||||||
go 1.19
|
go 1.19
|
||||||
|
|
||||||
|
retract v0.0.0-20230105203020-27ef17a00e22
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/cenkalti/backoff/v4 v4.2.0
|
|
||||||
github.com/dave/jennifer v1.6.0
|
github.com/dave/jennifer v1.6.0
|
||||||
github.com/google/go-querystring v1.1.0
|
github.com/google/go-querystring v1.1.0
|
||||||
github.com/gorilla/websocket v1.4.2
|
github.com/gorilla/websocket v1.4.2
|
||||||
go.elara.ws/logger v0.0.0-20230421022458-e80700db2090
|
|
||||||
golang.org/x/exp v0.0.0-20230105000112-eab7a2c85304
|
golang.org/x/exp v0.0.0-20230105000112-eab7a2c85304
|
||||||
)
|
)
|
||||||
|
|
||||||
require (
|
|
||||||
github.com/gookit/color v1.5.1 // indirect
|
|
||||||
github.com/mattn/go-isatty v0.0.14 // indirect
|
|
||||||
github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778 // indirect
|
|
||||||
golang.org/x/sys v0.1.0 // indirect
|
|
||||||
)
|
|
||||||
|
|||||||
@@ -1,35 +1,11 @@
|
|||||||
github.com/cenkalti/backoff/v4 v4.2.0 h1:HN5dHm3WBOgndBH6E8V0q2jIYIR3s9yglV8k/+MN3u4=
|
|
||||||
github.com/cenkalti/backoff/v4 v4.2.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE=
|
|
||||||
github.com/dave/jennifer v1.6.0 h1:MQ/6emI2xM7wt0tJzJzyUik2Q3Tcn2eE0vtYgh4GPVI=
|
github.com/dave/jennifer v1.6.0 h1:MQ/6emI2xM7wt0tJzJzyUik2Q3Tcn2eE0vtYgh4GPVI=
|
||||||
github.com/dave/jennifer v1.6.0/go.mod h1:AxTG893FiZKqxy3FP1kL80VMshSMuz2G+EgvszgGRnk=
|
github.com/dave/jennifer v1.6.0/go.mod h1:AxTG893FiZKqxy3FP1kL80VMshSMuz2G+EgvszgGRnk=
|
||||||
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
|
|
||||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
|
||||||
github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||||
github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg=
|
github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg=
|
||||||
github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8=
|
github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8=
|
||||||
github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU=
|
github.com/google/go-querystring v1.1.0/go.mod h1:Kcdr2DB4koayq7X8pmAG4sNG59So17icRSOU623lUBU=
|
||||||
github.com/gookit/color v1.5.1 h1:Vjg2VEcdHpwq+oY63s/ksHrgJYCTo0bwWvmmYWdE9fQ=
|
|
||||||
github.com/gookit/color v1.5.1/go.mod h1:wZFzea4X8qN6vHOSP2apMb4/+w/orMznEzYsIHPaqKM=
|
|
||||||
github.com/gorilla/websocket v1.4.2 h1:+/TMaTYc4QFitKJxsQ7Yye35DkWvkdLcvGKqM+x0Ufc=
|
github.com/gorilla/websocket v1.4.2 h1:+/TMaTYc4QFitKJxsQ7Yye35DkWvkdLcvGKqM+x0Ufc=
|
||||||
github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
|
github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE=
|
||||||
github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y=
|
|
||||||
github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94=
|
|
||||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
|
||||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
|
||||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
|
||||||
github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals=
|
|
||||||
github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk=
|
|
||||||
github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778 h1:QldyIu/L63oPpyvQmHgvgickp1Yw510KJOqX7H24mg8=
|
|
||||||
github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778/go.mod h1:2MuV+tbUrU1zIOPMxZ5EncGwgmMJsa+9ucAQZXxsObs=
|
|
||||||
go.elara.ws/logger v0.0.0-20230421022458-e80700db2090 h1:RVC8XvWo6Yw4HUshqx4TSzuBDScDghafU6QFRJ4xPZg=
|
|
||||||
go.elara.ws/logger v0.0.0-20230421022458-e80700db2090/go.mod h1:qng49owViqsW5Aey93lwBXONw20oGbJIoLVscB16mPM=
|
|
||||||
golang.org/x/exp v0.0.0-20230105000112-eab7a2c85304 h1:YUqj+XKtfrn3kXjFIiZ8jwKROD7ioAOOHUuo3ZZ2opc=
|
golang.org/x/exp v0.0.0-20230105000112-eab7a2c85304 h1:YUqj+XKtfrn3kXjFIiZ8jwKROD7ioAOOHUuo3ZZ2opc=
|
||||||
golang.org/x/exp v0.0.0-20230105000112-eab7a2c85304/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc=
|
golang.org/x/exp v0.0.0-20230105000112-eab7a2c85304/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc=
|
||||||
golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
|
||||||
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
|
||||||
golang.org/x/sys v0.1.0 h1:kunALQeHf1/185U1i0GOB/fy1IPRDDpuoOOqRReG57U=
|
|
||||||
golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
|
||||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
|
||||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
|
||||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ import (
|
|||||||
"reflect"
|
"reflect"
|
||||||
|
|
||||||
"github.com/google/go-querystring/query"
|
"github.com/google/go-querystring/query"
|
||||||
"go.elara.ws/go-lemmy/types"
|
"go.arsenm.dev/go-lemmy/types"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Client is a client for Lemmy's HTTP API
|
// Client is a client for Lemmy's HTTP API
|
||||||
@@ -45,7 +45,7 @@ func (c *Client) ClientLogin(ctx context.Context, l types.Login) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
c.Token = lr.JWT.MustValue()
|
c.Token = lr.Jwt.MustValue()
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+33
-96
@@ -1,11 +1,8 @@
|
|||||||
// Source: lemmy/src/api_routes_http.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (routes generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package lemmy
|
package lemmy
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
types "go.elara.ws/go-lemmy/types"
|
types "go.arsenm.dev/go-lemmy/types"
|
||||||
)
|
)
|
||||||
|
|
||||||
func (c *Client) Site(ctx context.Context, data types.GetSite) (*types.GetSiteResponse, error) {
|
func (c *Client) Site(ctx context.Context, data types.GetSite) (*types.GetSiteResponse, error) {
|
||||||
@@ -44,6 +41,30 @@ func (c *Client) EditSite(ctx context.Context, data types.EditSite) (*types.Site
|
|||||||
}
|
}
|
||||||
return resData, nil
|
return resData, nil
|
||||||
}
|
}
|
||||||
|
func (c *Client) SiteConfig(ctx context.Context, data types.GetSiteConfig) (*types.GetSiteConfigResponse, error) {
|
||||||
|
resData := &types.GetSiteConfigResponse{}
|
||||||
|
res, err := c.getReq(ctx, "GET", "/site/config", data, &resData)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
err = resError(res, resData.LemmyResponse)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return resData, nil
|
||||||
|
}
|
||||||
|
func (c *Client) SaveSiteConfig(ctx context.Context, data types.SaveSiteConfig) (*types.GetSiteConfigResponse, error) {
|
||||||
|
resData := &types.GetSiteConfigResponse{}
|
||||||
|
res, err := c.req(ctx, "PUT", "/site/config", data, &resData)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
err = resError(res, resData.LemmyResponse)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return resData, nil
|
||||||
|
}
|
||||||
func (c *Client) Modlog(ctx context.Context, data types.GetModlog) (*types.GetModlogResponse, error) {
|
func (c *Client) Modlog(ctx context.Context, data types.GetModlog) (*types.GetModlogResponse, error) {
|
||||||
resData := &types.GetModlogResponse{}
|
resData := &types.GetModlogResponse{}
|
||||||
res, err := c.getReq(ctx, "GET", "/modlog", data, &resData)
|
res, err := c.getReq(ctx, "GET", "/modlog", data, &resData)
|
||||||
@@ -128,7 +149,7 @@ func (c *Client) HideCommunity(ctx context.Context, data types.HideCommunity) (*
|
|||||||
}
|
}
|
||||||
return resData, nil
|
return resData, nil
|
||||||
}
|
}
|
||||||
func (c *Client) Communities(ctx context.Context, data types.ListCommunities) (*types.ListCommunitiesResponse, error) {
|
func (c *Client) ListCommunities(ctx context.Context, data types.ListCommunities) (*types.ListCommunitiesResponse, error) {
|
||||||
resData := &types.ListCommunitiesResponse{}
|
resData := &types.ListCommunitiesResponse{}
|
||||||
res, err := c.getReq(ctx, "GET", "/community/list", data, &resData)
|
res, err := c.getReq(ctx, "GET", "/community/list", data, &resData)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -332,9 +353,9 @@ func (c *Client) LockPost(ctx context.Context, data types.LockPost) (*types.Post
|
|||||||
}
|
}
|
||||||
return resData, nil
|
return resData, nil
|
||||||
}
|
}
|
||||||
func (c *Client) FeaturePost(ctx context.Context, data types.FeaturePost) (*types.PostResponse, error) {
|
func (c *Client) StickyPost(ctx context.Context, data types.StickyPost) (*types.PostResponse, error) {
|
||||||
resData := &types.PostResponse{}
|
resData := &types.PostResponse{}
|
||||||
res, err := c.req(ctx, "POST", "/post/feature", data, &resData)
|
res, err := c.req(ctx, "POST", "/post/sticky", data, &resData)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@@ -416,7 +437,7 @@ func (c *Client) ResolvePostReport(ctx context.Context, data types.ResolvePostRe
|
|||||||
}
|
}
|
||||||
return resData, nil
|
return resData, nil
|
||||||
}
|
}
|
||||||
func (c *Client) PostReports(ctx context.Context, data types.ListPostReports) (*types.ListPostReportsResponse, error) {
|
func (c *Client) ListPostReports(ctx context.Context, data types.ListPostReports) (*types.ListPostReportsResponse, error) {
|
||||||
resData := &types.ListPostReportsResponse{}
|
resData := &types.ListPostReportsResponse{}
|
||||||
res, err := c.getReq(ctx, "GET", "/post/report/list", data, &resData)
|
res, err := c.getReq(ctx, "GET", "/post/report/list", data, &resData)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -500,8 +521,8 @@ func (c *Client) RemoveComment(ctx context.Context, data types.RemoveComment) (*
|
|||||||
}
|
}
|
||||||
return resData, nil
|
return resData, nil
|
||||||
}
|
}
|
||||||
func (c *Client) MarkCommentReplyAsRead(ctx context.Context, data types.MarkCommentReplyAsRead) (*types.CommentReplyResponse, error) {
|
func (c *Client) MarkCommentAsRead(ctx context.Context, data types.MarkCommentAsRead) (*types.CommentResponse, error) {
|
||||||
resData := &types.CommentReplyResponse{}
|
resData := &types.CommentResponse{}
|
||||||
res, err := c.req(ctx, "POST", "/comment/mark_as_read", data, &resData)
|
res, err := c.req(ctx, "POST", "/comment/mark_as_read", data, &resData)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@@ -572,7 +593,7 @@ func (c *Client) ResolveCommentReport(ctx context.Context, data types.ResolveCom
|
|||||||
}
|
}
|
||||||
return resData, nil
|
return resData, nil
|
||||||
}
|
}
|
||||||
func (c *Client) CommentReports(ctx context.Context, data types.ListCommentReports) (*types.ListCommentReportsResponse, error) {
|
func (c *Client) ListCommentReports(ctx context.Context, data types.ListCommentReports) (*types.ListCommentReportsResponse, error) {
|
||||||
resData := &types.ListCommentReportsResponse{}
|
resData := &types.ListCommentReportsResponse{}
|
||||||
res, err := c.getReq(ctx, "GET", "/comment/report/list", data, &resData)
|
res, err := c.getReq(ctx, "GET", "/comment/report/list", data, &resData)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -644,42 +665,6 @@ func (c *Client) MarkPrivateMessageAsRead(ctx context.Context, data types.MarkPr
|
|||||||
}
|
}
|
||||||
return resData, nil
|
return resData, nil
|
||||||
}
|
}
|
||||||
func (c *Client) CreatePrivateMessageReport(ctx context.Context, data types.CreatePrivateMessageReport) (*types.PrivateMessageReportResponse, error) {
|
|
||||||
resData := &types.PrivateMessageReportResponse{}
|
|
||||||
res, err := c.req(ctx, "POST", "/private_message/report", data, &resData)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
err = resError(res, resData.LemmyResponse)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return resData, nil
|
|
||||||
}
|
|
||||||
func (c *Client) ResolvePrivateMessageReport(ctx context.Context, data types.ResolvePrivateMessageReport) (*types.PrivateMessageReportResponse, error) {
|
|
||||||
resData := &types.PrivateMessageReportResponse{}
|
|
||||||
res, err := c.req(ctx, "PUT", "/private_message/report/resolve", data, &resData)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
err = resError(res, resData.LemmyResponse)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return resData, nil
|
|
||||||
}
|
|
||||||
func (c *Client) PrivateMessageReports(ctx context.Context, data types.ListPrivateMessageReports) (*types.ListPrivateMessageReportsResponse, error) {
|
|
||||||
resData := &types.ListPrivateMessageReportsResponse{}
|
|
||||||
res, err := c.getReq(ctx, "GET", "/private_message/report/list", data, &resData)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
err = resError(res, resData.LemmyResponse)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return resData, nil
|
|
||||||
}
|
|
||||||
func (c *Client) Register(ctx context.Context, data types.Register) (*types.LoginResponse, error) {
|
func (c *Client) Register(ctx context.Context, data types.Register) (*types.LoginResponse, error) {
|
||||||
resData := &types.LoginResponse{}
|
resData := &types.LoginResponse{}
|
||||||
res, err := c.req(ctx, "POST", "/user/register", data, &resData)
|
res, err := c.req(ctx, "POST", "/user/register", data, &resData)
|
||||||
@@ -956,7 +941,7 @@ func (c *Client) UnreadRegistrationApplicationCount(ctx context.Context, data ty
|
|||||||
}
|
}
|
||||||
return resData, nil
|
return resData, nil
|
||||||
}
|
}
|
||||||
func (c *Client) RegistrationApplications(ctx context.Context, data types.ListRegistrationApplications) (*types.ListRegistrationApplicationsResponse, error) {
|
func (c *Client) ListRegistrationApplications(ctx context.Context, data types.ListRegistrationApplications) (*types.ListRegistrationApplicationsResponse, error) {
|
||||||
resData := &types.ListRegistrationApplicationsResponse{}
|
resData := &types.ListRegistrationApplicationsResponse{}
|
||||||
res, err := c.getReq(ctx, "GET", "/admin/registration_application/list", data, &resData)
|
res, err := c.getReq(ctx, "GET", "/admin/registration_application/list", data, &resData)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -980,51 +965,3 @@ func (c *Client) ApproveRegistrationApplication(ctx context.Context, data types.
|
|||||||
}
|
}
|
||||||
return resData, nil
|
return resData, nil
|
||||||
}
|
}
|
||||||
func (c *Client) PurgePerson(ctx context.Context, data types.PurgePerson) (*types.PurgeItemResponse, error) {
|
|
||||||
resData := &types.PurgeItemResponse{}
|
|
||||||
res, err := c.req(ctx, "POST", "/admin/purge/person", data, &resData)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
err = resError(res, resData.LemmyResponse)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return resData, nil
|
|
||||||
}
|
|
||||||
func (c *Client) PurgeCommunity(ctx context.Context, data types.PurgeCommunity) (*types.PurgeItemResponse, error) {
|
|
||||||
resData := &types.PurgeItemResponse{}
|
|
||||||
res, err := c.req(ctx, "POST", "/admin/purge/community", data, &resData)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
err = resError(res, resData.LemmyResponse)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return resData, nil
|
|
||||||
}
|
|
||||||
func (c *Client) PurgePost(ctx context.Context, data types.PurgePost) (*types.PurgeItemResponse, error) {
|
|
||||||
resData := &types.PurgeItemResponse{}
|
|
||||||
res, err := c.req(ctx, "POST", "/admin/purge/post", data, &resData)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
err = resError(res, resData.LemmyResponse)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return resData, nil
|
|
||||||
}
|
|
||||||
func (c *Client) PurgeComment(ctx context.Context, data types.PurgeComment) (*types.PurgeItemResponse, error) {
|
|
||||||
resData := &types.PurgeItemResponse{}
|
|
||||||
res, err := c.req(ctx, "POST", "/admin/purge/comment", data, &resData)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
err = resError(res, resData.LemmyResponse)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
return resData, nil
|
|
||||||
}
|
|
||||||
|
|||||||
+2
-11
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/activity.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type Activity struct {
|
type Activity struct {
|
||||||
@@ -12,16 +9,10 @@ type Activity struct {
|
|||||||
ApID string `json:"ap_id" url:"ap_id,omitempty"`
|
ApID string `json:"ap_id" url:"ap_id,omitempty"`
|
||||||
Sensitive Optional[bool] `json:"sensitive" url:"sensitive,omitempty"`
|
Sensitive Optional[bool] `json:"sensitive" url:"sensitive,omitempty"`
|
||||||
}
|
}
|
||||||
type ActivityInsertForm struct {
|
type ActivityForm struct {
|
||||||
Data any `json:"data" url:"data,omitempty"`
|
Data any `json:"data" url:"data,omitempty"`
|
||||||
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
ApID string `json:"ap_id" url:"ap_id,omitempty"`
|
ApID string `json:"ap_id" url:"ap_id,omitempty"`
|
||||||
Sensitive Optional[bool] `json:"sensitive" url:"sensitive,omitempty"`
|
Sensitive bool `json:"sensitive" url:"sensitive,omitempty"`
|
||||||
}
|
|
||||||
type ActivityUpdateForm struct {
|
|
||||||
Data any `json:"data" url:"data,omitempty"`
|
|
||||||
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
Sensitive Optional[Optional[bool]] `json:"sensitive" url:"sensitive,omitempty"`
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,32 +0,0 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/actor_language.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type LocalUserLanguage struct {
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
LocalUserID int `json:"local_user_id" url:"local_user_id,omitempty"`
|
|
||||||
LanguageID int `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
}
|
|
||||||
type LocalUserLanguageForm struct {
|
|
||||||
LocalUserID int `json:"local_user_id" url:"local_user_id,omitempty"`
|
|
||||||
LanguageID int `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
}
|
|
||||||
type CommunityLanguage struct {
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
|
||||||
LanguageID int `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
}
|
|
||||||
type CommunityLanguageForm struct {
|
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
|
||||||
LanguageID int `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
}
|
|
||||||
type SiteLanguage struct {
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
SiteID int `json:"site_id" url:"site_id,omitempty"`
|
|
||||||
LanguageID int `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
}
|
|
||||||
type SiteLanguageForm struct {
|
|
||||||
SiteID int `json:"site_id" url:"site_id,omitempty"`
|
|
||||||
LanguageID int `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
// Source: lemmy/crates/api_common/src/websocket/handlers/captcha.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type AddCaptcha struct {
|
|
||||||
Captcha CaptchaItem `json:"captcha" url:"captcha,omitempty"`
|
|
||||||
}
|
|
||||||
type CheckCaptcha struct {
|
|
||||||
Uuid string `json:"uuid" url:"uuid,omitempty"`
|
|
||||||
Answer string `json:"answer" url:"answer,omitempty"`
|
|
||||||
}
|
|
||||||
+19
-19
@@ -1,45 +1,45 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/comment.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type Comment struct {
|
type Comment struct {
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
ID int `json:"id" url:"id,omitempty"`
|
||||||
CreatorID int `json:"creator_id" url:"creator_id,omitempty"`
|
CreatorID int `json:"creator_id" url:"creator_id,omitempty"`
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
PostID int `json:"post_id" url:"post_id,omitempty"`
|
||||||
|
ParentID Optional[int] `json:"parent_id" url:"parent_id,omitempty"`
|
||||||
Content string `json:"content" url:"content,omitempty"`
|
Content string `json:"content" url:"content,omitempty"`
|
||||||
Removed bool `json:"removed" url:"removed,omitempty"`
|
Removed bool `json:"removed" url:"removed,omitempty"`
|
||||||
|
Read bool `json:"read" url:"read,omitempty"`
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
Deleted bool `json:"deleted" url:"deleted,omitempty"`
|
Deleted bool `json:"deleted" url:"deleted,omitempty"`
|
||||||
ApID string `json:"ap_id" url:"ap_id,omitempty"`
|
ApID string `json:"ap_id" url:"ap_id,omitempty"`
|
||||||
Local bool `json:"local" url:"local,omitempty"`
|
Local bool `json:"local" url:"local,omitempty"`
|
||||||
Path string `json:"path" url:"path,omitempty"`
|
|
||||||
Distinguished bool `json:"distinguished" url:"distinguished,omitempty"`
|
|
||||||
LanguageID int `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
}
|
}
|
||||||
type CommentInsertForm struct {
|
type CommentAlias1 struct {
|
||||||
|
ID int `json:"id" url:"id,omitempty"`
|
||||||
|
CreatorID int `json:"creator_id" url:"creator_id,omitempty"`
|
||||||
|
PostID int `json:"post_id" url:"post_id,omitempty"`
|
||||||
|
ParentID Optional[int] `json:"parent_id" url:"parent_id,omitempty"`
|
||||||
|
Content string `json:"content" url:"content,omitempty"`
|
||||||
|
Removed bool `json:"removed" url:"removed,omitempty"`
|
||||||
|
Read bool `json:"read" url:"read,omitempty"`
|
||||||
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
|
Deleted bool `json:"deleted" url:"deleted,omitempty"`
|
||||||
|
ApID string `json:"ap_id" url:"ap_id,omitempty"`
|
||||||
|
Local bool `json:"local" url:"local,omitempty"`
|
||||||
|
}
|
||||||
|
type CommentForm struct {
|
||||||
CreatorID int `json:"creator_id" url:"creator_id,omitempty"`
|
CreatorID int `json:"creator_id" url:"creator_id,omitempty"`
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
PostID int `json:"post_id" url:"post_id,omitempty"`
|
||||||
Content string `json:"content" url:"content,omitempty"`
|
Content string `json:"content" url:"content,omitempty"`
|
||||||
|
ParentID Optional[int] `json:"parent_id" url:"parent_id,omitempty"`
|
||||||
Removed Optional[bool] `json:"removed" url:"removed,omitempty"`
|
Removed Optional[bool] `json:"removed" url:"removed,omitempty"`
|
||||||
|
Read Optional[bool] `json:"read" url:"read,omitempty"`
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
Deleted Optional[bool] `json:"deleted" url:"deleted,omitempty"`
|
Deleted Optional[bool] `json:"deleted" url:"deleted,omitempty"`
|
||||||
ApID Optional[string] `json:"ap_id" url:"ap_id,omitempty"`
|
ApID Optional[string] `json:"ap_id" url:"ap_id,omitempty"`
|
||||||
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
||||||
Distinguished Optional[bool] `json:"distinguished" url:"distinguished,omitempty"`
|
|
||||||
LanguageID Optional[int] `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
}
|
|
||||||
type CommentUpdateForm struct {
|
|
||||||
Content Optional[string] `json:"content" url:"content,omitempty"`
|
|
||||||
Removed Optional[bool] `json:"removed" url:"removed,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
Deleted Optional[bool] `json:"deleted" url:"deleted,omitempty"`
|
|
||||||
ApID Optional[string] `json:"ap_id" url:"ap_id,omitempty"`
|
|
||||||
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
|
||||||
Distinguished Optional[bool] `json:"distinguished" url:"distinguished,omitempty"`
|
|
||||||
LanguageID Optional[int] `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
}
|
}
|
||||||
type CommentLike struct {
|
type CommentLike struct {
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
ID int32 `json:"id" url:"id,omitempty"`
|
||||||
|
|||||||
+7
-11
@@ -1,13 +1,9 @@
|
|||||||
// Source: lemmy/crates/api_common/src/comment.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type CreateComment struct {
|
type CreateComment struct {
|
||||||
Content string `json:"content" url:"content,omitempty"`
|
Content string `json:"content" url:"content,omitempty"`
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
PostID int `json:"post_id" url:"post_id,omitempty"`
|
||||||
ParentID Optional[int] `json:"parent_id" url:"parent_id,omitempty"`
|
ParentID Optional[int] `json:"parent_id" url:"parent_id,omitempty"`
|
||||||
LanguageID Optional[int] `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
FormID Optional[string] `json:"form_id" url:"form_id,omitempty"`
|
FormID Optional[string] `json:"form_id" url:"form_id,omitempty"`
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
@@ -16,10 +12,8 @@ type GetComment struct {
|
|||||||
Auth Optional[string] `json:"auth" url:"auth,omitempty"`
|
Auth Optional[string] `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
type EditComment struct {
|
type EditComment struct {
|
||||||
|
Content string `json:"content" url:"content,omitempty"`
|
||||||
CommentID int `json:"comment_id" url:"comment_id,omitempty"`
|
CommentID int `json:"comment_id" url:"comment_id,omitempty"`
|
||||||
Content Optional[string] `json:"content" url:"content,omitempty"`
|
|
||||||
Distinguished Optional[bool] `json:"distinguished" url:"distinguished,omitempty"`
|
|
||||||
LanguageID Optional[int] `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
FormID Optional[string] `json:"form_id" url:"form_id,omitempty"`
|
FormID Optional[string] `json:"form_id" url:"form_id,omitempty"`
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
@@ -34,6 +28,11 @@ type RemoveComment struct {
|
|||||||
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
|
type MarkCommentAsRead struct {
|
||||||
|
CommentID int `json:"comment_id" url:"comment_id,omitempty"`
|
||||||
|
Read bool `json:"read" url:"read,omitempty"`
|
||||||
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
|
}
|
||||||
type SaveComment struct {
|
type SaveComment struct {
|
||||||
CommentID int `json:"comment_id" url:"comment_id,omitempty"`
|
CommentID int `json:"comment_id" url:"comment_id,omitempty"`
|
||||||
Save bool `json:"save" url:"save,omitempty"`
|
Save bool `json:"save" url:"save,omitempty"`
|
||||||
@@ -52,14 +51,11 @@ type CreateCommentLike struct {
|
|||||||
}
|
}
|
||||||
type GetComments struct {
|
type GetComments struct {
|
||||||
Type Optional[ListingType] `json:"type_" url:"type_,omitempty"`
|
Type Optional[ListingType] `json:"type_" url:"type_,omitempty"`
|
||||||
Sort Optional[CommentSortType] `json:"sort" url:"sort,omitempty"`
|
Sort Optional[SortType] `json:"sort" url:"sort,omitempty"`
|
||||||
MaxDepth Optional[int32] `json:"max_depth" url:"max_depth,omitempty"`
|
|
||||||
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
||||||
Limit Optional[int64] `json:"limit" url:"limit,omitempty"`
|
Limit Optional[int64] `json:"limit" url:"limit,omitempty"`
|
||||||
CommunityID Optional[int] `json:"community_id" url:"community_id,omitempty"`
|
CommunityID Optional[int] `json:"community_id" url:"community_id,omitempty"`
|
||||||
CommunityName Optional[string] `json:"community_name" url:"community_name,omitempty"`
|
CommunityName Optional[string] `json:"community_name" url:"community_name,omitempty"`
|
||||||
PostID Optional[int] `json:"post_id" url:"post_id,omitempty"`
|
|
||||||
ParentID Optional[int] `json:"parent_id" url:"parent_id,omitempty"`
|
|
||||||
SavedOnly Optional[bool] `json:"saved_only" url:"saved_only,omitempty"`
|
SavedOnly Optional[bool] `json:"saved_only" url:"saved_only,omitempty"`
|
||||||
Auth Optional[string] `json:"auth" url:"auth,omitempty"`
|
Auth Optional[string] `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,20 +0,0 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/comment_reply.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type CommentReply struct {
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
RecipientID int `json:"recipient_id" url:"recipient_id,omitempty"`
|
|
||||||
CommentID int `json:"comment_id" url:"comment_id,omitempty"`
|
|
||||||
Read bool `json:"read" url:"read,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
}
|
|
||||||
type CommentReplyInsertForm struct {
|
|
||||||
RecipientID int `json:"recipient_id" url:"recipient_id,omitempty"`
|
|
||||||
CommentID int `json:"comment_id" url:"comment_id,omitempty"`
|
|
||||||
Read Optional[bool] `json:"read" url:"read,omitempty"`
|
|
||||||
}
|
|
||||||
type CommentReplyUpdateForm struct {
|
|
||||||
Read Optional[bool] `json:"read" url:"read,omitempty"`
|
|
||||||
}
|
|
||||||
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/comment_report.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type CommentReport struct {
|
type CommentReport struct {
|
||||||
|
|||||||
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/community.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type Community struct {
|
type Community struct {
|
||||||
@@ -23,11 +20,8 @@ type Community struct {
|
|||||||
FollowersURL string `json:"followers_url" url:"followers_url,omitempty"`
|
FollowersURL string `json:"followers_url" url:"followers_url,omitempty"`
|
||||||
InboxURL string `json:"inbox_url" url:"inbox_url,omitempty"`
|
InboxURL string `json:"inbox_url" url:"inbox_url,omitempty"`
|
||||||
SharedInboxURL Optional[string] `json:"shared_inbox_url" url:"shared_inbox_url,omitempty"`
|
SharedInboxURL Optional[string] `json:"shared_inbox_url" url:"shared_inbox_url,omitempty"`
|
||||||
ModeratorsURL Optional[string] `json:"moderators_url" url:"moderators_url,omitempty"`
|
|
||||||
FeaturedURL Optional[string] `json:"featured_url" url:"featured_url,omitempty"`
|
|
||||||
Hidden bool `json:"hidden" url:"hidden,omitempty"`
|
Hidden bool `json:"hidden" url:"hidden,omitempty"`
|
||||||
PostingRestrictedToMods bool `json:"posting_restricted_to_mods" url:"posting_restricted_to_mods,omitempty"`
|
PostingRestrictedToMods bool `json:"posting_restricted_to_mods" url:"posting_restricted_to_mods,omitempty"`
|
||||||
InstanceID int `json:"instance_id" url:"instance_id,omitempty"`
|
|
||||||
}
|
}
|
||||||
type CommunitySafe struct {
|
type CommunitySafe struct {
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
ID int `json:"id" url:"id,omitempty"`
|
||||||
@@ -45,9 +39,8 @@ type CommunitySafe struct {
|
|||||||
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
||||||
Hidden bool `json:"hidden" url:"hidden,omitempty"`
|
Hidden bool `json:"hidden" url:"hidden,omitempty"`
|
||||||
PostingRestrictedToMods bool `json:"posting_restricted_to_mods" url:"posting_restricted_to_mods,omitempty"`
|
PostingRestrictedToMods bool `json:"posting_restricted_to_mods" url:"posting_restricted_to_mods,omitempty"`
|
||||||
InstanceID int `json:"instance_id" url:"instance_id,omitempty"`
|
|
||||||
}
|
}
|
||||||
type CommunityInsertForm struct {
|
type CommunityForm struct {
|
||||||
Name string `json:"name" url:"name,omitempty"`
|
Name string `json:"name" url:"name,omitempty"`
|
||||||
Title string `json:"title" url:"title,omitempty"`
|
Title string `json:"title" url:"title,omitempty"`
|
||||||
Description Optional[string] `json:"description" url:"description,omitempty"`
|
Description Optional[string] `json:"description" url:"description,omitempty"`
|
||||||
@@ -58,40 +51,14 @@ type CommunityInsertForm struct {
|
|||||||
NSFW Optional[bool] `json:"nsfw" url:"nsfw,omitempty"`
|
NSFW Optional[bool] `json:"nsfw" url:"nsfw,omitempty"`
|
||||||
ActorID Optional[string] `json:"actor_id" url:"actor_id,omitempty"`
|
ActorID Optional[string] `json:"actor_id" url:"actor_id,omitempty"`
|
||||||
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
||||||
PrivateKey Optional[string] `json:"private_key" url:"private_key,omitempty"`
|
|
||||||
PublicKey string `json:"public_key" url:"public_key,omitempty"`
|
|
||||||
LastRefreshedAt LemmyTime `json:"last_refreshed_at" url:"last_refreshed_at,omitempty"`
|
|
||||||
Icon Optional[string] `json:"icon" url:"icon,omitempty"`
|
|
||||||
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
|
||||||
FollowersURL Optional[string] `json:"followers_url" url:"followers_url,omitempty"`
|
|
||||||
InboxURL Optional[string] `json:"inbox_url" url:"inbox_url,omitempty"`
|
|
||||||
SharedInboxURL Optional[string] `json:"shared_inbox_url" url:"shared_inbox_url,omitempty"`
|
|
||||||
ModeratorsURL Optional[string] `json:"moderators_url" url:"moderators_url,omitempty"`
|
|
||||||
FeaturedURL Optional[string] `json:"featured_url" url:"featured_url,omitempty"`
|
|
||||||
Hidden Optional[bool] `json:"hidden" url:"hidden,omitempty"`
|
|
||||||
PostingRestrictedToMods Optional[bool] `json:"posting_restricted_to_mods" url:"posting_restricted_to_mods,omitempty"`
|
|
||||||
InstanceID int `json:"instance_id" url:"instance_id,omitempty"`
|
|
||||||
}
|
|
||||||
type CommunityUpdateForm struct {
|
|
||||||
Title Optional[string] `json:"title" url:"title,omitempty"`
|
|
||||||
Description Optional[Optional[string]] `json:"description" url:"description,omitempty"`
|
|
||||||
Removed Optional[bool] `json:"removed" url:"removed,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
Deleted Optional[bool] `json:"deleted" url:"deleted,omitempty"`
|
|
||||||
NSFW Optional[bool] `json:"nsfw" url:"nsfw,omitempty"`
|
|
||||||
ActorID Optional[string] `json:"actor_id" url:"actor_id,omitempty"`
|
|
||||||
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
|
||||||
PublicKey Optional[string] `json:"public_key" url:"public_key,omitempty"`
|
|
||||||
PrivateKey Optional[Optional[string]] `json:"private_key" url:"private_key,omitempty"`
|
PrivateKey Optional[Optional[string]] `json:"private_key" url:"private_key,omitempty"`
|
||||||
|
PublicKey Optional[string] `json:"public_key" url:"public_key,omitempty"`
|
||||||
LastRefreshedAt LemmyTime `json:"last_refreshed_at" url:"last_refreshed_at,omitempty"`
|
LastRefreshedAt LemmyTime `json:"last_refreshed_at" url:"last_refreshed_at,omitempty"`
|
||||||
Icon Optional[Optional[string]] `json:"icon" url:"icon,omitempty"`
|
Icon Optional[Optional[string]] `json:"icon" url:"icon,omitempty"`
|
||||||
Banner Optional[Optional[string]] `json:"banner" url:"banner,omitempty"`
|
Banner Optional[Optional[string]] `json:"banner" url:"banner,omitempty"`
|
||||||
FollowersURL Optional[string] `json:"followers_url" url:"followers_url,omitempty"`
|
FollowersURL Optional[string] `json:"followers_url" url:"followers_url,omitempty"`
|
||||||
InboxURL Optional[string] `json:"inbox_url" url:"inbox_url,omitempty"`
|
InboxURL Optional[string] `json:"inbox_url" url:"inbox_url,omitempty"`
|
||||||
SharedInboxURL Optional[Optional[string]] `json:"shared_inbox_url" url:"shared_inbox_url,omitempty"`
|
SharedInboxURL Optional[Optional[string]] `json:"shared_inbox_url" url:"shared_inbox_url,omitempty"`
|
||||||
ModeratorsURL Optional[string] `json:"moderators_url" url:"moderators_url,omitempty"`
|
|
||||||
FeaturedURL Optional[string] `json:"featured_url" url:"featured_url,omitempty"`
|
|
||||||
Hidden Optional[bool] `json:"hidden" url:"hidden,omitempty"`
|
Hidden Optional[bool] `json:"hidden" url:"hidden,omitempty"`
|
||||||
PostingRestrictedToMods Optional[bool] `json:"posting_restricted_to_mods" url:"posting_restricted_to_mods,omitempty"`
|
PostingRestrictedToMods Optional[bool] `json:"posting_restricted_to_mods" url:"posting_restricted_to_mods,omitempty"`
|
||||||
}
|
}
|
||||||
@@ -122,7 +89,7 @@ type CommunityFollower struct {
|
|||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
||||||
PersonID int `json:"person_id" url:"person_id,omitempty"`
|
PersonID int `json:"person_id" url:"person_id,omitempty"`
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
Pending bool `json:"pending" url:"pending,omitempty"`
|
Pending Optional[bool] `json:"pending" url:"pending,omitempty"`
|
||||||
}
|
}
|
||||||
type CommunityFollowerForm struct {
|
type CommunityFollowerForm struct {
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
||||||
|
|||||||
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/api_common/src/community.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type GetCommunity struct {
|
type GetCommunity struct {
|
||||||
@@ -13,8 +10,6 @@ type GetCommunityResponse struct {
|
|||||||
Site Optional[Site] `json:"site" url:"site,omitempty"`
|
Site Optional[Site] `json:"site" url:"site,omitempty"`
|
||||||
Moderators []CommunityModeratorView `json:"moderators" url:"moderators,omitempty"`
|
Moderators []CommunityModeratorView `json:"moderators" url:"moderators,omitempty"`
|
||||||
Online uint `json:"online" url:"online,omitempty"`
|
Online uint `json:"online" url:"online,omitempty"`
|
||||||
DiscussionLanguages []int `json:"discussion_languages" url:"discussion_languages,omitempty"`
|
|
||||||
DefaultPostLanguage Optional[int] `json:"default_post_language" url:"default_post_language,omitempty"`
|
|
||||||
LemmyResponse
|
LemmyResponse
|
||||||
}
|
}
|
||||||
type CreateCommunity struct {
|
type CreateCommunity struct {
|
||||||
@@ -25,12 +20,10 @@ type CreateCommunity struct {
|
|||||||
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
||||||
NSFW Optional[bool] `json:"nsfw" url:"nsfw,omitempty"`
|
NSFW Optional[bool] `json:"nsfw" url:"nsfw,omitempty"`
|
||||||
PostingRestrictedToMods Optional[bool] `json:"posting_restricted_to_mods" url:"posting_restricted_to_mods,omitempty"`
|
PostingRestrictedToMods Optional[bool] `json:"posting_restricted_to_mods" url:"posting_restricted_to_mods,omitempty"`
|
||||||
DiscussionLanguages Optional[[]int] `json:"discussion_languages" url:"discussion_languages,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
type CommunityResponse struct {
|
type CommunityResponse struct {
|
||||||
CommunityView CommunityView `json:"community_view" url:"community_view,omitempty"`
|
CommunityView CommunityView `json:"community_view" url:"community_view,omitempty"`
|
||||||
DiscussionLanguages []int `json:"discussion_languages" url:"discussion_languages,omitempty"`
|
|
||||||
LemmyResponse
|
LemmyResponse
|
||||||
}
|
}
|
||||||
type ListCommunities struct {
|
type ListCommunities struct {
|
||||||
@@ -76,7 +69,6 @@ type EditCommunity struct {
|
|||||||
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
||||||
NSFW Optional[bool] `json:"nsfw" url:"nsfw,omitempty"`
|
NSFW Optional[bool] `json:"nsfw" url:"nsfw,omitempty"`
|
||||||
PostingRestrictedToMods Optional[bool] `json:"posting_restricted_to_mods" url:"posting_restricted_to_mods,omitempty"`
|
PostingRestrictedToMods Optional[bool] `json:"posting_restricted_to_mods" url:"posting_restricted_to_mods,omitempty"`
|
||||||
DiscussionLanguages Optional[[]int] `json:"discussion_languages" url:"discussion_languages,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
type HideCommunity struct {
|
type HideCommunity struct {
|
||||||
|
|||||||
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/community_block.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type CommunityBlock struct {
|
type CommunityBlock struct {
|
||||||
|
|||||||
@@ -1,8 +0,0 @@
|
|||||||
// Source: lemmy/crates/api_common/src/websocket/handlers/connect.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type Disconnect struct {
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
}
|
|
||||||
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/email_verification.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type EmailVerification struct {
|
type EmailVerification struct {
|
||||||
|
|||||||
@@ -1,15 +0,0 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/federation_allowlist.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type FederationAllowList struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
InstanceID int `json:"instance_id" url:"instance_id,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
}
|
|
||||||
type FederationAllowListForm struct {
|
|
||||||
InstanceID int `json:"instance_id" url:"instance_id,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/federation_blocklist.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type FederationBlockList struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
InstanceID int `json:"instance_id" url:"instance_id,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
}
|
|
||||||
type FederationBlockListForm struct {
|
|
||||||
InstanceID int `json:"instance_id" url:"instance_id,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/instance.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type Instance struct {
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
Domain string `json:"domain" url:"domain,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
}
|
|
||||||
type InstanceForm struct {
|
|
||||||
Domain string `json:"domain" url:"domain,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
}
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
// Source: lemmy/crates/api_common/src/websocket/handlers/join_rooms.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type JoinPostRoom struct {
|
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
}
|
|
||||||
type JoinCommunityRoom struct {
|
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
}
|
|
||||||
type JoinModRoom struct {
|
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
}
|
|
||||||
type JoinUserRoom struct {
|
|
||||||
UserID int `json:"user_id" url:"user_id,omitempty"`
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
}
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/language.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type Language struct {
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
Code string `json:"code" url:"code,omitempty"`
|
|
||||||
Name string `json:"name" url:"name,omitempty"`
|
|
||||||
}
|
|
||||||
+1
-49
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/lib.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type SortType string
|
type SortType string
|
||||||
@@ -9,7 +6,6 @@ const (
|
|||||||
SortTypeActive SortType = "Active"
|
SortTypeActive SortType = "Active"
|
||||||
SortTypeHot SortType = "Hot"
|
SortTypeHot SortType = "Hot"
|
||||||
SortTypeNew SortType = "New"
|
SortTypeNew SortType = "New"
|
||||||
SortTypeOld SortType = "Old"
|
|
||||||
SortTypeTopDay SortType = "TopDay"
|
SortTypeTopDay SortType = "TopDay"
|
||||||
SortTypeTopWeek SortType = "TopWeek"
|
SortTypeTopWeek SortType = "TopWeek"
|
||||||
SortTypeTopMonth SortType = "TopMonth"
|
SortTypeTopMonth SortType = "TopMonth"
|
||||||
@@ -19,21 +15,13 @@ const (
|
|||||||
SortTypeNewComments SortType = "NewComments"
|
SortTypeNewComments SortType = "NewComments"
|
||||||
)
|
)
|
||||||
|
|
||||||
type CommentSortType string
|
|
||||||
|
|
||||||
const (
|
|
||||||
CommentSortTypeHot CommentSortType = "Hot"
|
|
||||||
CommentSortTypeTop CommentSortType = "Top"
|
|
||||||
CommentSortTypeNew CommentSortType = "New"
|
|
||||||
CommentSortTypeOld CommentSortType = "Old"
|
|
||||||
)
|
|
||||||
|
|
||||||
type ListingType string
|
type ListingType string
|
||||||
|
|
||||||
const (
|
const (
|
||||||
ListingTypeAll ListingType = "All"
|
ListingTypeAll ListingType = "All"
|
||||||
ListingTypeLocal ListingType = "Local"
|
ListingTypeLocal ListingType = "Local"
|
||||||
ListingTypeSubscribed ListingType = "Subscribed"
|
ListingTypeSubscribed ListingType = "Subscribed"
|
||||||
|
ListingTypeCommunity ListingType = "Community"
|
||||||
)
|
)
|
||||||
|
|
||||||
type SearchType string
|
type SearchType string
|
||||||
@@ -46,39 +34,3 @@ const (
|
|||||||
SearchTypeUsers SearchType = "Users"
|
SearchTypeUsers SearchType = "Users"
|
||||||
SearchTypeUrl SearchType = "Url"
|
SearchTypeUrl SearchType = "Url"
|
||||||
)
|
)
|
||||||
|
|
||||||
type SubscribedType string
|
|
||||||
|
|
||||||
const (
|
|
||||||
SubscribedTypeSubscribed SubscribedType = "Subscribed"
|
|
||||||
SubscribedTypeNotSubscribed SubscribedType = "NotSubscribed"
|
|
||||||
SubscribedTypePending SubscribedType = "Pending"
|
|
||||||
)
|
|
||||||
|
|
||||||
type ModlogActionType string
|
|
||||||
|
|
||||||
const (
|
|
||||||
ModlogActionTypeAll ModlogActionType = "All"
|
|
||||||
ModlogActionTypeModRemovePost ModlogActionType = "ModRemovePost"
|
|
||||||
ModlogActionTypeModLockPost ModlogActionType = "ModLockPost"
|
|
||||||
ModlogActionTypeModFeaturePost ModlogActionType = "ModFeaturePost"
|
|
||||||
ModlogActionTypeModRemoveComment ModlogActionType = "ModRemoveComment"
|
|
||||||
ModlogActionTypeModRemoveCommunity ModlogActionType = "ModRemoveCommunity"
|
|
||||||
ModlogActionTypeModBanFromCommunity ModlogActionType = "ModBanFromCommunity"
|
|
||||||
ModlogActionTypeModAddCommunity ModlogActionType = "ModAddCommunity"
|
|
||||||
ModlogActionTypeModTransferCommunity ModlogActionType = "ModTransferCommunity"
|
|
||||||
ModlogActionTypeModAdd ModlogActionType = "ModAdd"
|
|
||||||
ModlogActionTypeModBan ModlogActionType = "ModBan"
|
|
||||||
ModlogActionTypeModHideCommunity ModlogActionType = "ModHideCommunity"
|
|
||||||
ModlogActionTypeAdminPurgePerson ModlogActionType = "AdminPurgePerson"
|
|
||||||
ModlogActionTypeAdminPurgeCommunity ModlogActionType = "AdminPurgeCommunity"
|
|
||||||
ModlogActionTypeAdminPurgePost ModlogActionType = "AdminPurgePost"
|
|
||||||
ModlogActionTypeAdminPurgeComment ModlogActionType = "AdminPurgeComment"
|
|
||||||
)
|
|
||||||
|
|
||||||
type PostFeatureType string
|
|
||||||
|
|
||||||
const (
|
|
||||||
PostFeatureTypeLocal PostFeatureType = "Local"
|
|
||||||
PostFeatureTypeCommunity PostFeatureType = "Community"
|
|
||||||
)
|
|
||||||
|
|||||||
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/api_common/src/websocket/mod.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type UserOperation string
|
type UserOperation string
|
||||||
@@ -8,6 +5,7 @@ type UserOperation string
|
|||||||
const (
|
const (
|
||||||
UserOperationLogin UserOperation = "Login"
|
UserOperationLogin UserOperation = "Login"
|
||||||
UserOperationGetCaptcha UserOperation = "GetCaptcha"
|
UserOperationGetCaptcha UserOperation = "GetCaptcha"
|
||||||
|
UserOperationMarkCommentAsRead UserOperation = "MarkCommentAsRead"
|
||||||
UserOperationSaveComment UserOperation = "SaveComment"
|
UserOperationSaveComment UserOperation = "SaveComment"
|
||||||
UserOperationCreateCommentLike UserOperation = "CreateCommentLike"
|
UserOperationCreateCommentLike UserOperation = "CreateCommentLike"
|
||||||
UserOperationCreateCommentReport UserOperation = "CreateCommentReport"
|
UserOperationCreateCommentReport UserOperation = "CreateCommentReport"
|
||||||
@@ -15,7 +13,7 @@ const (
|
|||||||
UserOperationListCommentReports UserOperation = "ListCommentReports"
|
UserOperationListCommentReports UserOperation = "ListCommentReports"
|
||||||
UserOperationCreatePostLike UserOperation = "CreatePostLike"
|
UserOperationCreatePostLike UserOperation = "CreatePostLike"
|
||||||
UserOperationLockPost UserOperation = "LockPost"
|
UserOperationLockPost UserOperation = "LockPost"
|
||||||
UserOperationFeaturePost UserOperation = "FeaturePost"
|
UserOperationStickyPost UserOperation = "StickyPost"
|
||||||
UserOperationMarkPostAsRead UserOperation = "MarkPostAsRead"
|
UserOperationMarkPostAsRead UserOperation = "MarkPostAsRead"
|
||||||
UserOperationSavePost UserOperation = "SavePost"
|
UserOperationSavePost UserOperation = "SavePost"
|
||||||
UserOperationCreatePostReport UserOperation = "CreatePostReport"
|
UserOperationCreatePostReport UserOperation = "CreatePostReport"
|
||||||
@@ -28,7 +26,6 @@ const (
|
|||||||
UserOperationGetReplies UserOperation = "GetReplies"
|
UserOperationGetReplies UserOperation = "GetReplies"
|
||||||
UserOperationGetPersonMentions UserOperation = "GetPersonMentions"
|
UserOperationGetPersonMentions UserOperation = "GetPersonMentions"
|
||||||
UserOperationMarkPersonMentionAsRead UserOperation = "MarkPersonMentionAsRead"
|
UserOperationMarkPersonMentionAsRead UserOperation = "MarkPersonMentionAsRead"
|
||||||
UserOperationMarkCommentReplyAsRead UserOperation = "MarkCommentReplyAsRead"
|
|
||||||
UserOperationGetModlog UserOperation = "GetModlog"
|
UserOperationGetModlog UserOperation = "GetModlog"
|
||||||
UserOperationBanFromCommunity UserOperation = "BanFromCommunity"
|
UserOperationBanFromCommunity UserOperation = "BanFromCommunity"
|
||||||
UserOperationAddModToCommunity UserOperation = "AddModToCommunity"
|
UserOperationAddModToCommunity UserOperation = "AddModToCommunity"
|
||||||
@@ -38,6 +35,8 @@ const (
|
|||||||
UserOperationApproveRegistrationApplication UserOperation = "ApproveRegistrationApplication"
|
UserOperationApproveRegistrationApplication UserOperation = "ApproveRegistrationApplication"
|
||||||
UserOperationBanPerson UserOperation = "BanPerson"
|
UserOperationBanPerson UserOperation = "BanPerson"
|
||||||
UserOperationGetBannedPersons UserOperation = "GetBannedPersons"
|
UserOperationGetBannedPersons UserOperation = "GetBannedPersons"
|
||||||
|
UserOperationSearch UserOperation = "Search"
|
||||||
|
UserOperationResolveObject UserOperation = "ResolveObject"
|
||||||
UserOperationMarkAllAsRead UserOperation = "MarkAllAsRead"
|
UserOperationMarkAllAsRead UserOperation = "MarkAllAsRead"
|
||||||
UserOperationSaveUserSettings UserOperation = "SaveUserSettings"
|
UserOperationSaveUserSettings UserOperation = "SaveUserSettings"
|
||||||
UserOperationTransferCommunity UserOperation = "TransferCommunity"
|
UserOperationTransferCommunity UserOperation = "TransferCommunity"
|
||||||
@@ -45,10 +44,9 @@ const (
|
|||||||
UserOperationPasswordReset UserOperation = "PasswordReset"
|
UserOperationPasswordReset UserOperation = "PasswordReset"
|
||||||
UserOperationPasswordChange UserOperation = "PasswordChange"
|
UserOperationPasswordChange UserOperation = "PasswordChange"
|
||||||
UserOperationMarkPrivateMessageAsRead UserOperation = "MarkPrivateMessageAsRead"
|
UserOperationMarkPrivateMessageAsRead UserOperation = "MarkPrivateMessageAsRead"
|
||||||
UserOperationCreatePrivateMessageReport UserOperation = "CreatePrivateMessageReport"
|
|
||||||
UserOperationResolvePrivateMessageReport UserOperation = "ResolvePrivateMessageReport"
|
|
||||||
UserOperationListPrivateMessageReports UserOperation = "ListPrivateMessageReports"
|
|
||||||
UserOperationUserJoin UserOperation = "UserJoin"
|
UserOperationUserJoin UserOperation = "UserJoin"
|
||||||
|
UserOperationGetSiteConfig UserOperation = "GetSiteConfig"
|
||||||
|
UserOperationSaveSiteConfig UserOperation = "SaveSiteConfig"
|
||||||
UserOperationPostJoin UserOperation = "PostJoin"
|
UserOperationPostJoin UserOperation = "PostJoin"
|
||||||
UserOperationCommunityJoin UserOperation = "CommunityJoin"
|
UserOperationCommunityJoin UserOperation = "CommunityJoin"
|
||||||
UserOperationModJoin UserOperation = "ModJoin"
|
UserOperationModJoin UserOperation = "ModJoin"
|
||||||
@@ -56,48 +54,37 @@ const (
|
|||||||
UserOperationGetSiteMetadata UserOperation = "GetSiteMetadata"
|
UserOperationGetSiteMetadata UserOperation = "GetSiteMetadata"
|
||||||
UserOperationBlockCommunity UserOperation = "BlockCommunity"
|
UserOperationBlockCommunity UserOperation = "BlockCommunity"
|
||||||
UserOperationBlockPerson UserOperation = "BlockPerson"
|
UserOperationBlockPerson UserOperation = "BlockPerson"
|
||||||
UserOperationPurgePerson UserOperation = "PurgePerson"
|
|
||||||
UserOperationPurgeCommunity UserOperation = "PurgeCommunity"
|
|
||||||
UserOperationPurgePost UserOperation = "PurgePost"
|
|
||||||
UserOperationPurgeComment UserOperation = "PurgeComment"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
type UserOperationCRUD string
|
type UserOperationCrud string
|
||||||
|
|
||||||
const (
|
const (
|
||||||
UserOperationCRUDCreateSite UserOperationCRUD = "CreateSite"
|
UserOperationCrudCreateSite UserOperationCrud = "CreateSite"
|
||||||
UserOperationCRUDGetSite UserOperationCRUD = "GetSite"
|
UserOperationCrudGetSite UserOperationCrud = "GetSite"
|
||||||
UserOperationCRUDEditSite UserOperationCRUD = "EditSite"
|
UserOperationCrudEditSite UserOperationCrud = "EditSite"
|
||||||
UserOperationCRUDCreateCommunity UserOperationCRUD = "CreateCommunity"
|
UserOperationCrudCreateCommunity UserOperationCrud = "CreateCommunity"
|
||||||
UserOperationCRUDListCommunities UserOperationCRUD = "ListCommunities"
|
UserOperationCrudListCommunities UserOperationCrud = "ListCommunities"
|
||||||
UserOperationCRUDEditCommunity UserOperationCRUD = "EditCommunity"
|
UserOperationCrudGetCommunity UserOperationCrud = "GetCommunity"
|
||||||
UserOperationCRUDDeleteCommunity UserOperationCRUD = "DeleteCommunity"
|
UserOperationCrudEditCommunity UserOperationCrud = "EditCommunity"
|
||||||
UserOperationCRUDRemoveCommunity UserOperationCRUD = "RemoveCommunity"
|
UserOperationCrudDeleteCommunity UserOperationCrud = "DeleteCommunity"
|
||||||
UserOperationCRUDCreatePost UserOperationCRUD = "CreatePost"
|
UserOperationCrudRemoveCommunity UserOperationCrud = "RemoveCommunity"
|
||||||
UserOperationCRUDGetPost UserOperationCRUD = "GetPost"
|
UserOperationCrudCreatePost UserOperationCrud = "CreatePost"
|
||||||
UserOperationCRUDEditPost UserOperationCRUD = "EditPost"
|
UserOperationCrudGetPost UserOperationCrud = "GetPost"
|
||||||
UserOperationCRUDDeletePost UserOperationCRUD = "DeletePost"
|
UserOperationCrudGetPosts UserOperationCrud = "GetPosts"
|
||||||
UserOperationCRUDRemovePost UserOperationCRUD = "RemovePost"
|
UserOperationCrudEditPost UserOperationCrud = "EditPost"
|
||||||
UserOperationCRUDCreateComment UserOperationCRUD = "CreateComment"
|
UserOperationCrudDeletePost UserOperationCrud = "DeletePost"
|
||||||
UserOperationCRUDGetComment UserOperationCRUD = "GetComment"
|
UserOperationCrudRemovePost UserOperationCrud = "RemovePost"
|
||||||
UserOperationCRUDEditComment UserOperationCRUD = "EditComment"
|
UserOperationCrudCreateComment UserOperationCrud = "CreateComment"
|
||||||
UserOperationCRUDDeleteComment UserOperationCRUD = "DeleteComment"
|
UserOperationCrudGetComment UserOperationCrud = "GetComment"
|
||||||
UserOperationCRUDRemoveComment UserOperationCRUD = "RemoveComment"
|
UserOperationCrudGetComments UserOperationCrud = "GetComments"
|
||||||
UserOperationCRUDRegister UserOperationCRUD = "Register"
|
UserOperationCrudEditComment UserOperationCrud = "EditComment"
|
||||||
UserOperationCRUDDeleteAccount UserOperationCRUD = "DeleteAccount"
|
UserOperationCrudDeleteComment UserOperationCrud = "DeleteComment"
|
||||||
UserOperationCRUDCreatePrivateMessage UserOperationCRUD = "CreatePrivateMessage"
|
UserOperationCrudRemoveComment UserOperationCrud = "RemoveComment"
|
||||||
UserOperationCRUDGetPrivateMessages UserOperationCRUD = "GetPrivateMessages"
|
UserOperationCrudRegister UserOperationCrud = "Register"
|
||||||
UserOperationCRUDEditPrivateMessage UserOperationCRUD = "EditPrivateMessage"
|
UserOperationCrudGetPersonDetails UserOperationCrud = "GetPersonDetails"
|
||||||
UserOperationCRUDDeletePrivateMessage UserOperationCRUD = "DeletePrivateMessage"
|
UserOperationCrudDeleteAccount UserOperationCrud = "DeleteAccount"
|
||||||
)
|
UserOperationCrudCreatePrivateMessage UserOperationCrud = "CreatePrivateMessage"
|
||||||
|
UserOperationCrudGetPrivateMessages UserOperationCrud = "GetPrivateMessages"
|
||||||
type UserOperationApub string
|
UserOperationCrudEditPrivateMessage UserOperationCrud = "EditPrivateMessage"
|
||||||
|
UserOperationCrudDeletePrivateMessage UserOperationCrud = "DeletePrivateMessage"
|
||||||
const (
|
|
||||||
UserOperationApubGetPosts UserOperationApub = "GetPosts"
|
|
||||||
UserOperationApubGetCommunity UserOperationApub = "GetCommunity"
|
|
||||||
UserOperationApubGetComments UserOperationApub = "GetComments"
|
|
||||||
UserOperationApubGetPersonDetails UserOperationApub = "GetPersonDetails"
|
|
||||||
UserOperationApubSearch UserOperationApub = "Search"
|
|
||||||
UserOperationApubResolveObject UserOperationApub = "ResolveObject"
|
|
||||||
)
|
)
|
||||||
@@ -1,4 +1 @@
|
|||||||
// Source: lemmy/crates/api_common/src/lib.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|||||||
@@ -1,87 +0,0 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/local_site.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type LocalSite struct {
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
SiteID int `json:"site_id" url:"site_id,omitempty"`
|
|
||||||
SiteSetup bool `json:"site_setup" url:"site_setup,omitempty"`
|
|
||||||
EnableDownvotes bool `json:"enable_downvotes" url:"enable_downvotes,omitempty"`
|
|
||||||
EnableNSFW bool `json:"enable_nsfw" url:"enable_nsfw,omitempty"`
|
|
||||||
CommunityCreationAdminOnly bool `json:"community_creation_admin_only" url:"community_creation_admin_only,omitempty"`
|
|
||||||
RequireEmailVerification bool `json:"require_email_verification" url:"require_email_verification,omitempty"`
|
|
||||||
ApplicationQuestion Optional[string] `json:"application_question" url:"application_question,omitempty"`
|
|
||||||
PrivateInstance bool `json:"private_instance" url:"private_instance,omitempty"`
|
|
||||||
DefaultTheme string `json:"default_theme" url:"default_theme,omitempty"`
|
|
||||||
DefaultPostListingType string `json:"default_post_listing_type" url:"default_post_listing_type,omitempty"`
|
|
||||||
LegalInformation Optional[string] `json:"legal_information" url:"legal_information,omitempty"`
|
|
||||||
HideModlogModNames bool `json:"hide_modlog_mod_names" url:"hide_modlog_mod_names,omitempty"`
|
|
||||||
ApplicationEmailAdmins bool `json:"application_email_admins" url:"application_email_admins,omitempty"`
|
|
||||||
SlurFilterRegex Optional[string] `json:"slur_filter_regex" url:"slur_filter_regex,omitempty"`
|
|
||||||
ActorNameMaxLength int32 `json:"actor_name_max_length" url:"actor_name_max_length,omitempty"`
|
|
||||||
FederationEnabled bool `json:"federation_enabled" url:"federation_enabled,omitempty"`
|
|
||||||
FederationDebug bool `json:"federation_debug" url:"federation_debug,omitempty"`
|
|
||||||
FederationWorkerCount int32 `json:"federation_worker_count" url:"federation_worker_count,omitempty"`
|
|
||||||
CaptchaEnabled bool `json:"captcha_enabled" url:"captcha_enabled,omitempty"`
|
|
||||||
CaptchaDifficulty string `json:"captcha_difficulty" url:"captcha_difficulty,omitempty"`
|
|
||||||
RegistrationMode RegistrationMode `json:"registration_mode" url:"registration_mode,omitempty"`
|
|
||||||
ReportsEmailAdmins bool `json:"reports_email_admins" url:"reports_email_admins,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
}
|
|
||||||
type LocalSiteInsertForm struct {
|
|
||||||
SiteID int `json:"site_id" url:"site_id,omitempty"`
|
|
||||||
SiteSetup Optional[bool] `json:"site_setup" url:"site_setup,omitempty"`
|
|
||||||
EnableDownvotes Optional[bool] `json:"enable_downvotes" url:"enable_downvotes,omitempty"`
|
|
||||||
EnableNSFW Optional[bool] `json:"enable_nsfw" url:"enable_nsfw,omitempty"`
|
|
||||||
CommunityCreationAdminOnly Optional[bool] `json:"community_creation_admin_only" url:"community_creation_admin_only,omitempty"`
|
|
||||||
RequireEmailVerification Optional[bool] `json:"require_email_verification" url:"require_email_verification,omitempty"`
|
|
||||||
ApplicationQuestion Optional[string] `json:"application_question" url:"application_question,omitempty"`
|
|
||||||
PrivateInstance Optional[bool] `json:"private_instance" url:"private_instance,omitempty"`
|
|
||||||
DefaultTheme Optional[string] `json:"default_theme" url:"default_theme,omitempty"`
|
|
||||||
DefaultPostListingType Optional[string] `json:"default_post_listing_type" url:"default_post_listing_type,omitempty"`
|
|
||||||
LegalInformation Optional[string] `json:"legal_information" url:"legal_information,omitempty"`
|
|
||||||
HideModlogModNames Optional[bool] `json:"hide_modlog_mod_names" url:"hide_modlog_mod_names,omitempty"`
|
|
||||||
ApplicationEmailAdmins Optional[bool] `json:"application_email_admins" url:"application_email_admins,omitempty"`
|
|
||||||
SlurFilterRegex Optional[string] `json:"slur_filter_regex" url:"slur_filter_regex,omitempty"`
|
|
||||||
ActorNameMaxLength Optional[int32] `json:"actor_name_max_length" url:"actor_name_max_length,omitempty"`
|
|
||||||
FederationEnabled Optional[bool] `json:"federation_enabled" url:"federation_enabled,omitempty"`
|
|
||||||
FederationDebug Optional[bool] `json:"federation_debug" url:"federation_debug,omitempty"`
|
|
||||||
FederationWorkerCount Optional[int32] `json:"federation_worker_count" url:"federation_worker_count,omitempty"`
|
|
||||||
CaptchaEnabled Optional[bool] `json:"captcha_enabled" url:"captcha_enabled,omitempty"`
|
|
||||||
CaptchaDifficulty Optional[string] `json:"captcha_difficulty" url:"captcha_difficulty,omitempty"`
|
|
||||||
RegistrationMode Optional[RegistrationMode] `json:"registration_mode" url:"registration_mode,omitempty"`
|
|
||||||
ReportsEmailAdmins Optional[bool] `json:"reports_email_admins" url:"reports_email_admins,omitempty"`
|
|
||||||
}
|
|
||||||
type LocalSiteUpdateForm struct {
|
|
||||||
SiteSetup Optional[bool] `json:"site_setup" url:"site_setup,omitempty"`
|
|
||||||
EnableDownvotes Optional[bool] `json:"enable_downvotes" url:"enable_downvotes,omitempty"`
|
|
||||||
EnableNSFW Optional[bool] `json:"enable_nsfw" url:"enable_nsfw,omitempty"`
|
|
||||||
CommunityCreationAdminOnly Optional[bool] `json:"community_creation_admin_only" url:"community_creation_admin_only,omitempty"`
|
|
||||||
RequireEmailVerification Optional[bool] `json:"require_email_verification" url:"require_email_verification,omitempty"`
|
|
||||||
ApplicationQuestion Optional[Optional[string]] `json:"application_question" url:"application_question,omitempty"`
|
|
||||||
PrivateInstance Optional[bool] `json:"private_instance" url:"private_instance,omitempty"`
|
|
||||||
DefaultTheme Optional[string] `json:"default_theme" url:"default_theme,omitempty"`
|
|
||||||
DefaultPostListingType Optional[string] `json:"default_post_listing_type" url:"default_post_listing_type,omitempty"`
|
|
||||||
LegalInformation Optional[Optional[string]] `json:"legal_information" url:"legal_information,omitempty"`
|
|
||||||
HideModlogModNames Optional[bool] `json:"hide_modlog_mod_names" url:"hide_modlog_mod_names,omitempty"`
|
|
||||||
ApplicationEmailAdmins Optional[bool] `json:"application_email_admins" url:"application_email_admins,omitempty"`
|
|
||||||
SlurFilterRegex Optional[Optional[string]] `json:"slur_filter_regex" url:"slur_filter_regex,omitempty"`
|
|
||||||
ActorNameMaxLength Optional[int32] `json:"actor_name_max_length" url:"actor_name_max_length,omitempty"`
|
|
||||||
FederationEnabled Optional[bool] `json:"federation_enabled" url:"federation_enabled,omitempty"`
|
|
||||||
FederationDebug Optional[bool] `json:"federation_debug" url:"federation_debug,omitempty"`
|
|
||||||
FederationWorkerCount Optional[int32] `json:"federation_worker_count" url:"federation_worker_count,omitempty"`
|
|
||||||
CaptchaEnabled Optional[bool] `json:"captcha_enabled" url:"captcha_enabled,omitempty"`
|
|
||||||
CaptchaDifficulty Optional[string] `json:"captcha_difficulty" url:"captcha_difficulty,omitempty"`
|
|
||||||
RegistrationMode Optional[RegistrationMode] `json:"registration_mode" url:"registration_mode,omitempty"`
|
|
||||||
ReportsEmailAdmins Optional[bool] `json:"reports_email_admins" url:"reports_email_admins,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
}
|
|
||||||
type RegistrationMode string
|
|
||||||
|
|
||||||
const (
|
|
||||||
RegistrationModeClosed RegistrationMode = "Closed"
|
|
||||||
RegistrationModeRequireApplication RegistrationMode = "RequireApplication"
|
|
||||||
RegistrationModeOpen RegistrationMode = "Open"
|
|
||||||
)
|
|
||||||
@@ -1,53 +0,0 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/local_site_rate_limit.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type LocalSiteRateLimit struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
LocalSiteID int `json:"local_site_id" url:"local_site_id,omitempty"`
|
|
||||||
Message int32 `json:"message" url:"message,omitempty"`
|
|
||||||
MessagePerSecond int32 `json:"message_per_second" url:"message_per_second,omitempty"`
|
|
||||||
Post int32 `json:"post" url:"post,omitempty"`
|
|
||||||
PostPerSecond int32 `json:"post_per_second" url:"post_per_second,omitempty"`
|
|
||||||
Register int32 `json:"register" url:"register,omitempty"`
|
|
||||||
RegisterPerSecond int32 `json:"register_per_second" url:"register_per_second,omitempty"`
|
|
||||||
Image int32 `json:"image" url:"image,omitempty"`
|
|
||||||
ImagePerSecond int32 `json:"image_per_second" url:"image_per_second,omitempty"`
|
|
||||||
Comment int32 `json:"comment" url:"comment,omitempty"`
|
|
||||||
CommentPerSecond int32 `json:"comment_per_second" url:"comment_per_second,omitempty"`
|
|
||||||
Search int32 `json:"search" url:"search,omitempty"`
|
|
||||||
SearchPerSecond int32 `json:"search_per_second" url:"search_per_second,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
}
|
|
||||||
type LocalSiteRateLimitInsertForm struct {
|
|
||||||
LocalSiteID int `json:"local_site_id" url:"local_site_id,omitempty"`
|
|
||||||
Message Optional[int32] `json:"message" url:"message,omitempty"`
|
|
||||||
MessagePerSecond Optional[int32] `json:"message_per_second" url:"message_per_second,omitempty"`
|
|
||||||
Post Optional[int32] `json:"post" url:"post,omitempty"`
|
|
||||||
PostPerSecond Optional[int32] `json:"post_per_second" url:"post_per_second,omitempty"`
|
|
||||||
Register Optional[int32] `json:"register" url:"register,omitempty"`
|
|
||||||
RegisterPerSecond Optional[int32] `json:"register_per_second" url:"register_per_second,omitempty"`
|
|
||||||
Image Optional[int32] `json:"image" url:"image,omitempty"`
|
|
||||||
ImagePerSecond Optional[int32] `json:"image_per_second" url:"image_per_second,omitempty"`
|
|
||||||
Comment Optional[int32] `json:"comment" url:"comment,omitempty"`
|
|
||||||
CommentPerSecond Optional[int32] `json:"comment_per_second" url:"comment_per_second,omitempty"`
|
|
||||||
Search Optional[int32] `json:"search" url:"search,omitempty"`
|
|
||||||
SearchPerSecond Optional[int32] `json:"search_per_second" url:"search_per_second,omitempty"`
|
|
||||||
}
|
|
||||||
type LocalSiteRateLimitUpdateForm struct {
|
|
||||||
Message Optional[int32] `json:"message" url:"message,omitempty"`
|
|
||||||
MessagePerSecond Optional[int32] `json:"message_per_second" url:"message_per_second,omitempty"`
|
|
||||||
Post Optional[int32] `json:"post" url:"post,omitempty"`
|
|
||||||
PostPerSecond Optional[int32] `json:"post_per_second" url:"post_per_second,omitempty"`
|
|
||||||
Register Optional[int32] `json:"register" url:"register,omitempty"`
|
|
||||||
RegisterPerSecond Optional[int32] `json:"register_per_second" url:"register_per_second,omitempty"`
|
|
||||||
Image Optional[int32] `json:"image" url:"image,omitempty"`
|
|
||||||
ImagePerSecond Optional[int32] `json:"image_per_second" url:"image_per_second,omitempty"`
|
|
||||||
Comment Optional[int32] `json:"comment" url:"comment,omitempty"`
|
|
||||||
CommentPerSecond Optional[int32] `json:"comment_per_second" url:"comment_per_second,omitempty"`
|
|
||||||
Search Optional[int32] `json:"search" url:"search,omitempty"`
|
|
||||||
SearchPerSecond Optional[int32] `json:"search_per_second" url:"search_per_second,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
}
|
|
||||||
+20
-40
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/local_user.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type LocalUser struct {
|
type LocalUser struct {
|
||||||
@@ -12,7 +9,7 @@ type LocalUser struct {
|
|||||||
Theme string `json:"theme" url:"theme,omitempty"`
|
Theme string `json:"theme" url:"theme,omitempty"`
|
||||||
DefaultSortType int16 `json:"default_sort_type" url:"default_sort_type,omitempty"`
|
DefaultSortType int16 `json:"default_sort_type" url:"default_sort_type,omitempty"`
|
||||||
DefaultListingType int16 `json:"default_listing_type" url:"default_listing_type,omitempty"`
|
DefaultListingType int16 `json:"default_listing_type" url:"default_listing_type,omitempty"`
|
||||||
InterfaceLanguage string `json:"interface_language" url:"interface_language,omitempty"`
|
Lang string `json:"lang" url:"lang,omitempty"`
|
||||||
ShowAvatars bool `json:"show_avatars" url:"show_avatars,omitempty"`
|
ShowAvatars bool `json:"show_avatars" url:"show_avatars,omitempty"`
|
||||||
SendNotificationsToEmail bool `json:"send_notifications_to_email" url:"send_notifications_to_email,omitempty"`
|
SendNotificationsToEmail bool `json:"send_notifications_to_email" url:"send_notifications_to_email,omitempty"`
|
||||||
ValidatorTime LemmyTime `json:"validator_time" url:"validator_time,omitempty"`
|
ValidatorTime LemmyTime `json:"validator_time" url:"validator_time,omitempty"`
|
||||||
@@ -23,6 +20,24 @@ type LocalUser struct {
|
|||||||
EmailVerified bool `json:"email_verified" url:"email_verified,omitempty"`
|
EmailVerified bool `json:"email_verified" url:"email_verified,omitempty"`
|
||||||
AcceptedApplication bool `json:"accepted_application" url:"accepted_application,omitempty"`
|
AcceptedApplication bool `json:"accepted_application" url:"accepted_application,omitempty"`
|
||||||
}
|
}
|
||||||
|
type LocalUserForm struct {
|
||||||
|
PersonID Optional[int] `json:"person_id" url:"person_id,omitempty"`
|
||||||
|
PasswordEncrypted Optional[string] `json:"password_encrypted" url:"password_encrypted,omitempty"`
|
||||||
|
Email Optional[Optional[string]] `json:"email" url:"email,omitempty"`
|
||||||
|
ShowNSFW Optional[bool] `json:"show_nsfw" url:"show_nsfw,omitempty"`
|
||||||
|
Theme Optional[string] `json:"theme" url:"theme,omitempty"`
|
||||||
|
DefaultSortType Optional[int16] `json:"default_sort_type" url:"default_sort_type,omitempty"`
|
||||||
|
DefaultListingType Optional[int16] `json:"default_listing_type" url:"default_listing_type,omitempty"`
|
||||||
|
Lang Optional[string] `json:"lang" url:"lang,omitempty"`
|
||||||
|
ShowAvatars Optional[bool] `json:"show_avatars" url:"show_avatars,omitempty"`
|
||||||
|
SendNotificationsToEmail Optional[bool] `json:"send_notifications_to_email" url:"send_notifications_to_email,omitempty"`
|
||||||
|
ShowBotAccounts Optional[bool] `json:"show_bot_accounts" url:"show_bot_accounts,omitempty"`
|
||||||
|
ShowScores Optional[bool] `json:"show_scores" url:"show_scores,omitempty"`
|
||||||
|
ShowReadPosts Optional[bool] `json:"show_read_posts" url:"show_read_posts,omitempty"`
|
||||||
|
ShowNewPostNotifs Optional[bool] `json:"show_new_post_notifs" url:"show_new_post_notifs,omitempty"`
|
||||||
|
EmailVerified Optional[bool] `json:"email_verified" url:"email_verified,omitempty"`
|
||||||
|
AcceptedApplication Optional[bool] `json:"accepted_application" url:"accepted_application,omitempty"`
|
||||||
|
}
|
||||||
type LocalUserSettings struct {
|
type LocalUserSettings struct {
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
ID int `json:"id" url:"id,omitempty"`
|
||||||
PersonID int `json:"person_id" url:"person_id,omitempty"`
|
PersonID int `json:"person_id" url:"person_id,omitempty"`
|
||||||
@@ -31,7 +46,7 @@ type LocalUserSettings struct {
|
|||||||
Theme string `json:"theme" url:"theme,omitempty"`
|
Theme string `json:"theme" url:"theme,omitempty"`
|
||||||
DefaultSortType int16 `json:"default_sort_type" url:"default_sort_type,omitempty"`
|
DefaultSortType int16 `json:"default_sort_type" url:"default_sort_type,omitempty"`
|
||||||
DefaultListingType int16 `json:"default_listing_type" url:"default_listing_type,omitempty"`
|
DefaultListingType int16 `json:"default_listing_type" url:"default_listing_type,omitempty"`
|
||||||
InterfaceLanguage string `json:"interface_language" url:"interface_language,omitempty"`
|
Lang string `json:"lang" url:"lang,omitempty"`
|
||||||
ShowAvatars bool `json:"show_avatars" url:"show_avatars,omitempty"`
|
ShowAvatars bool `json:"show_avatars" url:"show_avatars,omitempty"`
|
||||||
SendNotificationsToEmail bool `json:"send_notifications_to_email" url:"send_notifications_to_email,omitempty"`
|
SendNotificationsToEmail bool `json:"send_notifications_to_email" url:"send_notifications_to_email,omitempty"`
|
||||||
ValidatorTime LemmyTime `json:"validator_time" url:"validator_time,omitempty"`
|
ValidatorTime LemmyTime `json:"validator_time" url:"validator_time,omitempty"`
|
||||||
@@ -42,38 +57,3 @@ type LocalUserSettings struct {
|
|||||||
EmailVerified bool `json:"email_verified" url:"email_verified,omitempty"`
|
EmailVerified bool `json:"email_verified" url:"email_verified,omitempty"`
|
||||||
AcceptedApplication bool `json:"accepted_application" url:"accepted_application,omitempty"`
|
AcceptedApplication bool `json:"accepted_application" url:"accepted_application,omitempty"`
|
||||||
}
|
}
|
||||||
type LocalUserInsertForm struct {
|
|
||||||
PersonID int `json:"person_id" url:"person_id,omitempty"`
|
|
||||||
PasswordEncrypted string `json:"password_encrypted" url:"password_encrypted,omitempty"`
|
|
||||||
Email Optional[string] `json:"email" url:"email,omitempty"`
|
|
||||||
ShowNSFW Optional[bool] `json:"show_nsfw" url:"show_nsfw,omitempty"`
|
|
||||||
Theme Optional[string] `json:"theme" url:"theme,omitempty"`
|
|
||||||
DefaultSortType Optional[int16] `json:"default_sort_type" url:"default_sort_type,omitempty"`
|
|
||||||
DefaultListingType Optional[int16] `json:"default_listing_type" url:"default_listing_type,omitempty"`
|
|
||||||
InterfaceLanguage Optional[string] `json:"interface_language" url:"interface_language,omitempty"`
|
|
||||||
ShowAvatars Optional[bool] `json:"show_avatars" url:"show_avatars,omitempty"`
|
|
||||||
SendNotificationsToEmail Optional[bool] `json:"send_notifications_to_email" url:"send_notifications_to_email,omitempty"`
|
|
||||||
ShowBotAccounts Optional[bool] `json:"show_bot_accounts" url:"show_bot_accounts,omitempty"`
|
|
||||||
ShowScores Optional[bool] `json:"show_scores" url:"show_scores,omitempty"`
|
|
||||||
ShowReadPosts Optional[bool] `json:"show_read_posts" url:"show_read_posts,omitempty"`
|
|
||||||
ShowNewPostNotifs Optional[bool] `json:"show_new_post_notifs" url:"show_new_post_notifs,omitempty"`
|
|
||||||
EmailVerified Optional[bool] `json:"email_verified" url:"email_verified,omitempty"`
|
|
||||||
AcceptedApplication Optional[bool] `json:"accepted_application" url:"accepted_application,omitempty"`
|
|
||||||
}
|
|
||||||
type LocalUserUpdateForm struct {
|
|
||||||
PasswordEncrypted Optional[string] `json:"password_encrypted" url:"password_encrypted,omitempty"`
|
|
||||||
Email Optional[Optional[string]] `json:"email" url:"email,omitempty"`
|
|
||||||
ShowNSFW Optional[bool] `json:"show_nsfw" url:"show_nsfw,omitempty"`
|
|
||||||
Theme Optional[string] `json:"theme" url:"theme,omitempty"`
|
|
||||||
DefaultSortType Optional[int16] `json:"default_sort_type" url:"default_sort_type,omitempty"`
|
|
||||||
DefaultListingType Optional[int16] `json:"default_listing_type" url:"default_listing_type,omitempty"`
|
|
||||||
InterfaceLanguage Optional[string] `json:"interface_language" url:"interface_language,omitempty"`
|
|
||||||
ShowAvatars Optional[bool] `json:"show_avatars" url:"show_avatars,omitempty"`
|
|
||||||
SendNotificationsToEmail Optional[bool] `json:"send_notifications_to_email" url:"send_notifications_to_email,omitempty"`
|
|
||||||
ShowBotAccounts Optional[bool] `json:"show_bot_accounts" url:"show_bot_accounts,omitempty"`
|
|
||||||
ShowScores Optional[bool] `json:"show_scores" url:"show_scores,omitempty"`
|
|
||||||
ShowReadPosts Optional[bool] `json:"show_read_posts" url:"show_read_posts,omitempty"`
|
|
||||||
ShowNewPostNotifs Optional[bool] `json:"show_new_post_notifs" url:"show_new_post_notifs,omitempty"`
|
|
||||||
EmailVerified Optional[bool] `json:"email_verified" url:"email_verified,omitempty"`
|
|
||||||
AcceptedApplication Optional[bool] `json:"accepted_application" url:"accepted_application,omitempty"`
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,29 +0,0 @@
|
|||||||
// Source: lemmy/crates/api_common/src/websocket/handlers/messages.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type SendPostRoomMessage struct {
|
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
|
||||||
Message string `json:"message" url:"message,omitempty"`
|
|
||||||
WebsocketID Optional[int] `json:"websocket_id" url:"websocket_id,omitempty"`
|
|
||||||
}
|
|
||||||
type SendCommunityRoomMessage struct {
|
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
|
||||||
Message string `json:"message" url:"message,omitempty"`
|
|
||||||
WebsocketID Optional[int] `json:"websocket_id" url:"websocket_id,omitempty"`
|
|
||||||
}
|
|
||||||
type SendModRoomMessage struct {
|
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
|
||||||
Message string `json:"message" url:"message,omitempty"`
|
|
||||||
WebsocketID Optional[int] `json:"websocket_id" url:"websocket_id,omitempty"`
|
|
||||||
}
|
|
||||||
type SendUserRoomMessage struct {
|
|
||||||
RecipientID int `json:"recipient_id" url:"recipient_id,omitempty"`
|
|
||||||
Message string `json:"message" url:"message,omitempty"`
|
|
||||||
WebsocketID Optional[int] `json:"websocket_id" url:"websocket_id,omitempty"`
|
|
||||||
}
|
|
||||||
type SendAllMessage struct {
|
|
||||||
Message string `json:"message" url:"message,omitempty"`
|
|
||||||
WebsocketID Optional[int] `json:"websocket_id" url:"websocket_id,omitempty"`
|
|
||||||
}
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/mod.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
@@ -1,4 +1 @@
|
|||||||
// Source: lemmy/crates/api_common/src/websocket/handlers/mod.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|||||||
+4
-53
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/moderator.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type ModRemovePost struct {
|
type ModRemovePost struct {
|
||||||
@@ -29,19 +26,17 @@ type ModLockPostForm struct {
|
|||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
PostID int `json:"post_id" url:"post_id,omitempty"`
|
||||||
Locked Optional[bool] `json:"locked" url:"locked,omitempty"`
|
Locked Optional[bool] `json:"locked" url:"locked,omitempty"`
|
||||||
}
|
}
|
||||||
type ModFeaturePost struct {
|
type ModStickyPost struct {
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
ID int32 `json:"id" url:"id,omitempty"`
|
||||||
ModPersonID int `json:"mod_person_id" url:"mod_person_id,omitempty"`
|
ModPersonID int `json:"mod_person_id" url:"mod_person_id,omitempty"`
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
PostID int `json:"post_id" url:"post_id,omitempty"`
|
||||||
Featured bool `json:"featured" url:"featured,omitempty"`
|
Stickied Optional[bool] `json:"stickied" url:"stickied,omitempty"`
|
||||||
When LemmyTime `json:"when_" url:"when_,omitempty"`
|
When LemmyTime `json:"when_" url:"when_,omitempty"`
|
||||||
IsFeaturedCommunity bool `json:"is_featured_community" url:"is_featured_community,omitempty"`
|
|
||||||
}
|
}
|
||||||
type ModFeaturePostForm struct {
|
type ModStickyPostForm struct {
|
||||||
ModPersonID int `json:"mod_person_id" url:"mod_person_id,omitempty"`
|
ModPersonID int `json:"mod_person_id" url:"mod_person_id,omitempty"`
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
PostID int `json:"post_id" url:"post_id,omitempty"`
|
||||||
Featured bool `json:"featured" url:"featured,omitempty"`
|
Stickied Optional[bool] `json:"stickied" url:"stickied,omitempty"`
|
||||||
IsFeaturedCommunity bool `json:"is_featured_community" url:"is_featured_community,omitempty"`
|
|
||||||
}
|
}
|
||||||
type ModRemoveComment struct {
|
type ModRemoveComment struct {
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
ID int32 `json:"id" url:"id,omitempty"`
|
||||||
@@ -161,47 +156,3 @@ type ModAddForm struct {
|
|||||||
OtherPersonID int `json:"other_person_id" url:"other_person_id,omitempty"`
|
OtherPersonID int `json:"other_person_id" url:"other_person_id,omitempty"`
|
||||||
Removed Optional[bool] `json:"removed" url:"removed,omitempty"`
|
Removed Optional[bool] `json:"removed" url:"removed,omitempty"`
|
||||||
}
|
}
|
||||||
type AdminPurgePerson struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
AdminPersonID int `json:"admin_person_id" url:"admin_person_id,omitempty"`
|
|
||||||
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
|
||||||
When LemmyTime `json:"when_" url:"when_,omitempty"`
|
|
||||||
}
|
|
||||||
type AdminPurgePersonForm struct {
|
|
||||||
AdminPersonID int `json:"admin_person_id" url:"admin_person_id,omitempty"`
|
|
||||||
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
|
||||||
}
|
|
||||||
type AdminPurgeCommunity struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
AdminPersonID int `json:"admin_person_id" url:"admin_person_id,omitempty"`
|
|
||||||
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
|
||||||
When LemmyTime `json:"when_" url:"when_,omitempty"`
|
|
||||||
}
|
|
||||||
type AdminPurgeCommunityForm struct {
|
|
||||||
AdminPersonID int `json:"admin_person_id" url:"admin_person_id,omitempty"`
|
|
||||||
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
|
||||||
}
|
|
||||||
type AdminPurgePost struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
AdminPersonID int `json:"admin_person_id" url:"admin_person_id,omitempty"`
|
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
|
||||||
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
|
||||||
When LemmyTime `json:"when_" url:"when_,omitempty"`
|
|
||||||
}
|
|
||||||
type AdminPurgePostForm struct {
|
|
||||||
AdminPersonID int `json:"admin_person_id" url:"admin_person_id,omitempty"`
|
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
|
||||||
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
|
||||||
}
|
|
||||||
type AdminPurgeComment struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
AdminPersonID int `json:"admin_person_id" url:"admin_person_id,omitempty"`
|
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
|
||||||
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
|
||||||
When LemmyTime `json:"when_" url:"when_,omitempty"`
|
|
||||||
}
|
|
||||||
type AdminPurgeCommentForm struct {
|
|
||||||
AdminPersonID int `json:"admin_person_id" url:"admin_person_id,omitempty"`
|
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
|
||||||
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
// Source: lemmy/crates/api_common/src/websocket/handlers/online_users.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type GetPostUsersOnline struct {
|
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
|
||||||
}
|
|
||||||
type GetCommunityUsersOnline struct {
|
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
|
||||||
}
|
|
||||||
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/password_reset_request.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type PasswordResetRequest struct {
|
type PasswordResetRequest struct {
|
||||||
|
|||||||
+88
-40
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/person.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type Person struct {
|
type Person struct {
|
||||||
@@ -25,7 +22,6 @@ type Person struct {
|
|||||||
Admin bool `json:"admin" url:"admin,omitempty"`
|
Admin bool `json:"admin" url:"admin,omitempty"`
|
||||||
BotAccount bool `json:"bot_account" url:"bot_account,omitempty"`
|
BotAccount bool `json:"bot_account" url:"bot_account,omitempty"`
|
||||||
BanExpires LemmyTime `json:"ban_expires" url:"ban_expires,omitempty"`
|
BanExpires LemmyTime `json:"ban_expires" url:"ban_expires,omitempty"`
|
||||||
InstanceID int `json:"instance_id" url:"instance_id,omitempty"`
|
|
||||||
}
|
}
|
||||||
type PersonSafe struct {
|
type PersonSafe struct {
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
ID int `json:"id" url:"id,omitempty"`
|
||||||
@@ -46,41 +42,105 @@ type PersonSafe struct {
|
|||||||
Admin bool `json:"admin" url:"admin,omitempty"`
|
Admin bool `json:"admin" url:"admin,omitempty"`
|
||||||
BotAccount bool `json:"bot_account" url:"bot_account,omitempty"`
|
BotAccount bool `json:"bot_account" url:"bot_account,omitempty"`
|
||||||
BanExpires LemmyTime `json:"ban_expires" url:"ban_expires,omitempty"`
|
BanExpires LemmyTime `json:"ban_expires" url:"ban_expires,omitempty"`
|
||||||
InstanceID int `json:"instance_id" url:"instance_id,omitempty"`
|
|
||||||
}
|
}
|
||||||
type PersonInsertForm struct {
|
type PersonAlias1 struct {
|
||||||
|
ID int `json:"id" url:"id,omitempty"`
|
||||||
Name string `json:"name" url:"name,omitempty"`
|
Name string `json:"name" url:"name,omitempty"`
|
||||||
PublicKey string `json:"public_key" url:"public_key,omitempty"`
|
|
||||||
InstanceID int `json:"instance_id" url:"instance_id,omitempty"`
|
|
||||||
DisplayName Optional[string] `json:"display_name" url:"display_name,omitempty"`
|
DisplayName Optional[string] `json:"display_name" url:"display_name,omitempty"`
|
||||||
Avatar Optional[string] `json:"avatar" url:"avatar,omitempty"`
|
Avatar Optional[string] `json:"avatar" url:"avatar,omitempty"`
|
||||||
|
Banned bool `json:"banned" url:"banned,omitempty"`
|
||||||
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
|
ActorID string `json:"actor_id" url:"actor_id,omitempty"`
|
||||||
|
Bio Optional[string] `json:"bio" url:"bio,omitempty"`
|
||||||
|
Local bool `json:"local" url:"local,omitempty"`
|
||||||
|
PrivateKey Optional[string] `json:"private_key" url:"private_key,omitempty"`
|
||||||
|
PublicKey string `json:"public_key" url:"public_key,omitempty"`
|
||||||
|
LastRefreshedAt LemmyTime `json:"last_refreshed_at" url:"last_refreshed_at,omitempty"`
|
||||||
|
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
||||||
|
Deleted bool `json:"deleted" url:"deleted,omitempty"`
|
||||||
|
InboxURL string `json:"inbox_url" url:"inbox_url,omitempty"`
|
||||||
|
SharedInboxURL Optional[string] `json:"shared_inbox_url" url:"shared_inbox_url,omitempty"`
|
||||||
|
MatrixUserID Optional[string] `json:"matrix_user_id" url:"matrix_user_id,omitempty"`
|
||||||
|
Admin bool `json:"admin" url:"admin,omitempty"`
|
||||||
|
BotAccount bool `json:"bot_account" url:"bot_account,omitempty"`
|
||||||
|
BanExpires LemmyTime `json:"ban_expires" url:"ban_expires,omitempty"`
|
||||||
|
}
|
||||||
|
type PersonSafeAlias1 struct {
|
||||||
|
ID int `json:"id" url:"id,omitempty"`
|
||||||
|
Name string `json:"name" url:"name,omitempty"`
|
||||||
|
DisplayName Optional[string] `json:"display_name" url:"display_name,omitempty"`
|
||||||
|
Avatar Optional[string] `json:"avatar" url:"avatar,omitempty"`
|
||||||
|
Banned bool `json:"banned" url:"banned,omitempty"`
|
||||||
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
|
ActorID string `json:"actor_id" url:"actor_id,omitempty"`
|
||||||
|
Bio Optional[string] `json:"bio" url:"bio,omitempty"`
|
||||||
|
Local bool `json:"local" url:"local,omitempty"`
|
||||||
|
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
||||||
|
Deleted bool `json:"deleted" url:"deleted,omitempty"`
|
||||||
|
InboxURL string `json:"inbox_url" url:"inbox_url,omitempty"`
|
||||||
|
SharedInboxURL Optional[string] `json:"shared_inbox_url" url:"shared_inbox_url,omitempty"`
|
||||||
|
MatrixUserID Optional[string] `json:"matrix_user_id" url:"matrix_user_id,omitempty"`
|
||||||
|
Admin bool `json:"admin" url:"admin,omitempty"`
|
||||||
|
BotAccount bool `json:"bot_account" url:"bot_account,omitempty"`
|
||||||
|
BanExpires LemmyTime `json:"ban_expires" url:"ban_expires,omitempty"`
|
||||||
|
}
|
||||||
|
type PersonAlias2 struct {
|
||||||
|
ID int `json:"id" url:"id,omitempty"`
|
||||||
|
Name string `json:"name" url:"name,omitempty"`
|
||||||
|
DisplayName Optional[string] `json:"display_name" url:"display_name,omitempty"`
|
||||||
|
Avatar Optional[string] `json:"avatar" url:"avatar,omitempty"`
|
||||||
|
Banned bool `json:"banned" url:"banned,omitempty"`
|
||||||
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
|
ActorID string `json:"actor_id" url:"actor_id,omitempty"`
|
||||||
|
Bio Optional[string] `json:"bio" url:"bio,omitempty"`
|
||||||
|
Local bool `json:"local" url:"local,omitempty"`
|
||||||
|
PrivateKey Optional[string] `json:"private_key" url:"private_key,omitempty"`
|
||||||
|
PublicKey string `json:"public_key" url:"public_key,omitempty"`
|
||||||
|
LastRefreshedAt LemmyTime `json:"last_refreshed_at" url:"last_refreshed_at,omitempty"`
|
||||||
|
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
||||||
|
Deleted bool `json:"deleted" url:"deleted,omitempty"`
|
||||||
|
InboxURL string `json:"inbox_url" url:"inbox_url,omitempty"`
|
||||||
|
SharedInboxURL Optional[string] `json:"shared_inbox_url" url:"shared_inbox_url,omitempty"`
|
||||||
|
MatrixUserID Optional[string] `json:"matrix_user_id" url:"matrix_user_id,omitempty"`
|
||||||
|
Admin bool `json:"admin" url:"admin,omitempty"`
|
||||||
|
BotAccount bool `json:"bot_account" url:"bot_account,omitempty"`
|
||||||
|
BanExpires LemmyTime `json:"ban_expires" url:"ban_expires,omitempty"`
|
||||||
|
}
|
||||||
|
type PersonSafeAlias2 struct {
|
||||||
|
ID int `json:"id" url:"id,omitempty"`
|
||||||
|
Name string `json:"name" url:"name,omitempty"`
|
||||||
|
DisplayName Optional[string] `json:"display_name" url:"display_name,omitempty"`
|
||||||
|
Avatar Optional[string] `json:"avatar" url:"avatar,omitempty"`
|
||||||
|
Banned bool `json:"banned" url:"banned,omitempty"`
|
||||||
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
|
ActorID string `json:"actor_id" url:"actor_id,omitempty"`
|
||||||
|
Bio Optional[string] `json:"bio" url:"bio,omitempty"`
|
||||||
|
Local bool `json:"local" url:"local,omitempty"`
|
||||||
|
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
||||||
|
Deleted bool `json:"deleted" url:"deleted,omitempty"`
|
||||||
|
InboxURL string `json:"inbox_url" url:"inbox_url,omitempty"`
|
||||||
|
SharedInboxURL Optional[string] `json:"shared_inbox_url" url:"shared_inbox_url,omitempty"`
|
||||||
|
MatrixUserID Optional[string] `json:"matrix_user_id" url:"matrix_user_id,omitempty"`
|
||||||
|
Admin bool `json:"admin" url:"admin,omitempty"`
|
||||||
|
BotAccount bool `json:"bot_account" url:"bot_account,omitempty"`
|
||||||
|
BanExpires LemmyTime `json:"ban_expires" url:"ban_expires,omitempty"`
|
||||||
|
}
|
||||||
|
type PersonForm struct {
|
||||||
|
Name string `json:"name" url:"name,omitempty"`
|
||||||
|
DisplayName Optional[Optional[string]] `json:"display_name" url:"display_name,omitempty"`
|
||||||
|
Avatar Optional[Optional[string]] `json:"avatar" url:"avatar,omitempty"`
|
||||||
Banned Optional[bool] `json:"banned" url:"banned,omitempty"`
|
Banned Optional[bool] `json:"banned" url:"banned,omitempty"`
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
ActorID Optional[string] `json:"actor_id" url:"actor_id,omitempty"`
|
ActorID Optional[string] `json:"actor_id" url:"actor_id,omitempty"`
|
||||||
Bio Optional[string] `json:"bio" url:"bio,omitempty"`
|
|
||||||
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
|
||||||
PrivateKey Optional[string] `json:"private_key" url:"private_key,omitempty"`
|
|
||||||
LastRefreshedAt LemmyTime `json:"last_refreshed_at" url:"last_refreshed_at,omitempty"`
|
|
||||||
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
|
||||||
Deleted Optional[bool] `json:"deleted" url:"deleted,omitempty"`
|
|
||||||
InboxURL Optional[string] `json:"inbox_url" url:"inbox_url,omitempty"`
|
|
||||||
SharedInboxURL Optional[string] `json:"shared_inbox_url" url:"shared_inbox_url,omitempty"`
|
|
||||||
MatrixUserID Optional[string] `json:"matrix_user_id" url:"matrix_user_id,omitempty"`
|
|
||||||
Admin Optional[bool] `json:"admin" url:"admin,omitempty"`
|
|
||||||
BotAccount Optional[bool] `json:"bot_account" url:"bot_account,omitempty"`
|
|
||||||
BanExpires LemmyTime `json:"ban_expires" url:"ban_expires,omitempty"`
|
|
||||||
}
|
|
||||||
type PersonUpdateForm struct {
|
|
||||||
DisplayName Optional[Optional[string]] `json:"display_name" url:"display_name,omitempty"`
|
|
||||||
Avatar Optional[Optional[string]] `json:"avatar" url:"avatar,omitempty"`
|
|
||||||
Banned Optional[bool] `json:"banned" url:"banned,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
ActorID Optional[string] `json:"actor_id" url:"actor_id,omitempty"`
|
|
||||||
Bio Optional[Optional[string]] `json:"bio" url:"bio,omitempty"`
|
Bio Optional[Optional[string]] `json:"bio" url:"bio,omitempty"`
|
||||||
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
||||||
PublicKey Optional[string] `json:"public_key" url:"public_key,omitempty"`
|
|
||||||
PrivateKey Optional[Optional[string]] `json:"private_key" url:"private_key,omitempty"`
|
PrivateKey Optional[Optional[string]] `json:"private_key" url:"private_key,omitempty"`
|
||||||
|
PublicKey Optional[string] `json:"public_key" url:"public_key,omitempty"`
|
||||||
LastRefreshedAt LemmyTime `json:"last_refreshed_at" url:"last_refreshed_at,omitempty"`
|
LastRefreshedAt LemmyTime `json:"last_refreshed_at" url:"last_refreshed_at,omitempty"`
|
||||||
Banner Optional[Optional[string]] `json:"banner" url:"banner,omitempty"`
|
Banner Optional[Optional[string]] `json:"banner" url:"banner,omitempty"`
|
||||||
Deleted Optional[bool] `json:"deleted" url:"deleted,omitempty"`
|
Deleted Optional[bool] `json:"deleted" url:"deleted,omitempty"`
|
||||||
@@ -91,15 +151,3 @@ type PersonUpdateForm struct {
|
|||||||
BotAccount Optional[bool] `json:"bot_account" url:"bot_account,omitempty"`
|
BotAccount Optional[bool] `json:"bot_account" url:"bot_account,omitempty"`
|
||||||
BanExpires LemmyTime `json:"ban_expires" url:"ban_expires,omitempty"`
|
BanExpires LemmyTime `json:"ban_expires" url:"ban_expires,omitempty"`
|
||||||
}
|
}
|
||||||
type PersonFollower struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
PersonID int `json:"person_id" url:"person_id,omitempty"`
|
|
||||||
FollowerID int `json:"follower_id" url:"follower_id,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
Pending bool `json:"pending" url:"pending,omitempty"`
|
|
||||||
}
|
|
||||||
type PersonFollowerForm struct {
|
|
||||||
PersonID int `json:"person_id" url:"person_id,omitempty"`
|
|
||||||
FollowerID int `json:"follower_id" url:"follower_id,omitempty"`
|
|
||||||
Pending bool `json:"pending" url:"pending,omitempty"`
|
|
||||||
}
|
|
||||||
|
|||||||
+40
-22
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/api_common/src/person.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type Login struct {
|
type Login struct {
|
||||||
@@ -18,9 +15,7 @@ type Register struct {
|
|||||||
Honeypot Optional[string] `json:"honeypot" url:"honeypot,omitempty"`
|
Honeypot Optional[string] `json:"honeypot" url:"honeypot,omitempty"`
|
||||||
Answer Optional[string] `json:"answer" url:"answer,omitempty"`
|
Answer Optional[string] `json:"answer" url:"answer,omitempty"`
|
||||||
}
|
}
|
||||||
type GetCaptcha struct {
|
type GetCaptcha struct{}
|
||||||
Auth Optional[string] `json:"auth" url:"auth,omitempty"`
|
|
||||||
}
|
|
||||||
type GetCaptchaResponse struct {
|
type GetCaptchaResponse struct {
|
||||||
Ok Optional[CaptchaResponse] `json:"ok" url:"ok,omitempty"`
|
Ok Optional[CaptchaResponse] `json:"ok" url:"ok,omitempty"`
|
||||||
LemmyResponse
|
LemmyResponse
|
||||||
@@ -37,7 +32,7 @@ type SaveUserSettings struct {
|
|||||||
Theme Optional[string] `json:"theme" url:"theme,omitempty"`
|
Theme Optional[string] `json:"theme" url:"theme,omitempty"`
|
||||||
DefaultSortType Optional[int16] `json:"default_sort_type" url:"default_sort_type,omitempty"`
|
DefaultSortType Optional[int16] `json:"default_sort_type" url:"default_sort_type,omitempty"`
|
||||||
DefaultListingType Optional[int16] `json:"default_listing_type" url:"default_listing_type,omitempty"`
|
DefaultListingType Optional[int16] `json:"default_listing_type" url:"default_listing_type,omitempty"`
|
||||||
InterfaceLanguage Optional[string] `json:"interface_language" url:"interface_language,omitempty"`
|
Lang Optional[string] `json:"lang" url:"lang,omitempty"`
|
||||||
Avatar Optional[string] `json:"avatar" url:"avatar,omitempty"`
|
Avatar Optional[string] `json:"avatar" url:"avatar,omitempty"`
|
||||||
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
||||||
DisplayName Optional[string] `json:"display_name" url:"display_name,omitempty"`
|
DisplayName Optional[string] `json:"display_name" url:"display_name,omitempty"`
|
||||||
@@ -50,7 +45,6 @@ type SaveUserSettings struct {
|
|||||||
ShowBotAccounts Optional[bool] `json:"show_bot_accounts" url:"show_bot_accounts,omitempty"`
|
ShowBotAccounts Optional[bool] `json:"show_bot_accounts" url:"show_bot_accounts,omitempty"`
|
||||||
ShowReadPosts Optional[bool] `json:"show_read_posts" url:"show_read_posts,omitempty"`
|
ShowReadPosts Optional[bool] `json:"show_read_posts" url:"show_read_posts,omitempty"`
|
||||||
ShowNewPostNotifs Optional[bool] `json:"show_new_post_notifs" url:"show_new_post_notifs,omitempty"`
|
ShowNewPostNotifs Optional[bool] `json:"show_new_post_notifs" url:"show_new_post_notifs,omitempty"`
|
||||||
DiscussionLanguages Optional[[]int] `json:"discussion_languages" url:"discussion_languages,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
type ChangePassword struct {
|
type ChangePassword struct {
|
||||||
@@ -60,7 +54,7 @@ type ChangePassword struct {
|
|||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
type LoginResponse struct {
|
type LoginResponse struct {
|
||||||
JWT Optional[string] `json:"jwt" url:"jwt,omitempty"`
|
Jwt Optional[string] `json:"jwt" url:"jwt,omitempty"`
|
||||||
RegistrationCreated bool `json:"registration_created" url:"registration_created,omitempty"`
|
RegistrationCreated bool `json:"registration_created" url:"registration_created,omitempty"`
|
||||||
VerifyEmailSent bool `json:"verify_email_sent" url:"verify_email_sent,omitempty"`
|
VerifyEmailSent bool `json:"verify_email_sent" url:"verify_email_sent,omitempty"`
|
||||||
LemmyResponse
|
LemmyResponse
|
||||||
@@ -83,7 +77,7 @@ type GetPersonDetailsResponse struct {
|
|||||||
LemmyResponse
|
LemmyResponse
|
||||||
}
|
}
|
||||||
type GetRepliesResponse struct {
|
type GetRepliesResponse struct {
|
||||||
Replies []CommentReplyView `json:"replies" url:"replies,omitempty"`
|
Replies []CommentView `json:"replies" url:"replies,omitempty"`
|
||||||
LemmyResponse
|
LemmyResponse
|
||||||
}
|
}
|
||||||
type GetPersonMentionsResponse struct {
|
type GetPersonMentionsResponse struct {
|
||||||
@@ -133,14 +127,14 @@ type BlockPersonResponse struct {
|
|||||||
LemmyResponse
|
LemmyResponse
|
||||||
}
|
}
|
||||||
type GetReplies struct {
|
type GetReplies struct {
|
||||||
Sort Optional[CommentSortType] `json:"sort" url:"sort,omitempty"`
|
Sort Optional[SortType] `json:"sort" url:"sort,omitempty"`
|
||||||
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
||||||
Limit Optional[int64] `json:"limit" url:"limit,omitempty"`
|
Limit Optional[int64] `json:"limit" url:"limit,omitempty"`
|
||||||
UnreadOnly Optional[bool] `json:"unread_only" url:"unread_only,omitempty"`
|
UnreadOnly Optional[bool] `json:"unread_only" url:"unread_only,omitempty"`
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
type GetPersonMentions struct {
|
type GetPersonMentions struct {
|
||||||
Sort Optional[CommentSortType] `json:"sort" url:"sort,omitempty"`
|
Sort Optional[SortType] `json:"sort" url:"sort,omitempty"`
|
||||||
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
||||||
Limit Optional[int64] `json:"limit" url:"limit,omitempty"`
|
Limit Optional[int64] `json:"limit" url:"limit,omitempty"`
|
||||||
UnreadOnly Optional[bool] `json:"unread_only" url:"unread_only,omitempty"`
|
UnreadOnly Optional[bool] `json:"unread_only" url:"unread_only,omitempty"`
|
||||||
@@ -155,15 +149,6 @@ type PersonMentionResponse struct {
|
|||||||
PersonMentionView PersonMentionView `json:"person_mention_view" url:"person_mention_view,omitempty"`
|
PersonMentionView PersonMentionView `json:"person_mention_view" url:"person_mention_view,omitempty"`
|
||||||
LemmyResponse
|
LemmyResponse
|
||||||
}
|
}
|
||||||
type MarkCommentReplyAsRead struct {
|
|
||||||
CommentReplyID int `json:"comment_reply_id" url:"comment_reply_id,omitempty"`
|
|
||||||
Read bool `json:"read" url:"read,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
|
||||||
}
|
|
||||||
type CommentReplyResponse struct {
|
|
||||||
CommentReplyView CommentReplyView `json:"comment_reply_view" url:"comment_reply_view,omitempty"`
|
|
||||||
LemmyResponse
|
|
||||||
}
|
|
||||||
type DeleteAccount struct {
|
type DeleteAccount struct {
|
||||||
Password string `json:"password" url:"password,omitempty"`
|
Password string `json:"password" url:"password,omitempty"`
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
@@ -182,6 +167,40 @@ type PasswordChangeAfterReset struct {
|
|||||||
Password string `json:"password" url:"password,omitempty"`
|
Password string `json:"password" url:"password,omitempty"`
|
||||||
PasswordVerify string `json:"password_verify" url:"password_verify,omitempty"`
|
PasswordVerify string `json:"password_verify" url:"password_verify,omitempty"`
|
||||||
}
|
}
|
||||||
|
type CreatePrivateMessage struct {
|
||||||
|
Content string `json:"content" url:"content,omitempty"`
|
||||||
|
RecipientID int `json:"recipient_id" url:"recipient_id,omitempty"`
|
||||||
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
|
}
|
||||||
|
type EditPrivateMessage struct {
|
||||||
|
PrivateMessageID int `json:"private_message_id" url:"private_message_id,omitempty"`
|
||||||
|
Content string `json:"content" url:"content,omitempty"`
|
||||||
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
|
}
|
||||||
|
type DeletePrivateMessage struct {
|
||||||
|
PrivateMessageID int `json:"private_message_id" url:"private_message_id,omitempty"`
|
||||||
|
Deleted bool `json:"deleted" url:"deleted,omitempty"`
|
||||||
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
|
}
|
||||||
|
type MarkPrivateMessageAsRead struct {
|
||||||
|
PrivateMessageID int `json:"private_message_id" url:"private_message_id,omitempty"`
|
||||||
|
Read bool `json:"read" url:"read,omitempty"`
|
||||||
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
|
}
|
||||||
|
type GetPrivateMessages struct {
|
||||||
|
UnreadOnly Optional[bool] `json:"unread_only" url:"unread_only,omitempty"`
|
||||||
|
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
||||||
|
Limit Optional[int64] `json:"limit" url:"limit,omitempty"`
|
||||||
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
|
}
|
||||||
|
type PrivateMessagesResponse struct {
|
||||||
|
PrivateMessages []PrivateMessageView `json:"private_messages" url:"private_messages,omitempty"`
|
||||||
|
LemmyResponse
|
||||||
|
}
|
||||||
|
type PrivateMessageResponse struct {
|
||||||
|
PrivateMessageView PrivateMessageView `json:"private_message_view" url:"private_message_view,omitempty"`
|
||||||
|
LemmyResponse
|
||||||
|
}
|
||||||
type GetReportCount struct {
|
type GetReportCount struct {
|
||||||
CommunityID Optional[int] `json:"community_id" url:"community_id,omitempty"`
|
CommunityID Optional[int] `json:"community_id" url:"community_id,omitempty"`
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
@@ -190,7 +209,6 @@ type GetReportCountResponse struct {
|
|||||||
CommunityID Optional[int] `json:"community_id" url:"community_id,omitempty"`
|
CommunityID Optional[int] `json:"community_id" url:"community_id,omitempty"`
|
||||||
CommentReports int64 `json:"comment_reports" url:"comment_reports,omitempty"`
|
CommentReports int64 `json:"comment_reports" url:"comment_reports,omitempty"`
|
||||||
PostReports int64 `json:"post_reports" url:"post_reports,omitempty"`
|
PostReports int64 `json:"post_reports" url:"post_reports,omitempty"`
|
||||||
PrivateMessageReports Optional[int64] `json:"private_message_reports" url:"private_message_reports,omitempty"`
|
|
||||||
LemmyResponse
|
LemmyResponse
|
||||||
}
|
}
|
||||||
type GetUnreadCount struct {
|
type GetUnreadCount struct {
|
||||||
|
|||||||
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/person_block.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type PersonBlock struct {
|
type PersonBlock struct {
|
||||||
|
|||||||
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/person_mention.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type PersonMention struct {
|
type PersonMention struct {
|
||||||
@@ -10,11 +7,8 @@ type PersonMention struct {
|
|||||||
Read bool `json:"read" url:"read,omitempty"`
|
Read bool `json:"read" url:"read,omitempty"`
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
}
|
}
|
||||||
type PersonMentionInsertForm struct {
|
type PersonMentionForm struct {
|
||||||
RecipientID int `json:"recipient_id" url:"recipient_id,omitempty"`
|
RecipientID int `json:"recipient_id" url:"recipient_id,omitempty"`
|
||||||
CommentID int `json:"comment_id" url:"comment_id,omitempty"`
|
CommentID int `json:"comment_id" url:"comment_id,omitempty"`
|
||||||
Read Optional[bool] `json:"read" url:"read,omitempty"`
|
Read Optional[bool] `json:"read" url:"read,omitempty"`
|
||||||
}
|
}
|
||||||
type PersonMentionUpdateForm struct {
|
|
||||||
Read Optional[bool] `json:"read" url:"read,omitempty"`
|
|
||||||
}
|
|
||||||
|
|||||||
+6
-33
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/post.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type Post struct {
|
type Post struct {
|
||||||
@@ -16,17 +13,15 @@ type Post struct {
|
|||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
Deleted bool `json:"deleted" url:"deleted,omitempty"`
|
Deleted bool `json:"deleted" url:"deleted,omitempty"`
|
||||||
NSFW bool `json:"nsfw" url:"nsfw,omitempty"`
|
NSFW bool `json:"nsfw" url:"nsfw,omitempty"`
|
||||||
|
Stickied bool `json:"stickied" url:"stickied,omitempty"`
|
||||||
EmbedTitle Optional[string] `json:"embed_title" url:"embed_title,omitempty"`
|
EmbedTitle Optional[string] `json:"embed_title" url:"embed_title,omitempty"`
|
||||||
EmbedDescription Optional[string] `json:"embed_description" url:"embed_description,omitempty"`
|
EmbedDescription Optional[string] `json:"embed_description" url:"embed_description,omitempty"`
|
||||||
EmbedVideoURL Optional[string] `json:"embed_video_url" url:"embed_video_url,omitempty"`
|
EmbedHtml Optional[string] `json:"embed_html" url:"embed_html,omitempty"`
|
||||||
ThumbnailURL Optional[string] `json:"thumbnail_url" url:"thumbnail_url,omitempty"`
|
ThumbnailURL Optional[string] `json:"thumbnail_url" url:"thumbnail_url,omitempty"`
|
||||||
ApID string `json:"ap_id" url:"ap_id,omitempty"`
|
ApID string `json:"ap_id" url:"ap_id,omitempty"`
|
||||||
Local bool `json:"local" url:"local,omitempty"`
|
Local bool `json:"local" url:"local,omitempty"`
|
||||||
LanguageID int `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
FeaturedCommunity bool `json:"featured_community" url:"featured_community,omitempty"`
|
|
||||||
FeaturedLocal bool `json:"featured_local" url:"featured_local,omitempty"`
|
|
||||||
}
|
}
|
||||||
type PostInsertForm struct {
|
type PostForm struct {
|
||||||
Name string `json:"name" url:"name,omitempty"`
|
Name string `json:"name" url:"name,omitempty"`
|
||||||
CreatorID int `json:"creator_id" url:"creator_id,omitempty"`
|
CreatorID int `json:"creator_id" url:"creator_id,omitempty"`
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
||||||
@@ -35,38 +30,16 @@ type PostInsertForm struct {
|
|||||||
Body Optional[string] `json:"body" url:"body,omitempty"`
|
Body Optional[string] `json:"body" url:"body,omitempty"`
|
||||||
Removed Optional[bool] `json:"removed" url:"removed,omitempty"`
|
Removed Optional[bool] `json:"removed" url:"removed,omitempty"`
|
||||||
Locked Optional[bool] `json:"locked" url:"locked,omitempty"`
|
Locked Optional[bool] `json:"locked" url:"locked,omitempty"`
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
Deleted Optional[bool] `json:"deleted" url:"deleted,omitempty"`
|
Deleted Optional[bool] `json:"deleted" url:"deleted,omitempty"`
|
||||||
|
Stickied Optional[bool] `json:"stickied" url:"stickied,omitempty"`
|
||||||
EmbedTitle Optional[string] `json:"embed_title" url:"embed_title,omitempty"`
|
EmbedTitle Optional[string] `json:"embed_title" url:"embed_title,omitempty"`
|
||||||
EmbedDescription Optional[string] `json:"embed_description" url:"embed_description,omitempty"`
|
EmbedDescription Optional[string] `json:"embed_description" url:"embed_description,omitempty"`
|
||||||
EmbedVideoURL Optional[string] `json:"embed_video_url" url:"embed_video_url,omitempty"`
|
EmbedHtml Optional[string] `json:"embed_html" url:"embed_html,omitempty"`
|
||||||
ThumbnailURL Optional[string] `json:"thumbnail_url" url:"thumbnail_url,omitempty"`
|
ThumbnailURL Optional[string] `json:"thumbnail_url" url:"thumbnail_url,omitempty"`
|
||||||
ApID Optional[string] `json:"ap_id" url:"ap_id,omitempty"`
|
ApID Optional[string] `json:"ap_id" url:"ap_id,omitempty"`
|
||||||
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
||||||
LanguageID Optional[int] `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
FeaturedCommunity Optional[bool] `json:"featured_community" url:"featured_community,omitempty"`
|
|
||||||
FeaturedLocal Optional[bool] `json:"featured_local" url:"featured_local,omitempty"`
|
|
||||||
}
|
|
||||||
type PostUpdateForm struct {
|
|
||||||
Name Optional[string] `json:"name" url:"name,omitempty"`
|
|
||||||
NSFW Optional[bool] `json:"nsfw" url:"nsfw,omitempty"`
|
|
||||||
URL Optional[Optional[string]] `json:"url" url:"url,omitempty"`
|
|
||||||
Body Optional[Optional[string]] `json:"body" url:"body,omitempty"`
|
|
||||||
Removed Optional[bool] `json:"removed" url:"removed,omitempty"`
|
|
||||||
Locked Optional[bool] `json:"locked" url:"locked,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
Deleted Optional[bool] `json:"deleted" url:"deleted,omitempty"`
|
|
||||||
EmbedTitle Optional[Optional[string]] `json:"embed_title" url:"embed_title,omitempty"`
|
|
||||||
EmbedDescription Optional[Optional[string]] `json:"embed_description" url:"embed_description,omitempty"`
|
|
||||||
EmbedVideoURL Optional[Optional[string]] `json:"embed_video_url" url:"embed_video_url,omitempty"`
|
|
||||||
ThumbnailURL Optional[Optional[string]] `json:"thumbnail_url" url:"thumbnail_url,omitempty"`
|
|
||||||
ApID Optional[string] `json:"ap_id" url:"ap_id,omitempty"`
|
|
||||||
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
|
||||||
LanguageID Optional[int] `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
FeaturedCommunity Optional[bool] `json:"featured_community" url:"featured_community,omitempty"`
|
|
||||||
FeaturedLocal Optional[bool] `json:"featured_local" url:"featured_local,omitempty"`
|
|
||||||
}
|
}
|
||||||
type PostLike struct {
|
type PostLike struct {
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
ID int32 `json:"id" url:"id,omitempty"`
|
||||||
|
|||||||
+5
-11
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/api_common/src/post.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type CreatePost struct {
|
type CreatePost struct {
|
||||||
@@ -10,7 +7,6 @@ type CreatePost struct {
|
|||||||
Body Optional[string] `json:"body" url:"body,omitempty"`
|
Body Optional[string] `json:"body" url:"body,omitempty"`
|
||||||
Honeypot Optional[string] `json:"honeypot" url:"honeypot,omitempty"`
|
Honeypot Optional[string] `json:"honeypot" url:"honeypot,omitempty"`
|
||||||
NSFW Optional[bool] `json:"nsfw" url:"nsfw,omitempty"`
|
NSFW Optional[bool] `json:"nsfw" url:"nsfw,omitempty"`
|
||||||
LanguageID Optional[int] `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
type PostResponse struct {
|
type PostResponse struct {
|
||||||
@@ -18,13 +14,13 @@ type PostResponse struct {
|
|||||||
LemmyResponse
|
LemmyResponse
|
||||||
}
|
}
|
||||||
type GetPost struct {
|
type GetPost struct {
|
||||||
ID Optional[int] `json:"id" url:"id,omitempty"`
|
ID int `json:"id" url:"id,omitempty"`
|
||||||
CommentID Optional[int] `json:"comment_id" url:"comment_id,omitempty"`
|
|
||||||
Auth Optional[string] `json:"auth" url:"auth,omitempty"`
|
Auth Optional[string] `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
type GetPostResponse struct {
|
type GetPostResponse struct {
|
||||||
PostView PostView `json:"post_view" url:"post_view,omitempty"`
|
PostView PostView `json:"post_view" url:"post_view,omitempty"`
|
||||||
CommunityView CommunityView `json:"community_view" url:"community_view,omitempty"`
|
CommunityView CommunityView `json:"community_view" url:"community_view,omitempty"`
|
||||||
|
Comments []CommentView `json:"comments" url:"comments,omitempty"`
|
||||||
Moderators []CommunityModeratorView `json:"moderators" url:"moderators,omitempty"`
|
Moderators []CommunityModeratorView `json:"moderators" url:"moderators,omitempty"`
|
||||||
Online uint `json:"online" url:"online,omitempty"`
|
Online uint `json:"online" url:"online,omitempty"`
|
||||||
LemmyResponse
|
LemmyResponse
|
||||||
@@ -54,7 +50,6 @@ type EditPost struct {
|
|||||||
URL Optional[string] `json:"url" url:"url,omitempty"`
|
URL Optional[string] `json:"url" url:"url,omitempty"`
|
||||||
Body Optional[string] `json:"body" url:"body,omitempty"`
|
Body Optional[string] `json:"body" url:"body,omitempty"`
|
||||||
NSFW Optional[bool] `json:"nsfw" url:"nsfw,omitempty"`
|
NSFW Optional[bool] `json:"nsfw" url:"nsfw,omitempty"`
|
||||||
LanguageID Optional[int] `json:"language_id" url:"language_id,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
type DeletePost struct {
|
type DeletePost struct {
|
||||||
@@ -78,10 +73,9 @@ type LockPost struct {
|
|||||||
Locked bool `json:"locked" url:"locked,omitempty"`
|
Locked bool `json:"locked" url:"locked,omitempty"`
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
type FeaturePost struct {
|
type StickyPost struct {
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
PostID int `json:"post_id" url:"post_id,omitempty"`
|
||||||
Featured bool `json:"featured" url:"featured,omitempty"`
|
Stickied bool `json:"stickied" url:"stickied,omitempty"`
|
||||||
FeatureType PostFeatureType `json:"feature_type" url:"feature_type,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
type SavePost struct {
|
type SavePost struct {
|
||||||
@@ -125,5 +119,5 @@ type SiteMetadata struct {
|
|||||||
Title Optional[string] `json:"title" url:"title,omitempty"`
|
Title Optional[string] `json:"title" url:"title,omitempty"`
|
||||||
Description Optional[string] `json:"description" url:"description,omitempty"`
|
Description Optional[string] `json:"description" url:"description,omitempty"`
|
||||||
Image Optional[string] `json:"image" url:"image,omitempty"`
|
Image Optional[string] `json:"image" url:"image,omitempty"`
|
||||||
EmbedVideoURL Optional[string] `json:"embed_video_url" url:"embed_video_url,omitempty"`
|
Html Optional[string] `json:"html" url:"html,omitempty"`
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/post_report.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type PostReport struct {
|
type PostReport struct {
|
||||||
|
|||||||
@@ -1,37 +0,0 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/private_message.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type PrivateMessage struct {
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
CreatorID int `json:"creator_id" url:"creator_id,omitempty"`
|
|
||||||
RecipientID int `json:"recipient_id" url:"recipient_id,omitempty"`
|
|
||||||
Content string `json:"content" url:"content,omitempty"`
|
|
||||||
Deleted bool `json:"deleted" url:"deleted,omitempty"`
|
|
||||||
Read bool `json:"read" url:"read,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
ApID string `json:"ap_id" url:"ap_id,omitempty"`
|
|
||||||
Local bool `json:"local" url:"local,omitempty"`
|
|
||||||
}
|
|
||||||
type PrivateMessageInsertForm struct {
|
|
||||||
CreatorID int `json:"creator_id" url:"creator_id,omitempty"`
|
|
||||||
RecipientID int `json:"recipient_id" url:"recipient_id,omitempty"`
|
|
||||||
Content string `json:"content" url:"content,omitempty"`
|
|
||||||
Deleted Optional[bool] `json:"deleted" url:"deleted,omitempty"`
|
|
||||||
Read Optional[bool] `json:"read" url:"read,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
ApID Optional[string] `json:"ap_id" url:"ap_id,omitempty"`
|
|
||||||
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
|
||||||
}
|
|
||||||
type PrivateMessageUpdateForm struct {
|
|
||||||
Content Optional[string] `json:"content" url:"content,omitempty"`
|
|
||||||
Deleted Optional[bool] `json:"deleted" url:"deleted,omitempty"`
|
|
||||||
Read Optional[bool] `json:"read" url:"read,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
ApID Optional[string] `json:"ap_id" url:"ap_id,omitempty"`
|
|
||||||
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
|
||||||
}
|
|
||||||
@@ -1,63 +1,25 @@
|
|||||||
// Source: lemmy/crates/api_common/src/private_message.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type CreatePrivateMessage struct {
|
type PrivateMessage struct {
|
||||||
Content string `json:"content" url:"content,omitempty"`
|
ID int `json:"id" url:"id,omitempty"`
|
||||||
|
CreatorID int `json:"creator_id" url:"creator_id,omitempty"`
|
||||||
RecipientID int `json:"recipient_id" url:"recipient_id,omitempty"`
|
RecipientID int `json:"recipient_id" url:"recipient_id,omitempty"`
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
|
||||||
}
|
|
||||||
type EditPrivateMessage struct {
|
|
||||||
PrivateMessageID int `json:"private_message_id" url:"private_message_id,omitempty"`
|
|
||||||
Content string `json:"content" url:"content,omitempty"`
|
Content string `json:"content" url:"content,omitempty"`
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
|
||||||
}
|
|
||||||
type DeletePrivateMessage struct {
|
|
||||||
PrivateMessageID int `json:"private_message_id" url:"private_message_id,omitempty"`
|
|
||||||
Deleted bool `json:"deleted" url:"deleted,omitempty"`
|
Deleted bool `json:"deleted" url:"deleted,omitempty"`
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
|
||||||
}
|
|
||||||
type MarkPrivateMessageAsRead struct {
|
|
||||||
PrivateMessageID int `json:"private_message_id" url:"private_message_id,omitempty"`
|
|
||||||
Read bool `json:"read" url:"read,omitempty"`
|
Read bool `json:"read" url:"read,omitempty"`
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
|
ApID string `json:"ap_id" url:"ap_id,omitempty"`
|
||||||
|
Local bool `json:"local" url:"local,omitempty"`
|
||||||
}
|
}
|
||||||
type GetPrivateMessages struct {
|
type PrivateMessageForm struct {
|
||||||
UnreadOnly Optional[bool] `json:"unread_only" url:"unread_only,omitempty"`
|
CreatorID int `json:"creator_id" url:"creator_id,omitempty"`
|
||||||
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
RecipientID int `json:"recipient_id" url:"recipient_id,omitempty"`
|
||||||
Limit Optional[int64] `json:"limit" url:"limit,omitempty"`
|
Content string `json:"content" url:"content,omitempty"`
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Deleted Optional[bool] `json:"deleted" url:"deleted,omitempty"`
|
||||||
}
|
Read Optional[bool] `json:"read" url:"read,omitempty"`
|
||||||
type PrivateMessagesResponse struct {
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
PrivateMessages []PrivateMessageView `json:"private_messages" url:"private_messages,omitempty"`
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
LemmyResponse
|
ApID Optional[string] `json:"ap_id" url:"ap_id,omitempty"`
|
||||||
}
|
Local Optional[bool] `json:"local" url:"local,omitempty"`
|
||||||
type PrivateMessageResponse struct {
|
|
||||||
PrivateMessageView PrivateMessageView `json:"private_message_view" url:"private_message_view,omitempty"`
|
|
||||||
LemmyResponse
|
|
||||||
}
|
|
||||||
type CreatePrivateMessageReport struct {
|
|
||||||
PrivateMessageID int `json:"private_message_id" url:"private_message_id,omitempty"`
|
|
||||||
Reason string `json:"reason" url:"reason,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
|
||||||
}
|
|
||||||
type PrivateMessageReportResponse struct {
|
|
||||||
PrivateMessageReportView PrivateMessageReportView `json:"private_message_report_view" url:"private_message_report_view,omitempty"`
|
|
||||||
LemmyResponse
|
|
||||||
}
|
|
||||||
type ResolvePrivateMessageReport struct {
|
|
||||||
ReportID int `json:"report_id" url:"report_id,omitempty"`
|
|
||||||
Resolved bool `json:"resolved" url:"resolved,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
|
||||||
}
|
|
||||||
type ListPrivateMessageReports struct {
|
|
||||||
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
|
||||||
Limit Optional[int64] `json:"limit" url:"limit,omitempty"`
|
|
||||||
UnresolvedOnly Optional[bool] `json:"unresolved_only" url:"unresolved_only,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
|
||||||
}
|
|
||||||
type ListPrivateMessageReportsResponse struct {
|
|
||||||
PrivateMessageReports []PrivateMessageReportView `json:"private_message_reports" url:"private_message_reports,omitempty"`
|
|
||||||
LemmyResponse
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,22 +0,0 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/private_message_report.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type PrivateMessageReport struct {
|
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
|
||||||
CreatorID int `json:"creator_id" url:"creator_id,omitempty"`
|
|
||||||
PrivateMessageID int `json:"private_message_id" url:"private_message_id,omitempty"`
|
|
||||||
OriginalPmText string `json:"original_pm_text" url:"original_pm_text,omitempty"`
|
|
||||||
Reason string `json:"reason" url:"reason,omitempty"`
|
|
||||||
Resolved bool `json:"resolved" url:"resolved,omitempty"`
|
|
||||||
ResolverID Optional[int] `json:"resolver_id" url:"resolver_id,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
}
|
|
||||||
type PrivateMessageReportForm struct {
|
|
||||||
CreatorID int `json:"creator_id" url:"creator_id,omitempty"`
|
|
||||||
PrivateMessageID int `json:"private_message_id" url:"private_message_id,omitempty"`
|
|
||||||
OriginalPmText string `json:"original_pm_text" url:"original_pm_text,omitempty"`
|
|
||||||
Reason string `json:"reason" url:"reason,omitempty"`
|
|
||||||
}
|
|
||||||
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/registration_application.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type RegistrationApplication struct {
|
type RegistrationApplication struct {
|
||||||
@@ -11,11 +8,9 @@ type RegistrationApplication struct {
|
|||||||
DenyReason Optional[string] `json:"deny_reason" url:"deny_reason,omitempty"`
|
DenyReason Optional[string] `json:"deny_reason" url:"deny_reason,omitempty"`
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
}
|
}
|
||||||
type RegistrationApplicationInsertForm struct {
|
type RegistrationApplicationForm struct {
|
||||||
LocalUserID int `json:"local_user_id" url:"local_user_id,omitempty"`
|
LocalUserID Optional[int] `json:"local_user_id" url:"local_user_id,omitempty"`
|
||||||
Answer string `json:"answer" url:"answer,omitempty"`
|
Answer Optional[string] `json:"answer" url:"answer,omitempty"`
|
||||||
}
|
AdminID Optional[int] `json:"admin_id" url:"admin_id,omitempty"`
|
||||||
type RegistrationApplicationUpdateForm struct {
|
|
||||||
AdminID Optional[Optional[int]] `json:"admin_id" url:"admin_id,omitempty"`
|
|
||||||
DenyReason Optional[Optional[string]] `json:"deny_reason" url:"deny_reason,omitempty"`
|
DenyReason Optional[Optional[string]] `json:"deny_reason" url:"deny_reason,omitempty"`
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1 @@
|
|||||||
// Source: lemmy/crates/api_common/src/request.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|||||||
+1
-4
@@ -1,9 +1,6 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/secret.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type Secret struct {
|
type Secret struct {
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
ID int32 `json:"id" url:"id,omitempty"`
|
||||||
JWTSecret string `json:"jwt_secret" url:"jwt_secret,omitempty"`
|
JwtSecret string `json:"jwt_secret" url:"jwt_secret,omitempty"`
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +0,0 @@
|
|||||||
// Source: lemmy/crates/api_common/src/websocket/send.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
@@ -1,4 +1 @@
|
|||||||
// Source: lemmy/crates/api_common/src/sensitive.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|||||||
+24
-20
@@ -1,48 +1,52 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/site.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type Site struct {
|
type Site struct {
|
||||||
ID int `json:"id" url:"id,omitempty"`
|
ID int32 `json:"id" url:"id,omitempty"`
|
||||||
Name string `json:"name" url:"name,omitempty"`
|
Name string `json:"name" url:"name,omitempty"`
|
||||||
Sidebar Optional[string] `json:"sidebar" url:"sidebar,omitempty"`
|
Sidebar Optional[string] `json:"sidebar" url:"sidebar,omitempty"`
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
|
EnableDownvotes bool `json:"enable_downvotes" url:"enable_downvotes,omitempty"`
|
||||||
|
OpenRegistration bool `json:"open_registration" url:"open_registration,omitempty"`
|
||||||
|
EnableNSFW bool `json:"enable_nsfw" url:"enable_nsfw,omitempty"`
|
||||||
Icon Optional[string] `json:"icon" url:"icon,omitempty"`
|
Icon Optional[string] `json:"icon" url:"icon,omitempty"`
|
||||||
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
||||||
Description Optional[string] `json:"description" url:"description,omitempty"`
|
Description Optional[string] `json:"description" url:"description,omitempty"`
|
||||||
|
CommunityCreationAdminOnly bool `json:"community_creation_admin_only" url:"community_creation_admin_only,omitempty"`
|
||||||
|
RequireEmailVerification bool `json:"require_email_verification" url:"require_email_verification,omitempty"`
|
||||||
|
RequireApplication bool `json:"require_application" url:"require_application,omitempty"`
|
||||||
|
ApplicationQuestion Optional[string] `json:"application_question" url:"application_question,omitempty"`
|
||||||
|
PrivateInstance bool `json:"private_instance" url:"private_instance,omitempty"`
|
||||||
ActorID string `json:"actor_id" url:"actor_id,omitempty"`
|
ActorID string `json:"actor_id" url:"actor_id,omitempty"`
|
||||||
LastRefreshedAt LemmyTime `json:"last_refreshed_at" url:"last_refreshed_at,omitempty"`
|
LastRefreshedAt LemmyTime `json:"last_refreshed_at" url:"last_refreshed_at,omitempty"`
|
||||||
InboxURL string `json:"inbox_url" url:"inbox_url,omitempty"`
|
InboxURL string `json:"inbox_url" url:"inbox_url,omitempty"`
|
||||||
PrivateKey Optional[string] `json:"private_key" url:"private_key,omitempty"`
|
PrivateKey Optional[string] `json:"private_key" url:"private_key,omitempty"`
|
||||||
PublicKey string `json:"public_key" url:"public_key,omitempty"`
|
PublicKey string `json:"public_key" url:"public_key,omitempty"`
|
||||||
InstanceID int `json:"instance_id" url:"instance_id,omitempty"`
|
DefaultTheme string `json:"default_theme" url:"default_theme,omitempty"`
|
||||||
|
DefaultPostListingType string `json:"default_post_listing_type" url:"default_post_listing_type,omitempty"`
|
||||||
|
LegalInformation Optional[string] `json:"legal_information" url:"legal_information,omitempty"`
|
||||||
}
|
}
|
||||||
type SiteInsertForm struct {
|
type SiteForm struct {
|
||||||
Name string `json:"name" url:"name,omitempty"`
|
Name string `json:"name" url:"name,omitempty"`
|
||||||
Sidebar Optional[string] `json:"sidebar" url:"sidebar,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
Icon Optional[string] `json:"icon" url:"icon,omitempty"`
|
|
||||||
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
|
||||||
Description Optional[string] `json:"description" url:"description,omitempty"`
|
|
||||||
ActorID Optional[string] `json:"actor_id" url:"actor_id,omitempty"`
|
|
||||||
LastRefreshedAt LemmyTime `json:"last_refreshed_at" url:"last_refreshed_at,omitempty"`
|
|
||||||
InboxURL Optional[string] `json:"inbox_url" url:"inbox_url,omitempty"`
|
|
||||||
PrivateKey Optional[string] `json:"private_key" url:"private_key,omitempty"`
|
|
||||||
PublicKey Optional[string] `json:"public_key" url:"public_key,omitempty"`
|
|
||||||
InstanceID int `json:"instance_id" url:"instance_id,omitempty"`
|
|
||||||
}
|
|
||||||
type SiteUpdateForm struct {
|
|
||||||
Name Optional[string] `json:"name" url:"name,omitempty"`
|
|
||||||
Sidebar Optional[Optional[string]] `json:"sidebar" url:"sidebar,omitempty"`
|
Sidebar Optional[Optional[string]] `json:"sidebar" url:"sidebar,omitempty"`
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
||||||
|
EnableDownvotes Optional[bool] `json:"enable_downvotes" url:"enable_downvotes,omitempty"`
|
||||||
|
OpenRegistration Optional[bool] `json:"open_registration" url:"open_registration,omitempty"`
|
||||||
|
EnableNSFW Optional[bool] `json:"enable_nsfw" url:"enable_nsfw,omitempty"`
|
||||||
Icon Optional[Optional[string]] `json:"icon" url:"icon,omitempty"`
|
Icon Optional[Optional[string]] `json:"icon" url:"icon,omitempty"`
|
||||||
Banner Optional[Optional[string]] `json:"banner" url:"banner,omitempty"`
|
Banner Optional[Optional[string]] `json:"banner" url:"banner,omitempty"`
|
||||||
Description Optional[Optional[string]] `json:"description" url:"description,omitempty"`
|
Description Optional[Optional[string]] `json:"description" url:"description,omitempty"`
|
||||||
|
CommunityCreationAdminOnly Optional[bool] `json:"community_creation_admin_only" url:"community_creation_admin_only,omitempty"`
|
||||||
|
RequireEmailVerification Optional[bool] `json:"require_email_verification" url:"require_email_verification,omitempty"`
|
||||||
|
RequireApplication Optional[bool] `json:"require_application" url:"require_application,omitempty"`
|
||||||
|
ApplicationQuestion Optional[Optional[string]] `json:"application_question" url:"application_question,omitempty"`
|
||||||
|
PrivateInstance Optional[bool] `json:"private_instance" url:"private_instance,omitempty"`
|
||||||
ActorID Optional[string] `json:"actor_id" url:"actor_id,omitempty"`
|
ActorID Optional[string] `json:"actor_id" url:"actor_id,omitempty"`
|
||||||
LastRefreshedAt LemmyTime `json:"last_refreshed_at" url:"last_refreshed_at,omitempty"`
|
LastRefreshedAt LemmyTime `json:"last_refreshed_at" url:"last_refreshed_at,omitempty"`
|
||||||
InboxURL Optional[string] `json:"inbox_url" url:"inbox_url,omitempty"`
|
InboxURL Optional[string] `json:"inbox_url" url:"inbox_url,omitempty"`
|
||||||
PrivateKey Optional[Optional[string]] `json:"private_key" url:"private_key,omitempty"`
|
PrivateKey Optional[Optional[string]] `json:"private_key" url:"private_key,omitempty"`
|
||||||
PublicKey Optional[string] `json:"public_key" url:"public_key,omitempty"`
|
PublicKey Optional[string] `json:"public_key" url:"public_key,omitempty"`
|
||||||
|
DefaultTheme Optional[string] `json:"default_theme" url:"default_theme,omitempty"`
|
||||||
|
DefaultPostListingType Optional[string] `json:"default_post_listing_type" url:"default_post_listing_type,omitempty"`
|
||||||
|
LegalInformation Optional[string] `json:"legal_information" url:"legal_information,omitempty"`
|
||||||
}
|
}
|
||||||
|
|||||||
+17
-100
@@ -1,6 +1,3 @@
|
|||||||
// Source: lemmy/crates/api_common/src/site.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type Search struct {
|
type Search struct {
|
||||||
@@ -40,13 +37,11 @@ type GetModlog struct {
|
|||||||
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
||||||
Limit Optional[int64] `json:"limit" url:"limit,omitempty"`
|
Limit Optional[int64] `json:"limit" url:"limit,omitempty"`
|
||||||
Auth Optional[string] `json:"auth" url:"auth,omitempty"`
|
Auth Optional[string] `json:"auth" url:"auth,omitempty"`
|
||||||
Type Optional[ModlogActionType] `json:"type_" url:"type_,omitempty"`
|
|
||||||
OtherPersonID Optional[int] `json:"other_person_id" url:"other_person_id,omitempty"`
|
|
||||||
}
|
}
|
||||||
type GetModlogResponse struct {
|
type GetModlogResponse struct {
|
||||||
RemovedPosts []ModRemovePostView `json:"removed_posts" url:"removed_posts,omitempty"`
|
RemovedPosts []ModRemovePostView `json:"removed_posts" url:"removed_posts,omitempty"`
|
||||||
LockedPosts []ModLockPostView `json:"locked_posts" url:"locked_posts,omitempty"`
|
LockedPosts []ModLockPostView `json:"locked_posts" url:"locked_posts,omitempty"`
|
||||||
FeaturedPosts []ModFeaturePostView `json:"featured_posts" url:"featured_posts,omitempty"`
|
StickiedPosts []ModStickyPostView `json:"stickied_posts" url:"stickied_posts,omitempty"`
|
||||||
RemovedComments []ModRemoveCommentView `json:"removed_comments" url:"removed_comments,omitempty"`
|
RemovedComments []ModRemoveCommentView `json:"removed_comments" url:"removed_comments,omitempty"`
|
||||||
RemovedCommunities []ModRemoveCommunityView `json:"removed_communities" url:"removed_communities,omitempty"`
|
RemovedCommunities []ModRemoveCommunityView `json:"removed_communities" url:"removed_communities,omitempty"`
|
||||||
BannedFromCommunity []ModBanFromCommunityView `json:"banned_from_community" url:"banned_from_community,omitempty"`
|
BannedFromCommunity []ModBanFromCommunityView `json:"banned_from_community" url:"banned_from_community,omitempty"`
|
||||||
@@ -54,10 +49,6 @@ type GetModlogResponse struct {
|
|||||||
AddedToCommunity []ModAddCommunityView `json:"added_to_community" url:"added_to_community,omitempty"`
|
AddedToCommunity []ModAddCommunityView `json:"added_to_community" url:"added_to_community,omitempty"`
|
||||||
TransferredToCommunity []ModTransferCommunityView `json:"transferred_to_community" url:"transferred_to_community,omitempty"`
|
TransferredToCommunity []ModTransferCommunityView `json:"transferred_to_community" url:"transferred_to_community,omitempty"`
|
||||||
Added []ModAddView `json:"added" url:"added,omitempty"`
|
Added []ModAddView `json:"added" url:"added,omitempty"`
|
||||||
AdminPurgedPersons []AdminPurgePersonView `json:"admin_purged_persons" url:"admin_purged_persons,omitempty"`
|
|
||||||
AdminPurgedCommunities []AdminPurgeCommunityView `json:"admin_purged_communities" url:"admin_purged_communities,omitempty"`
|
|
||||||
AdminPurgedPosts []AdminPurgePostView `json:"admin_purged_posts" url:"admin_purged_posts,omitempty"`
|
|
||||||
AdminPurgedComments []AdminPurgeCommentView `json:"admin_purged_comments" url:"admin_purged_comments,omitempty"`
|
|
||||||
HiddenCommunities []ModHideCommunityView `json:"hidden_communities" url:"hidden_communities,omitempty"`
|
HiddenCommunities []ModHideCommunityView `json:"hidden_communities" url:"hidden_communities,omitempty"`
|
||||||
LemmyResponse
|
LemmyResponse
|
||||||
}
|
}
|
||||||
@@ -68,40 +59,15 @@ type CreateSite struct {
|
|||||||
Icon Optional[string] `json:"icon" url:"icon,omitempty"`
|
Icon Optional[string] `json:"icon" url:"icon,omitempty"`
|
||||||
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
||||||
EnableDownvotes Optional[bool] `json:"enable_downvotes" url:"enable_downvotes,omitempty"`
|
EnableDownvotes Optional[bool] `json:"enable_downvotes" url:"enable_downvotes,omitempty"`
|
||||||
|
OpenRegistration Optional[bool] `json:"open_registration" url:"open_registration,omitempty"`
|
||||||
EnableNSFW Optional[bool] `json:"enable_nsfw" url:"enable_nsfw,omitempty"`
|
EnableNSFW Optional[bool] `json:"enable_nsfw" url:"enable_nsfw,omitempty"`
|
||||||
CommunityCreationAdminOnly Optional[bool] `json:"community_creation_admin_only" url:"community_creation_admin_only,omitempty"`
|
CommunityCreationAdminOnly Optional[bool] `json:"community_creation_admin_only" url:"community_creation_admin_only,omitempty"`
|
||||||
RequireEmailVerification Optional[bool] `json:"require_email_verification" url:"require_email_verification,omitempty"`
|
RequireEmailVerification Optional[bool] `json:"require_email_verification" url:"require_email_verification,omitempty"`
|
||||||
|
RequireApplication Optional[bool] `json:"require_application" url:"require_application,omitempty"`
|
||||||
ApplicationQuestion Optional[string] `json:"application_question" url:"application_question,omitempty"`
|
ApplicationQuestion Optional[string] `json:"application_question" url:"application_question,omitempty"`
|
||||||
PrivateInstance Optional[bool] `json:"private_instance" url:"private_instance,omitempty"`
|
PrivateInstance Optional[bool] `json:"private_instance" url:"private_instance,omitempty"`
|
||||||
DefaultTheme Optional[string] `json:"default_theme" url:"default_theme,omitempty"`
|
DefaultTheme Optional[string] `json:"default_theme" url:"default_theme,omitempty"`
|
||||||
DefaultPostListingType Optional[string] `json:"default_post_listing_type" url:"default_post_listing_type,omitempty"`
|
DefaultPostListingType Optional[string] `json:"default_post_listing_type" url:"default_post_listing_type,omitempty"`
|
||||||
LegalInformation Optional[string] `json:"legal_information" url:"legal_information,omitempty"`
|
|
||||||
ApplicationEmailAdmins Optional[bool] `json:"application_email_admins" url:"application_email_admins,omitempty"`
|
|
||||||
HideModlogModNames Optional[bool] `json:"hide_modlog_mod_names" url:"hide_modlog_mod_names,omitempty"`
|
|
||||||
DiscussionLanguages Optional[[]int] `json:"discussion_languages" url:"discussion_languages,omitempty"`
|
|
||||||
SlurFilterRegex Optional[string] `json:"slur_filter_regex" url:"slur_filter_regex,omitempty"`
|
|
||||||
ActorNameMaxLength Optional[int32] `json:"actor_name_max_length" url:"actor_name_max_length,omitempty"`
|
|
||||||
RateLimitMessage Optional[int32] `json:"rate_limit_message" url:"rate_limit_message,omitempty"`
|
|
||||||
RateLimitMessagePerSecond Optional[int32] `json:"rate_limit_message_per_second" url:"rate_limit_message_per_second,omitempty"`
|
|
||||||
RateLimitPost Optional[int32] `json:"rate_limit_post" url:"rate_limit_post,omitempty"`
|
|
||||||
RateLimitPostPerSecond Optional[int32] `json:"rate_limit_post_per_second" url:"rate_limit_post_per_second,omitempty"`
|
|
||||||
RateLimitRegister Optional[int32] `json:"rate_limit_register" url:"rate_limit_register,omitempty"`
|
|
||||||
RateLimitRegisterPerSecond Optional[int32] `json:"rate_limit_register_per_second" url:"rate_limit_register_per_second,omitempty"`
|
|
||||||
RateLimitImage Optional[int32] `json:"rate_limit_image" url:"rate_limit_image,omitempty"`
|
|
||||||
RateLimitImagePerSecond Optional[int32] `json:"rate_limit_image_per_second" url:"rate_limit_image_per_second,omitempty"`
|
|
||||||
RateLimitComment Optional[int32] `json:"rate_limit_comment" url:"rate_limit_comment,omitempty"`
|
|
||||||
RateLimitCommentPerSecond Optional[int32] `json:"rate_limit_comment_per_second" url:"rate_limit_comment_per_second,omitempty"`
|
|
||||||
RateLimitSearch Optional[int32] `json:"rate_limit_search" url:"rate_limit_search,omitempty"`
|
|
||||||
RateLimitSearchPerSecond Optional[int32] `json:"rate_limit_search_per_second" url:"rate_limit_search_per_second,omitempty"`
|
|
||||||
FederationEnabled Optional[bool] `json:"federation_enabled" url:"federation_enabled,omitempty"`
|
|
||||||
FederationDebug Optional[bool] `json:"federation_debug" url:"federation_debug,omitempty"`
|
|
||||||
FederationWorkerCount Optional[int32] `json:"federation_worker_count" url:"federation_worker_count,omitempty"`
|
|
||||||
CaptchaEnabled Optional[bool] `json:"captcha_enabled" url:"captcha_enabled,omitempty"`
|
|
||||||
CaptchaDifficulty Optional[string] `json:"captcha_difficulty" url:"captcha_difficulty,omitempty"`
|
|
||||||
AllowedInstances Optional[[]string] `json:"allowed_instances" url:"allowed_instances,omitempty"`
|
|
||||||
BlockedInstances Optional[[]string] `json:"blocked_instances" url:"blocked_instances,omitempty"`
|
|
||||||
Taglines Optional[[]string] `json:"taglines" url:"taglines,omitempty"`
|
|
||||||
RegistrationMode Optional[RegistrationMode] `json:"registration_mode" url:"registration_mode,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
type EditSite struct {
|
type EditSite struct {
|
||||||
@@ -111,41 +77,16 @@ type EditSite struct {
|
|||||||
Icon Optional[string] `json:"icon" url:"icon,omitempty"`
|
Icon Optional[string] `json:"icon" url:"icon,omitempty"`
|
||||||
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
Banner Optional[string] `json:"banner" url:"banner,omitempty"`
|
||||||
EnableDownvotes Optional[bool] `json:"enable_downvotes" url:"enable_downvotes,omitempty"`
|
EnableDownvotes Optional[bool] `json:"enable_downvotes" url:"enable_downvotes,omitempty"`
|
||||||
|
OpenRegistration Optional[bool] `json:"open_registration" url:"open_registration,omitempty"`
|
||||||
EnableNSFW Optional[bool] `json:"enable_nsfw" url:"enable_nsfw,omitempty"`
|
EnableNSFW Optional[bool] `json:"enable_nsfw" url:"enable_nsfw,omitempty"`
|
||||||
CommunityCreationAdminOnly Optional[bool] `json:"community_creation_admin_only" url:"community_creation_admin_only,omitempty"`
|
CommunityCreationAdminOnly Optional[bool] `json:"community_creation_admin_only" url:"community_creation_admin_only,omitempty"`
|
||||||
RequireEmailVerification Optional[bool] `json:"require_email_verification" url:"require_email_verification,omitempty"`
|
RequireEmailVerification Optional[bool] `json:"require_email_verification" url:"require_email_verification,omitempty"`
|
||||||
|
RequireApplication Optional[bool] `json:"require_application" url:"require_application,omitempty"`
|
||||||
ApplicationQuestion Optional[string] `json:"application_question" url:"application_question,omitempty"`
|
ApplicationQuestion Optional[string] `json:"application_question" url:"application_question,omitempty"`
|
||||||
PrivateInstance Optional[bool] `json:"private_instance" url:"private_instance,omitempty"`
|
PrivateInstance Optional[bool] `json:"private_instance" url:"private_instance,omitempty"`
|
||||||
DefaultTheme Optional[string] `json:"default_theme" url:"default_theme,omitempty"`
|
DefaultTheme Optional[string] `json:"default_theme" url:"default_theme,omitempty"`
|
||||||
DefaultPostListingType Optional[string] `json:"default_post_listing_type" url:"default_post_listing_type,omitempty"`
|
DefaultPostListingType Optional[string] `json:"default_post_listing_type" url:"default_post_listing_type,omitempty"`
|
||||||
LegalInformation Optional[string] `json:"legal_information" url:"legal_information,omitempty"`
|
LegalInformation Optional[string] `json:"legal_information" url:"legal_information,omitempty"`
|
||||||
ApplicationEmailAdmins Optional[bool] `json:"application_email_admins" url:"application_email_admins,omitempty"`
|
|
||||||
HideModlogModNames Optional[bool] `json:"hide_modlog_mod_names" url:"hide_modlog_mod_names,omitempty"`
|
|
||||||
DiscussionLanguages Optional[[]int] `json:"discussion_languages" url:"discussion_languages,omitempty"`
|
|
||||||
SlurFilterRegex Optional[string] `json:"slur_filter_regex" url:"slur_filter_regex,omitempty"`
|
|
||||||
ActorNameMaxLength Optional[int32] `json:"actor_name_max_length" url:"actor_name_max_length,omitempty"`
|
|
||||||
RateLimitMessage Optional[int32] `json:"rate_limit_message" url:"rate_limit_message,omitempty"`
|
|
||||||
RateLimitMessagePerSecond Optional[int32] `json:"rate_limit_message_per_second" url:"rate_limit_message_per_second,omitempty"`
|
|
||||||
RateLimitPost Optional[int32] `json:"rate_limit_post" url:"rate_limit_post,omitempty"`
|
|
||||||
RateLimitPostPerSecond Optional[int32] `json:"rate_limit_post_per_second" url:"rate_limit_post_per_second,omitempty"`
|
|
||||||
RateLimitRegister Optional[int32] `json:"rate_limit_register" url:"rate_limit_register,omitempty"`
|
|
||||||
RateLimitRegisterPerSecond Optional[int32] `json:"rate_limit_register_per_second" url:"rate_limit_register_per_second,omitempty"`
|
|
||||||
RateLimitImage Optional[int32] `json:"rate_limit_image" url:"rate_limit_image,omitempty"`
|
|
||||||
RateLimitImagePerSecond Optional[int32] `json:"rate_limit_image_per_second" url:"rate_limit_image_per_second,omitempty"`
|
|
||||||
RateLimitComment Optional[int32] `json:"rate_limit_comment" url:"rate_limit_comment,omitempty"`
|
|
||||||
RateLimitCommentPerSecond Optional[int32] `json:"rate_limit_comment_per_second" url:"rate_limit_comment_per_second,omitempty"`
|
|
||||||
RateLimitSearch Optional[int32] `json:"rate_limit_search" url:"rate_limit_search,omitempty"`
|
|
||||||
RateLimitSearchPerSecond Optional[int32] `json:"rate_limit_search_per_second" url:"rate_limit_search_per_second,omitempty"`
|
|
||||||
FederationEnabled Optional[bool] `json:"federation_enabled" url:"federation_enabled,omitempty"`
|
|
||||||
FederationDebug Optional[bool] `json:"federation_debug" url:"federation_debug,omitempty"`
|
|
||||||
FederationWorkerCount Optional[int32] `json:"federation_worker_count" url:"federation_worker_count,omitempty"`
|
|
||||||
CaptchaEnabled Optional[bool] `json:"captcha_enabled" url:"captcha_enabled,omitempty"`
|
|
||||||
CaptchaDifficulty Optional[string] `json:"captcha_difficulty" url:"captcha_difficulty,omitempty"`
|
|
||||||
AllowedInstances Optional[[]string] `json:"allowed_instances" url:"allowed_instances,omitempty"`
|
|
||||||
BlockedInstances Optional[[]string] `json:"blocked_instances" url:"blocked_instances,omitempty"`
|
|
||||||
Taglines Optional[[]string] `json:"taglines" url:"taglines,omitempty"`
|
|
||||||
RegistrationMode Optional[RegistrationMode] `json:"registration_mode" url:"registration_mode,omitempty"`
|
|
||||||
ReportsEmailAdmins Optional[bool] `json:"reports_email_admins" url:"reports_email_admins,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
type GetSite struct {
|
type GetSite struct {
|
||||||
@@ -156,21 +97,11 @@ type SiteResponse struct {
|
|||||||
LemmyResponse
|
LemmyResponse
|
||||||
}
|
}
|
||||||
type GetSiteResponse struct {
|
type GetSiteResponse struct {
|
||||||
SiteView SiteView `json:"site_view" url:"site_view,omitempty"`
|
SiteView Optional[SiteView] `json:"site_view" url:"site_view,omitempty"`
|
||||||
Admins []PersonViewSafe `json:"admins" url:"admins,omitempty"`
|
Admins []PersonViewSafe `json:"admins" url:"admins,omitempty"`
|
||||||
Online uint `json:"online" url:"online,omitempty"`
|
Online uint `json:"online" url:"online,omitempty"`
|
||||||
Version string `json:"version" url:"version,omitempty"`
|
Version string `json:"version" url:"version,omitempty"`
|
||||||
MyUser Optional[MyUserInfo] `json:"my_user" url:"my_user,omitempty"`
|
MyUser Optional[MyUserInfo] `json:"my_user" url:"my_user,omitempty"`
|
||||||
FederatedInstances Optional[FederatedInstances] `json:"federated_instances" url:"federated_instances,omitempty"`
|
|
||||||
AllLanguages []Language `json:"all_languages" url:"all_languages,omitempty"`
|
|
||||||
DiscussionLanguages []int `json:"discussion_languages" url:"discussion_languages,omitempty"`
|
|
||||||
Taglines Optional[[]Tagline] `json:"taglines" url:"taglines,omitempty"`
|
|
||||||
LemmyResponse
|
|
||||||
}
|
|
||||||
type GetFederatedInstances struct {
|
|
||||||
Auth Optional[string] `json:"auth" url:"auth,omitempty"`
|
|
||||||
}
|
|
||||||
type GetFederatedInstancesResponse struct {
|
|
||||||
FederatedInstances Optional[FederatedInstances] `json:"federated_instances" url:"federated_instances,omitempty"`
|
FederatedInstances Optional[FederatedInstances] `json:"federated_instances" url:"federated_instances,omitempty"`
|
||||||
LemmyResponse
|
LemmyResponse
|
||||||
}
|
}
|
||||||
@@ -180,40 +111,26 @@ type MyUserInfo struct {
|
|||||||
Moderates []CommunityModeratorView `json:"moderates" url:"moderates,omitempty"`
|
Moderates []CommunityModeratorView `json:"moderates" url:"moderates,omitempty"`
|
||||||
CommunityBlocks []CommunityBlockView `json:"community_blocks" url:"community_blocks,omitempty"`
|
CommunityBlocks []CommunityBlockView `json:"community_blocks" url:"community_blocks,omitempty"`
|
||||||
PersonBlocks []PersonBlockView `json:"person_blocks" url:"person_blocks,omitempty"`
|
PersonBlocks []PersonBlockView `json:"person_blocks" url:"person_blocks,omitempty"`
|
||||||
DiscussionLanguages []int `json:"discussion_languages" url:"discussion_languages,omitempty"`
|
|
||||||
}
|
}
|
||||||
type LeaveAdmin struct {
|
type LeaveAdmin struct {
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
}
|
}
|
||||||
|
type GetSiteConfig struct {
|
||||||
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
|
}
|
||||||
|
type GetSiteConfigResponse struct {
|
||||||
|
ConfigHjson string `json:"config_hjson" url:"config_hjson,omitempty"`
|
||||||
|
LemmyResponse
|
||||||
|
}
|
||||||
|
type SaveSiteConfig struct {
|
||||||
|
ConfigHjson string `json:"config_hjson" url:"config_hjson,omitempty"`
|
||||||
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
|
}
|
||||||
type FederatedInstances struct {
|
type FederatedInstances struct {
|
||||||
Linked []string `json:"linked" url:"linked,omitempty"`
|
Linked []string `json:"linked" url:"linked,omitempty"`
|
||||||
Allowed Optional[[]string] `json:"allowed" url:"allowed,omitempty"`
|
Allowed Optional[[]string] `json:"allowed" url:"allowed,omitempty"`
|
||||||
Blocked Optional[[]string] `json:"blocked" url:"blocked,omitempty"`
|
Blocked Optional[[]string] `json:"blocked" url:"blocked,omitempty"`
|
||||||
}
|
}
|
||||||
type PurgePerson struct {
|
|
||||||
PersonID int `json:"person_id" url:"person_id,omitempty"`
|
|
||||||
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
|
||||||
}
|
|
||||||
type PurgeCommunity struct {
|
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
|
||||||
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
|
||||||
}
|
|
||||||
type PurgePost struct {
|
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
|
||||||
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
|
||||||
}
|
|
||||||
type PurgeComment struct {
|
|
||||||
CommentID int `json:"comment_id" url:"comment_id,omitempty"`
|
|
||||||
Reason Optional[string] `json:"reason" url:"reason,omitempty"`
|
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
|
||||||
}
|
|
||||||
type PurgeItemResponse struct {
|
|
||||||
Success bool `json:"success" url:"success,omitempty"`
|
|
||||||
LemmyResponse
|
|
||||||
}
|
|
||||||
type ListRegistrationApplications struct {
|
type ListRegistrationApplications struct {
|
||||||
UnreadOnly Optional[bool] `json:"unread_only" url:"unread_only,omitempty"`
|
UnreadOnly Optional[bool] `json:"unread_only" url:"unread_only,omitempty"`
|
||||||
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
||||||
|
|||||||
+60
-48
@@ -1,63 +1,75 @@
|
|||||||
// Source: lemmy/crates/db_views_actor/src/structs.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type CommunityBlockView struct {
|
type CommentReportView struct {
|
||||||
Person PersonSafe `json:"person" url:"person,omitempty"`
|
CommentReport CommentReport `json:"comment_report" url:"comment_report,omitempty"`
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
|
||||||
}
|
|
||||||
type CommunityFollowerView struct {
|
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
|
||||||
Follower PersonSafe `json:"follower" url:"follower,omitempty"`
|
|
||||||
}
|
|
||||||
type CommunityModeratorView struct {
|
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
|
||||||
Moderator PersonSafe `json:"moderator" url:"moderator,omitempty"`
|
|
||||||
}
|
|
||||||
type CommunityPersonBanView struct {
|
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
|
||||||
Person PersonSafe `json:"person" url:"person,omitempty"`
|
|
||||||
}
|
|
||||||
type CommunityView struct {
|
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
|
||||||
Subscribed SubscribedType `json:"subscribed" url:"subscribed,omitempty"`
|
|
||||||
Blocked bool `json:"blocked" url:"blocked,omitempty"`
|
|
||||||
Counts CommunityAggregates `json:"counts" url:"counts,omitempty"`
|
|
||||||
}
|
|
||||||
type PersonBlockView struct {
|
|
||||||
Person PersonSafe `json:"person" url:"person,omitempty"`
|
|
||||||
Target PersonSafe `json:"target" url:"target,omitempty"`
|
|
||||||
}
|
|
||||||
type PersonMentionView struct {
|
|
||||||
PersonMention PersonMention `json:"person_mention" url:"person_mention,omitempty"`
|
|
||||||
Comment Comment `json:"comment" url:"comment,omitempty"`
|
Comment Comment `json:"comment" url:"comment,omitempty"`
|
||||||
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
|
||||||
Post Post `json:"post" url:"post,omitempty"`
|
Post Post `json:"post" url:"post,omitempty"`
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
Recipient PersonSafe `json:"recipient" url:"recipient,omitempty"`
|
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
||||||
|
CommentCreator PersonSafeAlias1 `json:"comment_creator" url:"comment_creator,omitempty"`
|
||||||
Counts CommentAggregates `json:"counts" url:"counts,omitempty"`
|
Counts CommentAggregates `json:"counts" url:"counts,omitempty"`
|
||||||
CreatorBannedFromCommunity bool `json:"creator_banned_from_community" url:"creator_banned_from_community,omitempty"`
|
CreatorBannedFromCommunity bool `json:"creator_banned_from_community" url:"creator_banned_from_community,omitempty"`
|
||||||
Subscribed SubscribedType `json:"subscribed" url:"subscribed,omitempty"`
|
MyVote Optional[int16] `json:"my_vote" url:"my_vote,omitempty"`
|
||||||
|
Resolver Optional[PersonSafeAlias2] `json:"resolver" url:"resolver,omitempty"`
|
||||||
|
}
|
||||||
|
type CommentView struct {
|
||||||
|
Comment Comment `json:"comment" url:"comment,omitempty"`
|
||||||
|
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
||||||
|
Recipient Optional[PersonSafeAlias1] `json:"recipient" url:"recipient,omitempty"`
|
||||||
|
Post Post `json:"post" url:"post,omitempty"`
|
||||||
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
|
Counts CommentAggregates `json:"counts" url:"counts,omitempty"`
|
||||||
|
CreatorBannedFromCommunity bool `json:"creator_banned_from_community" url:"creator_banned_from_community,omitempty"`
|
||||||
|
Subscribed bool `json:"subscribed" url:"subscribed,omitempty"`
|
||||||
Saved bool `json:"saved" url:"saved,omitempty"`
|
Saved bool `json:"saved" url:"saved,omitempty"`
|
||||||
CreatorBlocked bool `json:"creator_blocked" url:"creator_blocked,omitempty"`
|
CreatorBlocked bool `json:"creator_blocked" url:"creator_blocked,omitempty"`
|
||||||
MyVote Optional[int16] `json:"my_vote" url:"my_vote,omitempty"`
|
MyVote Optional[int16] `json:"my_vote" url:"my_vote,omitempty"`
|
||||||
}
|
}
|
||||||
type CommentReplyView struct {
|
type LocalUserView struct {
|
||||||
CommentReply CommentReply `json:"comment_reply" url:"comment_reply,omitempty"`
|
LocalUser LocalUser `json:"local_user" url:"local_user,omitempty"`
|
||||||
Comment Comment `json:"comment" url:"comment,omitempty"`
|
Person Person `json:"person" url:"person,omitempty"`
|
||||||
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
Counts PersonAggregates `json:"counts" url:"counts,omitempty"`
|
||||||
Post Post `json:"post" url:"post,omitempty"`
|
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
|
||||||
Recipient PersonSafe `json:"recipient" url:"recipient,omitempty"`
|
|
||||||
Counts CommentAggregates `json:"counts" url:"counts,omitempty"`
|
|
||||||
CreatorBannedFromCommunity bool `json:"creator_banned_from_community" url:"creator_banned_from_community,omitempty"`
|
|
||||||
Subscribed SubscribedType `json:"subscribed" url:"subscribed,omitempty"`
|
|
||||||
Saved bool `json:"saved" url:"saved,omitempty"`
|
|
||||||
CreatorBlocked bool `json:"creator_blocked" url:"creator_blocked,omitempty"`
|
|
||||||
MyVote Optional[int16] `json:"my_vote" url:"my_vote,omitempty"`
|
|
||||||
}
|
}
|
||||||
type PersonViewSafe struct {
|
type LocalUserSettingsView struct {
|
||||||
|
LocalUser LocalUserSettings `json:"local_user" url:"local_user,omitempty"`
|
||||||
Person PersonSafe `json:"person" url:"person,omitempty"`
|
Person PersonSafe `json:"person" url:"person,omitempty"`
|
||||||
Counts PersonAggregates `json:"counts" url:"counts,omitempty"`
|
Counts PersonAggregates `json:"counts" url:"counts,omitempty"`
|
||||||
}
|
}
|
||||||
|
type PostReportView struct {
|
||||||
|
PostReport PostReport `json:"post_report" url:"post_report,omitempty"`
|
||||||
|
Post Post `json:"post" url:"post,omitempty"`
|
||||||
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
|
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
||||||
|
PostCreator PersonSafeAlias1 `json:"post_creator" url:"post_creator,omitempty"`
|
||||||
|
CreatorBannedFromCommunity bool `json:"creator_banned_from_community" url:"creator_banned_from_community,omitempty"`
|
||||||
|
MyVote Optional[int16] `json:"my_vote" url:"my_vote,omitempty"`
|
||||||
|
Counts PostAggregates `json:"counts" url:"counts,omitempty"`
|
||||||
|
Resolver Optional[PersonSafeAlias2] `json:"resolver" url:"resolver,omitempty"`
|
||||||
|
}
|
||||||
|
type PostView struct {
|
||||||
|
Post Post `json:"post" url:"post,omitempty"`
|
||||||
|
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
||||||
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
|
CreatorBannedFromCommunity bool `json:"creator_banned_from_community" url:"creator_banned_from_community,omitempty"`
|
||||||
|
Counts PostAggregates `json:"counts" url:"counts,omitempty"`
|
||||||
|
Subscribed bool `json:"subscribed" url:"subscribed,omitempty"`
|
||||||
|
Saved bool `json:"saved" url:"saved,omitempty"`
|
||||||
|
Read bool `json:"read" url:"read,omitempty"`
|
||||||
|
CreatorBlocked bool `json:"creator_blocked" url:"creator_blocked,omitempty"`
|
||||||
|
MyVote Optional[int16] `json:"my_vote" url:"my_vote,omitempty"`
|
||||||
|
}
|
||||||
|
type PrivateMessageView struct {
|
||||||
|
PrivateMessage PrivateMessage `json:"private_message" url:"private_message,omitempty"`
|
||||||
|
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
||||||
|
Recipient PersonSafeAlias1 `json:"recipient" url:"recipient,omitempty"`
|
||||||
|
}
|
||||||
|
type RegistrationApplicationView struct {
|
||||||
|
RegistrationApplication RegistrationApplication `json:"registration_application" url:"registration_application,omitempty"`
|
||||||
|
CreatorLocalUser LocalUserSettings `json:"creator_local_user" url:"creator_local_user,omitempty"`
|
||||||
|
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
||||||
|
Admin Optional[PersonSafeAlias1] `json:"admin" url:"admin,omitempty"`
|
||||||
|
}
|
||||||
|
type SiteView struct {
|
||||||
|
Site Site `json:"site" url:"site,omitempty"`
|
||||||
|
Counts SiteAggregates `json:"counts" url:"counts,omitempty"`
|
||||||
|
}
|
||||||
|
|||||||
+52
-73
@@ -1,87 +1,66 @@
|
|||||||
// Source: lemmy/crates/db_views/src/structs.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type CommentReportView struct {
|
type ModAddCommunityView struct {
|
||||||
CommentReport CommentReport `json:"comment_report" url:"comment_report,omitempty"`
|
ModAddCommunity ModAddCommunity `json:"mod_add_community" url:"mod_add_community,omitempty"`
|
||||||
|
Moderator PersonSafe `json:"moderator" url:"moderator,omitempty"`
|
||||||
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
|
ModdedPerson PersonSafeAlias1 `json:"modded_person" url:"modded_person,omitempty"`
|
||||||
|
}
|
||||||
|
type ModAddView struct {
|
||||||
|
ModAdd ModAdd `json:"mod_add" url:"mod_add,omitempty"`
|
||||||
|
Moderator PersonSafe `json:"moderator" url:"moderator,omitempty"`
|
||||||
|
ModdedPerson PersonSafeAlias1 `json:"modded_person" url:"modded_person,omitempty"`
|
||||||
|
}
|
||||||
|
type ModBanFromCommunityView struct {
|
||||||
|
ModBanFromCommunity ModBanFromCommunity `json:"mod_ban_from_community" url:"mod_ban_from_community,omitempty"`
|
||||||
|
Moderator PersonSafe `json:"moderator" url:"moderator,omitempty"`
|
||||||
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
|
BannedPerson PersonSafeAlias1 `json:"banned_person" url:"banned_person,omitempty"`
|
||||||
|
}
|
||||||
|
type ModBanView struct {
|
||||||
|
ModBan ModBan `json:"mod_ban" url:"mod_ban,omitempty"`
|
||||||
|
Moderator PersonSafe `json:"moderator" url:"moderator,omitempty"`
|
||||||
|
BannedPerson PersonSafeAlias1 `json:"banned_person" url:"banned_person,omitempty"`
|
||||||
|
}
|
||||||
|
type ModHideCommunityView struct {
|
||||||
|
ModHideCommunity ModHideCommunity `json:"mod_hide_community" url:"mod_hide_community,omitempty"`
|
||||||
|
Admin PersonSafe `json:"admin" url:"admin,omitempty"`
|
||||||
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
|
}
|
||||||
|
type ModLockPostView struct {
|
||||||
|
ModLockPost ModLockPost `json:"mod_lock_post" url:"mod_lock_post,omitempty"`
|
||||||
|
Moderator PersonSafe `json:"moderator" url:"moderator,omitempty"`
|
||||||
|
Post Post `json:"post" url:"post,omitempty"`
|
||||||
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
|
}
|
||||||
|
type ModRemoveCommentView struct {
|
||||||
|
ModRemoveComment ModRemoveComment `json:"mod_remove_comment" url:"mod_remove_comment,omitempty"`
|
||||||
|
Moderator PersonSafe `json:"moderator" url:"moderator,omitempty"`
|
||||||
Comment Comment `json:"comment" url:"comment,omitempty"`
|
Comment Comment `json:"comment" url:"comment,omitempty"`
|
||||||
|
Commenter PersonSafeAlias1 `json:"commenter" url:"commenter,omitempty"`
|
||||||
Post Post `json:"post" url:"post,omitempty"`
|
Post Post `json:"post" url:"post,omitempty"`
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
|
||||||
CommentCreator PersonSafe `json:"comment_creator" url:"comment_creator,omitempty"`
|
|
||||||
Counts CommentAggregates `json:"counts" url:"counts,omitempty"`
|
|
||||||
CreatorBannedFromCommunity bool `json:"creator_banned_from_community" url:"creator_banned_from_community,omitempty"`
|
|
||||||
MyVote Optional[int16] `json:"my_vote" url:"my_vote,omitempty"`
|
|
||||||
Resolver Optional[PersonSafe] `json:"resolver" url:"resolver,omitempty"`
|
|
||||||
}
|
}
|
||||||
type CommentView struct {
|
type ModRemoveCommunityView struct {
|
||||||
Comment Comment `json:"comment" url:"comment,omitempty"`
|
ModRemoveCommunity ModRemoveCommunity `json:"mod_remove_community" url:"mod_remove_community,omitempty"`
|
||||||
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
Moderator PersonSafe `json:"moderator" url:"moderator,omitempty"`
|
||||||
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
|
}
|
||||||
|
type ModRemovePostView struct {
|
||||||
|
ModRemovePost ModRemovePost `json:"mod_remove_post" url:"mod_remove_post,omitempty"`
|
||||||
|
Moderator PersonSafe `json:"moderator" url:"moderator,omitempty"`
|
||||||
Post Post `json:"post" url:"post,omitempty"`
|
Post Post `json:"post" url:"post,omitempty"`
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
Counts CommentAggregates `json:"counts" url:"counts,omitempty"`
|
|
||||||
CreatorBannedFromCommunity bool `json:"creator_banned_from_community" url:"creator_banned_from_community,omitempty"`
|
|
||||||
Subscribed SubscribedType `json:"subscribed" url:"subscribed,omitempty"`
|
|
||||||
Saved bool `json:"saved" url:"saved,omitempty"`
|
|
||||||
CreatorBlocked bool `json:"creator_blocked" url:"creator_blocked,omitempty"`
|
|
||||||
MyVote Optional[int16] `json:"my_vote" url:"my_vote,omitempty"`
|
|
||||||
}
|
}
|
||||||
type LocalUserView struct {
|
type ModStickyPostView struct {
|
||||||
LocalUser LocalUser `json:"local_user" url:"local_user,omitempty"`
|
ModStickyPost ModStickyPost `json:"mod_sticky_post" url:"mod_sticky_post,omitempty"`
|
||||||
Person Person `json:"person" url:"person,omitempty"`
|
Moderator PersonSafe `json:"moderator" url:"moderator,omitempty"`
|
||||||
Counts PersonAggregates `json:"counts" url:"counts,omitempty"`
|
|
||||||
}
|
|
||||||
type LocalUserSettingsView struct {
|
|
||||||
LocalUser LocalUserSettings `json:"local_user" url:"local_user,omitempty"`
|
|
||||||
Person PersonSafe `json:"person" url:"person,omitempty"`
|
|
||||||
Counts PersonAggregates `json:"counts" url:"counts,omitempty"`
|
|
||||||
}
|
|
||||||
type PostReportView struct {
|
|
||||||
PostReport PostReport `json:"post_report" url:"post_report,omitempty"`
|
|
||||||
Post Post `json:"post" url:"post,omitempty"`
|
Post Post `json:"post" url:"post,omitempty"`
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
|
||||||
PostCreator PersonSafe `json:"post_creator" url:"post_creator,omitempty"`
|
|
||||||
CreatorBannedFromCommunity bool `json:"creator_banned_from_community" url:"creator_banned_from_community,omitempty"`
|
|
||||||
MyVote Optional[int16] `json:"my_vote" url:"my_vote,omitempty"`
|
|
||||||
Counts PostAggregates `json:"counts" url:"counts,omitempty"`
|
|
||||||
Resolver Optional[PersonSafe] `json:"resolver" url:"resolver,omitempty"`
|
|
||||||
}
|
}
|
||||||
type PostView struct {
|
type ModTransferCommunityView struct {
|
||||||
Post Post `json:"post" url:"post,omitempty"`
|
ModTransferCommunity ModTransferCommunity `json:"mod_transfer_community" url:"mod_transfer_community,omitempty"`
|
||||||
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
Moderator PersonSafe `json:"moderator" url:"moderator,omitempty"`
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
CreatorBannedFromCommunity bool `json:"creator_banned_from_community" url:"creator_banned_from_community,omitempty"`
|
ModdedPerson PersonSafeAlias1 `json:"modded_person" url:"modded_person,omitempty"`
|
||||||
Counts PostAggregates `json:"counts" url:"counts,omitempty"`
|
|
||||||
Subscribed SubscribedType `json:"subscribed" url:"subscribed,omitempty"`
|
|
||||||
Saved bool `json:"saved" url:"saved,omitempty"`
|
|
||||||
Read bool `json:"read" url:"read,omitempty"`
|
|
||||||
CreatorBlocked bool `json:"creator_blocked" url:"creator_blocked,omitempty"`
|
|
||||||
MyVote Optional[int16] `json:"my_vote" url:"my_vote,omitempty"`
|
|
||||||
UnreadComments int64 `json:"unread_comments" url:"unread_comments,omitempty"`
|
|
||||||
}
|
|
||||||
type PrivateMessageView struct {
|
|
||||||
PrivateMessage PrivateMessage `json:"private_message" url:"private_message,omitempty"`
|
|
||||||
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
|
||||||
Recipient PersonSafe `json:"recipient" url:"recipient,omitempty"`
|
|
||||||
}
|
|
||||||
type PrivateMessageReportView struct {
|
|
||||||
PrivateMessageReport PrivateMessageReport `json:"private_message_report" url:"private_message_report,omitempty"`
|
|
||||||
PrivateMessage PrivateMessage `json:"private_message" url:"private_message,omitempty"`
|
|
||||||
PrivateMessageCreator PersonSafe `json:"private_message_creator" url:"private_message_creator,omitempty"`
|
|
||||||
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
|
||||||
Resolver Optional[PersonSafe] `json:"resolver" url:"resolver,omitempty"`
|
|
||||||
}
|
|
||||||
type RegistrationApplicationView struct {
|
|
||||||
RegistrationApplication RegistrationApplication `json:"registration_application" url:"registration_application,omitempty"`
|
|
||||||
CreatorLocalUser LocalUserSettings `json:"creator_local_user" url:"creator_local_user,omitempty"`
|
|
||||||
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
|
||||||
Admin Optional[PersonSafe] `json:"admin" url:"admin,omitempty"`
|
|
||||||
}
|
|
||||||
type SiteView struct {
|
|
||||||
Site Site `json:"site" url:"site,omitempty"`
|
|
||||||
LocalSite LocalSite `json:"local_site" url:"local_site,omitempty"`
|
|
||||||
LocalSiteRateLimit LocalSiteRateLimit `json:"local_site_rate_limit" url:"local_site_rate_limit,omitempty"`
|
|
||||||
Counts SiteAggregates `json:"counts" url:"counts,omitempty"`
|
|
||||||
}
|
}
|
||||||
|
|||||||
+47
-88
@@ -1,95 +1,54 @@
|
|||||||
// Source: lemmy/crates/db_views_moderator/src/structs.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type ModAddCommunityView struct {
|
type CommentAggregates struct {
|
||||||
ModAddCommunity ModAddCommunity `json:"mod_add_community" url:"mod_add_community,omitempty"`
|
ID int32 `json:"id" url:"id,omitempty"`
|
||||||
Moderator Optional[PersonSafe] `json:"moderator" url:"moderator,omitempty"`
|
CommentID int `json:"comment_id" url:"comment_id,omitempty"`
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
Score int64 `json:"score" url:"score,omitempty"`
|
||||||
ModdedPerson PersonSafe `json:"modded_person" url:"modded_person,omitempty"`
|
Upvotes int64 `json:"upvotes" url:"upvotes,omitempty"`
|
||||||
|
Downvotes int64 `json:"downvotes" url:"downvotes,omitempty"`
|
||||||
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
}
|
}
|
||||||
type ModAddView struct {
|
type CommunityAggregates struct {
|
||||||
ModAdd ModAdd `json:"mod_add" url:"mod_add,omitempty"`
|
ID int32 `json:"id" url:"id,omitempty"`
|
||||||
Moderator Optional[PersonSafe] `json:"moderator" url:"moderator,omitempty"`
|
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
||||||
ModdedPerson PersonSafe `json:"modded_person" url:"modded_person,omitempty"`
|
Subscribers int64 `json:"subscribers" url:"subscribers,omitempty"`
|
||||||
|
Posts int64 `json:"posts" url:"posts,omitempty"`
|
||||||
|
Comments int64 `json:"comments" url:"comments,omitempty"`
|
||||||
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
|
UsersActiveDay int64 `json:"users_active_day" url:"users_active_day,omitempty"`
|
||||||
|
UsersActiveWeek int64 `json:"users_active_week" url:"users_active_week,omitempty"`
|
||||||
|
UsersActiveMonth int64 `json:"users_active_month" url:"users_active_month,omitempty"`
|
||||||
|
UsersActiveHalfYear int64 `json:"users_active_half_year" url:"users_active_half_year,omitempty"`
|
||||||
}
|
}
|
||||||
type ModBanFromCommunityView struct {
|
type PersonAggregates struct {
|
||||||
ModBanFromCommunity ModBanFromCommunity `json:"mod_ban_from_community" url:"mod_ban_from_community,omitempty"`
|
ID int32 `json:"id" url:"id,omitempty"`
|
||||||
Moderator Optional[PersonSafe] `json:"moderator" url:"moderator,omitempty"`
|
PersonID int `json:"person_id" url:"person_id,omitempty"`
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
PostCount int64 `json:"post_count" url:"post_count,omitempty"`
|
||||||
BannedPerson PersonSafe `json:"banned_person" url:"banned_person,omitempty"`
|
PostScore int64 `json:"post_score" url:"post_score,omitempty"`
|
||||||
|
CommentCount int64 `json:"comment_count" url:"comment_count,omitempty"`
|
||||||
|
CommentScore int64 `json:"comment_score" url:"comment_score,omitempty"`
|
||||||
}
|
}
|
||||||
type ModBanView struct {
|
type PostAggregates struct {
|
||||||
ModBan ModBan `json:"mod_ban" url:"mod_ban,omitempty"`
|
ID int32 `json:"id" url:"id,omitempty"`
|
||||||
Moderator Optional[PersonSafe] `json:"moderator" url:"moderator,omitempty"`
|
PostID int `json:"post_id" url:"post_id,omitempty"`
|
||||||
BannedPerson PersonSafe `json:"banned_person" url:"banned_person,omitempty"`
|
Comments int64 `json:"comments" url:"comments,omitempty"`
|
||||||
|
Score int64 `json:"score" url:"score,omitempty"`
|
||||||
|
Upvotes int64 `json:"upvotes" url:"upvotes,omitempty"`
|
||||||
|
Downvotes int64 `json:"downvotes" url:"downvotes,omitempty"`
|
||||||
|
Stickied bool `json:"stickied" url:"stickied,omitempty"`
|
||||||
|
Published LemmyTime `json:"published" url:"published,omitempty"`
|
||||||
|
NewestCommentTimeNecro LemmyTime `json:"newest_comment_time_necro" url:"newest_comment_time_necro,omitempty"`
|
||||||
|
NewestCommentTime LemmyTime `json:"newest_comment_time" url:"newest_comment_time,omitempty"`
|
||||||
}
|
}
|
||||||
type ModHideCommunityView struct {
|
type SiteAggregates struct {
|
||||||
ModHideCommunity ModHideCommunity `json:"mod_hide_community" url:"mod_hide_community,omitempty"`
|
ID int32 `json:"id" url:"id,omitempty"`
|
||||||
Admin Optional[PersonSafe] `json:"admin" url:"admin,omitempty"`
|
SiteID int32 `json:"site_id" url:"site_id,omitempty"`
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
Users int64 `json:"users" url:"users,omitempty"`
|
||||||
}
|
Posts int64 `json:"posts" url:"posts,omitempty"`
|
||||||
type ModLockPostView struct {
|
Comments int64 `json:"comments" url:"comments,omitempty"`
|
||||||
ModLockPost ModLockPost `json:"mod_lock_post" url:"mod_lock_post,omitempty"`
|
Communities int64 `json:"communities" url:"communities,omitempty"`
|
||||||
Moderator Optional[PersonSafe] `json:"moderator" url:"moderator,omitempty"`
|
UsersActiveDay int64 `json:"users_active_day" url:"users_active_day,omitempty"`
|
||||||
Post Post `json:"post" url:"post,omitempty"`
|
UsersActiveWeek int64 `json:"users_active_week" url:"users_active_week,omitempty"`
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
UsersActiveMonth int64 `json:"users_active_month" url:"users_active_month,omitempty"`
|
||||||
}
|
UsersActiveHalfYear int64 `json:"users_active_half_year" url:"users_active_half_year,omitempty"`
|
||||||
type ModRemoveCommentView struct {
|
|
||||||
ModRemoveComment ModRemoveComment `json:"mod_remove_comment" url:"mod_remove_comment,omitempty"`
|
|
||||||
Moderator Optional[PersonSafe] `json:"moderator" url:"moderator,omitempty"`
|
|
||||||
Comment Comment `json:"comment" url:"comment,omitempty"`
|
|
||||||
Commenter PersonSafe `json:"commenter" url:"commenter,omitempty"`
|
|
||||||
Post Post `json:"post" url:"post,omitempty"`
|
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
|
||||||
}
|
|
||||||
type ModRemoveCommunityView struct {
|
|
||||||
ModRemoveCommunity ModRemoveCommunity `json:"mod_remove_community" url:"mod_remove_community,omitempty"`
|
|
||||||
Moderator Optional[PersonSafe] `json:"moderator" url:"moderator,omitempty"`
|
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
|
||||||
}
|
|
||||||
type ModRemovePostView struct {
|
|
||||||
ModRemovePost ModRemovePost `json:"mod_remove_post" url:"mod_remove_post,omitempty"`
|
|
||||||
Moderator Optional[PersonSafe] `json:"moderator" url:"moderator,omitempty"`
|
|
||||||
Post Post `json:"post" url:"post,omitempty"`
|
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
|
||||||
}
|
|
||||||
type ModFeaturePostView struct {
|
|
||||||
ModFeaturePost ModFeaturePost `json:"mod_feature_post" url:"mod_feature_post,omitempty"`
|
|
||||||
Moderator Optional[PersonSafe] `json:"moderator" url:"moderator,omitempty"`
|
|
||||||
Post Post `json:"post" url:"post,omitempty"`
|
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
|
||||||
}
|
|
||||||
type ModTransferCommunityView struct {
|
|
||||||
ModTransferCommunity ModTransferCommunity `json:"mod_transfer_community" url:"mod_transfer_community,omitempty"`
|
|
||||||
Moderator Optional[PersonSafe] `json:"moderator" url:"moderator,omitempty"`
|
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
|
||||||
ModdedPerson PersonSafe `json:"modded_person" url:"modded_person,omitempty"`
|
|
||||||
}
|
|
||||||
type AdminPurgeCommentView struct {
|
|
||||||
AdminPurgeComment AdminPurgeComment `json:"admin_purge_comment" url:"admin_purge_comment,omitempty"`
|
|
||||||
Admin Optional[PersonSafe] `json:"admin" url:"admin,omitempty"`
|
|
||||||
Post Post `json:"post" url:"post,omitempty"`
|
|
||||||
}
|
|
||||||
type AdminPurgeCommunityView struct {
|
|
||||||
AdminPurgeCommunity AdminPurgeCommunity `json:"admin_purge_community" url:"admin_purge_community,omitempty"`
|
|
||||||
Admin Optional[PersonSafe] `json:"admin" url:"admin,omitempty"`
|
|
||||||
}
|
|
||||||
type AdminPurgePersonView struct {
|
|
||||||
AdminPurgePerson AdminPurgePerson `json:"admin_purge_person" url:"admin_purge_person,omitempty"`
|
|
||||||
Admin Optional[PersonSafe] `json:"admin" url:"admin,omitempty"`
|
|
||||||
}
|
|
||||||
type AdminPurgePostView struct {
|
|
||||||
AdminPurgePost AdminPurgePost `json:"admin_purge_post" url:"admin_purge_post,omitempty"`
|
|
||||||
Admin Optional[PersonSafe] `json:"admin" url:"admin,omitempty"`
|
|
||||||
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
|
||||||
}
|
|
||||||
type ModlogListParams struct {
|
|
||||||
CommunityID Optional[int] `json:"community_id" url:"community_id,omitempty"`
|
|
||||||
ModPersonID Optional[int] `json:"mod_person_id" url:"mod_person_id,omitempty"`
|
|
||||||
OtherPersonID Optional[int] `json:"other_person_id" url:"other_person_id,omitempty"`
|
|
||||||
Page Optional[int64] `json:"page" url:"page,omitempty"`
|
|
||||||
Limit Optional[int64] `json:"limit" url:"limit,omitempty"`
|
|
||||||
HideModlogNames bool `json:"hide_modlog_names" url:"hide_modlog_names,omitempty"`
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,72 +0,0 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/aggregates/structs.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type CommentAggregates struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
CommentID int `json:"comment_id" url:"comment_id,omitempty"`
|
|
||||||
Score int64 `json:"score" url:"score,omitempty"`
|
|
||||||
Upvotes int64 `json:"upvotes" url:"upvotes,omitempty"`
|
|
||||||
Downvotes int64 `json:"downvotes" url:"downvotes,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
ChildCount int32 `json:"child_count" url:"child_count,omitempty"`
|
|
||||||
}
|
|
||||||
type CommunityAggregates struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
|
||||||
Subscribers int64 `json:"subscribers" url:"subscribers,omitempty"`
|
|
||||||
Posts int64 `json:"posts" url:"posts,omitempty"`
|
|
||||||
Comments int64 `json:"comments" url:"comments,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
UsersActiveDay int64 `json:"users_active_day" url:"users_active_day,omitempty"`
|
|
||||||
UsersActiveWeek int64 `json:"users_active_week" url:"users_active_week,omitempty"`
|
|
||||||
UsersActiveMonth int64 `json:"users_active_month" url:"users_active_month,omitempty"`
|
|
||||||
UsersActiveHalfYear int64 `json:"users_active_half_year" url:"users_active_half_year,omitempty"`
|
|
||||||
}
|
|
||||||
type PersonAggregates struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
PersonID int `json:"person_id" url:"person_id,omitempty"`
|
|
||||||
PostCount int64 `json:"post_count" url:"post_count,omitempty"`
|
|
||||||
PostScore int64 `json:"post_score" url:"post_score,omitempty"`
|
|
||||||
CommentCount int64 `json:"comment_count" url:"comment_count,omitempty"`
|
|
||||||
CommentScore int64 `json:"comment_score" url:"comment_score,omitempty"`
|
|
||||||
}
|
|
||||||
type PostAggregates struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
|
||||||
Comments int64 `json:"comments" url:"comments,omitempty"`
|
|
||||||
Score int64 `json:"score" url:"score,omitempty"`
|
|
||||||
Upvotes int64 `json:"upvotes" url:"upvotes,omitempty"`
|
|
||||||
Downvotes int64 `json:"downvotes" url:"downvotes,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
NewestCommentTimeNecro LemmyTime `json:"newest_comment_time_necro" url:"newest_comment_time_necro,omitempty"`
|
|
||||||
NewestCommentTime LemmyTime `json:"newest_comment_time" url:"newest_comment_time,omitempty"`
|
|
||||||
FeaturedCommunity bool `json:"featured_community" url:"featured_community,omitempty"`
|
|
||||||
FeaturedLocal bool `json:"featured_local" url:"featured_local,omitempty"`
|
|
||||||
}
|
|
||||||
type PersonPostAggregates struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
PersonID int `json:"person_id" url:"person_id,omitempty"`
|
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
|
||||||
ReadComments int64 `json:"read_comments" url:"read_comments,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
}
|
|
||||||
type PersonPostAggregatesForm struct {
|
|
||||||
PersonID int `json:"person_id" url:"person_id,omitempty"`
|
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
|
||||||
ReadComments int64 `json:"read_comments" url:"read_comments,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
}
|
|
||||||
type SiteAggregates struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
SiteID int `json:"site_id" url:"site_id,omitempty"`
|
|
||||||
Users int64 `json:"users" url:"users,omitempty"`
|
|
||||||
Posts int64 `json:"posts" url:"posts,omitempty"`
|
|
||||||
Comments int64 `json:"comments" url:"comments,omitempty"`
|
|
||||||
Communities int64 `json:"communities" url:"communities,omitempty"`
|
|
||||||
UsersActiveDay int64 `json:"users_active_day" url:"users_active_day,omitempty"`
|
|
||||||
UsersActiveWeek int64 `json:"users_active_week" url:"users_active_week,omitempty"`
|
|
||||||
UsersActiveMonth int64 `json:"users_active_month" url:"users_active_month,omitempty"`
|
|
||||||
UsersActiveHalfYear int64 `json:"users_active_half_year" url:"users_active_half_year,omitempty"`
|
|
||||||
}
|
|
||||||
+36
-28
@@ -1,38 +1,46 @@
|
|||||||
// Source: lemmy/crates/api_common/src/websocket/structs.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type UserJoin struct {
|
type CommunityBlockView struct {
|
||||||
Auth string `json:"auth" url:"auth,omitempty"`
|
Person PersonSafe `json:"person" url:"person,omitempty"`
|
||||||
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
}
|
}
|
||||||
type UserJoinResponse struct {
|
type CommunityFollowerView struct {
|
||||||
Joined bool `json:"joined" url:"joined,omitempty"`
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
LemmyResponse
|
Follower PersonSafe `json:"follower" url:"follower,omitempty"`
|
||||||
}
|
}
|
||||||
type CommunityJoin struct {
|
type CommunityModeratorView struct {
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
|
Moderator PersonSafe `json:"moderator" url:"moderator,omitempty"`
|
||||||
}
|
}
|
||||||
type CommunityJoinResponse struct {
|
type CommunityPersonBanView struct {
|
||||||
Joined bool `json:"joined" url:"joined,omitempty"`
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
LemmyResponse
|
Person PersonSafe `json:"person" url:"person,omitempty"`
|
||||||
}
|
}
|
||||||
type ModJoin struct {
|
type CommunityView struct {
|
||||||
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
|
Subscribed bool `json:"subscribed" url:"subscribed,omitempty"`
|
||||||
|
Blocked bool `json:"blocked" url:"blocked,omitempty"`
|
||||||
|
Counts CommunityAggregates `json:"counts" url:"counts,omitempty"`
|
||||||
}
|
}
|
||||||
type ModJoinResponse struct {
|
type PersonBlockView struct {
|
||||||
Joined bool `json:"joined" url:"joined,omitempty"`
|
Person PersonSafe `json:"person" url:"person,omitempty"`
|
||||||
LemmyResponse
|
Target PersonSafeAlias1 `json:"target" url:"target,omitempty"`
|
||||||
}
|
}
|
||||||
type PostJoin struct {
|
type PersonMentionView struct {
|
||||||
PostID int `json:"post_id" url:"post_id,omitempty"`
|
PersonMention PersonMention `json:"person_mention" url:"person_mention,omitempty"`
|
||||||
|
Comment Comment `json:"comment" url:"comment,omitempty"`
|
||||||
|
Creator PersonSafe `json:"creator" url:"creator,omitempty"`
|
||||||
|
Post Post `json:"post" url:"post,omitempty"`
|
||||||
|
Community CommunitySafe `json:"community" url:"community,omitempty"`
|
||||||
|
Recipient PersonSafeAlias1 `json:"recipient" url:"recipient,omitempty"`
|
||||||
|
Counts CommentAggregates `json:"counts" url:"counts,omitempty"`
|
||||||
|
CreatorBannedFromCommunity bool `json:"creator_banned_from_community" url:"creator_banned_from_community,omitempty"`
|
||||||
|
Subscribed bool `json:"subscribed" url:"subscribed,omitempty"`
|
||||||
|
Saved bool `json:"saved" url:"saved,omitempty"`
|
||||||
|
CreatorBlocked bool `json:"creator_blocked" url:"creator_blocked,omitempty"`
|
||||||
|
MyVote Optional[int16] `json:"my_vote" url:"my_vote,omitempty"`
|
||||||
}
|
}
|
||||||
type PostJoinResponse struct {
|
type PersonViewSafe struct {
|
||||||
Joined bool `json:"joined" url:"joined,omitempty"`
|
Person PersonSafe `json:"person" url:"person,omitempty"`
|
||||||
LemmyResponse
|
Counts PersonAggregates `json:"counts" url:"counts,omitempty"`
|
||||||
}
|
|
||||||
type CaptchaItem struct {
|
|
||||||
Uuid string `json:"uuid" url:"uuid,omitempty"`
|
|
||||||
Answer string `json:"answer" url:"answer,omitempty"`
|
|
||||||
Expires LemmyTime `json:"expires" url:"expires,omitempty"`
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,17 +0,0 @@
|
|||||||
// Source: lemmy/crates/db_schema/src/source/tagline.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
|
||||||
|
|
||||||
type Tagline struct {
|
|
||||||
ID int32 `json:"id" url:"id,omitempty"`
|
|
||||||
LocalSiteID int `json:"local_site_id" url:"local_site_id,omitempty"`
|
|
||||||
Content string `json:"content" url:"content,omitempty"`
|
|
||||||
Published LemmyTime `json:"published" url:"published,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
}
|
|
||||||
type TaglineForm struct {
|
|
||||||
LocalSiteID int `json:"local_site_id" url:"local_site_id,omitempty"`
|
|
||||||
Content string `json:"content" url:"content,omitempty"`
|
|
||||||
Updated LemmyTime `json:"updated" url:"updated,omitempty"`
|
|
||||||
}
|
|
||||||
+9
-6
@@ -61,9 +61,16 @@ type LemmyWebSocketMsg struct {
|
|||||||
// IsOneOf checks if the message is one of the given operations.
|
// IsOneOf checks if the message is one of the given operations.
|
||||||
func (msg LemmyWebSocketMsg) IsOneOf(ops ...Operation) bool {
|
func (msg LemmyWebSocketMsg) IsOneOf(ops ...Operation) bool {
|
||||||
for _, op := range ops {
|
for _, op := range ops {
|
||||||
if op.Operation() == msg.Op {
|
switch op := op.(type) {
|
||||||
|
case UserOperation:
|
||||||
|
if string(op) == msg.Op {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
case UserOperationCrud:
|
||||||
|
if string(op) == msg.Op {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
@@ -76,10 +83,6 @@ func (u UserOperation) Operation() string {
|
|||||||
return string(u)
|
return string(u)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (u UserOperationCRUD) Operation() string {
|
func (u UserOperationCrud) Operation() string {
|
||||||
return string(u)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (u UserOperationApub) Operation() string {
|
|
||||||
return string(u)
|
return string(u)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,14 +1 @@
|
|||||||
// Source: lemmy/crates/api_common/src/utils.rs
|
|
||||||
// Code generated by go.elara.ws/go-lemmy/cmd/gen (struct generator). DO NOT EDIT.
|
|
||||||
|
|
||||||
package types
|
package types
|
||||||
|
|
||||||
type EndpointType string
|
|
||||||
|
|
||||||
const (
|
|
||||||
EndpointTypeCommunity EndpointType = "Community"
|
|
||||||
EndpointTypePerson EndpointType = "Person"
|
|
||||||
EndpointTypePost EndpointType = "Post"
|
|
||||||
EndpointTypeComment EndpointType = "Comment"
|
|
||||||
EndpointTypePrivateMessage EndpointType = "PrivateMessage"
|
|
||||||
)
|
|
||||||
|
|||||||
@@ -0,0 +1,30 @@
|
|||||||
|
package types
|
||||||
|
|
||||||
|
type UserJoin struct {
|
||||||
|
Auth string `json:"auth" url:"auth,omitempty"`
|
||||||
|
}
|
||||||
|
type UserJoinResponse struct {
|
||||||
|
Joined bool `json:"joined" url:"joined,omitempty"`
|
||||||
|
LemmyResponse
|
||||||
|
}
|
||||||
|
type CommunityJoin struct {
|
||||||
|
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
||||||
|
}
|
||||||
|
type CommunityJoinResponse struct {
|
||||||
|
Joined bool `json:"joined" url:"joined,omitempty"`
|
||||||
|
LemmyResponse
|
||||||
|
}
|
||||||
|
type ModJoin struct {
|
||||||
|
CommunityID int `json:"community_id" url:"community_id,omitempty"`
|
||||||
|
}
|
||||||
|
type ModJoinResponse struct {
|
||||||
|
Joined bool `json:"joined" url:"joined,omitempty"`
|
||||||
|
LemmyResponse
|
||||||
|
}
|
||||||
|
type PostJoin struct {
|
||||||
|
PostID int `json:"post_id" url:"post_id,omitempty"`
|
||||||
|
}
|
||||||
|
type PostJoinResponse struct {
|
||||||
|
Joined bool `json:"joined" url:"joined,omitempty"`
|
||||||
|
LemmyResponse
|
||||||
|
}
|
||||||
+2
-67
@@ -3,16 +3,12 @@ package lemmy
|
|||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
|
||||||
"net"
|
|
||||||
"net/http"
|
"net/http"
|
||||||
"net/url"
|
"net/url"
|
||||||
"reflect"
|
"reflect"
|
||||||
"time"
|
|
||||||
|
|
||||||
"github.com/cenkalti/backoff/v4"
|
|
||||||
"github.com/gorilla/websocket"
|
"github.com/gorilla/websocket"
|
||||||
"go.elara.ws/go-lemmy/types"
|
"go.arsenm.dev/go-lemmy/types"
|
||||||
)
|
)
|
||||||
|
|
||||||
type authData struct {
|
type authData struct {
|
||||||
@@ -25,7 +21,6 @@ type WSClient struct {
|
|||||||
baseURL *url.URL
|
baseURL *url.URL
|
||||||
respCh chan types.LemmyWebSocketMsg
|
respCh chan types.LemmyWebSocketMsg
|
||||||
errCh chan error
|
errCh chan error
|
||||||
recHandler func(c *WSClient)
|
|
||||||
Token string
|
Token string
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -38,7 +33,7 @@ func NewWebSocket(baseURL string) (*WSClient, error) {
|
|||||||
}
|
}
|
||||||
u = u.JoinPath("/api/v3")
|
u = u.JoinPath("/api/v3")
|
||||||
|
|
||||||
conn, _, err := keepaliveDialer().Dial(u.JoinPath("ws").String(), nil)
|
conn, _, err := websocket.DefaultDialer.Dial(u.JoinPath("ws").String(), nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@@ -56,28 +51,6 @@ func NewWebSocket(baseURL string) (*WSClient, error) {
|
|||||||
err = conn.ReadJSON(&msg)
|
err = conn.ReadJSON(&msg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
out.errCh <- err
|
out.errCh <- err
|
||||||
|
|
||||||
conn.Close()
|
|
||||||
err = backoff.RetryNotify(
|
|
||||||
func() error {
|
|
||||||
conn, _, err = keepaliveDialer().Dial(u.JoinPath("ws").String(), nil)
|
|
||||||
if err != nil {
|
|
||||||
out.errCh <- err
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
out.conn = conn
|
|
||||||
out.recHandler(out)
|
|
||||||
return nil
|
|
||||||
},
|
|
||||||
backoff.NewExponentialBackOff(),
|
|
||||||
func(err error, d time.Duration) {
|
|
||||||
out.errCh <- fmt.Errorf("reconnect backoff (%s): %w", d, err)
|
|
||||||
},
|
|
||||||
)
|
|
||||||
if err != nil {
|
|
||||||
out.errCh <- err
|
|
||||||
}
|
|
||||||
|
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
out.respCh <- msg
|
out.respCh <- msg
|
||||||
@@ -143,10 +116,6 @@ func (c *WSClient) Errors() <-chan error {
|
|||||||
return c.errCh
|
return c.errCh
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *WSClient) OnReconnect(rh func(c *WSClient)) {
|
|
||||||
c.recHandler = rh
|
|
||||||
}
|
|
||||||
|
|
||||||
// setAuth uses reflection to automatically
|
// setAuth uses reflection to automatically
|
||||||
// set struct fields called Auth of type
|
// set struct fields called Auth of type
|
||||||
// string or types.Optional[string] to the
|
// string or types.Optional[string] to the
|
||||||
@@ -178,37 +147,3 @@ func (c *WSClient) setAuth(data any) any {
|
|||||||
func DecodeResponse(data json.RawMessage, out any) error {
|
func DecodeResponse(data json.RawMessage, out any) error {
|
||||||
return json.Unmarshal(data, out)
|
return json.Unmarshal(data, out)
|
||||||
}
|
}
|
||||||
|
|
||||||
func keepaliveDialer() *websocket.Dialer {
|
|
||||||
d := &websocket.Dialer{
|
|
||||||
NetDial: func(network, addr string) (net.Conn, error) {
|
|
||||||
tcpAddr, err := net.ResolveTCPAddr(network, addr)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
conn, err := net.DialTCP(network, nil, tcpAddr)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
err = conn.SetKeepAlive(true)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
err = conn.SetKeepAlivePeriod(10 * time.Second)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
return conn, nil
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
d.NetDialContext = func(ctx context.Context, network, addr string) (net.Conn, error) {
|
|
||||||
return d.NetDial(network, addr)
|
|
||||||
}
|
|
||||||
|
|
||||||
return d
|
|
||||||
}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user