From 705515096ec13cb67d735bd482935f079c4c25b3 Mon Sep 17 00:00:00 2001
From: Laila Los <44241786+ElectronicBlueberry@users.noreply.github.com>
Date: Wed, 21 Jun 2023 12:48:09 +0200
Subject: [PATCH 1/4] add FormTags element
---
.../src/components/Form/Elements/FormTags.vue | 23 +++++++++++++++++++
client/src/components/Form/FormElement.vue | 5 ++++
.../src/components/Form/parameterTypes.d.ts | 3 ++-
.../TagsMultiselect/StatelessTags.vue | 6 +++--
.../Workflow/Editor/Forms/FormOutput.vue | 6 +++--
5 files changed, 38 insertions(+), 5 deletions(-)
create mode 100644 client/src/components/Form/Elements/FormTags.vue
diff --git a/client/src/components/Form/Elements/FormTags.vue b/client/src/components/Form/Elements/FormTags.vue
new file mode 100644
index 00000000000..e4883d444d5
--- /dev/null
+++ b/client/src/components/Form/Elements/FormTags.vue
@@ -0,0 +1,23 @@
+
+
+
+
+
diff --git a/client/src/components/Form/FormElement.vue b/client/src/components/Form/FormElement.vue
index 7dc7dcffa28..f49bf72a1b0 100644
--- a/client/src/components/Form/FormElement.vue
+++ b/client/src/components/Form/FormElement.vue
@@ -12,6 +12,7 @@ import FormOptionalText from "./Elements/FormOptionalText.vue";
import FormRulesEdit from "./Elements/FormRulesEdit.vue";
import FormUpload from "./Elements/FormUpload.vue";
import FormDrilldown from "./Elements/FormDrilldown/FormDrilldown.vue";
+import FormTags from "./Elements/FormTags.vue";
import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome";
import { ref, computed, useAttrs } from "vue";
import { library } from "@fortawesome/fontawesome-svg-core";
@@ -285,6 +286,10 @@ const isOptional = computed(() => !isRequired.value && attrs.value["optional"] !
:data-label="props.title"
:type="props.type ?? (attrs.options ? 'select' : 'text')"
:attributes="attrs" />
+
diff --git a/client/src/components/Form/parameterTypes.d.ts b/client/src/components/Form/parameterTypes.d.ts
index e3c7ca53574..93f1a5406a5 100644
--- a/client/src/components/Form/parameterTypes.d.ts
+++ b/client/src/components/Form/parameterTypes.d.ts
@@ -27,4 +27,5 @@ export type FormParameterTypes =
| "ftpfile"
| "upload"
| "rules"
- | "data_dialog";
+ | "data_dialog"
+ | "tags";
diff --git a/client/src/components/TagsMultiselect/StatelessTags.vue b/client/src/components/TagsMultiselect/StatelessTags.vue
index 66e57fb2f01..7cab63b018f 100644
--- a/client/src/components/TagsMultiselect/StatelessTags.vue
+++ b/client/src/components/TagsMultiselect/StatelessTags.vue
@@ -17,6 +17,7 @@ interface StatelessTagsProps {
clickable?: boolean;
useToggleLink?: boolean;
maxVisibleTags?: number;
+ placeholder?: string;
}
const props = withDefaults(defineProps(), {
@@ -25,6 +26,7 @@ const props = withDefaults(defineProps(), {
clickable: false,
useToggleLink: true,
maxVisibleTags: 5,
+ placeholder: "Add Tags",
});
const emit = defineEmits<{
@@ -117,8 +119,8 @@ function onTagClicked(tag: string) {
- Add Tags
+ {{ props.placeholder }}
diff --git a/client/src/components/Workflow/Editor/Forms/FormOutput.vue b/client/src/components/Workflow/Editor/Forms/FormOutput.vue
index 1b6a10a257c..8d5bbf18cc8 100644
--- a/client/src/components/Workflow/Editor/Forms/FormOutput.vue
+++ b/client/src/components/Workflow/Editor/Forms/FormOutput.vue
@@ -21,15 +21,17 @@
From 9eae51fdf63e50d350c469f1e6b263192d9689b4 Mon Sep 17 00:00:00 2001
From: Laila Los <44241786+ElectronicBlueberry@users.noreply.github.com>
Date: Wed, 21 Jun 2023 12:48:39 +0200
Subject: [PATCH 2/4] fix tags component autocomplete rendering
---
client/src/components/TagsMultiselect/StatelessTags.vue | 1 +
1 file changed, 1 insertion(+)
diff --git a/client/src/components/TagsMultiselect/StatelessTags.vue b/client/src/components/TagsMultiselect/StatelessTags.vue
index 7cab63b018f..41607a2cb7a 100644
--- a/client/src/components/TagsMultiselect/StatelessTags.vue
+++ b/client/src/components/TagsMultiselect/StatelessTags.vue
@@ -329,6 +329,7 @@ function onTagClicked(tag: string) {
.multiselect__option--selected {
.multiselect-option {
color: $brand-primary;
+ background-color: $brand-secondary;
.info:not(.highlighted) {
display: inline-block;
From 84ac0bfb8ad70bc203113d5b6fbfa8d7195b702a Mon Sep 17 00:00:00 2001
From: Laila Los <44241786+ElectronicBlueberry@users.noreply.github.com>
Date: Wed, 21 Jun 2023 13:49:49 +0200
Subject: [PATCH 3/4] display tags on output node
---
.../TagsMultiselect/StatelessTags.vue | 5 +-
.../components/Workflow/Editor/NodeOutput.vue | 76 ++++++++++++++-----
client/src/style/scss/ui.scss | 4 +
3 files changed, 64 insertions(+), 21 deletions(-)
diff --git a/client/src/components/TagsMultiselect/StatelessTags.vue b/client/src/components/TagsMultiselect/StatelessTags.vue
index 41607a2cb7a..96498452fc5 100644
--- a/client/src/components/TagsMultiselect/StatelessTags.vue
+++ b/client/src/components/TagsMultiselect/StatelessTags.vue
@@ -18,6 +18,7 @@ interface StatelessTagsProps {
useToggleLink?: boolean;
maxVisibleTags?: number;
placeholder?: string;
+ noPadding?: boolean;
}
const props = withDefaults(defineProps(), {
@@ -115,7 +116,7 @@ function onTagClicked(tag: string) {
-