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

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


The following commit(s) were added to refs/heads/main by this push:
     new 149739da Fix #1437
149739da is described below

commit 149739da01f6f555e85cebbd84568e3fc27c994f
Author: Marat Gubaidullin <ma...@talismancloud.io>
AuthorDate: Wed Nov 6 16:52:31 2024 -0500

    Fix #1437
---
 .../kamelet/KameletDefinitionPropertyCard.tsx      |  4 --
 .../webui/src/designer/property/DslProperties.tsx  |  2 +-
 .../src/designer/property/usePropertiesHook.tsx    |  1 -
 .../src/designer/route/element/DslElement.tsx      |  2 +-
 karavan-core/src/core/api/CamelDefinitionYaml.ts   |  2 +-
 karavan-designer/package.json                      | 14 +++---
 karavan-designer/public/example/demo.camel.yaml    | 50 +++++++++-------------
 .../kamelet/KameletDefinitionPropertyCard.tsx      |  4 --
 .../src/designer/property/DslProperties.tsx        |  2 +-
 .../src/designer/property/usePropertiesHook.tsx    |  1 -
 .../src/designer/route/element/DslElement.tsx      |  2 +-
 .../kamelet/KameletDefinitionPropertyCard.tsx      |  4 --
 .../src/designer/property/DslProperties.tsx        |  2 +-
 .../src/designer/property/usePropertiesHook.tsx    |  1 -
 .../src/designer/route/element/DslElement.tsx      |  2 +-
 15 files changed, 33 insertions(+), 60 deletions(-)

diff --git 
a/karavan-app/src/main/webui/src/designer/kamelet/KameletDefinitionPropertyCard.tsx
 
b/karavan-app/src/main/webui/src/designer/kamelet/KameletDefinitionPropertyCard.tsx
index faf7c2bd..7d1e7d27 100644
--- 
a/karavan-app/src/main/webui/src/designer/kamelet/KameletDefinitionPropertyCard.tsx
+++ 
b/karavan-app/src/main/webui/src/designer/kamelet/KameletDefinitionPropertyCard.tsx
@@ -99,16 +99,12 @@ export function KameletDefinitionPropertyCard(props: Props) 
{
         const i = CamelUtil.cloneIntegration(integration);
         if (i.spec.definition && integration.spec.definition?.properties[key]) 
{
             const enums: string [] = i.spec.definition.properties[key].enum;
-            console.log(enums)
             if (enums && Array.isArray(enums)) {
-                console.log("isArray")
                 const from = enums.findIndex(e => source);
                 const to = enums.findIndex(e => dest);
                 if (from > -1 && to > -1) {
-                    console.log("exchange");
                     [enums[from], enums[to]] = [enums[to], enums[from]];
                     i.spec.definition.properties[key].enum = enums;
-                    console.log("i.spec.definition.properties[key].enum", 
i.spec.definition.properties[key].enum);
                     setIntegration(i, true);
                 }
             }
diff --git a/karavan-app/src/main/webui/src/designer/property/DslProperties.tsx 
b/karavan-app/src/main/webui/src/designer/property/DslProperties.tsx
index e248d998..63a7960d 100644
--- a/karavan-app/src/main/webui/src/designer/property/DslProperties.tsx
+++ b/karavan-app/src/main/webui/src/designer/property/DslProperties.tsx
@@ -95,7 +95,7 @@ export function DslProperties(props: Props) {
         return CamelDefinitionApiExt.getElementProperties(dslName)
             .filter((p: PropertyMeta) => p.name !== 'uri') // do not show uri
             // .filer((p: PropertyMeta) => (showAdvanced && 
p.label.includes('advanced')) || (!showAdvanced && 
!p.label.includes('advanced')))
-            .filter((p: PropertyMeta) => !p.isObject || (p.isObject && 
!CamelUi.dslHasSteps(p.type)) || (dslName === 'CatchDefinition' && p.name === 
'onWhen'))
+            .filter((p: PropertyMeta) => !p.isObject || (p.isObject && 
!CamelUi.dslHasSteps(p.type)) || (p.name === 'onWhen'))
             .filter((p: PropertyMeta) => !(dslName === 'RestDefinition' && 
['get', 'post', 'put', 'patch', 'delete', 'head'].includes(p.name)));
         // .filter((p: PropertyMeta) => dslName && !(['RestDefinition', 
'GetDefinition', 'PostDefinition', 'PutDefinition', 'PatchDefinition', 
'DeleteDefinition', 'HeadDefinition'].includes(dslName) && ['param', 
'responseMessage'].includes(p.name))) // TODO: configure this properties
     }
