fancydialogs: Rename the api module to fd-api

This commit is contained in:
Oliver
2025-05-28 12:56:10 +02:00
committed by Oliver
parent 32cf5240f6
commit 1eb65105f5
26 changed files with 2 additions and 2 deletions

View File

@@ -0,0 +1,77 @@
plugins {
id("java-library")
id("maven-publish")
id("com.gradleup.shadow")
}
val minecraftVersion = "1.21.5"
dependencies {
compileOnly("io.papermc.paper:paper-api:$minecraftVersion-R0.1-SNAPSHOT")
compileOnly(project(":libraries:common"))
compileOnly("de.oliver.FancyAnalytics:logger:0.0.6")
implementation("org.lushplugins:ChatColorHandler:5.1.3")
implementation("org.jetbrains:annotations:24.0.0")
}
tasks {
shadowJar {
relocate("org.lushplugins.chatcolorhandler", "com.fancyinnovations.fancydialogs.libs.chatcolorhandler")
archiveClassifier.set("")
}
publishing {
repositories {
maven {
name = "fancyinnovationsReleases"
url = uri("https://repo.fancyinnovations.com/releases")
credentials(PasswordCredentials::class)
authentication {
isAllowInsecureProtocol = true
create<BasicAuthentication>("basic")
}
}
maven {
name = "fancyinnovationsSnapshots"
url = uri("https://repo.fancyinnovations.com/snapshots")
credentials(PasswordCredentials::class)
authentication {
isAllowInsecureProtocol = true
create<BasicAuthentication>("basic")
}
}
}
publications {
create<MavenPublication>("maven") {
groupId = "de.oliver"
artifactId = "FancyHolograms"
version = getFDVersion()
from(project.components["java"])
}
}
}
java {
withSourcesJar()
withJavadocJar()
}
javadoc {
options.encoding = Charsets.UTF_8.name()
}
compileJava {
options.encoding = Charsets.UTF_8.name()
options.release.set(21)
}
}
fun getFDVersion(): String {
return file("../VERSION").readText()
}

View File

@@ -0,0 +1,50 @@
package com.fancyinnovations.fancydialogs.api;
import com.fancyinnovations.fancydialogs.api.data.DialogData;
import com.fancyinnovations.fancydialogs.api.data.types.DialogType;
import org.bukkit.entity.Player;
import org.jetbrains.annotations.NotNull;
public abstract class Dialog {
private String id;
private Type type;
private DialogType dialog;
public Dialog(@NotNull String id, @NotNull Type type, @NotNull DialogType dialog) {
this.id = id;
this.type = type;
this.dialog = dialog;
}
public Dialog() {
}
abstract public void open(Player player);
abstract public void close(Player player);
public @NotNull String getId() {
return id;
}
public @NotNull Type getType() {
return type;
}
public void setType(@NotNull Type type) {
this.type = type;
}
public @NotNull DialogType getDialog() {
return dialog;
}
public void setDialog(@NotNull DialogType dialog) {
this.dialog = dialog;
}
public enum Type {
NOTICE,
}
}

View File

@@ -0,0 +1,17 @@
package com.fancyinnovations.fancydialogs.api.data;
import com.fancyinnovations.fancydialogs.api.data.body.DialogBody;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
public record DialogData(
@NotNull String id,
@NotNull String title,
@Nullable String externalTitle,
boolean canCloseWithEscape,
@NotNull List<DialogBody> body
) {
}

View File

@@ -0,0 +1,4 @@
package com.fancyinnovations.fancydialogs.api.data.body;
public interface DialogBody {
}

View File

@@ -0,0 +1,16 @@
package com.fancyinnovations.fancydialogs.api.data.body;
import org.bukkit.inventory.ItemStack;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public record ItemBody(
@NotNull ItemStack item,
@Nullable TextBody description,
boolean showDecorations,
boolean showTooltip,
int width,
int height
) implements DialogBody {
}

View File

@@ -0,0 +1,10 @@
package com.fancyinnovations.fancydialogs.api.data.body;
import org.jetbrains.annotations.NotNull;
public record TextBody(
@NotNull String content,
int width
) implements DialogBody {
}

View File

@@ -0,0 +1,11 @@
package com.fancyinnovations.fancydialogs.api.data.click;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public record Button(
@NotNull String label,
@Nullable String tooltip,
int width
) {
}

View File

@@ -0,0 +1,10 @@
package com.fancyinnovations.fancydialogs.api.data.click;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public record ClickAction(
@NotNull Button button,
@Nullable ClickEvent onClick
) {
}

View File

@@ -0,0 +1,12 @@
package com.fancyinnovations.fancydialogs.api.data.click;
public enum ClickEvent {
OPEN_URL,
OPEN_FILE,
RUN_COMMAND,
SUGGEST_COMMAND,
SHOW_DIALOG,
CHANGE_PAGE,
COPY_TO_CLIPBOARD,
CUSTOM,
}

View File

@@ -0,0 +1,12 @@
package com.fancyinnovations.fancydialogs.api.data.input;
import org.jetbrains.annotations.NotNull;
public record CheckboxInput(
@NotNull String label,
boolean initial,
@NotNull String onTrue,
@NotNull String onFalse
) implements DialogInput {
}

