feat: new settings and mainpage blocks

This commit is contained in:
2025-11-11 00:30:39 +03:00
parent 5fb45000ac
commit 6176c720b1
97 changed files with 1842 additions and 1658 deletions

View File

@@ -1,6 +1,6 @@
<template>
<div class="drawer h-full">
<input id="app-drawer" type="checkbox" class="drawer-toggle" v-model="drawerOpen" />
<input id="app-drawer" type="checkbox" class="drawer-toggle" v-model="drawerOpen"/>
<div class="drawer-content">
<div class="app-container h-full">
@@ -9,18 +9,18 @@
<Navbar @drawer="toggleDrawer"/>
<section class="telecart-main-section">
<FullscreenViewport v-if="platform === 'ios' || platform === 'android'" />
<FullscreenViewport v-if="platform === 'ios' || platform === 'android'"/>
<AppDebugMessage v-if="settings.app_debug"/>
<RouterView v-slot="{ Component, route }">
<KeepAlive include="Home" :key="filtersStore.paramsHashForRouter">
<component :is="Component" :key="route.fullPath" />
<component :is="Component" :key="route.fullPath"/>
</KeepAlive>
</RouterView>
<CartButton v-if="settings.store_enabled" />
<Dock v-if="isAppDockShown" />
<CartButton v-if="settings.store_enabled"/>
<Dock v-if="isAppDockShown"/>
</section>
</div>
</div>
@@ -38,8 +38,7 @@
<script setup>
import {computed, onMounted, onUnmounted, ref, watch} from "vue";
import {useWebAppViewport} from 'vue-tg';
import {useMiniApp, FullscreenViewport} from 'vue-tg';
import {FullscreenViewport, useMiniApp, useWebAppViewport} from 'vue-tg';
import {useRoute, useRouter} from "vue-router";
import {useSettingsStore} from "@/stores/SettingsStore.js";
import {useProductFiltersStore} from "@/stores/ProductFiltersStore.js";
@@ -64,10 +63,10 @@ const haptic = window.Telegram.WebApp.HapticFeedback;
const drawerOpen = ref(false);
const routesToHideAppDock = [
'product.show',
'checkout',
'order_created',
'filters',
'product.show',
'checkout',
'order_created',
'filters',
];
const isAppDockShown = computed(() => {
@@ -80,7 +79,7 @@ function navigateBack() {
}
function toggleDrawer() {
drawerOpen.value = !drawerOpen.value
drawerOpen.value = !drawerOpen.value;
}
watch(