aboutsummaryrefslogtreecommitdiffstats
path: root/cds-ui/designer-client/src/app/modules/feature-modules/packages/designer/functions-attribute/functions-attribute.component.ts
diff options
context:
space:
mode:
Diffstat (limited to 'cds-ui/designer-client/src/app/modules/feature-modules/packages/designer/functions-attribute/functions-attribute.component.ts')
-rw-r--r--cds-ui/designer-client/src/app/modules/feature-modules/packages/designer/functions-attribute/functions-attribute.component.ts21
1 files changed, 20 insertions, 1 deletions
diff --git a/cds-ui/designer-client/src/app/modules/feature-modules/packages/designer/functions-attribute/functions-attribute.component.ts b/cds-ui/designer-client/src/app/modules/feature-modules/packages/designer/functions-attribute/functions-attribute.component.ts
index f46004b0b..8780621ea 100644
--- a/cds-ui/designer-client/src/app/modules/feature-modules/packages/designer/functions-attribute/functions-attribute.component.ts
+++ b/cds-ui/designer-client/src/app/modules/feature-modules/packages/designer/functions-attribute/functions-attribute.component.ts
@@ -139,7 +139,7 @@ export class FunctionsAttributeComponent implements OnInit, OnDestroy {
if (inputs) {
for (const [key, value] of Object.entries(inputs)) {
console.log(key + ' - ' + value);
- if (typeof value === 'object') {
+ if (this.isValidJson(value)) {
this.currentFuncion.inputs[key] = JSON.stringify(value);
} else {
this.currentFuncion.inputs[key] = value;
@@ -154,6 +154,25 @@ export class FunctionsAttributeComponent implements OnInit, OnDestroy {
}
}
}
+
+ isValidJson(val) {
+ try {
+ JSON.parse(val);
+ return true;
+ } catch (e) { }
+ return false;
+ }
+
+ jsonToStr(json) {
+ return JSON.stringify(json);
+ }
+
+ bind(key, e) {
+ const val = JSON.parse(e.target.value);
+ this.currentFuncion.inputs[key] = {
+ ...val
+ };
+ }
ngOnDestroy() {
this.ngUnsubscribe.next();
this.ngUnsubscribe.complete();