mirror of
https://github.com/Sheldan/abstracto.git
synced 2026-04-14 03:45:57 +00:00
[AB-291] refactoring pagination to custom button pagination
adding mutes command fixing edit message not considering components reversing the origin comparison in a few button click listeners fixing ordering of warnings and mutes from converter
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
package dev.sheldan.abstracto.moderation.model.template.command;
|
||||
|
||||
import dev.sheldan.abstracto.core.models.MemberDisplayModel;
|
||||
import dev.sheldan.abstracto.moderation.model.database.Mute;
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.time.Duration;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@Builder
|
||||
public class MuteEntry {
|
||||
/**
|
||||
* The {@link Mute} of this entry
|
||||
*/
|
||||
private Mute mute;
|
||||
/**
|
||||
* The {@link MemberDisplayModel} containing information about the user being muted. The member property is null if the user left the server
|
||||
*/
|
||||
private MemberDisplayModel mutedUser;
|
||||
/**
|
||||
* The {@link MemberDisplayModel} containing information about the user muting. The member property is null if the user left the server
|
||||
*/
|
||||
private MemberDisplayModel mutingUser;
|
||||
private Duration muteDuration;
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
package dev.sheldan.abstracto.moderation.model.template.command;
|
||||
|
||||
import dev.sheldan.abstracto.core.models.context.SlimUserInitiatedServerContext;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@SuperBuilder
|
||||
public class MutesModel extends SlimUserInitiatedServerContext {
|
||||
private List<MuteEntry> mutes;
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
package dev.sheldan.abstracto.moderation.service.management;
|
||||
|
||||
import dev.sheldan.abstracto.core.models.AServerAChannelMessage;
|
||||
import dev.sheldan.abstracto.core.models.database.AServer;
|
||||
import dev.sheldan.abstracto.core.models.database.AUserInAServer;
|
||||
import dev.sheldan.abstracto.moderation.model.database.Mute;
|
||||
import net.dv8tion.jda.api.entities.Member;
|
||||
@@ -75,5 +76,18 @@ public interface MuteManagementService {
|
||||
* @param aUserInAServer The {@link AUserInAServer} to search the active mutes for
|
||||
* @return A collection of {@link Mute} objects of the user which are active
|
||||
*/
|
||||
List<Mute> getAllActiveMutesOf(AUserInAServer aUserInAServer);
|
||||
|
||||
/**
|
||||
* Retrieves all mutes of the given {@link AUserInAServer} in a collection
|
||||
* @param aUserInAServer The {@link AUserInAServer} to search the mutes for
|
||||
* @return A collection of {@link Mute} objects of the user
|
||||
*/
|
||||
List<Mute> getAllMutesOf(AUserInAServer aUserInAServer);
|
||||
|
||||
/**
|
||||
* Retrieves all {@link Mute} from the given {@link AServer}
|
||||
* @return All found mutes of this server
|
||||
*/
|
||||
List<Mute> getAllMutes(AServer server);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user