Refactor widgets into separate focused files

Split the two large widget files (~2000 lines combined) into 10 focused files:
- WidgetBundle.swift: Main @main bundle registration
- WidgetModels.swift: Shared data models (WatchTimelineView, SimpleEntry, etc.)
- WidgetProviders.swift: Timeline providers and TimeLineCreator
- WidgetSharedViews.swift: Shared voting views
- FeelsTimelineWidget.swift: Timeline widget (small/medium/large)
- FeelsVoteWidget.swift: Vote widget with stats views
- FeelsIconWidget.swift: Custom icon widget
- FeelsGraphicWidget.swift: Graphic mood widget
- FeelsMoodControlWidget.swift: Control Center widget
- FeelsLiveActivity.swift: Live Activity with proper previews

Preserves real-time update architecture (VoteMoodIntent, WidgetCenter,
WidgetDataProvider patterns). Adds proper Live Activity preview support
with sample content states.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Trey t
2025-12-24 10:18:40 -06:00
parent be84825aba
commit e9adc14851
11 changed files with 1709 additions and 1691 deletions

View File

@@ -0,0 +1,21 @@
//
// WidgetBundle.swift
// FeelsWidget
//
// Main widget bundle that registers all Feels widgets
//
import WidgetKit
import SwiftUI
@main
struct FeelsBundle: WidgetBundle {
var body: some Widget {
FeelsWidget()
FeelsGraphicWidget()
FeelsIconWidget()
FeelsVoteWidget()
FeelsMoodControlWidget()
MoodStreakLiveActivity()
}
}