forked from verdnatura/salix-front
fix: formModelPoup defaultActions false
This commit is contained in:
parent
eaea8a50f0
commit
73c5e0f1f4
|
@ -90,7 +90,7 @@ const $props = defineProps({
|
|||
});
|
||||
const emit = defineEmits(['onFetch', 'onDataSaved']);
|
||||
const modelValue = computed(
|
||||
() => $props.model ?? `formModel_${route?.meta?.title ?? route.name}`,
|
||||
() => $props.model ?? `formModel_${route?.meta?.title ?? route.name}`
|
||||
).value;
|
||||
const componentIsRendered = ref(false);
|
||||
const arrayData = useArrayData(modelValue);
|
||||
|
@ -137,7 +137,7 @@ onMounted(async () => {
|
|||
JSON.stringify(newVal) !== JSON.stringify(originalData.value);
|
||||
isResetting.value = false;
|
||||
},
|
||||
{ deep: true },
|
||||
{ deep: true }
|
||||
);
|
||||
}
|
||||
});
|
||||
|
@ -145,7 +145,7 @@ onMounted(async () => {
|
|||
if (!$props.url)
|
||||
watch(
|
||||
() => arrayData.store.data,
|
||||
(val) => updateAndEmit('onFetch', val),
|
||||
(val) => updateAndEmit('onFetch', val)
|
||||
);
|
||||
|
||||
watch(formUrl, async () => {
|
||||
|
@ -239,7 +239,7 @@ function filter(value, update, filterOptions) {
|
|||
(ref) => {
|
||||
ref.setOptionIndex(-1);
|
||||
ref.moveOptionSelection(1, true);
|
||||
},
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -261,13 +261,7 @@ defineExpose({
|
|||
</script>
|
||||
<template>
|
||||
<div class="column items-center full-width">
|
||||
<QForm
|
||||
|
||||
@submit="save"
|
||||
@reset="reset"
|
||||
class="q-pa-md"
|
||||
id="formModel"
|
||||
>
|
||||
<QForm @submit="save" @reset="reset" class="q-pa-md" id="formModel">
|
||||
<QCard>
|
||||
<slot
|
||||
v-if="formData"
|
||||
|
@ -276,70 +270,72 @@ defineExpose({
|
|||
:validate="validate"
|
||||
:filter="filter"
|
||||
/>
|
||||
<SkeletonForm v-else/>
|
||||
<SkeletonForm v-else />
|
||||
</QCard>
|
||||
</QForm>
|
||||
</div>
|
||||
<Teleport
|
||||
to="#st-actions"
|
||||
v-if="stateStore?.isSubToolbarShown() && componentIsRendered"
|
||||
v-if="
|
||||
$props.defaultActions &&
|
||||
stateStore?.isSubToolbarShown() &&
|
||||
componentIsRendered
|
||||
"
|
||||
>
|
||||
<div v-if="$props.defaultActions">
|
||||
<QBtnGroup push class="q-gutter-x-sm">
|
||||
<slot name="moreActions" />
|
||||
<QBtn
|
||||
:label="tMobile(defaultButtons.reset.label)"
|
||||
:color="defaultButtons.reset.color"
|
||||
:icon="defaultButtons.reset.icon"
|
||||
flat
|
||||
@click="reset"
|
||||
:disable="!hasChanges"
|
||||
:title="t(defaultButtons.reset.label)"
|
||||
/>
|
||||
<QBtnDropdown
|
||||
v-if="$props.goTo"
|
||||
@click="saveAndGo"
|
||||
:label="tMobile('globals.saveAndContinue')"
|
||||
:title="t('globals.saveAndContinue')"
|
||||
:disable="!hasChanges"
|
||||
color="primary"
|
||||
icon="save"
|
||||
split
|
||||
>
|
||||
<QList>
|
||||
<QItem
|
||||
clickable
|
||||
v-close-popup
|
||||
@click="save"
|
||||
:title="t('globals.save')"
|
||||
>
|
||||
<QItemSection>
|
||||
<QItemLabel>
|
||||
<QIcon
|
||||
name="save"
|
||||
color="white"
|
||||
class="q-mr-sm"
|
||||
size="sm"
|
||||
/>
|
||||
{{ t('globals.save').toUpperCase() }}
|
||||
</QItemLabel>
|
||||
</QItemSection>
|
||||
</QItem>
|
||||
</QList>
|
||||
</QBtnDropdown>
|
||||
<QBtn
|
||||
v-else
|
||||
:label="tMobile('globals.save')"
|
||||
color="primary"
|
||||
icon="save"
|
||||
@click="save"
|
||||
:disable="!hasChanges"
|
||||
:title="t(defaultButtons.save.label)"
|
||||
/>
|
||||
</QBtnGroup>
|
||||
</div>
|
||||
<QBtnGroup push class="q-gutter-x-sm">
|
||||
<slot name="moreActions" />
|
||||
<QBtn
|
||||
:label="tMobile(defaultButtons.reset.label)"
|
||||
:color="defaultButtons.reset.color"
|
||||
:icon="defaultButtons.reset.icon"
|
||||
flat
|
||||
@click="reset"
|
||||
:disable="!hasChanges"
|
||||
:title="t(defaultButtons.reset.label)"
|
||||
/>
|
||||
<QBtnDropdown
|
||||
v-if="$props.goTo"
|
||||
@click="saveAndGo"
|
||||
:label="tMobile('globals.saveAndContinue')"
|
||||
:title="t('globals.saveAndContinue')"
|
||||
:disable="!hasChanges"
|
||||
color="primary"
|
||||
icon="save"
|
||||
split
|
||||
>
|
||||
<QList>
|
||||
<QItem
|
||||
clickable
|
||||
v-close-popup
|
||||
@click="save"
|
||||
:title="t('globals.save')"
|
||||
>
|
||||
<QItemSection>
|
||||
<QItemLabel>
|
||||
<QIcon
|
||||
name="save"
|
||||
color="white"
|
||||
class="q-mr-sm"
|
||||
size="sm"
|
||||
/>
|
||||
{{ t('globals.save').toUpperCase() }}
|
||||
</QItemLabel>
|
||||
</QItemSection>
|
||||
</QItem>
|
||||
</QList>
|
||||
</QBtnDropdown>
|
||||
<QBtn
|
||||
v-else
|
||||
:label="tMobile('globals.save')"
|
||||
color="primary"
|
||||
icon="save"
|
||||
@click="save"
|
||||
:disable="!hasChanges"
|
||||
:title="t(defaultButtons.save.label)"
|
||||
/>
|
||||
</QBtnGroup>
|
||||
</Teleport>
|
||||
|
||||
|
||||
<QInnerLoading
|
||||
:showing="isLoading"
|
||||
:label="t('globals.pleaseWait')"
|
||||
|
|
|
@ -23,16 +23,12 @@ const formModelRef = ref(null);
|
|||
const closeButton = ref(null);
|
||||
|
||||
const onDataSaved = (formData, requestResponse) => {
|
||||
closeForm();
|
||||
if (closeButton.value) closeButton.value.click();
|
||||
emit('onDataSaved', formData, requestResponse);
|
||||
};
|
||||
|
||||
const isLoading = computed(() => formModelRef.value?.isLoading);
|
||||
|
||||
const closeForm = async () => {
|
||||
if (closeButton.value) closeButton.value.click();
|
||||
};
|
||||
|
||||
defineExpose({
|
||||
isLoading,
|
||||
onDataSaved,
|
||||
|
|
Loading…
Reference in New Issue