From 7e4ffb5575469eaae5ded7a40a746910f2af13dc Mon Sep 17 00:00:00 2001 From: guerler Date: Wed, 28 Dec 2022 12:08:47 -0500 Subject: [PATCH] Restore workflow parameter highlighting, add basic tests, remove unused code --- .../Form/Elements/FormOptionalText.vue | 5 --- .../components/Form/Elements/FormText.test.js | 15 ++++----- .../src/components/Form/Elements/FormText.vue | 31 ++++++++++++------- client/src/components/Form/FormElement.vue | 4 +-- client/src/components/Workflow/Run/model.js | 5 ++- 5 files changed, 30 insertions(+), 30 deletions(-) diff --git a/client/src/components/Form/Elements/FormOptionalText.vue b/client/src/components/Form/Elements/FormOptionalText.vue index eeadd11bd70..d399d48af58 100644 --- a/client/src/components/Form/Elements/FormOptionalText.vue +++ b/client/src/components/Form/Elements/FormOptionalText.vue @@ -11,7 +11,6 @@ :value="value" :area="area" :placeholder="placeholder" - :color="color" :multiple="multiple" :datalist="datalist" :type="type" /> @@ -54,10 +53,6 @@ export default { type: String, default: null, }, - color: { - type: String, - default: null, - }, datalist: { // Display list of suggestions in autocomplete dialog type: Array, diff --git a/client/src/components/Form/Elements/FormText.test.js b/client/src/components/Form/Elements/FormText.test.js index ac17871dfc2..0a4c2953b06 100644 --- a/client/src/components/Form/Elements/FormText.test.js +++ b/client/src/components/Form/Elements/FormText.test.js @@ -42,13 +42,14 @@ describe("FormText", () => { expect(el.exists()).toBe(true); }); - it("should be able to render style from props", async () => { - let wrapper = await mountFormText({ styleObj: { fontSize: "18px" } }); - let el = wrapper.find("input"); - expect(el.element.style).toMatchObject({ fontSize: "18px" }); - wrapper = await mountFormText({ styleObj: { fontSize: "18px" }, color: "white" }); - el = wrapper.find("input"); - expect(el.element.style).toMatchObject({ fontSize: "18px", color: "white" }); + it("should be able to render border and text color from props", async () => { + const wrapper = await mountFormText({}); + const el = wrapper.find("input"); + expect(el.element.style).toMatchObject({}); + await wrapper.setProps({ color: "green" }); + expect(el.element.style).toMatchObject({ color: "green", "border-color": "green" }); + await wrapper.setProps({ cls: "my-custom-class" }); + expect(el.element.classList).toContain("my-custom-class"); }); it("should be able to accept a default value", async () => { diff --git a/client/src/components/Form/Elements/FormText.vue b/client/src/components/Form/Elements/FormText.vue index 47378b08d8e..9554b292a43 100644 --- a/client/src/components/Form/Elements/FormText.vue +++ b/client/src/components/Form/Elements/FormText.vue @@ -9,23 +9,23 @@ v-if="inputArea" :id="id" v-model="currentValue" - class="text-input" + :class="['ui-text-area', cls]" :readonly="readonly" :placeholder="placeholder" :style="style" - @change="onInputChange"> + @change="resetAlert"> + @change="resetAlert"> @@ -72,10 +72,10 @@ export default { type: String, default: "", }, - styleObj: { - // This will be applied to the input element - type: Object, - default: () => {}, + cls: { + // Refers to an optional custom css class name + type: String, + default: null, }, datalist: { // Display list of suggestions in autocomplete dialog @@ -117,13 +117,15 @@ export default { return this.area || this.multiple; }, style() { - return this.color ? { ...this.styleObj, color: this.color } : this.styleObj; + return this.color + ? { + color: this.color, + "border-color": this.color, + } + : null; }, }, methods: { - onInputChange(value) { - this.resetAlert(); - }, showAlert(error) { if (error) { this.errorMessage = error; @@ -136,3 +138,8 @@ export default { }, }; + diff --git a/client/src/components/Form/FormElement.vue b/client/src/components/Form/FormElement.vue index c4b5adf9c60..267ab6965bc 100644 --- a/client/src/components/Form/FormElement.vue +++ b/client/src/components/Form/FormElement.vue @@ -235,9 +235,7 @@ const isOptional = computed(() => !isRequired.value && attrs.value["optional"] ! :value="attrs.value" :area="attrs.area" :placeholder="attrs.placeholder" - :color="attrs.color" :multiple="attrs.multiple" - :style="attrs.style" :datalist="attrs.datalist" :type="props.type" /> !isRequired.value && attrs.value["optional"] ! :placeholder="attrs.placeholder" :color="attrs.color" :multiple="attrs.multiple" - :style="attrs.style" + :cls="attrs.cls" :datalist="attrs.datalist" :type="props.type" /> {