"use client" import { useState } from 'react' import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card' import { Badge } from '@/components/ui/badge' import { Button } from '@/components/ui/button' import { Input } from '@/components/ui/input' import { Label } from '@/components/ui/label' import { Slider } from '@/components/ui/slider' import { Switch } from '@/components/ui/switch' import { Checkbox } from '@/components/ui/checkbox' import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select' import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs' import { Progress } from '@/components/ui/progress' import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger } from '@/components/ui/alert-dialog' import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogTrigger } from '@/components/ui/dialog' import { ChevronDown, ChevronUp, Plus, Minus, Star, Heart, ThumbsUp, Share, Bookmark, Flag, MoreHorizontal, Settings, Filter, Search, Calendar, Clock, User, Bell, MessageCircle, Mail, Phone, MapPin, Globe, Zap, Shield, Eye, EyeOff, Lock, Unlock, Copy, Check, X, AlertTriangle, Info, HelpCircle, ExternalLink, Download, Upload, Trash2, Edit3, Save, RefreshCw } from 'lucide-react' export function InteractiveDemo() { const [rating, setRating] = useState(3) const [liked, setLiked] = useState(false) const [bookmarked, setBookmarked] = useState(false) const [sliderValue, setSliderValue] = useState([50]) const [switchValue, setSwitchValue] = useState(false) const [checkboxValue, setCheckboxValue] = useState(false) const [counter, setCounter] = useState(5) const [showPassword, setShowPassword] = useState(false) const [notifications, setNotifications] = useState(true) const [expandedCard, setExpandedCard] = useState(null) const [selectedItems, setSelectedItems] = useState([]) const [copied, setCopied] = useState(false) const handleCopy = () => { setCopied(true) setTimeout(() => setCopied(false), 2000) } const toggleItemSelection = (id: number) => { setSelectedItems(prev => prev.includes(id) ? prev.filter(item => item !== id) : [...prev, id] ) } return (
{/* Интерактивные кнопки */} Интерактивные кнопки {/* Action Buttons */}

Кнопки действий

{/* Rating Stars */}

Рейтинг звездами

Оцените товар:
{[1, 2, 3, 4, 5].map((star) => ( ))}
({rating} из 5)
{/* Counter */}

Счетчик

Количество:
setCounter(parseInt(e.target.value) || 0)} className="text-center glass-input" />
{/* Toggle Buttons */}

Переключатели

setCheckboxValue(!!checked)} />
{sliderValue[0]}%
{/* Формы и инпуты */} Интерактивные формы {/* Search Input */}

Поиск с фильтрами

{/* Password Input */}

Ввод пароля

{/* Select Dropdown */}

Выпадающие списки

{/* Copy to Clipboard */}

Копирование в буфер

{/* Диалоги и модальные окна */} Диалоги и модальные окна {/* Alert Dialog */}

Диалоги подтверждения

Подтвердите удаление Это действие нельзя отменить. Товар будет окончательно удален из системы. Отмена Удалить Сохранить изменения? Все внесенные изменения будут сохранены в системе. Отмена Сохранить Внимание! Эта операция может повлиять на работу системы. Продолжить? Отмена Продолжить
{/* Regular Dialog */}

Информационные диалоги

Настройки системы
О системе SferaV

SferaV - современная система управления бизнесом для фулфилмент-центров, селлеров, логистических компаний и поставщиков.

Версия: 1.0.0
Сборка: 2024.01.15
Лицензия: MIT
Справка FAQ Контакты Документация
Как добавить товар?

Перейдите в раздел "Склад" и нажмите кнопку "Добавить товар".

Как связаться с поддержкой?

Используйте вкладку "Контакты" в этом окне.

support@sferav.com
+7 (495) 123-45-67
Telegram: @sferav_support
{/* Расширяемые элементы */} Расширяемые элементы {/* Expandable Cards */}

Расширяемые карточки

{[1, 2, 3].map((card) => (
setExpandedCard(expandedCard === card ? null : card)} >
Настройка {card}
Описание настройки {card}
{expandedCard === card ? ( ) : ( )}
{expandedCard === card && (
)}
))}
{/* Selectable List */}

Выбираемый список

Выбрано: {selectedItems.length} из 5
{[1, 2, 3, 4, 5].map((item) => (
toggleItemSelection(item)} >
toggleItemSelection(item)} />
Элемент {item}
Описание элемента {item}
{selectedItems.includes(item) && ( )}
))}
{selectedItems.length > 0 && (
)}
) }