Skip to content

Commit 1cd5d60

Browse files
authored
feat: component api (#188)
2 parents 5dd34a1 + 71a4577 commit 1cd5d60

73 files changed

Lines changed: 3023 additions & 67 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ subprojects {
4949
afterEvaluate {
5050
extensions.findByType<KotlinJvmExtension>()?.apply {
5151
compilerOptions {
52-
optIn.add("dev.slne.surf.surfapi.core.api.util.InternalSurfApi")
52+
optIn.add("dev.slne.surf.surfapi.shared.api.util.InternalSurfApi")
5353
}
5454
}
5555
}

buildSrc/src/main/kotlin/core-convention.gradle.kts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,9 @@ repositories {
2727

2828
dependencies {
2929
compileOnly(libs.auto.service.annotations)
30-
ksp(project(":surf-api-gradle-plugin:surf-api-processor"))
30+
if (!project.path.contains("surf-api-shared")) {
31+
ksp(project(":surf-api-gradle-plugin:surf-api-processor"))
32+
}
3133

3234
compileOnlyApi("org.jetbrains:annotations:26.0.2-1")
3335
}

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,6 @@ org.jetbrains.dokka.experimental.gradle.pluginMode=V2Enabled
77
javaVersion=25
88
mcVersion=1.21.11
99
group=dev.slne.surf
10-
version=1.21.11-2.55.2
10+
version=1.21.11-2.56.0
1111
relocationPrefix=dev.slne.surf.surfapi.libs
1212
snapshot=false

gradle/wrapper/gradle-wrapper.jar

3.43 KB
Binary file not shown.

gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-9.1.0-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions-snapshots/gradle-9.4.0-20260128061951+0000-bin.zip
44
networkTimeout=10000
55
validateDistributionUrl=true
66
zipStoreBase=GRADLE_USER_HOME

gradlew

Lines changed: 1 addition & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

gradlew.bat

Lines changed: 1 addition & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

settings.gradle.kts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,4 +31,7 @@ if (!ci) {
3131
include(":surf-api-bukkit:surf-api-bukkit-plugin-test")
3232
// include("surf-api-generator")
3333
include("surf-api-modern-generator")
34-
}
34+
}
35+
include("surf-api-shared")
36+
include("surf-api-shared:surf-api-shared-public")
37+
include("surf-api-shared:surf-api-shared-internal")

surf-api-bukkit/surf-api-bukkit-api/src/main/kotlin/dev/slne/surf/surfapi/bukkit/api/command/executors/SuspendCommandExecutors.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import dev.jorel.commandapi.kotlindsl.*
1313
import dev.jorel.commandapi.wrappers.NativeProxyCommandSender
1414
import dev.slne.surf.surfapi.core.api.messages.Colors
1515
import dev.slne.surf.surfapi.core.api.messages.adventure.text
16-
import dev.slne.surf.surfapi.core.api.util.InternalSurfApi
16+
import dev.slne.surf.surfapi.shared.api.util.InternalSurfApi
1717
import kotlinx.coroutines.CancellationException
1818
import kotlinx.coroutines.CoroutineScope
1919
import kotlinx.coroutines.launch

surf-api-bukkit/surf-api-bukkit-plugin-test/src/main/kotlin/dev/slne/surf/surfapi/bukkit/test/BukkitPluginMain.kt

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,24 +10,29 @@ import dev.slne.surf.surfapi.bukkit.test.command.subcommands.inventory.TestInven
1010
import dev.slne.surf.surfapi.bukkit.test.command.subcommands.reflection.Reflection
1111
import dev.slne.surf.surfapi.bukkit.test.config.ModernTestConfig
1212
import dev.slne.surf.surfapi.bukkit.test.listener.ChatListener
13+
import dev.slne.surf.surfapi.core.api.component.surfComponentApi
1314

1415
@OptIn(NmsUseWithCaution::class)
1516
class BukkitPluginMain : SuspendingJavaPlugin() {
16-
override fun onLoad() {
17+
override suspend fun onLoadAsync() {
1718
ModernTestConfig.init()
1819
ModernTestConfig.randomise()
1920

21+
surfComponentApi.load(this)
2022
packetListenerApi.registerListeners(ChatListener())
2123
TestInventoryView.register()
2224
}
2325

24-
override fun onEnable() {
26+
override suspend fun onEnableAsync() {
2527
SurfApiTestCommand().register()
2628
Reflection::class.java.getClassLoader() // initialize Reflection
29+
30+
surfComponentApi.enable(this)
2731
}
2832

29-
override fun onDisable() {
33+
override suspend fun onDisableAsync() {
3034
CommandAPI.unregister("surfapitest")
35+
surfComponentApi.disable(this)
3136
}
3237

3338
companion object {

0 commit comments

Comments
 (0)