diff --git 
a/karavan-app/src/main/webui/src/designer/property/usePropertiesHook.tsx 
b/karavan-app/src/main/webui/src/designer/property/usePropertiesHook.tsx
index 5c8e38b4..2d806c0d 100644
--- a/karavan-app/src/main/webui/src/designer/property/usePropertiesHook.tsx
+++ b/karavan-app/src/main/webui/src/designer/property/usePropertiesHook.tsx
@@ -177,7 +177,6 @@ export function usePropertiesHook(designerType: 'routes' | 
'rest' | 'beans' = 'r
     }
 
     const convertStep = (step: CamelElement, targetDslName: string) => {
-        console.log(targetDslName)
         try {
             // setSelectedStep(undefined);
             if (targetDslName === 'ChoiceDefinition' && step.dslName === 
'FilterDefinition') {
diff --git 
a/karavan-app/src/main/webui/src/designer/route/element/DslElement.tsx 
b/karavan-app/src/main/webui/src/designer/route/element/DslElement.tsx
index d5acb0c0..15af1ac8 100644
--- a/karavan-app/src/main/webui/src/designer/route/element/DslElement.tsx
+++ b/karavan-app/src/main/webui/src/designer/route/element/DslElement.tsx
@@ -183,7 +183,7 @@ export function DslElement(props: Props) {
         } else {
             children = children.filter(child => child.className === 
'FromDefinition')
         }
-        if (step.dslName === 'CatchDefinition') { // exception
+        if (['CatchDefinition', 'OnExceptionDefinition', 
'OnCompletionDefinition', 
'Resilience4jConfigurationDefinition'].includes(step.dslName)) { // exception
             children = children.filter(value => value.name !== 'onWhen')
         }
         return (
diff --git a/karavan-core/src/core/api/CamelDefinitionYaml.ts 
b/karavan-core/src/core/api/CamelDefinitionYaml.ts
index 08986acc..5852eb8e 100644
--- a/karavan-core/src/core/api/CamelDefinitionYaml.ts
+++ b/karavan-core/src/core/api/CamelDefinitionYaml.ts
@@ -107,7 +107,7 @@ export class CamelDefinitionYaml {
             if (object.constructors && 
CamelDefinitionYaml.isEmptyObject(object.constructors)) {
                 delete object.constructors;
             }
-        } else if (object.dslName === 'CatchDefinition' && 
object?.onWhen?.stepName !== undefined) {
+        } else if (['CatchDefinition', 'OnExceptionDefinition', 
'OnCompletionDefinition', 
'Resilience4jConfigurationDefinition'].includes(object.dslName) && 
object?.onWhen?.stepName !== undefined) {
             object.onWhen.stepName = 'onWhen';  // 
https://github.com/apache/camel-karavan/issues/1420
         }
 
diff --git a/karavan-designer/package.json b/karavan-designer/package.json
index 82df8a30..0b1c218a 100644
--- a/karavan-designer/package.json
+++ b/karavan-designer/package.json
@@ -9,11 +9,7 @@
     "serve": "vite preview"
   },
   "proxy": "http://localhost:8080/";,
-  "eslintConfig": {
-    "extends": [
-      "react-app"
-    ]
-  },
+  "eslintConfig": {},
   "browserslist": {
     "production": [
       ">0.2%",
@@ -51,10 +47,10 @@
     "@types/node": "20.14.8",
     "@types/react": "^18.3.5",
     "@types/react-dom": "^18.3.0",
-    "@typescript-eslint/eslint-plugin": "^5.62.0",
-    "@typescript-eslint/parser": "^5.62.0",
-    "@vitejs/plugin-react": "^4.3.1",
-    "eslint": "^8.57.0",
+    "@typescript-eslint/eslint-plugin": "^8.13.0",
+    "@typescript-eslint/parser": "^8.13.0",
+    "@vitejs/plugin-react": "^4.3.3",
+    "eslint": "^9.14.0",
     "monaco-editor": "^0.51.0",
     "typescript": "4.9.5",
     "vite": "^5.4.8",
diff --git a/karavan-designer/public/example/demo.camel.yaml 
b/karavan-designer/public/example/demo.camel.yaml
index 1b6a15c3..4f0fef86 100644
--- a/karavan-designer/public/example/demo.camel.yaml
+++ b/karavan-designer/public/example/demo.camel.yaml
@@ -1,36 +1,28 @@
 - route:
-    id: route-8a40
-    nodePrefixId: route-78f
+    id: route-46e9
+    nodePrefixId: route-5ec
     from:
-      id: from-674b
+      id: from-f789
       uri: timer
       parameters:
-        timerName: name
+        timerName: test
       steps:
-        - toD:
-            id: to-55df
-            description: Send file
-            uri: file
-            parameters:
-              directoryName: ${variable.dir}
-              fileName: ${variable.fileName}
-        - filter:
-            id: filter-6e45
+        - log:
+            id: log-eafe
+            message: ${body}
+- routeConfiguration:
+    onException:
+      - onException:
+          id: onException-6e74
+          exception:
+            - java.lang.NullPointerException
+          onWhen:
+            id: when-5940
             expression:
               groovy:
-                id: groovy-672e
-        - choice:
-            id: choice-c008
-            when:
-              - id: when-5e7a
-                expression:
-                  groovy:
-                    id: groovy-d744
-            otherwise:
-              id: otherwise-a012
-        - to:
-            id: to-5276
-            uri: aws-bedrock-agent-runtime
-        - toD:
-            id: to-f1dd
-            uri: sql
+                id: groovy-d30d
+                expression: "true"
+          steps:
+            - log:
+                id: log-eae0
+                message: error
diff --git 
a/karavan-designer/src/designer/kamelet/KameletDefinitionPropertyCard.tsx 
b/karavan-designer/src/designer/kamelet/KameletDefinitionPropertyCard.tsx
index faf7c2bd..7d1e7d27 100644
--- a/karavan-designer/src/designer/kamelet/KameletDefinitionPropertyCard.tsx
+++ b/karavan-designer/src/designer/kamelet/KameletDefinitionPropertyCard.tsx
@@ -99,16 +99,12 @@ export function KameletDefinitionPropertyCard(props: Props) 
{
         const i = CamelUtil.cloneIntegration(integration);
         if (i.spec.definition && integration.spec.definition?.properties[key]) 
{
             const enums: string [] = i.spec.definition.properties[key].enum;
-            console.log(enums)
             if (enums && Array.isArray(enums)) {
-                console.log("isArray")
                 const from = enums.findIndex(e => source);
                 const to = enums.findIndex(e => dest);
                 if (from > -1 && to > -1) {
-                    console.log("exchange");
                     [enums[from], enums[to]] = [enums[to], enums[from]];
                     i.spec.definition.properties[key].enum = enums;
-                    console.log("i.spec.definition.properties[key].enum", 
i.spec.definition.properties[key].enum);
                     setIntegration(i, true);
                 }
             }
diff --git a/karavan-designer/src/designer/property/DslProperties.tsx 
b/karavan-designer/src/designer/property/DslProperties.tsx
index e248d998..63a7960d 100644
--- a/karavan-designer/src/designer/property/DslProperties.tsx
+++ b/karavan-designer/src/designer/property/DslProperties.tsx
@@ -95,7 +95,7 @@ export function DslProperties(props: Props) {
         return CamelDefinitionApiExt.getElementProperties(dslName)
             .filter((p: PropertyMeta) => p.name !== 'uri') // do not show uri
             // .filer((p: PropertyMeta) => (showAdvanced && 
p.label.includes('advanced')) || (!showAdvanced && 
!p.label.includes('advanced')))
-            .filter((p: PropertyMeta) => !p.isObject || (p.isObject && 
!CamelUi.dslHasSteps(p.type)) || (dslName === 'CatchDefinition' && p.name === 
'onWhen'))
+            .filter((p: PropertyMeta) => !p.isObject || (p.isObject && 
!CamelUi.dslHasSteps(p.type)) || (p.name === 'onWhen'))
             .filter((p: PropertyMeta) => !(dslName === 'RestDefinition' && 
['get', 'post', 'put', 'patch', 'delete', 'head'].includes(p.name)));
         // .filter((p: PropertyMeta) => dslName && !(['RestDefinition', 
'GetDefinition', 'PostDefinition', 'PutDefinition', 'PatchDefinition', 
'DeleteDefinition', 'HeadDefinition'].includes(dslName) && ['param', 
'responseMessage'].includes(p.name))) // TODO: configure this properties
     }
diff --git a/karavan-designer/src/designer/property/usePropertiesHook.tsx 
b/karavan-designer/src/designer/property/usePropertiesHook.tsx
index 5c8e38b4..2d806c0d 100644
--- a/karavan-designer/src/designer/property/usePropertiesHook.tsx
+++ b/karavan-designer/src/designer/property/usePropertiesHook.tsx
@@ -177,7 +177,6 @@ export function usePropertiesHook(designerType: 'routes' | 
'rest' | 'beans' = 'r
     }
 
     const convertStep = (step: CamelElement, targetDslName: string) => {
-        console.log(targetDslName)
         try {
             // setSelectedStep(undefined);
             if (targetDslName === 'ChoiceDefinition' && step.dslName === 
'FilterDefinition') {
diff --git a/karavan-designer/src/designer/route/element/DslElement.tsx 
b/karavan-designer/src/designer/route/element/DslElement.tsx
index d5acb0c0..15af1ac8 100644
--- a/karavan-designer/src/designer/route/element/DslElement.tsx
+++ b/karavan-designer/src/designer/route/element/DslElement.tsx
@@ -183,7 +183,7 @@ export function DslElement(props: Props) {
         } else {
             children = children.filter(child => child.className === 
'FromDefinition')
         }
-        if (step.dslName === 'CatchDefinition') { // exception
+        if (['CatchDefinition', 'OnExceptionDefinition', 
'OnCompletionDefinition', 
'Resilience4jConfigurationDefinition'].includes(step.dslName)) { // exception
             children = children.filter(value => value.name !== 'onWhen')
         }
         return (
diff --git 
a/karavan-space/src/designer/kamelet/KameletDefinitionPropertyCard.tsx 
b/karavan-space/src/designer/kamelet/KameletDefinitionPropertyCard.tsx
index faf7c2bd..7d1e7d27 100644
--- a/karavan-space/src/designer/kamelet/KameletDefinitionPropertyCard.tsx
+++ b/karavan-space/src/designer/kamelet/KameletDefinitionPropertyCard.tsx
@@ -99,16 +99,12 @@ export function KameletDefinitionPropertyCard(props: Props) 
{
         const i = CamelUtil.cloneIntegration(integration);
         if (i.spec.definition && integration.spec.definition?.properties[key]) 
{
             const enums: string [] = i.spec.definition.properties[key].enum;
-            console.log(enums)
             if (enums && Array.isArray(enums)) {
-                console.log("isArray")
                 const from = enums.findIndex(e => source);
                 const to = enums.findIndex(e => dest);
                 if (from > -1 && to > -1) {
-                    console.log("exchange");
                     [enums[from], enums[to]] = [enums[to], enums[from]];
                     i.spec.definition.properties[key].enum = enums;
-                    console.log("i.spec.definition.properties[key].enum", 
i.spec.definition.properties[key].enum);
                     setIntegration(i, true);
                 }
             }
diff --git a/karavan-space/src/designer/property/DslProperties.tsx 
b/karavan-space/src/designer/property/DslProperties.tsx
index e248d998..63a7960d 100644
--- a/karavan-space/src/designer/property/DslProperties.tsx
+++ b/karavan-space/src/designer/property/DslProperties.tsx
@@ -95,7 +95,7 @@ export function DslProperties(props: Props) {
         return CamelDefinitionApiExt.getElementProperties(dslName)
             .filter((p: PropertyMeta) => p.name !== 'uri') // do not show uri
             // .filer((p: PropertyMeta) => (showAdvanced && 
p.label.includes('advanced')) || (!showAdvanced && 
!p.label.includes('advanced')))
-            .filter((p: PropertyMeta) => !p.isObject || (p.isObject && 
!CamelUi.dslHasSteps(p.type)) || (dslName === 'CatchDefinition' && p.name === 
'onWhen'))
+            .filter((p: PropertyMeta) => !p.isObject || (p.isObject && 
!CamelUi.dslHasSteps(p.type)) || (p.name === 'onWhen'))
             .filter((p: PropertyMeta) => !(dslName === 'RestDefinition' && 
['get', 'post', 'put', 'patch', 'delete', 'head'].includes(p.name)));
         // .filter((p: PropertyMeta) => dslName && !(['RestDefinition', 
'GetDefinition', 'PostDefinition', 'PutDefinition', 'PatchDefinition', 
'DeleteDefinition', 'HeadDefinition'].includes(dslName) && ['param', 
'responseMessage'].includes(p.name))) // TODO: configure this properties
     }
diff --git a/karavan-space/src/designer/property/usePropertiesHook.tsx 
b/karavan-space/src/designer/property/usePropertiesHook.tsx
index 5c8e38b4..2d806c0d 100644
--- a/karavan-space/src/designer/property/usePropertiesHook.tsx
+++ b/karavan-space/src/designer/property/usePropertiesHook.tsx
@@ -177,7 +177,6 @@ export function usePropertiesHook(designerType: 'routes' | 
'rest' | 'beans' = 'r
     }
 
     const convertStep = (step: CamelElement, targetDslName: string) => {
-        console.log(targetDslName)
         try {
             // setSelectedStep(undefined);
             if (targetDslName === 'ChoiceDefinition' && step.dslName === 
'FilterDefinition') {
diff --git a/karavan-space/src/designer/route/element/DslElement.tsx 
b/karavan-space/src/designer/route/element/DslElement.tsx
index d5acb0c0..15af1ac8 100644
--- a/karavan-space/src/designer/route/element/DslElement.tsx
+++ b/karavan-space/src/designer/route/element/DslElement.tsx
@@ -183,7 +183,7 @@ export function DslElement(props: Props) {
         } else {
             children = children.filter(child => child.className === 
'FromDefinition')
         }
-        if (step.dslName === 'CatchDefinition') { // exception
+        if (['CatchDefinition', 'OnExceptionDefinition', 
'OnCompletionDefinition', 
'Resilience4jConfigurationDefinition'].includes(step.dslName)) { // exception
             children = children.filter(value => value.name !== 'onWhen')
         }
         return (

Reply via email to