feat: добавлен жест swipe back для навигации назад

- Добавлен композабл useSwipeBack для обработки жеста свайпа от левого края
- Жест активируется при движении от левого края экрана (в пределах 20px)
- Навигация назад выполняется при достижении порога 40px
- Добавлена тактильная обратная связь при достижении порога
- Работает только не на главной странице, как и кнопка назад
- Игнорирует интерактивные элементы (input, button, swiper и т.д.)
This commit is contained in:
2025-12-01 22:55:29 +03:00
parent db8d1360fc
commit 17972993ca
2 changed files with 212 additions and 0 deletions

View File

@@ -47,6 +47,7 @@ import CartButton from "@/components/CartButton.vue";
import Dock from "@/components/Dock.vue";
import AppDebugMessage from "@/components/AppDebugMessage.vue";
import PrivacyPolicy from "@/components/PrivacyPolicy.vue";
import {useSwipeBack} from "@/composables/useSwipeBack.js";
const tg = useMiniApp();
const platform = ref();
@@ -64,6 +65,9 @@ const backButton = window.Telegram.WebApp.BackButton;
const haptic = window.Telegram.WebApp.HapticFeedback;
const drawerOpen = ref(false);
// Инициализация жеста Swipe Back (без визуального индикатора)
useSwipeBack();
const routesToHideAppDock = [
'product.show',
'checkout',