forked from verdnatura/salix-front
Reviewed-on: verdnatura/salix-front#207 Reviewed-by: Javi Gallego <jgallego@verdnatura.es> Reviewed-by: Javier Segarra <jsegarra@verdnatura.es> Reviewed-by: Alex Moreno <alexm@verdnatura.es>
This commit is contained in:
commit
53c47301c7
|
@ -1,21 +1,48 @@
|
|||
import { getCurrentInstance } from 'vue';
|
||||
|
||||
const filterAvailableInput = element => element.classList.contains('q-field__native') && !element.disabled
|
||||
const filterAvailableText = element => element.__vueParentComponent.type.name === 'QInput' && element.__vueParentComponent?.attrs?.class !== 'vn-input-date';
|
||||
|
||||
const filterAvailableInput = (element) => {
|
||||
return element.classList.contains('q-field__native') && !element.disabled;
|
||||
};
|
||||
const filterAvailableText = (element) => {
|
||||
return (
|
||||
element.__vueParentComponent.type.name === 'QInput' &&
|
||||
element.__vueParentComponent?.attrs?.class !== 'vn-input-date'
|
||||
);
|
||||
};
|
||||
|
||||
export default {
|
||||
mounted: function () {
|
||||
const vm = getCurrentInstance();
|
||||
if (vm.type.name === 'QForm')
|
||||
if (!['searchbarForm','filterPanelForm'].includes(this.$el?.id)) {
|
||||
if (vm.type.name === 'QForm') {
|
||||
if (!['searchbarForm', 'filterPanelForm'].includes(this.$el?.id)) {
|
||||
// AUTOFOCUS
|
||||
const elementsArray = Array.from(this.$el.elements);
|
||||
const firstInputElement = elementsArray.filter(filterAvailableInput).find(filterAvailableText);
|
||||
const availableInputs = elementsArray.filter(filterAvailableInput);
|
||||
const firstInputElement = availableInputs.find(filterAvailableText);
|
||||
|
||||
if (firstInputElement) {
|
||||
firstInputElement.focus();
|
||||
}
|
||||
const that = this;
|
||||
this.$el.addEventListener('keyup', function (evt) {
|
||||
if (evt.key === 'Enter') {
|
||||
const input = evt.target;
|
||||
console.log('input', input);
|
||||
if (input.type == 'textarea' && evt.shiftKey) {
|
||||
evt.preventDefault();
|
||||
let { selectionStart, selectionEnd } = input;
|
||||
input.value =
|
||||
input.value.substring(0, selectionStart) +
|
||||
'\n' +
|
||||
input.value.substring(selectionEnd);
|
||||
selectionStart = selectionEnd = selectionStart + 1;
|
||||
return;
|
||||
}
|
||||
evt.preventDefault();
|
||||
that.onSubmit();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
|
|
|
@ -155,7 +155,7 @@ const rotateRight = () => {
|
|||
editor.value.rotate(-90);
|
||||
};
|
||||
|
||||
const onUploadAccept = () => {
|
||||
const onSubmit = () => {
|
||||
try {
|
||||
if (!newPhoto.files && !newPhoto.url) {
|
||||
notify(t('Select an image'), 'negative');
|
||||
|
@ -206,7 +206,7 @@ const makeRequest = async () => {
|
|||
@on-fetch="(data) => (allowedContentTypes = data.join(', '))"
|
||||
auto-load
|
||||
/>
|
||||
<QForm @submit="onUploadAccept()" class="all-pointer-events">
|
||||
<QForm @submit="onSubmit()" class="all-pointer-events">
|
||||
<QCard class="q-pa-lg">
|
||||
<span ref="closeButton" class="close-icon" v-close-popup>
|
||||
<QIcon name="close" size="sm" />
|
||||
|
|
|
@ -50,7 +50,7 @@ const onDataSaved = () => {
|
|||
closeForm();
|
||||
};
|
||||
|
||||
const submitData = async () => {
|
||||
const onSubmit = async () => {
|
||||
try {
|
||||
isLoading.value = true;
|
||||
const rowsToEdit = $props.rows.map((row) => ({ id: row.id, itemFk: row.itemFk }));
|
||||
|
@ -74,7 +74,7 @@ const closeForm = () => {
|
|||
</script>
|
||||
|
||||
<template>
|
||||
<QForm @submit="submitData()" class="all-pointer-events">
|
||||
<QForm @submit="onSubmit()" class="all-pointer-events">
|
||||
<QCard class="q-pa-lg">
|
||||
<span ref="closeButton" class="close-icon" v-close-popup>
|
||||
<QIcon name="close" size="sm" />
|
||||
|
|
|
@ -83,7 +83,7 @@ const tableColumns = computed(() => [
|
|||
},
|
||||
]);
|
||||
|
||||
const fetchResults = async () => {
|
||||
const onSubmit = async () => {
|
||||
try {
|
||||
let filter = itemFilter;
|
||||
const params = itemFilterParams;
|
||||
|
@ -145,7 +145,7 @@ const selectItem = ({ id }) => {
|
|||
@on-fetch="(data) => (InksOptions = data)"
|
||||
auto-load
|
||||
/>
|
||||
<QForm @submit="fetchResults()" class="all-pointer-events">
|
||||
<QForm @submit="onSubmit()" class="all-pointer-events">
|
||||
<QCard class="column" style="padding: 32px; z-index: 100">
|
||||
<span ref="closeButton" class="close-icon" v-close-popup>
|
||||
<QIcon name="close" size="sm" />
|
||||
|
|
|
@ -85,7 +85,7 @@ const tableColumns = computed(() => [
|
|||
},
|
||||
]);
|
||||
|
||||
const fetchResults = async () => {
|
||||
const onSubmit = async () => {
|
||||
try {
|
||||
let filter = travelFilter;
|
||||
const params = travelFilterParams;
|
||||
|
@ -138,7 +138,7 @@ const selectTravel = ({ id }) => {
|
|||
@on-fetch="(data) => (warehousesOptions = data)"
|
||||
auto-load
|
||||
/>
|
||||
<QForm @submit="fetchResults()" class="all-pointer-events">
|
||||
<QForm @submit="onSubmit()" class="all-pointer-events">
|
||||
<QCard class="column" style="padding: 32px; z-index: 100">
|
||||
<span ref="closeButton" class="close-icon" v-close-popup>
|
||||
<QIcon name="close" size="sm" />
|
||||
|
|
|
@ -20,7 +20,12 @@ const state = useState();
|
|||
const currentUser = ref(state.getUser());
|
||||
const newNote = ref('');
|
||||
const vnPaginateRef = ref();
|
||||
|
||||
function handleKeyUp(event) {
|
||||
if (event.key === 'Enter') {
|
||||
event.preventDefault();
|
||||
if (!event.shiftKey) insert();
|
||||
}
|
||||
}
|
||||
async function insert() {
|
||||
const body = $props.body;
|
||||
Object.assign(body, { text: newNote.value });
|
||||
|
@ -48,12 +53,12 @@ async function insert() {
|
|||
size="lg"
|
||||
autogrow
|
||||
autofocus
|
||||
@keyup.ctrl.enter.stop="insert"
|
||||
@keyup="handleKeyUp"
|
||||
clearable
|
||||
>
|
||||
<template #append
|
||||
><QBtn
|
||||
:title="t('Save (ctrl + Enter)')"
|
||||
<template #append>
|
||||
<QBtn
|
||||
:title="t('Save (Enter)')"
|
||||
icon="save"
|
||||
color="primary"
|
||||
flat
|
||||
|
@ -130,6 +135,6 @@ async function insert() {
|
|||
es:
|
||||
Add note here...: Añadir nota aquí...
|
||||
New note: Nueva nota
|
||||
Save (ctrl + Enter): Guardar (Ctrl + Intro)
|
||||
Save (Enter): Guardar (Intro)
|
||||
|
||||
</i18n>
|
||||
|
|
|
@ -158,8 +158,7 @@ const statesFilter = {
|
|||
map-options
|
||||
use-input
|
||||
:input-debounce="0"
|
||||
>
|
||||
</QSelect>
|
||||
/>
|
||||
</VnRow>
|
||||
</template>
|
||||
</FormModel>
|
||||
|
|
|
@ -174,7 +174,7 @@ const redirectToBuysView = () => {
|
|||
@on-fetch="(data) => (packagingsOptions = data)"
|
||||
auto-load
|
||||
/>
|
||||
<QForm>
|
||||
<QForm @submit="onSubmit()">
|
||||
<Teleport to="#st-actions" v-if="stateStore?.isSubToolbarShown()">
|
||||
<div>
|
||||
<QBtnGroup push class="q-gutter-x-sm">
|
||||
|
|
|
@ -81,7 +81,7 @@ async function setCreateDms() {
|
|||
createDmsRef.value.show();
|
||||
}
|
||||
|
||||
async function upsert() {
|
||||
async function onSubmit() {
|
||||
try {
|
||||
const isEdit = !!dms.value.id;
|
||||
const errors = {
|
||||
|
@ -318,15 +318,15 @@ async function upsert() {
|
|||
</template>
|
||||
</FormModel>
|
||||
<QDialog ref="editDmsRef">
|
||||
<QCard>
|
||||
<QCardSection class="q-pb-none">
|
||||
<QItem class="q-px-none">
|
||||
<span class="text-primary text-h6 full-width">
|
||||
<QForm @submit="onSubmit()" class="all-pointer-events">
|
||||
<QCard class="q-pa-sm">
|
||||
<QCardSection class="row items-center q-pb-none">
|
||||
<span class="text-primary text-h6">
|
||||
<QIcon name="edit" class="q-mr-xs" />
|
||||
{{ t('Edit document') }}
|
||||
</span>
|
||||
<QSpace />
|
||||
<QBtn icon="close" flat round dense v-close-popup />
|
||||
</QItem>
|
||||
</QCardSection>
|
||||
<QCardSection class="q-py-none">
|
||||
<QItem>
|
||||
|
@ -423,21 +423,27 @@ async function upsert() {
|
|||
</QItem>
|
||||
</QCardSection>
|
||||
<QCardActions class="justify-end">
|
||||
<QBtn flat :label="t('globals.close')" color="primary" v-close-popup />
|
||||
<QBtn :label="t('globals.save')" color="primary" @click="upsert" />
|
||||
<QBtn
|
||||
flat
|
||||
:label="t('globals.close')"
|
||||
color="primary"
|
||||
v-close-popup
|
||||
/>
|
||||
<QBtn :label="t('globals.save')" color="primary" @click="onSubmit" />
|
||||
</QCardActions>
|
||||
</QCard>
|
||||
</QForm>
|
||||
</QDialog>
|
||||
<QDialog ref="createDmsRef">
|
||||
<QCard>
|
||||
<QCardSection class="q-pb-none">
|
||||
<QItem>
|
||||
<span class="text-primary text-h6 full-width">
|
||||
<QForm @submit="onSubmit()" class="all-pointer-events">
|
||||
<QCard class="q-pa-sm">
|
||||
<QCardSection class="row items-center q-pb-none">
|
||||
<span class="text-primary text-h6">
|
||||
<QIcon name="edit" class="q-mr-xs" />
|
||||
{{ t('Create document') }}
|
||||
</span>
|
||||
<QBtn icon="close" flat round dense v-close-popup align="right" />
|
||||
</QItem>
|
||||
<QSpace />
|
||||
<QBtn icon="close" flat round dense v-close-popup />
|
||||
</QCardSection>
|
||||
<QCardSection class="q-pb-none">
|
||||
<QItem>
|
||||
|
@ -532,10 +538,16 @@ async function upsert() {
|
|||
</QItem>
|
||||
</QCardSection>
|
||||
<QCardActions align="right">
|
||||
<QBtn flat :label="t('globals.close')" color="primary" v-close-popup />
|
||||
<QBtn :label="t('globals.save')" color="primary" @click="upsert" />
|
||||
<QBtn
|
||||
flat
|
||||
:label="t('globals.close')"
|
||||
color="primary"
|
||||
v-close-popup
|
||||
/>
|
||||
<QBtn :label="t('globals.save')" color="primary" @click="onSubmit" />
|
||||
</QCardActions>
|
||||
</QCard>
|
||||
</QForm>
|
||||
</QDialog>
|
||||
</template>
|
||||
<style lang="scss" scoped>
|
||||
|
|
|
@ -487,9 +487,6 @@ const createInvoiceInCorrection = async () => {
|
|||
.q-dialog {
|
||||
.q-card {
|
||||
max-width: 45em;
|
||||
.q-item__section > .q-input {
|
||||
padding-bottom: 1.4em;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -33,7 +33,7 @@ const addToOrder = async () => {
|
|||
|
||||
<template>
|
||||
<div class="container order-catalog-item q-pb-md">
|
||||
<QForm @submit.prevent="addToOrder">
|
||||
<QForm @submit="addToOrder">
|
||||
<QMarkupTable class="shadow-0">
|
||||
<tbody>
|
||||
<tr v-for="item in fields" :key="item.warehouse">
|
||||
|
|
|
@ -13,7 +13,6 @@ describe('AgencyWorkCenter', () => {
|
|||
cy.get(
|
||||
'.vn-row > .q-field > .q-field__inner > .q-field__control > .q-field__control-container'
|
||||
).type('workCenterOne{enter}');
|
||||
cy.get('.q-btn--standard > .q-btn__content > .block').click();
|
||||
cy.get('.q-notification__message').should('have.text', 'Data created');
|
||||
});
|
||||
|
||||
|
@ -35,13 +34,11 @@ describe('AgencyWorkCenter', () => {
|
|||
cy.get(
|
||||
'.vn-row > .q-field > .q-field__inner > .q-field__control > .q-field__control-container'
|
||||
).type('workCenterOne{enter}');
|
||||
cy.get('.q-btn--standard > .q-btn__content > .block').click();
|
||||
cy.get('.q-notification__message').should('have.text', 'Data created');
|
||||
cy.get('.q-page-sticky > div > .q-btn > .q-btn__content > .q-icon').click();
|
||||
cy.get(
|
||||
'.vn-row > .q-field > .q-field__inner > .q-field__control > .q-field__control-container'
|
||||
).type('workCenterOne{enter}');
|
||||
cy.get('.q-btn--standard > .q-btn__content > .block').click();
|
||||
|
||||
cy.get(
|
||||
':nth-child(2) > .q-notification__wrapper > .q-notification__content > .q-notification__message'
|
||||
|
|
Loading…
Reference in New Issue