diff --git a/ui/src/components/dynamics-form/constructor/data.ts b/ui/src/components/dynamics-form/constructor/data.ts
index 273a1c687..98ee4b0f6 100644
--- a/ui/src/components/dynamics-form/constructor/data.ts
+++ b/ui/src/components/dynamics-form/constructor/data.ts
@@ -4,6 +4,10 @@ const input_type_list = [
label: t('dynamicsForm.input_type_list.TextInput'),
value: 'TextInput'
},
+ {
+ label: t('dynamicsForm.input_type_list.PasswordInput'),
+ value: 'PasswordInput'
+ },
{
label: t('dynamicsForm.input_type_list.Slider'),
value: 'Slider'
diff --git a/ui/src/components/dynamics-form/constructor/items/PasswordInputConstructor.vue b/ui/src/components/dynamics-form/constructor/items/PasswordInputConstructor.vue
new file mode 100644
index 000000000..dd447966e
--- /dev/null
+++ b/ui/src/components/dynamics-form/constructor/items/PasswordInputConstructor.vue
@@ -0,0 +1,194 @@
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/ui/src/components/dynamics-form/constructor/items/TextInputConstructor.vue b/ui/src/components/dynamics-form/constructor/items/TextInputConstructor.vue
index ccac26de6..7d9715377 100644
--- a/ui/src/components/dynamics-form/constructor/items/TextInputConstructor.vue
+++ b/ui/src/components/dynamics-form/constructor/items/TextInputConstructor.vue
@@ -1,11 +1,4 @@
-
-
-
@@ -77,8 +70,7 @@
:minlength="formValue.minlength"
:placeholder="$t('dynamicsForm.default.placeholder')"
show-word-limit
- :type="formValue.show_password ? 'password' : 'text'"
- :show-password="formValue.show_password"
+ type="text"
/>
@@ -111,9 +103,7 @@ const getData = () => {
attrs: {
maxlength: formValue.value.maxlength,
minlength: formValue.value.minlength,
- 'show-word-limit': true,
- type: formValue.value.show_password ? 'password' : 'text',
- 'show-password': formValue.value.show_password
+ 'show-word-limit': true
},
default_value: formValue.value.default_value,
show_default_value: formValue.value.show_default_value,
@@ -145,7 +135,6 @@ const rander = (form_data: any) => {
formValue.value.maxlength = attrs.maxlength
formValue.value.default_value = form_data.default_value
formValue.value.show_default_value = form_data.show_default_value
- formValue.value.show_password = attrs['show-password']
}
const rangeRules = [
{
@@ -176,8 +165,7 @@ onMounted(() => {
formValue.value.minlength = 0
formValue.value.maxlength = 20
formValue.value.default_value = ''
- formValue.value.show_password = false
-
+ // console.log(formValue.value.show_default_value)
if (formValue.value.show_default_value === undefined) {
formValue.value.show_default_value = true
}
diff --git a/ui/src/locales/lang/en-US/dynamics-form.ts b/ui/src/locales/lang/en-US/dynamics-form.ts
index 9e1c4c24d..2cfcd8058 100644
--- a/ui/src/locales/lang/en-US/dynamics-form.ts
+++ b/ui/src/locales/lang/en-US/dynamics-form.ts
@@ -1,6 +1,7 @@
export default {
input_type_list: {
TextInput: 'Input',
+ PasswordInput: 'Password',
Slider: 'Slider',
SwitchInput: 'Switch',
SingleSelect: 'Single Select',
@@ -96,7 +97,6 @@ export default {
requiredMessage2: 'and',
requiredMessage3: 'characters',
requiredMessage4: 'Text length is a required parameter'
- },
- showPassword: 'Show Password'
+ }
}
}
diff --git a/ui/src/locales/lang/zh-CN/dynamics-form.ts b/ui/src/locales/lang/zh-CN/dynamics-form.ts
index 31b0180df..9814c06eb 100644
--- a/ui/src/locales/lang/zh-CN/dynamics-form.ts
+++ b/ui/src/locales/lang/zh-CN/dynamics-form.ts
@@ -1,6 +1,7 @@
export default {
input_type_list: {
TextInput: '文本框',
+ PasswordInput: '密码框',
Slider: '滑块',
SwitchInput: '开关',
SingleSelect: '单选框',
@@ -96,7 +97,6 @@ export default {
requiredMessage2: '到',
requiredMessage3: '个字符',
requiredMessage4: '文本长度为必填参数'
- },
- showPassword: '密文显示'
+ }
}
}
diff --git a/ui/src/locales/lang/zh-Hant/dynamics-form.ts b/ui/src/locales/lang/zh-Hant/dynamics-form.ts
index 750cd4296..e75c2393d 100644
--- a/ui/src/locales/lang/zh-Hant/dynamics-form.ts
+++ b/ui/src/locales/lang/zh-Hant/dynamics-form.ts
@@ -1,6 +1,7 @@
export default {
input_type_list: {
TextInput: '文字框',
+ PasswordInput: '密文框',
Slider: '滑桿',
SwitchInput: '開關',
SingleSelect: '單選框',
@@ -96,7 +97,6 @@ export default {
requiredMessage2: '到',
requiredMessage3: '個字元',
requiredMessage4: '文字長度為必填參數'
- },
- showPassword: '密文顯示'
+ }
}
}
diff --git a/ui/src/workflow/nodes/base-node/component/UserFieldFormDialog.vue b/ui/src/workflow/nodes/base-node/component/UserFieldFormDialog.vue
index 52cf48f59..6b9eaadd8 100644
--- a/ui/src/workflow/nodes/base-node/component/UserFieldFormDialog.vue
+++ b/ui/src/workflow/nodes/base-node/component/UserFieldFormDialog.vue
@@ -123,6 +123,7 @@ const currentRow = computed(() => {
const currentIndex = ref(null)
const inputTypeList = ref([
{ label: t('dynamicsForm.input_type_list.TextInput'), value: 'TextInputConstructor' },
+ { label: t('dynamicsForm.input_type_list.PasswordInput'), value: 'PasswordInputConstructor' },
{ label: t('dynamicsForm.input_type_list.SingleSelect'), value: 'SingleSelectConstructor' },
{ label: t('dynamicsForm.input_type_list.MultiSelect'), value: 'MultiSelectConstructor' },
{ label: t('dynamicsForm.input_type_list.RadioCard'), value: 'RadioCardConstructor' },
diff --git a/ui/src/workflow/nodes/base-node/component/UserInputFieldTable.vue b/ui/src/workflow/nodes/base-node/component/UserInputFieldTable.vue
index 26d0c9c99..f0eaa0daf 100644
--- a/ui/src/workflow/nodes/base-node/component/UserInputFieldTable.vue
+++ b/ui/src/workflow/nodes/base-node/component/UserInputFieldTable.vue
@@ -49,6 +49,9 @@
{{
$t('dynamicsForm.input_type_list.TextInput')
}}
+ {{
+ $t('dynamicsForm.input_type_list.PasswordInput')
+ }}
{{
$t('dynamicsForm.input_type_list.Slider')
}}
@@ -169,6 +172,9 @@ function refreshFieldTitle(data: any) {
}
const getDefaultValue = (row: any) => {
+ if(row.input_type === 'PasswordInput') {
+ return '******'
+ }
if (row.default_value) {
const default_value = row.option_list
?.filter((v: any) => row.default_value.indexOf(v.value) > -1)