spb/prisme Public MIT
Navigateur iOS intelligent — chaque page comprise localement avant d'être affichée. SwiftUI · WebKit · Foundation Models, 100% on-device.
Swift 96.7%
JavaScript 3.3%
1//2// DesignTokens.swift3// Prisme4//5// Author: Simon-Pierre Boucher <contact@spboucher.ai>6//78import SwiftUI910/// Semantic color assigned to an identity container. Stored as a token11/// (not raw color values) so themes can reinterpret it later.12enum ContainerColor: String, Codable, CaseIterable, Sendable {13 case bleu14 case vert15 case orange16 case violet1718 var color: Color {19 switch self {20 case .bleu: Color(red: 0.20, green: 0.45, blue: 1.00)21 case .vert: Color(red: 0.18, green: 0.72, blue: 0.42)22 case .orange: Color(red: 1.00, green: 0.56, blue: 0.15)23 case .violet: Color(red: 0.55, green: 0.36, blue: 0.96)24 }25 }2627 /// Lighter companion shade, for gradients.28 var secondary: Color {29 switch self {30 case .bleu: Color(red: 0.35, green: 0.78, blue: 1.00)31 case .vert: Color(red: 0.55, green: 0.90, blue: 0.55)32 case .orange: Color(red: 1.00, green: 0.80, blue: 0.30)33 case .violet: Color(red: 0.80, green: 0.50, blue: 1.00)34 }35 }3637 var gradient: LinearGradient {38 LinearGradient(39 colors: [color, secondary],40 startPoint: .topLeading,41 endPoint: .bottomTrailing42 )43 }44}4546/// Spacing scale. Use these instead of magic numbers in views.47enum Spacing {48 static let xs: CGFloat = 449 static let s: CGFloat = 850 static let m: CGFloat = 1251 static let l: CGFloat = 1652 static let xl: CGFloat = 2453}5455/// Corner radius scale.56enum Radius {57 static let s: CGFloat = 858 static let m: CGFloat = 1259 static let l: CGFloat = 2060 static let xl: CGFloat = 2661}62