41b3174c3b
Add CloudSyncable protocol and iCloudSyncSettingsView for reusable iCloud sync section
2026-01-04 18:11:26 -06:00
3e1d63740f
Add SettingsSegmentedPicker with title, subtitle, and titleAccessory support
2026-01-04 18:03:50 -06:00
835e41841b
Remove VolumePicker (replaced by SettingsSlider with SliderFormat.percentage)
2026-01-04 17:52:08 -06:00
95a20ac5a3
Add settings components: SettingsCard, SettingsNavigationRow, SettingsSlider, titleAccessory for SettingsToggle, and update SETTINGS_GUIDE with debug section pattern
2026-01-04 17:50:26 -06:00
cf46b9f1f4
Split SettingsComponents into individual view files
...
- SettingsToggle.swift - Toggle row with title/subtitle
- VolumePicker.swift - Volume slider with speaker icons
- SegmentedPicker.swift - Horizontal capsule-style picker
- SelectableRow.swift - Card-like selectable row with badge support
- SelectionIndicator.swift - Checkmark/outline selection indicator
- BadgePill.swift - Capsule-shaped badge for values/tags
- SettingsSectionHeader.swift - Section header with icon
- SettingsRow.swift - Navigation-style row with icon
Each file has its own preview for easier development.
2026-01-04 16:58:17 -06:00
cc650c68d4
Add settings theming guide and fix Color typealias conflicts
...
- Add SETTINGS_GUIDE.md with comprehensive documentation for creating branded settings screens
- Rename Color.Text to Color.TextColors to avoid conflict with SwiftUI Text view
- Rename Color.Button to Color.ButtonColors to avoid conflict with SwiftUI Button view
- Add accentColor parameter to SettingsSectionHeader for customizable section icons
- Update README and PulsingModifier to use new TextColors typealias
2026-01-04 16:54:04 -06:00
c7c507c8f7
Add branding system with customizable launch screen and app icon
...
- Add AppIconView with configurable title, subtitle, icon, and colors
- Add LaunchScreenView with multiple pattern styles (dots, grid, radial, none)
- Add layout styles (iconAboveTitle, titleAboveIcon, iconOnly, titleOnly)
- Add IconGeneratorView for exporting 1024px app icons
- Add BrandingPreviewView for previewing branding assets
- Add AppLaunchView wrapper for animated app launch
- Add comprehensive BRANDING_GUIDE.md documentation
- Remove all casino-specific references, make fully generic
2026-01-04 14:38:32 -06:00
9212cd4c23
Fix hasCompletedInitialSync never being set for existing users
...
- Set hasCompletedInitialSync = true when user has existing data
- Only scheduleDelayedCloudCheck for fresh installs with no data
- Fixes UI stuck on 'Syncing...' for returning users
2026-01-04 13:33:32 -06:00
8add0a801a
Fix CloudSyncManager sync status getting stuck on 'Syncing...'
...
- Set initial sync status on init based on iCloud availability
- Update status after initial synchronize call in init
- Properly set isSyncing and syncStatus in scheduleDelayedCloudCheck
- Update syncStatus to 'Synced' after handling cloud changes
2026-01-04 13:28:20 -06:00
b5a5c62fa8
Add PremiumGate utility for generic freemium settings gating
...
- Add PremiumGate enum with get/canSet helpers for premium-gated settings
- Supports entirely premium settings (returns default for free users)
- Supports partial premium (only specific values require premium)
- Preserves stored values so re-subscribing restores previous choices
2026-01-04 13:22:57 -06:00
40d1285c38
Fix Swift 6 concurrency warning for showDebugLogs
...
Mark showDebugLogs as nonisolated(unsafe) to resolve the 'static property is not concurrency-safe' error. This is appropriate for a debug flag that is typically set once at app launch.
2026-01-04 12:36:22 -06:00
9f4046bfd2
Use @_implementationOnly for UIKit imports to prevent macro conflicts
2026-01-02 12:15:08 -06:00
b3033c084a
Remove @_exported imports to prevent macro conflicts
...
- Changed Exports.swift to use regular imports instead of @_exported
- This prevents ambiguous macro resolution issues in consuming apps
2026-01-02 12:02:27 -06:00
8e788ef212
docs: Update README with complete feature documentation
2026-01-02 11:59:57 -06:00
7afa45698f
Update README with complete feature documentation
2026-01-02 11:59:29 -06:00
fa7d848f52
Initial commit: Bedrock design system and UI component library
...
- Design system: spacing, typography, colors, animations, opacity, shadows
- Protocol-based color theming (AppColorTheme)
- Settings UI components: toggles, pickers, selection indicators
- Sound and haptic feedback manager (generic AppSound protocol)
- Onboarding state management
- Cloud sync manager (PersistableData protocol)
- Visual effects: ConfettiView, PulsingModifier
- Debug utilities: DebugBorderModifier
- Device information utilities (cross-platform)
- Unit tests for design constants
2026-01-02 11:58:30 -06:00