[AB-xxx] adding honeypot feature against bots

removing not necessary liquibase xsd from moderation
This commit is contained in:
Sheldan
2024-02-03 15:56:42 +01:00
parent fe1f03833b
commit 3f2f3a9c1b
68 changed files with 352 additions and 1722 deletions

View File

@@ -0,0 +1,24 @@
package dev.sheldan.abstracto.moderation.config.feature;
import dev.sheldan.abstracto.core.config.FeatureConfig;
import dev.sheldan.abstracto.core.config.FeatureDefinition;
import org.springframework.stereotype.Component;
import java.util.Arrays;
import java.util.List;
@Component
public class HoneyPotFeatureConfig implements FeatureConfig {
public static final String HONEYPOT_ROLE_ID = "honeypotRoleId";
@Override
public FeatureDefinition getFeature() {
return ModerationFeatureDefinition.HONEYPOT;
}
@Override
public List<String> getRequiredSystemConfigKeys() {
return Arrays.asList(HONEYPOT_ROLE_ID);
}
}

View File

@@ -11,7 +11,8 @@ public enum ModerationFeatureDefinition implements FeatureDefinition {
AUTOMATIC_WARN_DECAY("warnDecay"),
USER_NOTES("userNotes"),
REPORT_REACTIONS("reportReactions"),
INFRACTIONS("infractions")
INFRACTIONS("infractions"),
HONEYPOT("honeypot")
;
private final String key;

View File

@@ -0,0 +1,13 @@
package dev.sheldan.abstracto.moderation.model.listener;
import dev.sheldan.abstracto.core.models.template.display.MemberDisplay;
import dev.sheldan.abstracto.core.models.template.display.RoleDisplay;
import lombok.Builder;
import lombok.Getter;
@Getter
@Builder
public class HoneyPotReasonModel {
private MemberDisplay memberDisplay;
private RoleDisplay roleDisplay;
}