4 Commits

Author SHA1 Message Date
semantic-release-bot
a44d987042 chore(release): 1.3.1 [skip ci]
## [1.3.1](https://git.tools.ldpt.fr/lucasdpt/spring-jda-starter/compare/1.3.0...1.3.1) (2025-12-17)

### Bug Fixes

* CommandMapper ([67e4f97](67e4f971bc))
2025-12-17 11:03:27 +00:00
lucasdpt
67e4f971bc fix: CommandMapper
All checks were successful
Release / release (push) Successful in 1m58s
2025-12-17 12:02:58 +01:00
semantic-release-bot
29a419a560 chore(release): 1.3.0 [skip ci]
# [1.3.0](https://git.tools.ldpt.fr/lucasdpt/spring-jda-starter/compare/1.2.0...1.3.0) (2025-12-17)

### Features

* add guild Id ([eddd857](eddd857a20))
2025-12-17 10:41:19 +00:00
lucasdpt
eddd857a20 feat: add guild Id
All checks were successful
Release / release (push) Successful in 1m58s
2025-12-17 11:40:46 +01:00
5 changed files with 33 additions and 11 deletions

View File

@@ -1,3 +1,17 @@
## [1.3.1](https://git.tools.ldpt.fr/lucasdpt/spring-jda-starter/compare/1.3.0...1.3.1) (2025-12-17)
### Bug Fixes
* CommandMapper ([67e4f97](https://git.tools.ldpt.fr/lucasdpt/spring-jda-starter/commit/67e4f971bc3e023cb5506ec05eef68b005145b92))
# [1.3.0](https://git.tools.ldpt.fr/lucasdpt/spring-jda-starter/compare/1.2.0...1.3.0) (2025-12-17)
### Features
* add guild Id ([eddd857](https://git.tools.ldpt.fr/lucasdpt/spring-jda-starter/commit/eddd857a205a2f17e7581bd6a278dc354191777b))
# [1.2.0](https://git.tools.ldpt.fr/lucasdpt/spring-jda-starter/compare/1.1.0...1.2.0) (2025-12-16)

View File

@@ -5,7 +5,7 @@
<groupId>fr.lucasdupont</groupId>
<artifactId>spring-jda-starter</artifactId>
<version>1.2.0</version>
<version>1.3.1</version>
<properties>
<java.version>21</java.version>

View File

@@ -4,20 +4,20 @@ import net.dv8tion.jda.api.interactions.commands.build.SubcommandGroupData
import net.dv8tion.jda.internal.interactions.CommandDataImpl
fun Command.toCommandData(): CommandDataImpl = CommandDataImpl(name, description).apply {
addOptions(options)
neededPermissions?.let { setDefaultPermissions(it) }
addOptions(this@toCommandData.options)
this@toCommandData.neededPermissions?.let { setDefaultPermissions(it) }
if (subcommands.isNotEmpty()) {
addSubcommands(subcommands.map { toSubcommandData() })
if (this@toCommandData.subcommands.isNotEmpty()) {
addSubcommands(this@toCommandData.subcommands.map { it.toSubcommandData() })
}
if (subcommandGroups.isNotEmpty()) {
if (this@toCommandData.subcommandGroups.isNotEmpty()) {
addSubcommandGroups(
subcommandGroups.map { group ->
this@toCommandData.subcommandGroups.map { group ->
SubcommandGroupData(
group.name,
group.description
).addSubcommands(group.subcommands.map { toSubcommandData() })
).addSubcommands(group.subCommands.map { it.toSubcommandData() })
})
}
}

View File

@@ -10,4 +10,5 @@ class JdaConfiguration {
var onlineStatus: OnlineStatus = OnlineStatus.ONLINE
var cacheFlags: Set<CacheFlag> = emptySet()
var activity: String? = null
var guildId: String? = null
}

View File

@@ -55,9 +55,16 @@ class JdaService(
val commandDataList = contextCommands.map { it.toCommandData() }
jda.updateCommands()
.addCommands(commandDataList)
.queue()
if (jdaConfiguration.guildId != null) {
jda.getGuildById(jdaConfiguration.guildId!!)
?.updateCommands()
?.addCommands(commandDataList)
?.queue()
} else {
jda.updateCommands()
.addCommands(commandDataList)
.queue()
}
}
@EventListener(SlashCommandInteractionEvent::class)