This is an automated email from the ASF dual-hosted git repository.

mgubaidullin pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-karavan.git

commit f7d610e54d298e34b172cebdb04898f544e23b9d
Author: Marat Gubaidullin <[email protected]>
AuthorDate: Mon Aug 24 14:13:46 2026 -0400

    UI config
---
 karavan-app/Dockerfile.dockerignore          | 21 -----------------
 karavan-app/docker-dev.sh                    | 17 ++++++++++++++
 karavan-app/src/main/docker/Dockerfile       |  2 +-
 karavan-app/src/main/webui/.gitignore        |  2 +-
 karavan-app/src/main/webui/eslint.config.mjs | 26 ++++++++++++++++++++-
 karavan-app/src/main/webui/tsconfig.json     | 35 ----------------------------
 6 files changed, 44 insertions(+), 59 deletions(-)

diff --git a/karavan-app/Dockerfile.dockerignore 
b/karavan-app/Dockerfile.dockerignore
deleted file mode 100644
index bd129012..00000000
--- a/karavan-app/Dockerfile.dockerignore
+++ /dev/null
@@ -1,21 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements.  See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License.  You may obtain a copy of the License at
-
-#      http://www.apache.org/licenses/LICENSE-2.0
-
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-*
-!target/*-runner
-!target/*-runner.jar
-!target/lib/*
-!target/quarkus-app/*
-src/*
\ No newline at end of file
diff --git a/karavan-app/docker-dev.sh b/karavan-app/docker-dev.sh
new file mode 100755
index 00000000..c2451646
--- /dev/null
+++ b/karavan-app/docker-dev.sh
@@ -0,0 +1,17 @@
+docker run -it --rm \
+  --name karavan \
+  --network karavan \
+  -p 8080:8080 \
+  -p 5005:5005 \
+  -p 5173:5173 \
+  -v /m2-cache \
+  -v "$(pwd)":/usr/src/app \
+  -v /usr/src/app/target \
+  -v /usr/src/app/src/main/webui/node_modules \
+  -w /usr/src/app \
+  -v /var/run/docker.sock:/var/run/docker.sock \
+  -e QUARKUS_ANALYTICS_DISABLED=true \
+  maven:3.9-eclipse-temurin-25 \
+  mvn quarkus:dev \
+    -Dquarkus.http.host=0.0.0.0 \
+    -Dmaven.repo.local=/m2-cache/repository
\ No newline at end of file
diff --git a/karavan-app/src/main/docker/Dockerfile 
b/karavan-app/src/main/docker/Dockerfile
index d3b97c82..5786a7c7 100644
--- a/karavan-app/src/main/docker/Dockerfile
+++ b/karavan-app/src/main/docker/Dockerfile
@@ -19,7 +19,7 @@ LABEL "org.opencontainers.image.title"="karavan"
 LABEL "org.opencontainers.image.description"="Apache Camel Karavan"
 LABEL "org.opencontainers.image.url"="https://camel.apache.org";
 LABEL "org.opencontainers.image.licenses"="Apache 2.0"
-LABEL "org.opencontainers.image.version"="4.18.1"
+LABEL "org.opencontainers.image.version"="4.22.0"
 LABEL "org.apache.camel.karavan/type"="internal"
 
 RUN mkdir /opt/app
diff --git a/karavan-app/src/main/webui/.gitignore 
b/karavan-app/src/main/webui/.gitignore
index 431cc305..b2bc7055 100644
--- a/karavan-app/src/main/webui/.gitignore
+++ b/karavan-app/src/main/webui/.gitignore
@@ -32,7 +32,7 @@ fixtures/dom/public/react.js
 test/the-files-to-test.generated.js
 *.log*
 chrome-user-data
-*.sublime-project
+*.sublime-projectFolder
 *.sublime-workspace
 .idea
 *.iml
diff --git a/karavan-app/src/main/webui/eslint.config.mjs 
b/karavan-app/src/main/webui/eslint.config.mjs
index d0fdedb3..2f151d3c 100644
--- a/karavan-app/src/main/webui/eslint.config.mjs
+++ b/karavan-app/src/main/webui/eslint.config.mjs
@@ -4,5 +4,29 @@ import eslint from '@eslint/js';
 import tseslint from 'typescript-eslint';
 
 export default tseslint.config(
-    eslint.configs.recommended
+    eslint.configs.recommended,
+    ...tseslint.configs.recommended, // <-- ADD THIS: Sets up the TS parser 
and recommended rules
+    {
+        files: ['src/**/*.{ts,tsx}'],
+        ignores: ['src/core/**'],                       // generated
+        rules: {
+            '@typescript-eslint/no-explicit-any': 'warn',
+            '@typescript-eslint/no-unused-vars': ['error', {
+                args: 'none'
+            }],
+            'no-restricted-imports': ['error', {
+                paths: [
+                    {name: 'zustand/traditional', message: 'Legacy store 
pattern. Use create<T>()'},
+                    {name: 'axios', message: 'Use AuthApi.getInstance() — CSRF 
+ 401 refresh live there'},
+                ],
+                patterns: [
+                    {group: ['../../*'], message: 'Use tsconfig path aliases 
(@stores/…, @api/…)'},
+                ],
+            }],
+            'no-restricted-syntax': ['error', {
+                selector: 
"ImportSpecifier[imported.name=/^(Text|TextContent)$/]",
+                message: 'Removed in PatternFly 6 — use Content',
+            }],
+        },
+    },
 );
\ No newline at end of file
diff --git a/karavan-app/src/main/webui/tsconfig.json 
b/karavan-app/src/main/webui/tsconfig.json
deleted file mode 100644
index 97861b23..00000000
--- a/karavan-app/src/main/webui/tsconfig.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
-  "compilerOptions": {
-    "target": "ESNext",
-    "lib": ["dom", "dom.iterable", "esnext"],
-    "module": "ESNext",
-    "moduleResolution": "bundler",
-    "allowJs": false,
-    "skipLibCheck": true,
-    "esModuleInterop": true,
-    "allowSyntheticDefaultImports": true,
-    "strict": true,
-    "forceConsistentCasingInFileNames": true,
-    "resolveJsonModule": true,
-    "isolatedModules": true,
-    "noEmit": true,
-    "strictNullChecks": false,
-    "noFallthroughCasesInSwitch": true,
-    "jsx": "react-jsx",
-    "types": ["vite/client", "vite-plugin-svgr/client"],
-    "baseUrl": "./",
-    "paths": {
-      "@core/*": ["src/core/*"],
-      "@app/*": ["src/ui/app/*"],
-      "@api/*": ["src/ui/api/*"],
-      "@bus/*": ["src/ui/bus/*"],
-      "@features/*": ["src/ui/features/*"],
-      "@models/*": ["src/ui/models/*"],
-      "@services/*": ["src/ui/services/*"],
-      "@shared/*": ["src/ui/shared/*"],
-      "@stores/*": ["src/ui/stores/*"],
-      "@util/*": ["src/ui/util/*"]
-    }
-  },
-  "include": ["src", "**/*.ts", "**/*.tsx", "**/*.mjs"]
-}

Reply via email to