You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ma...@apache.org on 2023/12/14 01:53:50 UTC

(camel-karavan) branch main updated (812f39bd -> a23d4f39)

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

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


    from 812f39bd Fixes for demo
     new 7a7d1619 Fix #1028
     new a23d4f39 Fix #1028

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../src/designer/route/property/DslPropertyField.tsx | 12 +++++++++---
 .../src/designer/route/element/DslElementHeader.tsx  |  5 +++--
 .../route/property/ComponentParameterField.tsx       |  5 +++--
 .../src/designer/route/property/DslPropertyField.tsx | 15 +++++++++++----
 .../src/designer/route/useRouteDesignerHook.tsx      | 20 +++++++++++++++++++-
 .../src/designer/route/property/DslPropertyField.tsx | 12 +++++++++---
 6 files changed, 54 insertions(+), 15 deletions(-)


(camel-karavan) 02/02: Fix #1028

Posted by ma...@apache.org.
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

commit a23d4f39ebbc13c71e85f639964a72583a53efb6
Author: Marat Gubaidullin <ma...@talismancloud.io>
AuthorDate: Wed Dec 13 20:53:42 2023 -0500

    Fix #1028
---
 .../src/designer/route/element/DslElementHeader.tsx  |  5 +++--
 .../route/property/ComponentParameterField.tsx       |  5 +++--
 .../src/designer/route/property/DslPropertyField.tsx | 15 +++++++++++----
 .../src/designer/route/useRouteDesignerHook.tsx      | 20 +++++++++++++++++++-
 .../src/designer/route/property/DslPropertyField.tsx | 12 +++++++++---
 5 files changed, 45 insertions(+), 12 deletions(-)

diff --git a/karavan-space/src/designer/route/element/DslElementHeader.tsx b/karavan-space/src/designer/route/element/DslElementHeader.tsx
index d201d105..c850e514 100644
--- a/karavan-space/src/designer/route/element/DslElementHeader.tsx
+++ b/karavan-space/src/designer/route/element/DslElementHeader.tsx
@@ -147,8 +147,9 @@ export function DslElementHeader(props: Props) {
             classes.push(isElementSelected() ? 'header-bottom-selected' : 'header-bottom-not-selected')
         } else if (step.dslName === 'RouteConfigurationDefinition') {
             classes.push('header-route')
-            if (hasElements(step)) classes.push('header-bottom-line')
-            classes.push(isElementSelected() ? 'header-bottom-selected' : 'header-bottom-not-selected')
+            if (hasElements(step)) {
+                classes.push(isElementSelected() ? 'header-bottom-selected' : 'header-bottom-not-selected')
+            }
         } else {
             classes.push('header')
         }
diff --git a/karavan-space/src/designer/route/property/ComponentParameterField.tsx b/karavan-space/src/designer/route/property/ComponentParameterField.tsx
index f80c3e75..49eb2f6a 100644
--- a/karavan-space/src/designer/route/property/ComponentParameterField.tsx
+++ b/karavan-space/src/designer/route/property/ComponentParameterField.tsx
@@ -297,13 +297,14 @@ export function ComponentParameterField(props: Props) {
     }
 
     function getSwitch(property: ComponentProperty, value: any) {
+        const isChecked = value !== undefined ? Boolean(value) : (property.defaultValue !== undefined && ['true', true].includes(property.defaultValue))
         return (
             <Switch
                 id={id} name={id}
                 value={value?.toString()}
                 aria-label={id}
-                isChecked={value !== undefined ? Boolean(value) : property.defaultValue !== undefined && property.defaultValue === 'true'}
-                onChange={e => parametersChanged(property.name, !Boolean(value))}/>
+                isChecked={isChecked}
+                onChange={(e, checked) => parametersChanged(property.name, checked)}/>
         )
     }
 
