index.pug 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. //- Главный layout приложения
  2. div(class="app" :class="{'theme-dark': theme === 'dark'}")
  3. header(class="header")
  4. nav(class="header-nav")
  5. div(class="header-nav-block")
  6. div(class="header-nav--name") {{ currentDomainSettings?.companyName || companyName }}
  7. div(class="header-nav--menu")
  8. //- TODO: Добавить компоненты
  9. //- multilevelmenu(:domains="availableDomains" :current-domain="currentDomain")
  10. //- themetoggle(:theme="theme" @theme-changed="toggleTheme")
  11. //- languagetoggle(:languages="languages" :current-language="currentLanguage" @language-changed="setLanguage")
  12. //- cartwidget(:items="cartItems" @update-cart="updateCart")
  13. //- Временные элементы
  14. button(@click="toggleTheme" class="btn btn-sm")
  15. span(v-if="theme === 'light'") 🌙
  16. span(v-else) ☀️
  17. span(class="badge") {{ currentLanguage }}
  18. button(@click="showNotification('Тестовое уведомление')" class="btn btn-sm")
  19. | 🔔
  20. main(class="main-content")
  21. router-view(v-slot="{ Component, route }")
  22. transition(name="page-slide" mode="out-in")
  23. component(
  24. :is="Component"
  25. :key="route.fullPath"
  26. :domain-settings="currentDomainSettings"
  27. :language="currentLanguage"
  28. )
  29. //- TODO: Добавить компонент уведомлений
  30. //- notification-container(:notifications="notifications")
  31. div(v-if="loading" class="loading-overlay")
  32. div(class="loading-spinner") Загрузка...