+
+ {/* Install mode selector */}
+
+
Способ установки
+
+ {([
+ { key: 'iframe', icon: Code2, title: 'Встроенный', desc: 'Вставить блоком на страницу' },
+ { key: 'floating', icon: Zap, title: 'Плавающая кнопка', desc: 'Кнопка в углу сайта' },
+ { key: 'trigger', icon: Scan, title: 'По классу', desc: 'Клик на любой элемент сайта' },
+ ] as const).map(m => (
+
+ ))}
+
+
+
+ {/* Options per mode */}
+ {codeMode === 'iframe' && (
+
+
Ширина виджета
+
+ {[
+ { label: 'Узкий (400px)', value: '400px' },
+ { label: 'Стандарт (500px)', value: '500px' },
+ { label: 'Широкий (700px)', value: '700px' },
+ { label: 'Во всю ширину', value: '100%' },
+ ].map(opt => (
+
+ ))}
+ setWidgetMaxWidth(e.target.value)}
+ className="w-24 text-xs border border-slate-200 dark:border-slate-600 rounded-lg px-2 py-1.5 bg-white dark:bg-slate-800 text-slate-700 dark:text-slate-300"
+ placeholder="700px"
+ />
+
+
Виджет автоматически отцентрируется на странице
+
+ )}
+
+ {codeMode === 'floating' && (
+
+
Настройки кнопки
+
+
+
+ setFloatBtnText(e.target.value)}
+ className="w-full text-sm border border-slate-200 dark:border-slate-600 rounded-lg px-3 py-1.5 bg-white dark:bg-slate-800"
+ placeholder="Забронировать"
+ />
+
+
+
+
+
+
Кнопка появится в правом нижнем углу сайта. Цвет берётся из настроек виджета.
+
+ )}
+
+ {codeMode === 'trigger' && (
+
+
CSS-класс триггера
+
+ .
+ setTriggerClass(e.target.value.replace(/[^a-z0-9-_]/gi, ''))}
+ className="flex-1 text-sm border border-slate-200 dark:border-slate-600 rounded-lg px-3 py-1.5 bg-white dark:bg-slate-800 font-mono"
+ placeholder="hotelsync-book"
+ />
+
+
+ Добавьте этот класс любой кнопке или ссылке на сайте — при клике откроется виджет:
+
+
{``}
+
+ )}
+
+ {/* Code block */}
-
Код для вставки на сайт
+
+ {codeMode === 'iframe' ? 'Код для вставки' : codeMode === 'floating' ? 'Скрипт плавающей кнопки' : 'Скрипт триггера по классу'}
+
-
- {snippet}
+
+ {activeSnippet}
-
-
-
-
Инструкция по установке
- {[
- { step: '1', text: 'Скопируйте код выше' },
- { step: '2', text: 'Вставьте перед закрывающим тегом