// Типы для маркетингового анализа v4.0
// Адаптировано из TypeScript версии для Vue.js

export const MARKETING_ANALYSIS_STATUS = {
    QUEUED: 'QUEUED',
    PROCESSING: 'PROCESSING',
    COMPLETED: 'COMPLETED',
    FAILED: 'FAILED'
};

// Enum маппинги для UI
export const BusinessStageLabels = {
    JUST_STARTING: 'Только запускаемся',
    LESS_THAN_ONE_YEAR: 'Работаем до 1 года',
    ONE_TO_THREE_YEARS: 'Работаем 1–3 года',
    MORE_THAN_THREE_YEARS: 'Работаем более 3 лет'
};

export const ClientTargetLabels = {
    PRIVATE_CLIENTS: 'Работаем с конечными клиентами (B2C)',
    BUSINESS: 'Работаем с бизнесом (B2B)',
    MIXED: 'Смешанная модель (B2B + B2C)'
};

export const OfferTypeLabels = {
    SERVICES: 'Услуги',
    GOODS: 'Товары',
    SUBSCRIPTION: 'Подписка / доступ'
};

export const AverageCheckLabels = {
    LOW: 'Низкий чек',
    MEDIUM: 'Средний чек',
    HIGH: 'Высокий чек'
};

export const CustomerBehaviorLabels = {
    BUY_QUICKLY: 'Покупают быстро, без долгих раздумий',
    COMPARE_OPTIONS: 'Сравнивают варианты и предложения',
    REQUEST_PROPOSAL: 'Запрашивают индивидуальное коммерческое предложение',
    CHECK_REVIEWS: 'Внимательно читают отзывы и рейтинги',
    NEED_CONSULTATION: 'Нуждаются в консультации перед покупкой'
};

export const GeoScopeLabels = {
    SINGLE_CITY: 'Один город',
    MULTI_CITY: 'Несколько городов',
    FULL_COUNTRY: 'Вся страна',
    ONLINE: 'Онлайн по всему миру'
};

export const PurchaseFrequencyLabels = {
    ONCE: 'Одна покупка',
    MULTIPLE_PER_YEAR: 'Несколько раз в год',
    REGULARLY: 'Регулярно (ежемесячно / чаще)'
};

export const VisualFactorLabels = {
    VISUALS_IMPORTANT: 'Визуал критически важен (эстетика, фото, видео)',
    PARTIALLY: 'Важно, но не критично',
    EXPLANATION_IMPORTANT: 'Тексты и экспертность важнее визуала для доверия'
};

export const DecisionPriorityLabels = {
    PRICE: 'Цена',
    QUALITY: 'Качество',
    SPEED: 'Скорость',
    TRUST: 'Доверие к бренду',
    SERVICE: 'Сервис и сопровождение'
};

export const DiscoveryMethodLabels = {
    SEARCH_WEB: 'Ищут в поиске и сравнивают',
    RECOMMENDATIONS: 'Приходят по рекомендациям / сарафанке',
    PRICE_SELECTION: 'Выбирают по цене / акциям',
    REVIEWS: 'Ориентируются на отзывы и рейтинги',
    CONVENIENCE: 'Выбирают по удобству (сайт, UX, доставка)'
};

export const PriceFeedbackLabels = {
    LOWER_THAN_EXPECTED: 'Часто говорят, что «дёшево / ниже ожиданий»',
    AS_EXPECTED: 'Цена воспринимается как ожидаемая',
    HIGHER_THAN_EXPECTED: 'Считают, что «дорого / выше ожиданий»',
    NOT_DISCUSSED: 'Цену обычно подробно не обсуждают'
};

export const SmmStatusLabels = {
    NONE: 'Соцсетей нет',
    DORMANT: 'Есть, но почти не ведём',
    IRREGULAR: 'Ведём нерегулярно',
    ACTIVE: 'Активно ведём и развиваем'
};

export const LeadVolumeLabels = {
    NONE: 'Заявок практически нет',
    SOMETIMES: 'Иногда приходят заявки',
    REGULARLY: 'Заявки приходят регулярно'
};

export const ResponseHandlerLabels = {
    MYSELF: 'Отвечает лично основатель / владелец',
    EMPLOYEE: 'Есть выделенный сотрудник',
    DELAYED: 'Отвечаем не сразу, с задержками'
};

export const BusinessConstraintLabels = {
    NONE: 'Серьезных ограничений нет',
    SEASONALITY: 'Ярко выраженная сезонность',
    SMALL_TEAM: 'Маленькая команда',
    LIMITED_BUDGET: 'Ограниченный маркетинговый бюджет',
    LONG_DEAL_CYCLE: 'Длинный цикл сделки'
};

// Значения enum'ов
export const BusinessStages = Object.keys(BusinessStageLabels);
export const ClientTargets = Object.keys(ClientTargetLabels);
export const OfferTypes = Object.keys(OfferTypeLabels);
export const AverageChecks = Object.keys(AverageCheckLabels);
export const CustomerBehaviors = Object.keys(CustomerBehaviorLabels);
export const GeoScopes = Object.keys(GeoScopeLabels);
export const PurchaseFrequencies = Object.keys(PurchaseFrequencyLabels);
export const VisualFactors = Object.keys(VisualFactorLabels);
export const DecisionPriorities = Object.keys(DecisionPriorityLabels);
export const DiscoveryMethods = Object.keys(DiscoveryMethodLabels);
export const PriceFeedbacks = Object.keys(PriceFeedbackLabels);
export const SmmStatuses = Object.keys(SmmStatusLabels);
export const LeadVolumes = Object.keys(LeadVolumeLabels);
export const ResponseHandlers = Object.keys(ResponseHandlerLabels);
export const BusinessConstraints = Object.keys(BusinessConstraintLabels);
