# app/pages/Home/index.coffee # Добавление стилей страницы if globalThis.stylFns and globalThis.stylFns['app/pages/Home/index.styl'] styleElement = document.createElement('style') styleElement.type = 'text/css' styleElement.textContent = globalThis.stylFns['app/pages/Home/index.styl'] document.head.appendChild(styleElement) else log '⚠️ Стили главной страницы не найдены' module.exports = { # Импорт компонентов components: { 'product-grid': require 'app/components/Domain/ProductGrid/index.coffee' } props: domainSettings: type: Object default: -> {} language: type: String default: 'ru' data: -> { welcomeText: 'Добро пожаловать в Браер-Колор' loading: false productsLoading: false featuredProducts: [] features: [ { title: 'Качественные материалы' description: 'Широкий ассортимент красок, грунтовок и лакокрасочных материалов от проверенных производителей' } { title: 'Доставка по России' description: 'Быстрая и надежная доставка в любой регион страны. Работаем с ведущими транспортными компаниями' } { title: 'Профессиональные консультации' description: 'Наши специалисты помогут подобрать оптимальные материалы для ваших задач и бюджета' } ] } methods: goToCatalog: -> @$router.push '/catalog' contactSupport: -> @$emit 'show-notification', 'Форма обратной связи будет добавлена позже', 'info' viewProduct: (productId) -> @$router.push "/product/#{productId}" loadFeaturedProducts: -> @productsLoading = true # Заглушка для загрузки товаров setTimeout (=> @featuredProducts = [ { id: 1, name: 'Грунтовка глубокого проникновения', price: 528, image: '' }, { id: 2, name: 'Краска акриловая белая', price: 890, image: '' }, { id: 3, name: 'Эмаль для металла', price: 670, image: '' } ] @productsLoading = false ), 1000 mounted: -> log 'Главная страница загружена' @loadFeaturedProducts() render: (new Function '_ctx', '_cache', globalThis.renderFns['app/pages/Home/index.pug'])() }