diff --git a/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/submit/SubmitMethod.java b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/submit/SubmitMethod.java new file mode 100644 index 00000000..f804ac49 --- /dev/null +++ b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/submit/SubmitMethod.java @@ -0,0 +1,4 @@ +package com.fancyinnovations.fancydialogs.api.submit; + +public interface SubmitMethod { +} diff --git a/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/ConfirmationDialog.java b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/ConfirmationDialog.java new file mode 100644 index 00000000..918e642e --- /dev/null +++ b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/ConfirmationDialog.java @@ -0,0 +1,13 @@ +package com.fancyinnovations.fancydialogs.api.types; + +import com.fancyinnovations.fancydialogs.api.DialogData; +import com.fancyinnovations.fancydialogs.api.click.ClickAction; +import org.jetbrains.annotations.NotNull; + +public record ConfirmationDialog( + @NotNull DialogData common, + @NotNull ClickAction yesButton, + @NotNull ClickAction noButton +) implements Dialog{ + +} diff --git a/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/Dialog.java b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/Dialog.java new file mode 100644 index 00000000..0377f66a --- /dev/null +++ b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/Dialog.java @@ -0,0 +1,4 @@ +package com.fancyinnovations.fancydialogs.api.types; + +public interface Dialog { +} diff --git a/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/DialogListDialog.java b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/DialogListDialog.java new file mode 100644 index 00000000..9e06e620 --- /dev/null +++ b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/DialogListDialog.java @@ -0,0 +1,17 @@ +package com.fancyinnovations.fancydialogs.api.types; + +import com.fancyinnovations.fancydialogs.api.DialogData; +import com.fancyinnovations.fancydialogs.api.click.ClickEvent; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +public record DialogListDialog( + @NotNull DialogData common, + @NotNull List dialogs, + @Nullable ClickEvent onCancel, + int columns, + int buttonWidth +) implements Dialog { +} diff --git a/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/InputFormDialog.java b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/InputFormDialog.java new file mode 100644 index 00000000..46b3b085 --- /dev/null +++ b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/InputFormDialog.java @@ -0,0 +1,22 @@ +package com.fancyinnovations.fancydialogs.api.types; + +import com.fancyinnovations.fancydialogs.api.click.Button; +import com.fancyinnovations.fancydialogs.api.input.DialogInput; +import com.fancyinnovations.fancydialogs.api.submit.SubmitMethod; +import org.jetbrains.annotations.NotNull; + +public interface InputFormDialog extends Dialog { + + record Input( + @NotNull String key, + @NotNull DialogInput control + ) { + } + + record SubmitAction( + @NotNull String id, + @NotNull Button buttonData, + @NotNull SubmitMethod method + ) { + } +} diff --git a/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/MultiActionDialog.java b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/MultiActionDialog.java new file mode 100644 index 00000000..9b03d329 --- /dev/null +++ b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/MultiActionDialog.java @@ -0,0 +1,18 @@ +package com.fancyinnovations.fancydialogs.api.types; + +import com.fancyinnovations.fancydialogs.api.DialogData; +import com.fancyinnovations.fancydialogs.api.click.ClickAction; +import com.fancyinnovations.fancydialogs.api.click.ClickEvent; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +public record MultiActionDialog( + @NotNull DialogData common, + @NotNull List actions, + @Nullable ClickEvent onCancel, + int columns +) implements Dialog{ + +} diff --git a/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/MultiActionInputFormDialog.java b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/MultiActionInputFormDialog.java new file mode 100644 index 00000000..e7199afb --- /dev/null +++ b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/MultiActionInputFormDialog.java @@ -0,0 +1,14 @@ +package com.fancyinnovations.fancydialogs.api.types; + +import com.fancyinnovations.fancydialogs.api.DialogData; +import org.jetbrains.annotations.NotNull; + +import java.util.List; + +public record MultiActionInputFormDialog( + @NotNull DialogData common, + @NotNull List inputs, + @NotNull List actions +) implements Dialog{ + +} diff --git a/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/NoticeDialog.java b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/NoticeDialog.java new file mode 100644 index 00000000..f46661cb --- /dev/null +++ b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/NoticeDialog.java @@ -0,0 +1,11 @@ +package com.fancyinnovations.fancydialogs.api.types; + +import com.fancyinnovations.fancydialogs.api.DialogData; +import com.fancyinnovations.fancydialogs.api.click.ClickAction; +import org.jetbrains.annotations.NotNull; + +public record NoticeDialog( + @NotNull DialogData common, + @NotNull ClickAction button +) implements Dialog { +} diff --git a/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/ServerLinksDialog.java b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/ServerLinksDialog.java new file mode 100644 index 00000000..3b878647 --- /dev/null +++ b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/ServerLinksDialog.java @@ -0,0 +1,14 @@ +package com.fancyinnovations.fancydialogs.api.types; + +import com.fancyinnovations.fancydialogs.api.DialogData; +import com.fancyinnovations.fancydialogs.api.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 Dialog { +} diff --git a/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/SimpleInputFormDialog.java b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/SimpleInputFormDialog.java new file mode 100644 index 00000000..89c641c2 --- /dev/null +++ b/plugins/fancydialogs/api/src/main/java/com/fancyinnovations/fancydialogs/api/types/SimpleInputFormDialog.java @@ -0,0 +1,14 @@ +package com.fancyinnovations.fancydialogs.api.types; + +import com.fancyinnovations.fancydialogs.api.DialogData; +import org.jetbrains.annotations.NotNull; + +import java.util.List; + +public record SimpleInputFormDialog( + @NotNull DialogData common, + @NotNull List inputs, + @NotNull InputFormDialog.SubmitAction action +) implements Dialog{ + +}