Merge branch 'develop' into feat/captain-limits

This commit is contained in:
Shivam Mishra
2025-01-20 16:36:00 +05:30
committed by GitHub
7 changed files with 40 additions and 29 deletions
@@ -20,6 +20,8 @@ const props = defineProps({
},
});
const emit = defineEmits(['deleteSuccess']);
const { t } = useI18n();
const store = useStore();
const deleteDialogRef = ref(null);
@@ -30,6 +32,7 @@ const deleteEntity = async payload => {
try {
await store.dispatch(`captain${props.type}/delete`, payload);
emit('deleteSuccess');
useAlert(t(`CAPTAIN.${i18nKey.value}.DELETE.SUCCESS_MESSAGE`));
} catch (error) {
useAlert(t(`CAPTAIN.${i18nKey.value}.DELETE.ERROR_MESSAGE`));
@@ -30,6 +30,7 @@ const formValues = computed(() => {
if (contentType.value === CONTENT_TYPES.INPUT_SELECT) {
const [item] = contentAttributes.value?.submittedValues ?? [];
if (!item) return [];
return [
{
@@ -85,6 +85,12 @@ const handleAssistantFilterChange = assistant => {
const onPageChange = page => fetchDocuments(page);
const onDeleteSuccess = () => {
if (documents.value?.length === 0 && documentsMeta.value?.page > 1) {
onPageChange(documentsMeta.value.page - 1);
}
};
onMounted(() => {
if (!assistants.value.length) {
store.dispatch('captainAssistants/get');
@@ -146,6 +152,7 @@ onMounted(() => {
ref="deleteDocumentDialog"
:entity="selectedDocument"
type="Documents"
@delete-success="onDeleteSuccess"
/>
</PageLayout>
</template>
@@ -129,6 +129,12 @@ const fetchResponses = (page = 1) => {
const onPageChange = page => fetchResponses(page);
const onDeleteSuccess = () => {
if (responses.value?.length === 0 && responseMeta.value?.page > 1) {
onPageChange(responseMeta.value.page - 1);
}
};
const handleStatusFilterChange = ({ value }) => {
selectedStatus.value = value;
isStatusFilterOpen.value = false;
@@ -211,6 +217,7 @@ onMounted(() => {
ref="deleteDialog"
:entity="selectedResponse"
type="Responses"
@delete-success="onDeleteSuccess"
/>
<CreateResponseDialog
@@ -39,15 +39,13 @@ export default {
@update:model-value="handleInput"
>
<template #singleLabel="props">
<div class="flex items-center gap-2">
<div class="flex items-center min-w-0 gap-2">
<div
:style="{ backgroundColor: props.option.color }"
class="w-5 h-5 rounded-full"
/>
<span class="reports-option__desc">
<span class="my-0 text-slate-800 dark:text-slate-75">
{{ props.option.title }}
</span>
<span class="my-0 text-slate-800 dark:text-slate-75">
{{ props.option.title }}
</span>
</div>
</template>
@@ -57,10 +55,9 @@ export default {
:style="{ backgroundColor: props.option.color }"
class="flex-shrink-0 w-5 h-5 border border-solid rounded-full border-slate-100 dark:border-slate-800"
/>
<span class="reports-option__desc">
<span class="my-0 text-slate-800 dark:text-slate-75">
{{ props.option.title }}
</span>
<span class="my-0 text-slate-800 truncate min-w-0 dark:text-slate-75">
{{ props.option.title }}
</span>
</div>
</template>
@@ -179,18 +179,16 @@ export default {
@update:model-value="changeFilterSelection"
>
<template #singleLabel="props">
<div class="flex items-center gap-2">
<div class="flex min-w-0 items-center gap-2">
<Thumbnail
:src="props.option.thumbnail"
:status="props.option.availability_status"
:username="props.option.name"
size="22px"
/>
<span class="reports-option__desc">
<span class="my-0 text-slate-800 dark:text-slate-75">{{
props.option.name
}}</span>
</span>
<span class="my-0 text-slate-800 truncate dark:text-slate-75">{{
props.option.name
}}</span>
</div>
</template>
<template #options="props">
@@ -226,28 +224,26 @@ export default {
@update:model-value="changeFilterSelection"
>
<template #singleLabel="props">
<div class="flex items-center gap-2">
<div class="flex items-center min-w-0 gap-2">
<div
:style="{ backgroundColor: props.option.color }"
class="w-5 h-5 rounded-full"
/>
<span class="reports-option__desc">
<span class="my-0 text-slate-800 dark:text-slate-75">
{{ props.option.title }}
</span>
<span class="my-0 text-slate-800 truncate dark:text-slate-75">
{{ props.option.title }}
</span>
</div>
</template>
<template #option="props">
<div class="flex items-center gap-2">
<div class="flex items-center min-w-0 gap-2">
<div
:style="{ backgroundColor: props.option.color }"
class="flex-shrink-0 w-5 h-5 border border-solid rounded-full border-slate-100 dark:border-slate-800"
/>
<span class="reports-option__desc">
<span class="my-0 text-slate-800 dark:text-slate-75">
{{ props.option.title }}
</span>
<span class="my-0 text-slate-800 truncate dark:text-slate-75">
{{ props.option.title }}
</span>
</div>
</template>
@@ -10,7 +10,7 @@
<style scoped lang="scss">
.reports--wrapper {
::v-deep {
:deep() {
.multiselect--disabled {
@apply opacity-50 border border-n-weak rounded-md cursor-not-allowed;
}
@@ -23,7 +23,7 @@
@apply bg-n-slate-1 border border-n-weak m-0 min-h-[2.875rem] pt-0;
input[type='text'] {
@apply bg-n-alpha-3 border-n-weak !min-h-[2.375rem] !h-[2.375rem] !ps-0.5 !py-0 !text-sm;
@apply bg-n-alpha-3 border-n-weak placeholder:text-n-slate-11 min-h-[2.375rem] h-[2.375rem] px-0.5 py-0 text-sm;
}
}
@@ -40,7 +40,7 @@
}
.multiselect__input {
@apply text-sm !h-[2.375rem] mb-0 !py-0;
@apply text-sm h-[2.375rem] mb-0 py-0;
}
.multiselect__tags,
@@ -50,7 +50,7 @@
}
.mx-input-wrapper {
@apply bg-n-alpha-3 !border-n-weak text-n-slate-12 rounded-lg text-sm;
@apply bg-n-alpha-3 border-n-weak text-n-slate-12 rounded-lg text-sm;
input {
@apply border-n-weak text-sm;