- Flatten project structure: remove Models/, Services/, ViewModels/, Views/ subdirs - Replace APIService actor with simpler Api class, IS_DEV flag controls dev vs prod URL - Rewrite BeaconScanner to use CoreLocation (CLBeaconRegion ranging) instead of CoreBluetooth — iOS blocks iBeacon data from CBCentralManager - Add SVG logo on login page with proper scaling (was showing green square) - Make login page scrollable, add "enter 6-digit code" OTP instruction - Fix text input visibility (white on white) with .foregroundColor(.primary) - Add diagonal orange DEV ribbon banner (lower-left corner), gated on Api.IS_DEV - Update app icon: logo 10% larger, wifi icon closer - Add en.lproj/InfoPlist.strings for display name localization - Fix scan flash: keep isScanning=true until enrichment completes - Add Podfile with SVGKit, Kingfisher, CocoaLumberjack dependencies Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
24 lines
1.1 KiB
Swift
24 lines
1.1 KiB
Swift
import SwiftUI
|
|
|
|
@main
|
|
struct PayfritBeaconApp: App {
|
|
var body: some Scene {
|
|
WindowGroup {
|
|
RootView()
|
|
}
|
|
}
|
|
}
|
|
|
|
extension Color {
|
|
static let payfritGreen = Color(red: 34/255, green: 178/255, blue: 75/255) // #22B24B
|
|
static let signalStrong = Color(red: 76/255, green: 175/255, blue: 80/255) // #4CAF50
|
|
static let signalMedium = Color(red: 249/255, green: 168/255, blue: 37/255) // #F9A825
|
|
static let signalWeak = Color(red: 186/255, green: 26/255, blue: 26/255) // #BA1A1A
|
|
static let infoBlue = Color(red: 33/255, green: 150/255, blue: 243/255) // #2196F3
|
|
static let warningOrange = Color(red: 255/255, green: 152/255, blue: 0/255) // #FF9800
|
|
static let errorRed = Color(red: 186/255, green: 26/255, blue: 26/255) // #BA1A1A
|
|
static let successGreen = Color(red: 76/255, green: 175/255, blue: 80/255) // #4CAF50
|
|
static let newBg = Color(red: 76/255, green: 175/255, blue: 80/255).opacity(0.12)
|
|
static let assignedBg = Color(red: 33/255, green: 150/255, blue: 243/255).opacity(0.12)
|
|
static let bannedBg = Color(red: 186/255, green: 26/255, blue: 26/255).opacity(0.12)
|
|
}
|