From 2c368224fb6faa661f25adfd9400984b25d83ed7 Mon Sep 17 00:00:00 2001 From: Matthias Mohr Date: Tue, 27 Aug 2024 23:10:01 +0200 Subject: [PATCH] Allow to edit object-typed parameters via a code editor and minor bug fixes --- src/components/DiscoveryToolbar.vue | 4 +- src/components/ParameterDataType.vue | 8 +- src/components/ParameterDataTypes.vue | 2 +- src/components/datatypes/ObjectEditor.vue | 302 +++++++------------ src/components/datatypes/ObjectEditorDnD.vue | 246 +++++++++++++++ src/store/editor.js | 2 +- 6 files changed, 366 insertions(+), 198 deletions(-) create mode 100644 src/components/datatypes/ObjectEditorDnD.vue diff --git a/src/components/DiscoveryToolbar.vue b/src/components/DiscoveryToolbar.vue index c4a2afc8..79c64b44 100644 --- a/src/components/DiscoveryToolbar.vue +++ b/src/components/DiscoveryToolbar.vue @@ -158,10 +158,10 @@ export default { } }, methods: { - ...Utils.mapMutations('editor', ['setDiscoverySearchTerm', 'setModelDnd']), + ...Utils.mapMutations('editor', ['setDiscoverySearchTerm', 'setModelDnD']), ...Utils.mapActions(['loadProcess']), onDrag(event, type, data) { - let fn = (loading) => this.setModelDnd({type, data, loading}); + let fn = (loading) => this.setModelDnD({type, data, loading}); if (type === 'process') { fn(true); this.loadProcess(data).then(() => fn(false)); diff --git a/src/components/ParameterDataType.vue b/src/components/ParameterDataType.vue index 4e4fc735..8f41b7a4 100644 --- a/src/components/ParameterDataType.vue +++ b/src/components/ParameterDataType.vue @@ -3,7 +3,7 @@ @@ -14,7 +14,7 @@ @@ -26,7 +26,7 @@
-

This is set to null, which is usually used as placeholder for no-data values or a default value.

+

This is set to null, which is usually used as placeholder for no-data values or a default value.

@@ -61,7 +61,7 @@ - + diff --git a/src/components/ParameterDataTypes.vue b/src/components/ParameterDataTypes.vue index 2728ab1f..70c896c6 100644 --- a/src/components/ParameterDataTypes.vue +++ b/src/components/ParameterDataTypes.vue @@ -60,7 +60,7 @@ const SUPPORTED_TYPES = [ {type: 'object', default: {}, group: 'Basics', properties: { from_node: { not: {} }, from_parameter: { not: {} } - }}, + }, default: {}}, {type: 'string', subtype: 'date-time', format: 'date-time', title: 'Date and Time', group: 'Temporal', default: () => now()}, {type: 'string', subtype: 'date', format: 'date', title: 'Date only', group: 'Temporal', default: () => now().substring(0, 10)}, diff --git a/src/components/datatypes/ObjectEditor.vue b/src/components/datatypes/ObjectEditor.vue index db2454b3..94ee1af7 100644 --- a/src/components/datatypes/ObjectEditor.vue +++ b/src/components/datatypes/ObjectEditor.vue @@ -1,51 +1,47 @@ - + \ No newline at end of file diff --git a/src/components/datatypes/ObjectEditorDnD.vue b/src/components/datatypes/ObjectEditorDnD.vue new file mode 100644 index 00000000..f5280cfc --- /dev/null +++ b/src/components/datatypes/ObjectEditorDnD.vue @@ -0,0 +1,246 @@ + + + + + diff --git a/src/store/editor.js b/src/store/editor.js index fe017226..bb6eedc0 100644 --- a/src/store/editor.js +++ b/src/store/editor.js @@ -136,7 +136,7 @@ export default { } }, mutations: { - setModelDnd(state, obj = null) { + setModelDnD(state, obj = null) { state.modelDnD = obj; }, setDiscoverySearchTerm(state, searchTerm) {