/
Daydya
/
Balagan
Обзор
Документация
Войти
/
Daydya
/
Balagan
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
App.example.jsx
47 строк
2 KB
Daydya
Файлы приложения
19 дек 2025, 21:05
19 дек 2025, 21:05
15bdbd0
Код
Авторство
О чём код?
// Это пример приложения предоставленный пользователем // Он будет адаптирован для работы с Capacitor и реальными BLE/MQTT сервисами import React, { useState, useEffect } from 'react'; import { Thermometer, Droplets, Sun, Wind, Snowflake, AlertCircle, Plus, Trash2, Settings, Bell, Gauge, Sliders, Wrench, Upload, X, Clock, TrendingUp, ChevronDown } from 'lucide-react'; import { LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, Legend, ResponsiveContainer } from 'recharts'; const mockAPI = { registerDevice: async (deviceId, password) => { await new Promise(resolve => setTimeout(resolve, 500)); if (deviceId.startsWith('HG-')) return { success: true, type: 'greenhouse' }; else if (deviceId.startsWith('FR-')) return { success: true, type: 'fridge' }; throw new Error('Неверный Device ID'); }, getDeviceData: async (deviceId) => { await new Promise(resolve => setTimeout(resolve, 300)); if (deviceId.startsWith('HG-')) { return { temperature: 23.5 + Math.random() * 2 - 1, humidity: 65 + Math.random() * 10 - 5, outdoorTemp: 12.3 + Math.random() * 2 - 1, outdoorHum: 78 + Math.random() * 5 - 2.5, lux: 3500 + Math.random() * 500 - 250, windowPosition: 35 + Math.random() * 10 - 5, heating: false, light: true, sensorOk: true, outdoorOk: true, luxOk: true, manualWindow: false, humVentMode: 0, calibrated: true, calibOpenTime: 45000, calibCloseTime: 42000, timeValid: true, timeStr: new Date().toLocaleTimeString('ru-RU'), nightModeActive: false, currentShift: 0, targetShift: 0, effectiveTempMin: 22, effectiveTempMax: 26, effectiveHeatOn: 15, effectiveHeatOff: 18 }; } else { return { temperature: 4.2 + Math.random() * 1 - 0.5, humidity: 85 + Math.random() * 5 - 2.5, compressor: true, heater: false, fan: false, sensorOk: true, timeValid: true, timeStr: new Date().toLocaleTimeString('ru-RU') }; } }, sendCommand: async (deviceId, command, params) => { await new Promise(resolve => setTimeout(resolve, 300)); console.log('Command sent:', deviceId, command, params); return { success: true }; } }; // ... (остальной код из примера) // Полный код слишком длинный, но это основа для адаптации export default App;