| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
|
|
| import React from 'react';
|
| import { Button } from '@douyinfe/semi-ui';
|
| import { Settings, Eye, EyeOff } from 'lucide-react';
|
|
|
| const FloatingButtons = ({
|
| styleState,
|
| showSettings,
|
| showDebugPanel,
|
| onToggleSettings,
|
| onToggleDebugPanel,
|
| }) => {
|
| if (!styleState.isMobile) return null;
|
|
|
| return (
|
| <>
|
| {/* 设置按钮 */}
|
| {!showSettings && (
|
| <Button
|
| icon={<Settings size={18} />}
|
| style={{
|
| position: 'fixed',
|
| right: 16,
|
| bottom: 90,
|
| zIndex: 1000,
|
| width: 36,
|
| height: 36,
|
| borderRadius: '50%',
|
| padding: 0,
|
| boxShadow: '0 4px 12px rgba(0, 0, 0, 0.2)',
|
| background: 'linear-gradient(to right, #8b5cf6, #6366f1)',
|
| }}
|
| onClick={onToggleSettings}
|
| theme='solid'
|
| type='primary'
|
| className='lg:hidden'
|
| />
|
| )}
|
|
|
| {/* 调试按钮 */}
|
| {!showSettings && (
|
| <Button
|
| icon={showDebugPanel ? <EyeOff size={18} /> : <Eye size={18} />}
|
| onClick={onToggleDebugPanel}
|
| theme='solid'
|
| type={showDebugPanel ? 'danger' : 'primary'}
|
| style={{
|
| position: 'fixed',
|
| right: 16,
|
| bottom: 140,
|
| zIndex: 1000,
|
| width: 36,
|
| height: 36,
|
| borderRadius: '50%',
|
| padding: 0,
|
| boxShadow: '0 4px 12px rgba(0, 0, 0, 0.2)',
|
| background: showDebugPanel
|
| ? 'linear-gradient(to right, #e11d48, #be123c)'
|
| : 'linear-gradient(to right, #4f46e5, #6366f1)',
|
| }}
|
| className='lg:hidden'
|
| />
|
| )}
|
| </>
|
| );
|
| };
|
|
|
| export default FloatingButtons;
|
|
|