aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/ClientHelper.java1
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/REIOverlay.java1
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/config/ConfigManager.java (renamed from api/src/main/java/me/shedaniel/rei/api/ConfigManager.java)4
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/config/ConfigObject.java (renamed from api/src/main/java/me/shedaniel/rei/api/ConfigObject.java)4
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/gui/widgets/Widgets.java2
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/registry/category/ButtonArea.java (renamed from api/src/main/java/me/shedaniel/rei/api/ButtonAreaSupplier.java)8
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/registry/category/CategoryRegistry.java11
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/registry/display/DisplayRegistry.java3
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/registry/display/LiveDisplayGenerator.java (renamed from api/src/main/java/me/shedaniel/rei/api/LiveDisplayGenerator.java)2
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/registry/display/visibility/DisplayVisibilityPredicate.java (renamed from api/src/main/java/me/shedaniel/rei/api/DisplayVisibilityPredicate.java)2
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/registry/screen/FocusedStackProvider.java (renamed from api/src/main/java/me/shedaniel/rei/api/FocusedStackProvider.java)2
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/registry/screen/ScreenRegistry.java16
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/registry/screen/SimpleClickArea.java (renamed from api/src/main/java/me/shedaniel/rei/api/ScreenClickAreaProvider.java)7
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/favorites/GameModeFavoriteEntry.java2
-rw-r--r--default-plugin/src/main/java/me/shedaniel/rei/plugin/favorites/WeatherFavoriteEntry.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/REIModMenuEntryPoint.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCore.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/api/gui/config/entry/FilteringScreen.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java4
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/OverlaySearchField.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java6
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/VillagerRecipeViewingScreen.java6
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/credits/CreditsScreen.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/modules/entries/EntryStackSubsetsMenuEntry.java4
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/modules/entries/GameModeMenuEntry.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/modules/entries/SubSubsetsMenuEntry.java4
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/modules/entries/WeatherMenuEntry.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/plugin/entry/FluidEntryDefinition.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/plugin/entry/ItemEntryDefinition.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/widget/EntryListEntryWidget.java3
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/widget/EntryListWidget.java6
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/widget/EntryWidget.java4
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/gui/widget/FavoritesListWidget.java4
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/ClientHelperImpl.java5
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/ConfigManagerImpl.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/ConfigObjectImpl.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/EntryRegistryImpl.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/InternalWidgets.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/REIHelperImpl.java4
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/ScreenRegistryImpl.java8
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/filtering/rules/ManualFilteringRule.java2
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/registry/CategoryRegistryImpl.java10
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/registry/DisplayRegistryImpl.java4
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/view/ViewsImpl.java4
-rw-r--r--runtime/src/main/java/me/shedaniel/rei/impl/widgets/PanelWidget.java2
45 files changed, 82 insertions, 93 deletions
diff --git a/api/src/main/java/me/shedaniel/rei/api/ClientHelper.java b/api/src/main/java/me/shedaniel/rei/api/ClientHelper.java
index 9b1a3e99d..1250d381a 100644
--- a/api/src/main/java/me/shedaniel/rei/api/ClientHelper.java
+++ b/api/src/main/java/me/shedaniel/rei/api/ClientHelper.java
@@ -23,6 +23,7 @@
package me.shedaniel.rei.api;
+import me.shedaniel.rei.api.config.ConfigManager;
import me.shedaniel.rei.api.ingredient.EntryStack;
import me.shedaniel.rei.api.util.FormattingUtils;
import me.shedaniel.rei.api.view.ViewSearchBuilder;
diff --git a/api/src/main/java/me/shedaniel/rei/api/REIOverlay.java b/api/src/main/java/me/shedaniel/rei/api/REIOverlay.java
index 2b66857d4..fd1f2dbea 100644
--- a/api/src/main/java/me/shedaniel/rei/api/REIOverlay.java
+++ b/api/src/main/java/me/shedaniel/rei/api/REIOverlay.java
@@ -27,7 +27,6 @@ import me.shedaniel.rei.api.gui.drag.DraggingContext;
import me.shedaniel.rei.api.gui.widgets.WidgetWithBounds;
import org.jetbrains.annotations.ApiStatus;
-@ApiStatus.Experimental
public abstract class REIOverlay extends WidgetWithBounds {
@ApiStatus.Internal
public abstract void closeOverlayMenu();
diff --git a/api/src/main/java/me/shedaniel/rei/api/ConfigManager.java b/api/src/main/java/me/shedaniel/rei/api/config/ConfigManager.java
index ea09dbd2c..cd5b75dc9 100644
--- a/api/src/main/java/me/shedaniel/rei/api/ConfigManager.java
+++ b/api/src/main/java/me/shedaniel/rei/api/config/ConfigManager.java
@@ -21,7 +21,7 @@
* SOFTWARE.
*/
-package me.shedaniel.rei.api;
+package me.shedaniel.rei.api.config;
import me.shedaniel.rei.api.plugins.PluginManager;
import me.shedaniel.rei.api.registry.Reloadable;
@@ -34,7 +34,7 @@ import org.jetbrains.annotations.NotNull;
@Environment(EnvType.CLIENT)
public interface ConfigManager extends Reloadable {
/**
- * @return the instance of {@link me.shedaniel.rei.api.ConfigManager}
+ * @return the instance of {@link ConfigManager}
*/
@NotNull
static ConfigManager getInstance() {
diff --git a/api/src/main/java/me/shedaniel/rei/api/ConfigObject.java b/api/src/main/java/me/shedaniel/rei/api/config/ConfigObject.java
index a92300e00..bc471d90f 100644
--- a/api/src/main/java/me/shedaniel/rei/api/ConfigObject.java
+++ b/api/src/main/java/me/shedaniel/rei/api/config/ConfigObject.java
@@ -21,7 +21,7 @@
* SOFTWARE.
*/
-package me.shedaniel.rei.api;
+package me.shedaniel.rei.api.config;
import me.shedaniel.clothconfig2.api.ModifierKeyCode;
import me.shedaniel.rei.api.favorites.FavoriteEntry;
@@ -36,7 +36,7 @@ import java.util.List;
@Environment(EnvType.CLIENT)
public interface ConfigObject {
/**
- * @return the instance of {@link me.shedaniel.rei.api.ConfigObject}
+ * @return the instance of {@link ConfigObject}
*/
static ConfigObject getInstance() {
return ConfigManager.getInstance().getConfig();
diff --git a/api/src/main/java/me/shedaniel/rei/api/gui/widgets/Widgets.java b/api/src/main/java/me/shedaniel/rei/api/gui/widgets/Widgets.java
index c0ef26b7d..ac9423e4d 100644
--- a/api/src/main/java/me/shedaniel/rei/api/gui/widgets/Widgets.java
+++ b/api/src/main/java/me/shedaniel/rei/api/gui/widgets/Widgets.java
@@ -28,7 +28,7 @@ import com.mojang.math.Matrix4f;
import me.shedaniel.math.Dimension;
import me.shedaniel.math.Point;
import me.shedaniel.math.Rectangle;
-import me.shedaniel.rei.api.ConfigObject;
+import me.shedaniel.rei.api.config.ConfigObject;
import me.shedaniel.rei.api.gui.DrawableConsumer;
import me.shedaniel.rei.api.gui.Renderer;
import me.shedaniel.rei.impl.Internals;
diff --git a/api/src/main/java/me/shedaniel/rei/api/ButtonAreaSupplier.java b/api/src/main/java/me/shedaniel/rei/api/registry/category/ButtonArea.java
index 323b8d810..668214007 100644
--- a/api/src/main/java/me/shedaniel/rei/api/ButtonAreaSupplier.java
+++ b/api/src/main/java/me/shedaniel/rei/api/registry/category/ButtonArea.java
@@ -21,16 +21,16 @@
* SOFTWARE.
*/
-package me.shedaniel.rei.api;
+package me.shedaniel.rei.api.registry.category;
import me.shedaniel.math.Rectangle;
/**
- * The supplier for the + button area.
+ * The area for the + button.
*/
@FunctionalInterface
-public interface ButtonAreaSupplier {
- static ButtonAreaSupplier defaultArea() {
+public interface ButtonArea {
+ static ButtonArea defaultArea() {
return bounds -> new Rectangle(bounds.getMaxX() + 2, bounds.getMaxY() - 16, 10, 10);
}
diff --git a/api/src/main/java/me/shedaniel/rei/api/registry/category/CategoryRegistry.java b/api/src/main/java/me/shedaniel/rei/api/registry/category/CategoryRegistry.java
index 6f0ca0d18..b9e686def 100644
--- a/api/src/main/java/me/shedaniel/rei/api/registry/category/CategoryRegistry.java
+++ b/api/src/main/java/me/shedaniel/rei/api/registry/category/CategoryRegistry.java
@@ -23,7 +23,6 @@
package me.shedaniel.rei.api.registry.category;
-import me.shedaniel.rei.api.ButtonAreaSupplier;
import me.shedaniel.rei.api.ingredient.EntryIngredient;
import me.shedaniel.rei.api.ingredient.EntryStack;
import me.shedaniel.rei.api.plugins.PluginManager;
@@ -109,8 +108,8 @@ public interface CategoryRegistry extends Reloadable, Iterable<CategoryRegistry.
configure(category, CategoryConfiguration::removePlusButton);
}
- default void setPlusButtonArea(ResourceLocation category, ButtonAreaSupplier supplier) {
- configure(category, config -> config.setPlusButtonArea(supplier));
+ default void setPlusButtonArea(ResourceLocation category, ButtonArea area) {
+ configure(category, config -> config.setPlusButtonArea(area));
}
interface CategoryConfiguration<T extends Display> extends Identifiable {
@@ -140,16 +139,16 @@ public interface CategoryRegistry extends Reloadable, Iterable<CategoryRegistry.
/**
* Sets the plus button area
*
- * @param supplier the supplier of the button area
+ * @param area the button area
*/
- void setPlusButtonArea(ButtonAreaSupplier supplier);
+ void setPlusButtonArea(ButtonArea area);
/**
* Returns the optional plus button area
*
* @return the optional plus button area
*/
- Optional<ButtonAreaSupplier> getPlusButtonArea();
+ Optional<ButtonArea> getPlusButtonArea();
List<EntryIngredient> getWorkstations();
diff --git a/api/src/main/java/me/shedaniel/rei/api/registry/display/DisplayRegistry.java b/api/src/main/java/me/shedaniel/rei/api/registry/display/DisplayRegistry.java
index 4b970ebd5..978c00319 100644
--- a/api/src/main/java/me/shedaniel/rei/api/registry/display/DisplayRegistry.java
+++ b/api/src/main/java/me/shedaniel/rei/api/registry/display/DisplayRegistry.java
@@ -23,8 +23,7 @@
package me.shedaniel.rei.api.registry.display;
-import me.shedaniel.rei.api.DisplayVisibilityPredicate;
-import me.shedaniel.rei.api.LiveDisplayGenerator;
+import me.shedaniel.rei.api.registry.display.visibility.DisplayVisibilityPredicate;
import me.shedaniel.rei.api.plugins.PluginManager;
import me.shedaniel.rei.api.registry.RecipeManagerContext;
import me.shedaniel.rei.api.registry.Reloadable;
diff --git a/api/src/main/java/me/shedaniel/rei/api/LiveDisplayGenerator.java b/api/src/main/java/me/shedaniel/rei/api/registry/display/LiveDisplayGenerator.java
index efaea4eed..263bda029 100644
--- a/api/src/main/java/me/shedaniel/rei/api/LiveDisplayGenerator.java
+++ b/api/src/main/java/me/shedaniel/rei/api/registry/display/LiveDisplayGenerator.java
@@ -21,7 +21,7 @@
* SOFTWARE.
*/
-package me.shedaniel.rei.api;
+package me.shedaniel.rei.api.registry.display;
import me.shedaniel.rei.api.ingredient.EntryStack;
import me.shedaniel.rei.api.registry.display.Display;
diff --git a/api/src/main/java/me/shedaniel/rei/api/DisplayVisibilityPredicate.java b/api/src/main/java/me/shedaniel/rei/api/registry/display/visibility/DisplayVisibilityPredicate.java
index 655342941..68777fe03 100644
--- a/api/src/main/java/me/shedaniel/rei/api/DisplayVisibilityPredicate.java
+++ b/api/src/main/java/me/shedaniel/rei/api/registry/display/visibility/DisplayVisibilityPredicate.java
@@ -21,7 +21,7 @@
* SOFTWARE.
*/
-package me.shedaniel.rei.api;
+package me.shedaniel.rei.api.registry.display.visibility;
import me.shedaniel.rei.api.registry.display.Display;
import me.shedaniel.rei.api.registry.display.DisplayCategory;
diff --git a/api/src/main/java/me/shedaniel/rei/api/FocusedStackProvider.java b/api/src/main/java/me/shedaniel/rei/api/registry/screen/FocusedStackProvider.java
index 96816d610..6e0c682fd 100644
--- a/api/src/main/java/me/shedaniel/rei/api/FocusedStackProvider.java
+++ b/api/src/main/java/me/shedaniel/rei/api/registry/screen/FocusedStackProvider.java
@@ -21,7 +21,7 @@
* SOFTWARE.
*/
-package me.shedaniel.rei.api;
+package me.shedaniel.rei.api.registry.screen;
import me.shedaniel.rei.api.ingredient.EntryStack;
import net.minecraft.client.gui.screens.Screen;
diff --git a/api/src/main/java/me/shedaniel/rei/api/registry/screen/ScreenRegistry.java b/api/src/main/java/me/shedaniel/rei/api/registry/screen/ScreenRegistry.java
index 7284c01c3..b4d89b033 100644
--- a/api/src/main/java/me/shedaniel/rei/api/registry/screen/ScreenRegistry.java
+++ b/api/src/main/java/me/shedaniel/rei/api/registry/screen/ScreenRegistry.java
@@ -24,8 +24,6 @@
package me.shedaniel.rei.api.registry.screen;
import me.shedaniel.math.Rectangle;
-import me.shedaniel.rei.api.FocusedStackProvider;
-import me.shedaniel.rei.api.ScreenClickAreaProvider;
import me.shedaniel.rei.api.gui.config.DisplayPanelLocation;
import me.shedaniel.rei.api.ingredient.EntryStack;
import me.shedaniel.rei.api.plugins.PluginManager;
@@ -102,32 +100,32 @@ public interface ScreenRegistry extends Reloadable {
/**
* Registers a click area for a container screen.
*
- * @param provider The click area provider that is offset to the container screen's top left corner.
+ * @param area The click area that is offset to the container screen's top left corner.
* @param screenClass The class of the screen.
* @param categories The categories of result.
* @param <T> The screen type to be registered to.
*/
- <C extends AbstractContainerMenu, T extends AbstractContainerScreen<C>> void registerContainerClickArea(ScreenClickAreaProvider<T> provider, Class<? extends T> screenClass, ResourceLocation... categories);
+ <C extends AbstractContainerMenu, T extends AbstractContainerScreen<C>> void registerContainerClickArea(SimpleClickArea<T> area, Class<? extends T> screenClass, ResourceLocation... categories);
/**
* Registers a click area for a screen.
*
- * @param provider The click area provider that is offset to the window's top left corner.
+ * @param area The click area that is offset to the window's top left corner.
* @param screenClass The class of the screen.
* @param categories The categories of result.
* @param <T> The screen type to be registered to.
*/
- default <T extends Screen> void registerClickArea(ScreenClickAreaProvider<T> provider, Class<? extends T> screenClass, ResourceLocation... categories) {
- registerClickArea(screenClass, provider.toHandler(() -> categories));
+ default <T extends Screen> void registerClickArea(SimpleClickArea<T> area, Class<? extends T> screenClass, ResourceLocation... categories) {
+ registerClickArea(screenClass, area.toClickArea(() -> categories));
}
/**
* Registers a click area handler for a screen. A handler allows more specific implementation of click areas.
*
* @param screenClass The class of the screen.
- * @param area The click area provider that is offset to the window's top left corner.
+ * @param area The click area that is offset to the window's top left corner.
* @param <T> The screen type to be registered to.
- * @see #registerClickArea(ScreenClickAreaProvider, Class, ResourceLocation...) for a simpler way to handle areas without custom categories.
+ * @see #registerClickArea(SimpleClickArea, Class, ResourceLocation...) for a simpler way to handle areas without custom categories.
*/
<T extends Screen> void registerClickArea(Class<? extends T> screenClass, ClickArea<T> area);
diff --git a/api/src/main/java/me/shedaniel/rei/api/ScreenClickAreaProvider.java b/api/src/main/java/me/shedaniel/rei/api/registry/screen/SimpleClickArea.java
index 5a5ac101c..55ff1fa70 100644
--- a/api/src/main/java/me/shedaniel/rei/api/ScreenClickAreaProvider.java
+++ b/api/src/main/java/me/shedaniel/rei/api/registry/screen/SimpleClickArea.java
@@ -21,10 +21,9 @@
* SOFTWARE.
*/
-package me.shedaniel.rei.api;
+package me.shedaniel.rei.api.registry.screen;
import me.shedaniel.math.Rectangle;
-import me.shedaniel.rei.api.registry.screen.ClickArea;
import net.minecraft.client.gui.screens.Screen;
import net.minecraft.resources.ResourceLocation;
import org.jetbrains.annotations.NotNull;
@@ -33,11 +32,11 @@ import java.util.Arrays;
import java.util.function.Supplier;
@FunctionalInterface
-public interface ScreenClickAreaProvider<T extends Screen> {
+public interface SimpleClickArea<T extends Screen> {
@NotNull
Rectangle provide(@NotNull T screen);
- default ClickArea<T> toHandler(Supplier<ResourceLocation[]> categories) {
+ default ClickArea<T> toClickArea(Supplier<ResourceLocation[]> categories) {
return context -> {
return provide(context.getScreen()).contains(context.getMousePosition())
? ClickArea.Result.success().categories(Arrays.asList(categories.get()))
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/favorites/GameModeFavoriteEntry.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/favorites/GameModeFavoriteEntry.java
index be40e3e8c..4450a93b8 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/favorites/GameModeFavoriteEntry.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/favorites/GameModeFavoriteEntry.java
@@ -28,7 +28,7 @@ import com.mojang.blaze3d.vertex.PoseStack;
import me.shedaniel.clothconfig2.api.ScissorsHandler;
import me.shedaniel.math.Point;
import me.shedaniel.math.Rectangle;
-import me.shedaniel.rei.api.ConfigObject;
+import me.shedaniel.rei.api.config.ConfigObject;
import me.shedaniel.rei.api.REIHelper;
import me.shedaniel.rei.api.favorites.FavoriteEntry;
import me.shedaniel.rei.api.favorites.FavoriteEntryType;
diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/favorites/WeatherFavoriteEntry.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/favorites/WeatherFavoriteEntry.java
index dd5f264d4..fcf3077bc 100644
--- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/favorites/WeatherFavoriteEntry.java
+++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/favorites/WeatherFavoriteEntry.java
@@ -29,7 +29,7 @@ import com.mojang.blaze3d.vertex.*;
import com.mojang.math.Matrix4f;
import me.shedaniel.math.Point;
import me.shedaniel.math.Rectangle;
-import me.shedaniel.rei.api.ConfigObject;
+import me.shedaniel.rei.api.config.ConfigObject;
import me.shedaniel.rei.api.REIHelper;
import me.shedaniel.rei.api.favorites.FavoriteEntry;
import me.shedaniel.rei.api.favorites.FavoriteEntryType;
diff --git a/runtime/src/main/java/me/shedaniel/rei/REIModMenuEntryPoint.java b/runtime/src/main/java/me/shedaniel/rei/REIModMenuEntryPoint.java
index 1375c2f14..24012586a 100644
--- a/runtime/src/main/java/me/shedaniel/rei/REIModMenuEntryPoint.java
+++ b/runtime/src/main/java/me/shedaniel/rei/REIModMenuEntryPoint.java
@@ -24,7 +24,7 @@
package me.shedaniel.rei;
import me.shedaniel.architectury.platform.Platform;
-import me.shedaniel.rei.api.ConfigManager;
+import me.shedaniel.rei.api.config.ConfigManager;
public class REIModMenuEntryPoint {
public void onInitializeClient() {
diff --git a/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCore.java b/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCore.java
index a0a2f4ff0..7c2d9df99 100644
--- a/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCore.java
+++ b/runtime/src/main/java/me/shedaniel/rei/RoughlyEnoughItemsCore.java
@@ -32,7 +32,7 @@ import me.shedaniel.architectury.event.events.client.ClientScreenInputEvent;
import me.shedaniel.architectury.networking.NetworkManager;
import me.shedaniel.math.Point;
import me.shedaniel.math.Rectangle;
-import me.shedaniel.rei.api.ConfigObject;
+import me.shedaniel.rei.api.config.ConfigObject;
import me.shedaniel.rei.api.REIHelper;
import me.shedaniel.rei.api.favorites.FavoriteEntry;
import me.shedaniel.rei.api.favorites.FavoriteEntryType;
@@ -46,7 +46,6 @@ import me.shedaniel.rei.api.ingredient.entry.EntryDefinition;
import me.shedaniel.rei.api.ingredient.entry.EntryType;
import me.shedaniel.rei.api.ingredient.util.EntryStacks;
import me.shedaniel.rei.api.plugins.PluginManager;
-import me.shedaniel.rei.api.plugins.REIPlugin;
import me.shedaniel.rei.api.registry.screen.ClickArea;
import me.shedaniel.rei.api.registry.screen.OverlayDecider;
import me.shedaniel.rei.api.registry.screen.ScreenRegistry;
diff --git a/runtime/src/main/java/me/shedaniel/rei/api/gui/config/entry/FilteringScreen.java b/runtime/src/main/java/me/shedaniel/rei/api/gui/config/entry/FilteringScreen.java
index cdd1b5add..d061101a3 100644
--- a/runtime/src/main/java/me/shedaniel/rei/api/gui/config/entry/FilteringScreen.java
+++ b/runtime/src/main/java/me/shedaniel/rei/api/gui/config/entry/FilteringScreen.java
@@ -38,7 +38,7 @@ import me.shedaniel.clothconfig2.gui.widget.DynamicNewSmoothScrollingEntryListWi
import me.shedaniel.math.Point;
import me.shedaniel.math.Rectangle;
import me.shedaniel.math.impl.PointHelper;
-import me.shedaniel.rei.api.ConfigObject;
+import me.shedaniel.rei.api.config.ConfigObject;
import me.shedaniel.rei.api.REIHelper;
import me.shedaniel.rei.api.gui.widgets.Tooltip;
import me.shedaniel.rei.api.ingredient.EntryStack;
diff --git a/runtime/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java b/runtime/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java
index c48cf5da2..5025bf2f1 100644
--- a/runtime/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java
+++ b/runtime/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java
@@ -36,9 +36,10 @@ import me.shedaniel.math.Rectangle;
import me.shedaniel.math.impl.PointHelper;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import me.shedaniel.rei.api.*;
+import me.shedaniel.rei.api.config.ConfigManager;
+import me.shedaniel.rei.api.config.ConfigObject;
import me.shedaniel.rei.api.favorites.FavoriteEntry;
import me.shedaniel.rei.api.gui.config.SearchFieldLocation;
-import me.shedaniel.rei.api.gui.drag.DraggableStack;
import me.shedaniel.rei.api.gui.drag.DraggableStackProvider;
import me.shedaniel.rei.api.gui.drag.DraggableStackVisitor;
import me.shedaniel.rei.api.gui.drag.DraggingContext;
@@ -60,7 +61,6 @@ import me.shedaniel.rei.gui.modules.Menu;
import me.shedaniel.rei.gui.modules.entries.GameModeMenuEntry;
import me.shedaniel.rei.gui.modules.entries.WeatherMenuEntry;
import me.shedaniel.rei.gui.widget.EntryListWidget;
-import me.shedaniel.rei.gui.widget.EntryWidget;
import me.shedaniel.rei.gui.widget.FavoritesListWidget;
import me.shedaniel.rei.gui.widget.LateRenderable;
import me.shedaniel.rei.impl.ClientHelperImpl;
diff --git a/runtime/src/main/java/me/shedaniel/rei/gui/OverlaySearchField.java b/runtime/src/main/java/me/shedaniel/rei/gui/OverlaySearchField.java
index f7a898b5b..a65022f50 100644
--- a/runtime/src/main/java/me/shedaniel/rei/gui/OverlaySearchField.java
+++ b/runtime/src/main/java/me/shedaniel/rei/gui/OverlaySearchField.java
@@ -30,7 +30,7 @@ import com.mojang.blaze3d.vertex.PoseStack;
import me.shedaniel.math.Color;
import me.shedaniel.math.Point;
import me.shedaniel.math.impl.PointHelper;
-import me.shedaniel.rei.api.ConfigObject;
+import me.shedaniel.rei.api.config.ConfigObject;
import me.shedaniel.rei.api.REIHelper;
import me.shedaniel.rei.api.gui.config.SyntaxHighlightingMode;
import me.shedaniel.rei.impl.OverlaySearchFieldSyntaxHighlighter;
diff --git a/runtime/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java b/runtime/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java
index b849b20ba..10f5f0176 100644
--- a/runtime/s