feat: implement weekly schedule feature for ESP32 devices
- Add WeeklySchedule component with 7-day x 24-hour grid interface
- Implement drag-to-select functionality (within day and cross-day)
- Add draw/erase tools and select all/deselect all buttons
- Integrate schedule component as collapsible section in DeviceManagement
- Extend database schema with schedule column in device_configs table
- Update backend APIs to handle schedule data (config and esp-config endpoints)
- Add TypeScript types for WeeklySchedule interface
- Include schedule data in ESP configuration JSON responses
Features:
- Visual grid with green (enabled) and gray (disabled) cells
- Intuitive drag selection across multiple days and hours
- Tool-based editing (draw to enable, erase to disable)
- Bulk operations for quick setup
- Persistent storage in database
- Full ESP32 device integration