Wide BookingModal (2-col), RoomModal, RU channels, migration module, all modules active

- BookingModal: 2-column layout (size=2xl/max-w-3xl), no scroll needed; hourly mode toggle for rooms with allowHourly=true
- RoomModal: full add/edit form with hourly rate toggle and amenities checkboxes; RoomsPage wired up
- Channel manager: Яндекс Путешествия, Островок, Суточно.ру, OneTwoTrip added; split into RU/International sections
- Migration module: 3-step wizard (source select → file upload → progress/results)
- All modules set to active by default (version bump to reset localStorage)
- BookingCalendar booking blocks: guest count badge (Xг), unpaid red dot indicator

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-11 19:16:55 +03:00
parent fbf4b269e3
commit 0e0c11785f
12 changed files with 1283 additions and 298 deletions

View File

@@ -1,7 +1,7 @@
import {
Wifi, CreditCard, Tv2, KeyRound,
BarChart3, Globe, CalendarCheck2, Sparkles, Network,
ShoppingCart, Star, UtensilsCrossed, CalendarClock,
ShoppingCart, Star, UtensilsCrossed, CalendarClock, ArrowLeftRight,
} from 'lucide-react'
import type { ElementType } from 'react'
@@ -367,4 +367,29 @@ export const MODULES_DATA: ModuleDef[] = [
icon: CalendarClock,
},
},
{
id: 'migration',
name: 'Миграция данных',
tagline: 'Перенос из другой PMS за 15 минут',
description:
'Перенос броней, номеров и гостей из другой PMS системы. Поддержка Bnovo, Hotelbird, Fidelio, 1С Отель. Импорт через CSV или Excel — без потери данных.',
icon: ArrowLeftRight,
iconBg: 'bg-violet-100 dark:bg-violet-900/40',
iconColor: 'text-violet-600 dark:text-violet-400',
accentColor: 'bg-violet-500',
price: 0,
badge: 'Бесплатно',
features: [
'Импорт из Bnovo, Hotelbird, 1С Отель',
'CSV / Excel загрузка',
'Маппинг полей',
'Импорт гостевой базы',
'Перенос броней',
],
sidebarItem: {
path: '/migration',
label: 'Миграция',
icon: ArrowLeftRight,
},
},
]