refactor(ui): replace modal dialogs with toast/sheet components

Remove DialogVant/NotifyVant and add Toast and Sheet components with
useToast, useReveal, and usePageTransition composables. Rework
Navigation, RegisterView, and styles across both apps; rebuild dist assets.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
s.esmaeili
2026-10-04 13:57:25 +03:30
co-authored by Claude Sonnet 5
parent 148b99c4a6
commit c05352d6fd
205 changed files with 3362 additions and 1701 deletions
+12 -19
View File
@@ -19,35 +19,28 @@
</router-view>
</component>
<DialogVantOneButton :timeOut="-1" v-model:show="versionDialog" :closeOnClickOverlay="true">
<template v-slot:img>
<DotLottieVue
class="w-full aspect-square"
autoplay
loop
src="https://lottie.host/cb620e8e-c64a-42e8-a6b5-8844146e5999/nmft7oBO8q.json"
/>
</template>
<IslandSheet
v-model:show="versionDialog"
art="update"
title="نسخه جدید منتزر منتشر شد!"
description="برای استفاده از آخرین امکانات و بهبودها، برنامه را به روز رسانی کنید."
confirm-text="به روز رسانی"
cancel-text="بعداً"
@confirm="update()"
/>
<template v-slot:title>
<div class="p-8 text-justify">نسخه جدید منتزر منتشر شد!</div>
</template>
<template v-slot:button>
<div class="text-center text-[#1C2D56]" @click="update()">به روز رسانی</div>
</template>
</DialogVantOneButton>
<ToastHost />
</div>
</template>
<script setup lang="ts">
import { computed, onMounted, ref } from 'vue'
import { useRouter } from 'vue-router'
import { DotLottieVue } from '@lottiefiles/dotlottie-vue'
import { useRegisterSW } from 'virtual:pwa-register/vue'
import MasterLayout from './layout/MasterLayout.vue'
import FullPageLayout from './layout/FullPageLayout.vue'
import DialogVantOneButton from './components/DialogVantOneButton.vue'
import IslandSheet from './components/ui/IslandSheet.vue'
import ToastHost from './components/ui/ToastHost.vue'
import { useRefresh } from './composables/useRefresh'
import pkg from '../package.json'