View File

@@ -0,0 +1,22 @@
package com.fancyinnovations.fancydialogs.api.data.input;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
public record ComboboxInput (
int width,
@NotNull List<Entry> entries,
@NotNull String label,
boolean labelVisible
) implements DialogInput {
public record Entry(
@NotNull String id,
@Nullable String display,
boolean initial
) {
}
}

View File

@@ -0,0 +1,4 @@
package com.fancyinnovations.fancydialogs.api.data.input;
public interface DialogInput {
}

View File

@@ -0,0 +1,22 @@
package com.fancyinnovations.fancydialogs.api.data.input;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public record SliderInput(
int width,
@NotNull String label,
@NotNull String labelFormat,
@NotNull RangeInfo rangeInfo
) implements DialogInput {
public record RangeInfo(
double start,
double end,
@Nullable Double initial,
int steps
) {
}
}

View File

@@ -0,0 +1,13 @@
package com.fancyinnovations.fancydialogs.api.data.input;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public record TextInput(
int width,
@NotNull String label,
boolean labelVisible,
@Nullable String initial
) implements DialogInput {
}

View File

@@ -0,0 +1,4 @@
package com.fancyinnovations.fancydialogs.api.data.submit;
public interface SubmitMethod {
}

View File

@@ -0,0 +1,13 @@
package com.fancyinnovations.fancydialogs.api.data.types;
import com.fancyinnovations.fancydialogs.api.data.DialogData;
import com.fancyinnovations.fancydialogs.api.data.click.ClickAction;
import org.jetbrains.annotations.NotNull;
public record ConfirmationDialog(
@NotNull DialogData common,
@NotNull ClickAction yesButton,
@NotNull ClickAction noButton
) implements DialogType {
}

View File

@@ -0,0 +1,17 @@
package com.fancyinnovations.fancydialogs.api.data.types;
import com.fancyinnovations.fancydialogs.api.data.DialogData;
import com.fancyinnovations.fancydialogs.api.data.click.ClickEvent;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
public record DialogListDialog(
@NotNull DialogData common,
@NotNull List<DialogType> dialogs,
@Nullable ClickEvent onCancel,
int columns,
int buttonWidth
) implements DialogType {
}

View File

@@ -0,0 +1,4 @@
package com.fancyinnovations.fancydialogs.api.data.types;
public interface DialogType {
}

View File

@@ -0,0 +1,22 @@
package com.fancyinnovations.fancydialogs.api.data.types;
import com.fancyinnovations.fancydialogs.api.data.click.Button;
import com.fancyinnovations.fancydialogs.api.data.input.DialogInput;
import com.fancyinnovations.fancydialogs.api.data.submit.SubmitMethod;
import org.jetbrains.annotations.NotNull;
public interface InputFormDialog extends DialogType {
record Input(
@NotNull String key,
@NotNull DialogInput control
) {
}
record SubmitAction(
@NotNull String id,
@NotNull Button buttonData,
@NotNull SubmitMethod method
) {
}
}

View File

@@ -0,0 +1,18 @@
package com.fancyinnovations.fancydialogs.api.data.types;
import com.fancyinnovations.fancydialogs.api.data.DialogData;
import com.fancyinnovations.fancydialogs.api.data.click.ClickAction;
import com.fancyinnovations.fancydialogs.api.data.click.ClickEvent;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.List;
public record MultiActionDialog(
@NotNull DialogData common,
@NotNull List<ClickAction> actions,
@Nullable ClickEvent onCancel,
int columns
) implements DialogType {
}

View File

@@ -0,0 +1,14 @@
package com.fancyinnovations.fancydialogs.api.data.types;
import com.fancyinnovations.fancydialogs.api.data.DialogData;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public record MultiActionInputFormDialog(
@NotNull DialogData common,
@NotNull List<InputFormDialog.Input> inputs,
@NotNull List<InputFormDialog.SubmitAction> actions
) implements DialogType {
}

View File

@@ -0,0 +1,11 @@
package com.fancyinnovations.fancydialogs.api.data.types;
import com.fancyinnovations.fancydialogs.api.data.DialogData;
import com.fancyinnovations.fancydialogs.api.data.click.ClickAction;
import org.jetbrains.annotations.NotNull;
public record NoticeDialog(
@NotNull DialogData common,
@NotNull ClickAction button
) implements DialogType {
}

View File

@@ -0,0 +1,14 @@
package com.fancyinnovations.fancydialogs.api.data.types;
import com.fancyinnovations.fancydialogs.api.data.DialogData;
import com.fancyinnovations.fancydialogs.api.data.click.ClickEvent;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public record ServerLinksDialog(
@NotNull DialogData common,
@Nullable ClickEvent onCancel,
int columns,
int buttonWidth
) implements DialogType {
}

View File

@@ -0,0 +1,14 @@
package com.fancyinnovations.fancydialogs.api.data.types;
import com.fancyinnovations.fancydialogs.api.data.DialogData;
import org.jetbrains.annotations.NotNull;
import java.util.List;
public record SimpleInputFormDialog(
@NotNull DialogData common,
@NotNull List<InputFormDialog.Input> inputs,
@NotNull InputFormDialog.SubmitAction action
) implements DialogType {
}