diff --git a/karavan-space/src/designer/route/property/DslPropertyField.tsx b/karavan-space/src/designer/route/property/DslPropertyField.tsx
index 77974d13..f72db408 100644
--- a/karavan-space/src/designer/route/property/DslPropertyField.tsx
+++ b/karavan-space/src/designer/route/property/DslPropertyField.tsx
@@ -171,7 +171,8 @@ export function DslPropertyField(props: Props) {
 
     function isUriReadOnly(property: PropertyMeta): boolean {
         const dslName: string = props.element?.dslName || '';
-        return property.name === 'uri' && !['ToDynamicDefinition', 'WireTapDefinition', 'InterceptFromDefinition'].includes(dslName)
+        return property.name === 'uri'
+            && !['ToDynamicDefinition', 'WireTapDefinition', 'InterceptFromDefinition', 'InterceptSendToEndpointDefinition'].includes(dslName)
     }
 
     function selectInfrastructure(value: string) {
@@ -528,7 +529,6 @@ export function DslPropertyField(props: Props) {
     }
 
     function getInternalUriSelect(property: PropertyMeta, value: any) {
-        console.log("getInternalUriSelect", property, value)
         const selectOptions: JSX.Element[] = [];
         const urls = CamelUi.getInternalRouteUris(integration, "direct");
         urls.push(...CamelUi.getInternalRouteUris(integration, "seda"));
@@ -590,7 +590,8 @@ export function DslPropertyField(props: Props) {
     function getMultiObjectFieldProps(property: PropertyMeta, value: any, v: any, index: number, hideLabel: boolean = false) {
         return (<>
             <div className="object">
-                {value && <ObjectField property={property}
+                {v && <ObjectField property={property}
+                                   value={v}
                                        hideLabel={hideLabel}
                                        onPropertyUpdate={(f, v) => onMultiValueObjectUpdate(index, f, v)}
                 />}
@@ -618,7 +619,13 @@ export function DslPropertyField(props: Props) {
                         </Card>
                 })}
                 <Button variant="link" className="add-button"
-                        onClick={e => propertyChanged(property.name, [...value, CamelDefinitionApi.createStep(property.type, {})])}><AddIcon/>{"Add " + property.displayName}
+                        onClick={e => {
+                            const valArray = value !== null ? [...value] : [];
+                            valArray.push(CamelDefinitionApi.createStep(property.type, {}));
+                            propertyChanged(property.name, valArray);
+                        }}>
+                    <AddIcon/>
+                    {"Add " + property.displayName}
                 </Button>
             </div>
         )
diff --git a/karavan-space/src/designer/route/useRouteDesignerHook.tsx b/karavan-space/src/designer/route/useRouteDesignerHook.tsx
index 1457adba..51b97e20 100644
--- a/karavan-space/src/designer/route/useRouteDesignerHook.tsx
+++ b/karavan-space/src/designer/route/useRouteDesignerHook.tsx
@@ -18,7 +18,14 @@ import React from 'react';
 import '../karavan.css';
 import {DslMetaModel} from "../utils/DslMetaModel";
 import {CamelUtil} from "karavan-core/lib/api/CamelUtil";
-import {ChoiceDefinition, FromDefinition, LogDefinition, RouteConfigurationDefinition, RouteDefinition} from "karavan-core/lib/model/CamelDefinition";
+import {
+    ChoiceDefinition,
+    FromDefinition, JsonDataFormat,
+    LogDefinition,
+    MarshalDefinition,
+    RouteConfigurationDefinition,
+    RouteDefinition, UnmarshalDefinition
+} from "karavan-core/lib/model/CamelDefinition";
 import {CamelElement, MetadataLabels} from "karavan-core/lib/model/IntegrationDefinition";
 import {CamelDefinitionApiExt} from "karavan-core/lib/api/CamelDefinitionApiExt";
 import {CamelDefinitionApi} from "karavan-core/lib/api/CamelDefinitionApi";
@@ -247,6 +254,7 @@ export function useRouteDesignerHook () {
             default:
                 const step = CamelDefinitionApi.createStep(dsl.dsl, undefined);
                 const augmentedStep = setDslDefaults(step);
+                console.log(step, augmentedStep)
                 addStep(augmentedStep, parentId, position)
                 break;
         }
@@ -261,6 +269,16 @@ export function useRouteDesignerHook () {
             (step as ChoiceDefinition).when?.push(CamelDefinitionApi.createStep('WhenDefinition', undefined));
             (step as ChoiceDefinition).otherwise = CamelDefinitionApi.createStep('OtherwiseDefinition', undefined);
         }
+        if (step.dslName === 'MarshalDefinition') {
+            if (CamelDefinitionApiExt.getDataFormat(step) === undefined) {
+                (step as MarshalDefinition).json = new JsonDataFormat()
+            }
+        }
+        if (step.dslName === 'UnmarshalDefinition') {
+            if (CamelDefinitionApiExt.getDataFormat(step) === undefined) {
+                (step as UnmarshalDefinition).json = new JsonDataFormat()
+            }
+        }
         return step;
     }
 
diff --git a/karavan-web/karavan-app/src/main/webui/src/designer/route/property/DslPropertyField.tsx b/karavan-web/karavan-app/src/main/webui/src/designer/route/property/DslPropertyField.tsx
index a7feb03c..f72db408 100644
--- a/karavan-web/karavan-app/src/main/webui/src/designer/route/property/DslPropertyField.tsx
+++ b/karavan-web/karavan-app/src/main/webui/src/designer/route/property/DslPropertyField.tsx
@@ -529,7 +529,6 @@ export function DslPropertyField(props: Props) {
     }
 
     function getInternalUriSelect(property: PropertyMeta, value: any) {
-        console.log("getInternalUriSelect", property, value)
         const selectOptions: JSX.Element[] = [];
         const urls = CamelUi.getInternalRouteUris(integration, "direct");
         urls.push(...CamelUi.getInternalRouteUris(integration, "seda"));
@@ -591,7 +590,8 @@ export function DslPropertyField(props: Props) {
     function getMultiObjectFieldProps(property: PropertyMeta, value: any, v: any, index: number, hideLabel: boolean = false) {
         return (<>
             <div className="object">
-                {value && <ObjectField property={property}
+                {v && <ObjectField property={property}
+                                   value={v}
                                        hideLabel={hideLabel}
                                        onPropertyUpdate={(f, v) => onMultiValueObjectUpdate(index, f, v)}
                 />}
@@ -619,7 +619,13 @@ export function DslPropertyField(props: Props) {
                         </Card>
                 })}
                 <Button variant="link" className="add-button"
-                        onClick={e => propertyChanged(property.name, [...value, CamelDefinitionApi.createStep(property.type, {})])}><AddIcon/>{"Add " + property.displayName}
+                        onClick={e => {
+                            const valArray = value !== null ? [...value] : [];
+                            valArray.push(CamelDefinitionApi.createStep(property.type, {}));
+                            propertyChanged(property.name, valArray);
+                        }}>
+                    <AddIcon/>
+                    {"Add " + property.displayName}
                 </Button>
             </div>
         )


(camel-karavan) 01/02: Fix #1028

Posted by ma...@apache.org.
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

commit 7a7d16194822ccee8c2290ab7273c55119c9f49e
Author: Marat Gubaidullin <ma...@talismancloud.io>
AuthorDate: Wed Dec 13 20:47:58 2023 -0500

    Fix #1028
---
 .../src/designer/route/property/DslPropertyField.tsx         | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/karavan-designer/src/designer/route/property/DslPropertyField.tsx b/karavan-designer/src/designer/route/property/DslPropertyField.tsx
index a7feb03c..f72db408 100644
--- a/karavan-designer/src/designer/route/property/DslPropertyField.tsx
+++ b/karavan-designer/src/designer/route/property/DslPropertyField.tsx
@@ -529,7 +529,6 @@ export function DslPropertyField(props: Props) {
     }
 
     function getInternalUriSelect(property: PropertyMeta, value: any) {
-        console.log("getInternalUriSelect", property, value)
         const selectOptions: JSX.Element[] = [];
         const urls = CamelUi.getInternalRouteUris(integration, "direct");
         urls.push(...CamelUi.getInternalRouteUris(integration, "seda"));
@@ -591,7 +590,8 @@ export function DslPropertyField(props: Props) {
     function getMultiObjectFieldProps(property: PropertyMeta, value: any, v: any, index: number, hideLabel: boolean = false) {
         return (<>
             <div className="object">
-                {value && <ObjectField property={property}
+                {v && <ObjectField property={property}
+                                   value={v}
                                        hideLabel={hideLabel}
                                        onPropertyUpdate={(f, v) => onMultiValueObjectUpdate(index, f, v)}
                 />}
@@ -619,7 +619,13 @@ export function DslPropertyField(props: Props) {
                         </Card>
                 })}
                 <Button variant="link" className="add-button"
-                        onClick={e => propertyChanged(property.name, [...value, CamelDefinitionApi.createStep(property.type, {})])}><AddIcon/>{"Add " + property.displayName}
+                        onClick={e => {
+                            const valArray = value !== null ? [...value] : [];
+                            valArray.push(CamelDefinitionApi.createStep(property.type, {}));
+                            propertyChanged(property.name, valArray);
+                        }}>
+                    <AddIcon/>
+                    {"Add " + property.displayName}
                 </Button>
             </div>
         )