feat(go): apply filters only if they exist;

This commit is contained in:
Vishal Dalwadi 2025-08-28 13:58:21 +05:30
parent 146d907f5d
commit 5eea06f887

View file

@ -68,14 +68,18 @@ func (g *Client) GetUsers(filters []string) ([]idp.User, error) {
Fields("users(id,primaryEmail,name,suspended,archived)", "nextPageToken").
Pages(context.TODO(), func(users *admindir.Users) error {
for _, user := range users.Users {
var found bool
for _, filter := range filters {
if strings.HasPrefix(user.PrimaryEmail, filter) {
found = true
var keep bool
if len(filters) > 0 {
for _, filter := range filters {
if strings.HasPrefix(user.PrimaryEmail, filter) {
keep = true
}
}
} else {
keep = true
}
if !found {
if !keep {
continue
}
@ -101,14 +105,18 @@ func (g *Client) GetGroups(filters []string) ([]idp.Group, error) {
Fields("groups(id,name)", "nextPageToken").
Pages(context.TODO(), func(groups *admindir.Groups) error {
for _, group := range groups.Groups {
var found bool
for _, filter := range filters {
if strings.HasPrefix(group.Name, filter) {
found = true
var keep bool
if len(filters) > 0 {
for _, filter := range filters {
if strings.HasPrefix(group.Name, filter) {
keep = true
}
}
} else {
keep = true
}
if !found {
if !keep {
continue
}