refactor: rename packages and files to use 'flash' prefix for consistency
This commit is contained in:
@@ -16,28 +16,40 @@ fragment selection via `template :: fragment`) while keeping Flash boot-time fai
|
||||
## Quick Start
|
||||
|
||||
```java
|
||||
import dev.relism.extension.FlashApp;
|
||||
import dev.relism.ext.view.core.ViewModel;
|
||||
import dev.relism.ext.view.thymeleaf.*;
|
||||
import thymeleaf.view.ext.dev.relism.flash.ThymeleafExtension;
|
||||
|
||||
FlashApp.create(8080)
|
||||
.install(new ThymeleafExtension()
|
||||
.addGlobal("appName", req -> "Flash")
|
||||
.addGlobal("requestPath", req -> req.path()))
|
||||
.scan("com.example.web")
|
||||
.startAndBlock();
|
||||
.
|
||||
|
||||
install(new ThymeleafExtension()
|
||||
.
|
||||
|
||||
addGlobal("appName",req ->"Flash")
|
||||
.
|
||||
|
||||
addGlobal("requestPath",req ->req.
|
||||
|
||||
path()))
|
||||
.
|
||||
|
||||
scan("com.example.web")
|
||||
.
|
||||
|
||||
startAndBlock();
|
||||
```
|
||||
|
||||
```java
|
||||
import dev.relism.ext.view.core.ViewModel;
|
||||
import dev.relism.ext.view.thymeleaf.*;
|
||||
import dev.relism.routing.GET;
|
||||
import thymeleaf.view.ext.dev.relism.flash.Template;
|
||||
import thymeleaf.view.ext.dev.relism.flash.ThymeleafHandler;
|
||||
import core.view.ext.dev.relism.flash.ViewModel;
|
||||
import models.dev.relism.flash.Request;
|
||||
import routing.dev.relism.flash.GET;
|
||||
|
||||
@GET("/")
|
||||
@Template("pages/home")
|
||||
public final class HomePage extends ThymeleafHandler {
|
||||
@Override
|
||||
public ViewModel render(dev.relism.models.Request req) {
|
||||
public ViewModel render(Request req) {
|
||||
return ViewModel.of("title", "Home");
|
||||
}
|
||||
}
|
||||
@@ -46,11 +58,13 @@ public final class HomePage extends ThymeleafHandler {
|
||||
## Fragment Example
|
||||
|
||||
```java
|
||||
import models.dev.relism.flash.Request;
|
||||
|
||||
@GET("/users/rows")
|
||||
@Fragment(template = "fragments/users", value = "rows")
|
||||
public final class UserRows extends ThymeleafHandler {
|
||||
@Override
|
||||
public ViewModel render(dev.relism.models.Request req) {
|
||||
public ViewModel render(Request req) {
|
||||
return ViewModel.of("users", List.of());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,11 +3,13 @@
|
||||
Use `@Fragment` for Thymeleaf fragment responses.
|
||||
|
||||
```java
|
||||
import models.dev.relism.flash.Request;
|
||||
|
||||
@GET("/users/table")
|
||||
@Fragment(template = "fragments/users", value = "rows")
|
||||
public final class UsersRows extends ThymeleafHandler {
|
||||
@Override
|
||||
public ViewModel render(dev.relism.models.Request req) {
|
||||
public ViewModel render(Request req) {
|
||||
return ViewModel.of("users", List.of());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,6 +12,8 @@ Use `onViewInit()` to cache dependencies via `require(...)`.
|
||||
## Example
|
||||
|
||||
```java
|
||||
import models.dev.relism.flash.Request;
|
||||
|
||||
@GET("/dashboard")
|
||||
@Template("pages/dashboard")
|
||||
public final class DashboardPage extends ThymeleafHandler {
|
||||
@@ -24,10 +26,10 @@ public final class DashboardPage extends ThymeleafHandler {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ViewModel render(dev.relism.models.Request req) {
|
||||
public ViewModel render(Request req) {
|
||||
return ViewModel.empty()
|
||||
.with("title", "Dashboard")
|
||||
.with("stats", service.stats());
|
||||
.with("title", "Dashboard")
|
||||
.with("stats", service.stats());
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package dev.relism.ext.view.thymeleaf;
|
||||
package dev.relism.flash.ext.view.thymeleaf;
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package dev.relism.ext.view.thymeleaf;
|
||||
package dev.relism.flash.ext.view.thymeleaf;
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
+7
-6
@@ -1,9 +1,10 @@
|
||||
package dev.relism.ext.view.thymeleaf;
|
||||
package dev.relism.flash.ext.view.thymeleaf;
|
||||
|
||||
import dev.relism.ext.view.core.BaseViewExtension;
|
||||
import dev.relism.ext.view.core.GlobalValue;
|
||||
import dev.relism.ext.view.core.ViewRuntimeBridge;
|
||||
import dev.relism.models.RequestHandler;
|
||||
import dev.relism.flash.ext.view.core.BaseViewExtension;
|
||||
import dev.relism.flash.ext.view.core.GlobalValue;
|
||||
import dev.relism.flash.ext.view.core.ViewRuntimeBridge;
|
||||
import dev.relism.flash.models.Request;
|
||||
import dev.relism.flash.models.RequestHandler;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.function.Consumer;
|
||||
@@ -33,7 +34,7 @@ public class ThymeleafExtension extends BaseViewExtension<ThymeleafTarget> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ThymeleafExtension addGlobal(String key, java.util.function.Function<dev.relism.models.Request, Object> resolver) {
|
||||
public ThymeleafExtension addGlobal(String key, java.util.function.Function<Request, Object> resolver) {
|
||||
super.addGlobal(key, resolver);
|
||||
return this;
|
||||
}
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package dev.relism.ext.view.thymeleaf;
|
||||
package dev.relism.flash.ext.view.thymeleaf;
|
||||
|
||||
import dev.relism.ext.view.core.BaseViewHandler;
|
||||
import dev.relism.flash.ext.view.core.BaseViewHandler;
|
||||
|
||||
/**
|
||||
* Base class for class-based Thymeleaf handlers.
|
||||
+8
-8
@@ -1,12 +1,12 @@
|
||||
package dev.relism.ext.view.thymeleaf;
|
||||
package dev.relism.flash.ext.view.thymeleaf;
|
||||
|
||||
import dev.relism.ext.view.core.BaseViewHandler;
|
||||
import dev.relism.ext.view.core.GlobalValue;
|
||||
import dev.relism.ext.view.core.RenderedView;
|
||||
import dev.relism.ext.view.core.ViewModel;
|
||||
import dev.relism.ext.view.core.ViewRuntimeBridge;
|
||||
import dev.relism.models.Request;
|
||||
import dev.relism.models.Response;
|
||||
import dev.relism.flash.ext.view.core.BaseViewHandler;
|
||||
import dev.relism.flash.ext.view.core.GlobalValue;
|
||||
import dev.relism.flash.ext.view.core.RenderedView;
|
||||
import dev.relism.flash.ext.view.core.ViewModel;
|
||||
import dev.relism.flash.ext.view.core.ViewRuntimeBridge;
|
||||
import dev.relism.flash.models.Request;
|
||||
import dev.relism.flash.models.Response;
|
||||
import org.thymeleaf.TemplateEngine;
|
||||
import org.thymeleaf.context.Context;
|
||||
import org.thymeleaf.context.IExpressionContext;
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package dev.relism.ext.view.thymeleaf;
|
||||
package dev.relism.flash.ext.view.thymeleaf;
|
||||
|
||||
import dev.relism.Flash;
|
||||
import dev.relism.flash.Flash;
|
||||
import org.thymeleaf.templatemode.TemplateMode;
|
||||
|
||||
/**
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package dev.relism.ext.view.thymeleaf;
|
||||
package dev.relism.flash.ext.view.thymeleaf;
|
||||
|
||||
import dev.relism.http.ContentType;
|
||||
import dev.relism.flash.http.ContentType;
|
||||
|
||||
record ThymeleafTarget(
|
||||
Kind kind,
|
||||
+4
-4
@@ -1,8 +1,8 @@
|
||||
package dev.relism.ext.view.thymeleaf;
|
||||
package dev.relism.flash.ext.view.thymeleaf;
|
||||
|
||||
import dev.relism.http.ContentType;
|
||||
import dev.relism.routing.Route;
|
||||
import dev.relism.routing.Routes;
|
||||
import dev.relism.flash.http.ContentType;
|
||||
import dev.relism.flash.routing.Route;
|
||||
import dev.relism.flash.routing.Routes;
|
||||
|
||||
final class ThymeleafTargetResolver {
|
||||
private ThymeleafTargetResolver() {}
|
||||
+6
-6
@@ -1,10 +1,10 @@
|
||||
package dev.relism.ext.view.thymeleaf;
|
||||
package dev.relism.flash.ext.view.thymeleaf;
|
||||
|
||||
import dev.relism.ext.view.core.ViewModel;
|
||||
import dev.relism.models.Request;
|
||||
import dev.relism.models.RequestHandler;
|
||||
import dev.relism.models.Response;
|
||||
import dev.relism.routing.GET;
|
||||
import dev.relism.flash.ext.view.core.ViewModel;
|
||||
import dev.relism.flash.models.Request;
|
||||
import dev.relism.flash.models.RequestHandler;
|
||||
import dev.relism.flash.models.Response;
|
||||
import dev.relism.flash.routing.GET;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import java.lang.reflect.Method;
|
||||
+9
-8
@@ -1,11 +1,12 @@
|
||||
package dev.relism.ext.view.thymeleaf;
|
||||
package dev.relism.flash.ext.view.thymeleaf;
|
||||
|
||||
import dev.relism.ext.view.core.GlobalValue;
|
||||
import dev.relism.ext.view.core.RenderedView;
|
||||
import dev.relism.ext.view.core.ViewModel;
|
||||
import dev.relism.http.ContentType;
|
||||
import dev.relism.models.Request;
|
||||
import dev.relism.models.Response;
|
||||
import dev.relism.flash.ext.view.core.GlobalValue;
|
||||
import dev.relism.flash.ext.view.core.RenderedView;
|
||||
import dev.relism.flash.ext.view.core.ViewModel;
|
||||
import dev.relism.flash.routing.GET;
|
||||
import dev.relism.flash.http.ContentType;
|
||||
import dev.relism.flash.models.Request;
|
||||
import dev.relism.flash.models.Response;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.thymeleaf.templatemode.TemplateMode;
|
||||
|
||||
@@ -135,7 +136,7 @@ class ThymeleafRuntimeTest {
|
||||
assertFalse(settings.cacheEnabled());
|
||||
}
|
||||
|
||||
@dev.relism.routing.GET("/cached")
|
||||
@GET("/cached")
|
||||
@Template("pages/home")
|
||||
static class CachedTemplateHandler extends ThymeleafHandler {
|
||||
@Override
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package dev.relism.ext.view.thymeleaf;
|
||||
package dev.relism.flash.ext.view.thymeleaf;
|
||||
|
||||
import dev.relism.Flash;
|
||||
import dev.relism.flash.Flash;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.thymeleaf.templatemode.TemplateMode;
|
||||
|
||||
+5
-5
@@ -1,9 +1,9 @@
|
||||
package dev.relism.ext.view.thymeleaf;
|
||||
package dev.relism.flash.ext.view.thymeleaf;
|
||||
|
||||
import dev.relism.models.Request;
|
||||
import dev.relism.models.RequestHandler;
|
||||
import dev.relism.models.Response;
|
||||
import dev.relism.routing.GET;
|
||||
import dev.relism.flash.models.Request;
|
||||
import dev.relism.flash.models.RequestHandler;
|
||||
import dev.relism.flash.models.Response;
|
||||
import dev.relism.flash.routing.GET;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
Reference in New Issue
Block a user