Skip to content

Commit aa62688

Browse files
committed
fix: consolidate magic numbers
1 parent 7d05b1f commit aa62688

7 files changed

Lines changed: 198 additions & 105 deletions

File tree

AllSpark-ios.xcodeproj/project.pbxproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -283,11 +283,11 @@
283283
INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES;
284284
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
285285
INFOPLIST_KEY_UIFileSharingEnabled = NO;
286-
ITSAppUsesNonExemptEncryption = NO;
287286
INFOPLIST_KEY_UILaunchScreen_Generation = YES;
288287
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
289288
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
290289
IPHONEOS_DEPLOYMENT_TARGET = 18.6;
290+
ITSAppUsesNonExemptEncryption = NO;
291291
LD_RUNPATH_SEARCH_PATHS = (
292292
"$(inherited)",
293293
"@executable_path/Frameworks",
@@ -325,11 +325,11 @@
325325
INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES;
326326
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
327327
INFOPLIST_KEY_UIFileSharingEnabled = NO;
328-
ITSAppUsesNonExemptEncryption = NO;
329328
INFOPLIST_KEY_UILaunchScreen_Generation = YES;
330329
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPad = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
331330
INFOPLIST_KEY_UISupportedInterfaceOrientations_iPhone = "UIInterfaceOrientationPortrait UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight";
332331
IPHONEOS_DEPLOYMENT_TARGET = 18.6;
332+
ITSAppUsesNonExemptEncryption = NO;
333333
LD_RUNPATH_SEARCH_PATHS = (
334334
"$(inherited)",
335335
"@executable_path/Frameworks",

AllSpark-ios/AppConstants.swift

Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
import Foundation
2+
import CoreGraphics
3+
import UIKit
4+
import SwiftUI
5+
6+
/// Centralized repository for all magic numbers and generic constants across the app.
7+
enum AppConstants {
8+
enum UI {
9+
// Opacity
10+
static let overlayOpacityDark: CGFloat = 0.85
11+
static let overlayOpacityMedium: CGFloat = 0.7
12+
static let overlayOpacityLight: CGFloat = 0.6
13+
static let overlayOpacityFaint: CGFloat = 0.1
14+
static let buttonBackgroundAlpha: CGFloat = 0.5
15+
16+
// Sizing
17+
static let buttonSizeLarge: CGFloat = 50.0
18+
static let buttonSizeMedium: CGFloat = 40.0
19+
static let iconSizeSmall: CGFloat = 12.0
20+
static let iconSizeSecure: CGFloat = 20.0
21+
static let iconSizeSecurePoint: CGFloat = 10.0
22+
23+
static let viewMaxHeightMedium: CGFloat = 200.0
24+
static let indicatorMinHeight: CGFloat = 36.0
25+
26+
// Font Sizing
27+
static let fontSizeGateIcon: CGFloat = 56.0
28+
static let fontSizeTimer: CGFloat = 20.0
29+
static let fontSizeModes: CGFloat = 11.0
30+
31+
// Spacing & Padding
32+
static let spacingLarge: CGFloat = 24.0
33+
static let spacingStandard: CGFloat = 20.0
34+
static let spacingMedium: CGFloat = 12.0
35+
static let spacingSmall: CGFloat = 8.0
36+
static let spacingTiny: CGFloat = 2.0
37+
38+
static let paddingLarge: CGFloat = 50.0
39+
static let paddingHeader: CGFloat = 32.0
40+
static let paddingStandard: CGFloat = 20.0
41+
static let paddingSmall: CGFloat = 10.0
42+
static let paddingTiny: CGFloat = 6.0
43+
static let paddingMicro: CGFloat = 2.0
44+
45+
static let offsetTrailingStatus: CGFloat = -80.0
46+
47+
// Corner Radii
48+
static let cornerRadiusSwitch: CGFloat = 25.0
49+
static let cornerRadiusLarge: CGFloat = 20.0
50+
static let cornerRadiusMedium: CGFloat = 12.0
51+
static let cornerRadiusStandard: CGFloat = 10.0
52+
static let cornerRadiusSmall: CGFloat = 8.0
53+
}
54+
55+
enum Colors {
56+
// Status & Connection Colors
57+
static let statusConnectedUI = UIColor.systemGreen
58+
static let statusConnectingUI = UIColor.systemOrange
59+
static let statusDisconnectedUI = UIColor.systemRed
60+
61+
static let statusConnected = Color.green
62+
static let statusConnecting = Color.orange
63+
static let statusDisconnected = Color.red
64+
static let statusWarning = Color.yellow
65+
static let statusError = Color.red
66+
67+
// Text Colors
68+
static let textPrimary = Color.white
69+
static let textSecondary = Color.gray
70+
71+
// Backgrounds & Overlays
72+
static let backgroundBase = Color.black
73+
static let backgroundBaseUI = UIColor.black
74+
static let overlayBase = Color.black
75+
static let overlayBaseLight = Color.white
76+
static let backgroundSecondary = Color(UIColor.secondarySystemBackground)
77+
static let backgroundGrouped = Color(UIColor.systemGroupedBackground)
78+
79+
// Actions
80+
static let buttonPrimary = Color.blue
81+
static let buttonDestructive = Color.red
82+
static let actionToggleOn = Color.blue
83+
static let actionToggleOff = Color.red
84+
}
85+
86+
enum Video {
87+
static let defaultChunkDurationMs: Int = 10000
88+
static let dimensionHigh: Int = 1920
89+
static let dimensionLow: Int = 1080
90+
static let defaultFPS: Double = 30.0
91+
}
92+
93+
enum Audio {
94+
static let sampleRate: Double = 44100.0
95+
static let bitRate: Int = 128000
96+
static let channels: Int = 1
97+
}
98+
99+
enum Network {
100+
static let autoReconnectDelaySeconds: TimeInterval = 5.0
101+
}
102+
103+
enum Storage {
104+
static let defaultVideoBufferMaxMB: Int = 16000
105+
static let bytesPerMB: Int64 = 1024 * 1024
106+
}
107+
}

0 commit comments

Comments
 (0)