fix: better placeholder in modal, also show placeholder for select field in side panel
This commit is contained in:
parent
8170c83c68
commit
e5fd005cfe
@ -617,6 +617,7 @@ def get_field_obj(field):
|
|||||||
obj["placeholder"] = field.get("placeholder") or "Select " + field.label + "..."
|
obj["placeholder"] = field.get("placeholder") or "Select " + field.label + "..."
|
||||||
obj["doctype"] = field.options
|
obj["doctype"] = field.options
|
||||||
elif field.fieldtype == "Select" and field.options:
|
elif field.fieldtype == "Select" and field.options:
|
||||||
|
obj["placeholder"] = field.get("placeholder") or "Select " + field.label + "..."
|
||||||
obj["options"] = [{"label": option, "value": option} for option in field.options.split("\n")]
|
obj["options"] = [{"label": option, "value": option} for option in field.options.split("\n")]
|
||||||
|
|
||||||
if field.read_only:
|
if field.read_only:
|
||||||
|
|||||||
@ -48,7 +48,7 @@
|
|||||||
<FormControl
|
<FormControl
|
||||||
v-if="field.read_only && field.type !== 'Check'"
|
v-if="field.read_only && field.type !== 'Check'"
|
||||||
type="text"
|
type="text"
|
||||||
:placeholder="__(field.placeholder || field.label)"
|
:placeholder="getPlaceholder(field)"
|
||||||
v-model="data[field.name]"
|
v-model="data[field.name]"
|
||||||
:disabled="true"
|
:disabled="true"
|
||||||
/>
|
/>
|
||||||
@ -59,7 +59,7 @@
|
|||||||
:class="field.prefix ? 'prefix' : ''"
|
:class="field.prefix ? 'prefix' : ''"
|
||||||
:options="field.options"
|
:options="field.options"
|
||||||
v-model="data[field.name]"
|
v-model="data[field.name]"
|
||||||
:placeholder="__(field.placeholder || field.label)"
|
:placeholder="getPlaceholder(field)"
|
||||||
>
|
>
|
||||||
<template v-if="field.prefix" #prefix>
|
<template v-if="field.prefix" #prefix>
|
||||||
<IndicatorIcon :class="field.prefix" />
|
<IndicatorIcon :class="field.prefix" />
|
||||||
@ -91,7 +91,7 @@
|
|||||||
:doctype="field.options"
|
:doctype="field.options"
|
||||||
:filters="field.filters"
|
:filters="field.filters"
|
||||||
@change="(v) => (data[field.name] = v)"
|
@change="(v) => (data[field.name] = v)"
|
||||||
:placeholder="__(field.placeholder || field.label)"
|
:placeholder="getPlaceholder(field)"
|
||||||
:onCreate="field.create"
|
:onCreate="field.create"
|
||||||
/>
|
/>
|
||||||
<Button
|
<Button
|
||||||
@ -113,7 +113,7 @@
|
|||||||
:doctype="field.options"
|
:doctype="field.options"
|
||||||
:filters="field.filters"
|
:filters="field.filters"
|
||||||
@change="(v) => (data[field.name] = v)"
|
@change="(v) => (data[field.name] = v)"
|
||||||
:placeholder="__(field.placeholder || field.label)"
|
:placeholder="getPlaceholder(field)"
|
||||||
:hideMe="true"
|
:hideMe="true"
|
||||||
>
|
>
|
||||||
<template #prefix>
|
<template #prefix>
|
||||||
@ -182,13 +182,13 @@
|
|||||||
<DateTimePicker
|
<DateTimePicker
|
||||||
v-else-if="field.type === 'Datetime'"
|
v-else-if="field.type === 'Datetime'"
|
||||||
v-model="data[field.name]"
|
v-model="data[field.name]"
|
||||||
:placeholder="__(field.placeholder || field.label)"
|
:placeholder="getPlaceholder(field)"
|
||||||
input-class="border-none"
|
input-class="border-none"
|
||||||
/>
|
/>
|
||||||
<DatePicker
|
<DatePicker
|
||||||
v-else-if="field.type === 'Date'"
|
v-else-if="field.type === 'Date'"
|
||||||
v-model="data[field.name]"
|
v-model="data[field.name]"
|
||||||
:placeholder="__(field.placeholder || field.label)"
|
:placeholder="getPlaceholder(field)"
|
||||||
input-class="border-none"
|
input-class="border-none"
|
||||||
/>
|
/>
|
||||||
<FormControl
|
<FormControl
|
||||||
@ -196,19 +196,19 @@
|
|||||||
['Small Text', 'Text', 'Long Text'].includes(field.type)
|
['Small Text', 'Text', 'Long Text'].includes(field.type)
|
||||||
"
|
"
|
||||||
type="textarea"
|
type="textarea"
|
||||||
:placeholder="__(field.placeholder || field.label)"
|
:placeholder="getPlaceholder(field)"
|
||||||
v-model="data[field.name]"
|
v-model="data[field.name]"
|
||||||
/>
|
/>
|
||||||
<FormControl
|
<FormControl
|
||||||
v-else-if="['Int'].includes(field.type)"
|
v-else-if="['Int'].includes(field.type)"
|
||||||
type="number"
|
type="number"
|
||||||
:placeholder="__(field.placeholder || field.label)"
|
:placeholder="getPlaceholder(field)"
|
||||||
v-model="data[field.name]"
|
v-model="data[field.name]"
|
||||||
/>
|
/>
|
||||||
<FormControl
|
<FormControl
|
||||||
v-else
|
v-else
|
||||||
type="text"
|
type="text"
|
||||||
:placeholder="__(field.placeholder || field.label)"
|
:placeholder="getPlaceholder(field)"
|
||||||
v-model="data[field.name]"
|
v-model="data[field.name]"
|
||||||
:disabled="Boolean(field.read_only)"
|
:disabled="Boolean(field.read_only)"
|
||||||
/>
|
/>
|
||||||
@ -235,6 +235,17 @@ const props = defineProps({
|
|||||||
sections: Array,
|
sections: Array,
|
||||||
data: Object,
|
data: Object,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
const getPlaceholder = (field) => {
|
||||||
|
if (field.placeholder) {
|
||||||
|
return __(field.placeholder)
|
||||||
|
}
|
||||||
|
if (['Select', 'Link'].includes(field.type)) {
|
||||||
|
return __('Select {0}', [__(field.label)])
|
||||||
|
} else {
|
||||||
|
return __('Enter {0}', [__(field.label)])
|
||||||
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
|||||||
@ -55,9 +55,9 @@
|
|||||||
v-else-if="field.type === 'select'"
|
v-else-if="field.type === 'select'"
|
||||||
class="form-control cursor-pointer [&_select]:cursor-pointer"
|
class="form-control cursor-pointer [&_select]:cursor-pointer"
|
||||||
type="select"
|
type="select"
|
||||||
:value="data[field.name]"
|
v-model="data[field.name]"
|
||||||
:options="field.options"
|
:options="field.options"
|
||||||
:debounce="500"
|
:placeholder="field.placeholder"
|
||||||
@change.stop="emit('update', field.name, $event.target.value)"
|
@change.stop="emit('update', field.name, $event.target.value)"
|
||||||
/>
|
/>
|
||||||
<Link
|
<Link
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user