feat: #8258 added uppercase option to VnInput #1184
|
@ -42,10 +42,13 @@ const $props = defineProps({
|
|||
type: Number,
|
||||
default: null,
|
||||
},
|
||||
uppercase: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
});
|
||||
|
||||
const vnInputRef = ref(null);
|
||||
const showPassword = ref(false);
|
||||
const value = computed({
|
||||
get() {
|
||||
return $props.modelValue;
|
||||
|
@ -117,6 +120,10 @@ const handleInsertMode = (e) => {
|
|||
input.setSelectionRange(cursorPos + 1, cursorPos + 1);
|
||||
});
|
||||
};
|
||||
|
||||
const handleUppercase = () => {
|
||||
value.value = value.value?.toUpperCase() || '';
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
|
@ -159,7 +166,16 @@ const handleInsertMode = (e) => {
|
|||
emit('remove');
|
||||
}
|
||||
"
|
||||
></QIcon>
|
||||
|
||||
<QIcon
|
||||
name="match_case"
|
||||
size="xs"
|
||||
v-if="!$attrs.disabled && !($attrs.readonly) && $props.uppercase"
|
||||
@click="handleUppercase"
|
||||
class="uppercase-icon"
|
||||
/>
|
||||
|
||||
<slot name="append" v-if="$slots.append && !$attrs.disabled" />
|
||||
<QIcon v-if="info" name="info">
|
||||
<QTooltip max-width="350px">
|
||||
|
@ -170,3 +186,14 @@ const handleInsertMode = (e) => {
|
|||
</QInput>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<i18n>
|
||||
en:
|
||||
inputMin: Must be more than {value}
|
||||
maxLength: The value exceeds {value} characters
|
||||
inputMax: Must be less than {value}
|
||||
es:
|
||||
inputMin: Debe ser mayor a {value}
|
||||
maxLength: El valor excede los {value} carácteres
|
||||
inputMax: Debe ser menor a {value}
|
||||
</i18n>
|
|
@ -44,6 +44,7 @@ function handleLocation(data, location) {
|
|||
:required="true"
|
||||
:rules="validate('client.socialName')"
|
||||
clearable
|
||||
uppercase="true"
|
||||
v-model="data.socialName"
|
||||
>
|
||||
<template #append>
|
||||
|
|
|
@ -50,6 +50,14 @@ const columns = computed(() => [
|
|||
isTitle: true,
|
||||
create: true,
|
||||
columnClass: 'expand',
|
||||
attrs: {
|
||||
|
||||
uppercase: true,
|
||||
},
|
||||
columnFilter: {
|
||||
attrs: {
|
||||
uppercase: false,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
align: 'left',
|
||||
|
|
|
@ -92,6 +92,7 @@ function handleLocation(data, location) {
|
|||
<VnInput
|
||||
v-model="data.name"
|
||||
:label="t('supplier.fiscalData.name')"
|
||||
uppercase="true"
|
||||
clearable
|
||||
/>
|
||||
<VnInput
|
||||
|
|
|
@ -5,6 +5,7 @@ import VnTable from 'components/VnTable/VnTable.vue';
|
|||
import VnSearchbar from 'components/ui/VnSearchbar.vue';
|
||||
import RightMenu from 'src/components/common/RightMenu.vue';
|
||||
import SupplierListFilter from './SupplierListFilter.vue';
|
||||
import VnInput from 'src/components/common/VnInput.vue';
|
||||
|
||||
const { t } = useI18n();
|
||||
const tableRef = ref();
|
||||
|
@ -23,9 +24,14 @@ const columns = computed(() => [
|
|||
align: 'left',
|
||||
label: t('globals.name'),
|
||||
name: 'socialName',
|
||||
create: true,
|
||||
attrs: {
|
||||
uppercase: true,
|
||||
},
|
||||
columnFilter: {
|
||||
name: 'search',
|
||||
attrs: {
|
||||
uppercase: false,
|
||||
},
|
||||
},
|
||||
isTitle: true,
|
||||
},
|
||||
|
@ -118,14 +124,18 @@ const columns = computed(() => [
|
|||
formInitialData: {},
|
||||
mapper: (data) => {
|
||||
data.name = data.socialName;
|
||||
delete data.socialName;
|
||||
|
||||
return data;
|
||||
},
|
||||
}"
|
||||
:right-search="false"
|
||||
order="id ASC"
|
||||
:columns="columns"
|
||||
/>
|
||||
>
|
||||
<template #more-create-dialog="{ data }">
|
||||
<VnInput :label="t('globals.name')" v-model="data.socialName" :uppercase="true" />
|
||||
</template>
|
||||
</VnTable>
|
||||
</template>
|
||||
|
||||
<i18n>
|
||||
|
|
|
@ -138,7 +138,11 @@ function uppercaseStreetModel(data) {
|
|||
return {
|
||||
get: () => (data.street ? data.street.toUpperCase() : ''),
|
||||
set: (value) => {
|
||||
if (value) {
|
||||
data.street = value.toUpperCase();
|
||||
} else {
|
||||
data.street = null;
|
||||
}
|
||||
},
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
tinc dubtes de per a que necesita el customer list saber que es upper, no es suficient amb el fiscalData?
Per a poder convertir-lo a uppercase quan es crea un nou customer també, si sols es vol que es puga fer desde fiscalData aleshores deixe sols fiscalData. El mateix amb supplier list