Add 'Users' type to generator

This commit is contained in:
Aykhan Shahsuvarov 2025-05-21 17:12:14 +04:00
parent 4d5abe66a6
commit bcd721e071
3 changed files with 34 additions and 20 deletions

View File

@ -114,16 +114,14 @@ func (generator *Generator) IsValid(post *collections.Post) bool {
return false
}
if slices.Contains(invalidUsers, post.DID) {
return false
if isValidUser := users.IsValid(post.DID); isValidUser != nil {
return *isValidUser
}
if slices.Contains(validUsers, post.DID) || // Posts from always-valid users
(slices.Contains(post.Langs, "az") && len(post.Langs) < 3) || // Posts in Azerbaijani language with fewer than 3 languages
if (slices.Contains(post.Langs, "az") && len(post.Langs) < 3) || // Posts in Azerbaijani language with fewer than 3 languages
generator.textRegex.MatchString(post.Text) { // Posts containing Azerbaijan-related keywords
return true
}
return false
}

View File

@ -1,19 +1,21 @@
package az
var invalidUsers []string = []string{
"did:plc:5zww7zorx2ajw7hqrhuix3ba",
"did:plc:c4vhz47h566t2ntgd7gtawen",
"did:plc:lc7j7xdq67gn7vc6vzmydfqk",
"did:plc:msian4dqa2rqalf3biilnf3m",
"did:plc:gtosalycg7snvodjhsze35jm",
}
import "github.com/aykhans/bsky-feedgen/pkg/generator"
var validUsers []string = []string{
"did:plc:jbt4qi6psd7rutwzedtecsq7",
"did:plc:yzgdpxsklrmfgqmjghdvw3ti",
"did:plc:g7ebgiai577ln3avsi2pt3sn",
"did:plc:phtq2rhgbwipyx5ie3apw44j",
"did:plc:jfdvklrs5n5qv7f25v6swc5h",
"did:plc:u5ez5w6qslh6advti4wyddba",
"did:plc:cs2cbzojm6hmx5lfxiuft3mq",
var users = generator.Users{
// Invalid
"did:plc:5zww7zorx2ajw7hqrhuix3ba": false,
"did:plc:c4vhz47h566t2ntgd7gtawen": false,
"did:plc:lc7j7xdq67gn7vc6vzmydfqk": false,
"did:plc:msian4dqa2rqalf3biilnf3m": false,
"did:plc:gtosalycg7snvodjhsze35jm": false,
// Valid
"did:plc:jbt4qi6psd7rutwzedtecsq7": true,
"did:plc:yzgdpxsklrmfgqmjghdvw3ti": true,
"did:plc:g7ebgiai577ln3avsi2pt3sn": true,
"did:plc:phtq2rhgbwipyx5ie3apw44j": true,
"did:plc:jfdvklrs5n5qv7f25v6swc5h": true,
"did:plc:u5ez5w6qslh6advti4wyddba": true,
"did:plc:cs2cbzojm6hmx5lfxiuft3mq": true,
}

14
pkg/generator/base.go Normal file
View File

@ -0,0 +1,14 @@
package generator
import "github.com/aykhans/bsky-feedgen/pkg/utils"
type Users map[string]bool
func (u Users) IsValid(did string) *bool {
isValid, ok := u[did]
if ok == false {
return nil
}
return utils.ToPtr(isValid)
}