diff --git a/frontend/routes.ts b/frontend/routes.ts
index 552daee..540a278 100644
--- a/frontend/routes.ts
+++ b/frontend/routes.ts
@@ -1,9 +1,14 @@
+import { Flow } from "@vaadin/flow-frontend";
import { Route } from '@vaadin/router';
import Role from './generated/com/cubetiqs/fusion/data/Role';
import { appStore } from './stores/app-store';
import './views/home/home-view';
import './views/main-layout';
+const { serverSideRoutes } = new Flow({
+ imports: () => import('../target/frontend/generated-flow-imports'),
+});
+
export type ViewRoute = Route & {
title?: string;
icon?: string;
@@ -65,7 +70,11 @@ export const routes: ViewRoute[] = [
{
path: '',
component: 'main-layout',
- children: [...views],
+ children: [
+ ...views,
+ // for server-side, the next magic line sends all unmatched routes:
+ ...serverSideRoutes, // IMPORTANT: this must be the last entry in the array
+ ],
},
{
path: 'login',
diff --git a/frontend/views/login/login-view.ts b/frontend/views/login/login-view.ts
index 3df1f16..15be3e3 100644
--- a/frontend/views/login/login-view.ts
+++ b/frontend/views/login/login-view.ts
@@ -30,7 +30,7 @@ export class LoginView extends View {
action="login"
no-forgot-password
.i18n=${Object.assign(
- { header: { title: 'Fusion Management', description: 'Login using user/user or admin/admin' } },
+ { header: { title: 'Fusion', description: 'Login using user/user or admin/admin' } },
loginI18nDefault
)}
>
diff --git a/package.json b/package.json
index 4788e5a..9e778fa 100644
--- a/package.json
+++ b/package.json
@@ -90,6 +90,8 @@
},
"vaadin": {
"dependencies": {
+ "@adobe/lit-mobx": "2.0.0-rc.4",
+ "@fontsource/roboto": "4.5.0",
"@polymer/iron-icon": "3.0.1",
"@polymer/iron-list": "3.1.0",
"@polymer/polymer": "3.2.0",
@@ -139,7 +141,9 @@
"@vaadin/vaadin-upload": "21.0.0-alpha13",
"@vaadin/vaadin-virtual-list": "21.0.0-alpha13",
"construct-style-sheets-polyfill": "2.4.16",
- "lit": "2.0.0-rc.1"
+ "line-awesome": "1.3.0",
+ "lit": "2.0.0-rc.1",
+ "mobx": "^6.1.5"
},
"devDependencies": {
"@types/validator": "13.1.0",
diff --git a/pom.xml b/pom.xml
index 6d62633..044a223 100644
--- a/pom.xml
+++ b/pom.xml
@@ -106,7 +106,6 @@
a-vaadin-helper
1.7.1
-
org.vaadin.artur.exampledata
exampledata
@@ -132,14 +131,6 @@
spring-boot-devtools
true
-
- org.springframework.boot
- spring-boot-starter-data-redis
-
-
- org.springframework.session
- spring-session-data-redis
-
diff --git a/src/main/java/com/cubetiqs/fusion/security/SecurityConfiguration.java b/src/main/java/com/cubetiqs/fusion/security/SecurityConfiguration.java
index a7b619c..47ad325 100644
--- a/src/main/java/com/cubetiqs/fusion/security/SecurityConfiguration.java
+++ b/src/main/java/com/cubetiqs/fusion/security/SecurityConfiguration.java
@@ -33,6 +33,9 @@ public class SecurityConfiguration extends VaadinWebSecurityConfigurerAdapter {
@Override
public void configure(WebSecurity web) throws Exception {
super.configure(web);
- web.ignoring().antMatchers("/images/logo.png");
+ web.ignoring()
+ .antMatchers(
+ "/images/logo.png"
+ );
}
}
diff --git a/src/main/kotlin/com/cubetiqs/fusion/Application.kt b/src/main/kotlin/com/cubetiqs/fusion/Application.kt
index 45d8732..4d1bcb3 100644
--- a/src/main/kotlin/com/cubetiqs/fusion/Application.kt
+++ b/src/main/kotlin/com/cubetiqs/fusion/Application.kt
@@ -1,15 +1,22 @@
package com.cubetiqs.fusion
-import org.springframework.boot.autoconfigure.SpringBootApplication
-import com.vaadin.flow.server.PWA
-import org.springframework.boot.web.servlet.support.SpringBootServletInitializer
+import com.vaadin.flow.component.dependency.NpmPackage
import com.vaadin.flow.component.page.AppShellConfigurator
+import com.vaadin.flow.server.PWA
import com.vaadin.flow.theme.Theme
import org.springframework.boot.SpringApplication
+import org.springframework.boot.autoconfigure.SpringBootApplication
+import org.springframework.boot.web.servlet.support.SpringBootServletInitializer
@SpringBootApplication
@Theme(value = "fusionmanagement")
@PWA(name = "Fusion Management", shortName = "Fusion Management", offlineResources = ["images/logo.png"])
+@NpmPackage.Container(
+ NpmPackage(value = "@fontsource/roboto", version = "4.5.0"),
+ NpmPackage(value = "@adobe/lit-mobx", version = "2.0.0-rc.4"),
+ NpmPackage(value = "mobx", version = "^6.1.5"),
+ NpmPackage(value = "line-awesome", version = "1.3.0"),
+)
class Application : SpringBootServletInitializer(), AppShellConfigurator
fun main(args: Array) {
diff --git a/src/main/kotlin/com/cubetiqs/fusion/config/DefaultConfig.kt b/src/main/kotlin/com/cubetiqs/fusion/config/DefaultConfig.kt
new file mode 100644
index 0000000..562cf70
--- /dev/null
+++ b/src/main/kotlin/com/cubetiqs/fusion/config/DefaultConfig.kt
@@ -0,0 +1,6 @@
+package com.cubetiqs.fusion.config
+
+import org.springframework.context.annotation.Configuration
+
+@Configuration
+class DefaultConfig
\ No newline at end of file
diff --git a/src/main/kotlin/com/cubetiqs/fusion/config/SessionConfig.kt b/src/main/kotlin/com/cubetiqs/fusion/config/SessionConfig.kt
deleted file mode 100644
index cd86e1a..0000000
--- a/src/main/kotlin/com/cubetiqs/fusion/config/SessionConfig.kt
+++ /dev/null
@@ -1,8 +0,0 @@
-package com.cubetiqs.fusion.config
-
-import org.springframework.context.annotation.Configuration
-import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession
-
-@Configuration
-@EnableRedisHttpSession
-class SessionConfig
\ No newline at end of file
diff --git a/src/main/kotlin/com/cubetiqs/fusion/frontend/MainView.kt b/src/main/kotlin/com/cubetiqs/fusion/frontend/MainView.kt
new file mode 100644
index 0000000..96f0c13
--- /dev/null
+++ b/src/main/kotlin/com/cubetiqs/fusion/frontend/MainView.kt
@@ -0,0 +1,5 @@
+package com.cubetiqs.fusion.frontend
+
+import com.vaadin.flow.component.UI
+
+class MainView : UI()
\ No newline at end of file
diff --git a/src/main/kotlin/com/cubetiqs/fusion/frontend/views/test/TestView.kt b/src/main/kotlin/com/cubetiqs/fusion/frontend/views/test/TestView.kt
new file mode 100644
index 0000000..dc22355
--- /dev/null
+++ b/src/main/kotlin/com/cubetiqs/fusion/frontend/views/test/TestView.kt
@@ -0,0 +1,11 @@
+package com.cubetiqs.fusion.frontend.views.test
+
+import com.vaadin.flow.component.html.Div
+import com.vaadin.flow.router.Route
+
+@Route("/views/test")
+class TestView : Div() {
+ init {
+ add("Hello World")
+ }
+}
\ No newline at end of file
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 1f441df..50c332d 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -3,12 +3,10 @@ server:
logging:
level:
- org.atmosphere: warn
+ org:
+ atmosphere: warn
spring:
- session:
- store-type: redis
-
mustache:
check-template-location: false