diff --git a/SelfieCam/App/SelfieCamApp.swift b/SelfieCam/App/SelfieCamApp.swift index 810a130..fb3b57f 100644 --- a/SelfieCam/App/SelfieCamApp.swift +++ b/SelfieCam/App/SelfieCamApp.swift @@ -1,4 +1,4 @@ -// +// // SelfieCamApp.swift // SelfieCam // @@ -18,6 +18,7 @@ struct SelfieCamApp: App { WindowGroup { AppLaunchView(config: .selfieCam) { ContentView() + .preferredColorScheme(.dark) } } } diff --git a/SelfieCam/Resources/Assets.xcassets/Accent/Contents.json b/SelfieCam/Resources/Assets.xcassets/Accent/Contents.json new file mode 100644 index 0000000..a162e38 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Accent/Contents.json @@ -0,0 +1,4 @@ +{ + "info" : { "author" : "xcode", "version" : 1 }, + "properties" : { "provides-namespace" : true } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Accent/dark.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Accent/dark.colorset/Contents.json new file mode 100644 index 0000000..76d3b22 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Accent/dark.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.65", "green": "0.18", "blue": "0.35" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.65", "green": "0.18", "blue": "0.35" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.65", "green": "0.18", "blue": "0.35" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Accent/light.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Accent/light.colorset/Contents.json new file mode 100644 index 0000000..4cae38e --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Accent/light.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.95", "green": "0.45", "blue": "0.60" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.95", "green": "0.45", "blue": "0.60" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.95", "green": "0.45", "blue": "0.60" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Accent/primary.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Accent/primary.colorset/Contents.json new file mode 100644 index 0000000..66da17d --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Accent/primary.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.85", "green": "0.25", "blue": "0.45" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.85", "green": "0.25", "blue": "0.45" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.85", "green": "0.25", "blue": "0.45" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Accent/secondary.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Accent/secondary.colorset/Contents.json new file mode 100644 index 0000000..2d42f5f --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Accent/secondary.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "1.0", "green": "0.95", "blue": "0.90" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "1.0", "green": "0.95", "blue": "0.90" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "1.0", "green": "0.95", "blue": "0.90" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Border/Contents.json b/SelfieCam/Resources/Assets.xcassets/Border/Contents.json new file mode 100644 index 0000000..a162e38 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Border/Contents.json @@ -0,0 +1,4 @@ +{ + "info" : { "author" : "xcode", "version" : 1 }, + "properties" : { "provides-namespace" : true } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Border/emphasized.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Border/emphasized.colorset/Contents.json new file mode 100644 index 0000000..ec18093 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Border/emphasized.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.300", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.300", "red": "0.000", "green": "0.000", "blue": "0.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.300", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Border/selected.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Border/selected.colorset/Contents.json new file mode 100644 index 0000000..f61d962 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Border/selected.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.500", "red": "0.85", "green": "0.25", "blue": "0.45" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.500", "red": "0.85", "green": "0.25", "blue": "0.45" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.500", "red": "0.85", "green": "0.25", "blue": "0.45" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Border/standard.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Border/standard.colorset/Contents.json new file mode 100644 index 0000000..fd99ee5 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Border/standard.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.200", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.200", "red": "0.000", "green": "0.000", "blue": "0.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.200", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Border/subtle.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Border/subtle.colorset/Contents.json new file mode 100644 index 0000000..039c05a --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Border/subtle.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.100", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.100", "red": "0.000", "green": "0.000", "blue": "0.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.100", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Branding/accent.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Branding/accent.colorset/Contents.json new file mode 100644 index 0000000..291e157 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Branding/accent.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Branding/primary.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Branding/primary.colorset/Contents.json new file mode 100644 index 0000000..66da17d --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Branding/primary.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.85", "green": "0.25", "blue": "0.45" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.85", "green": "0.25", "blue": "0.45" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.85", "green": "0.25", "blue": "0.45" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Branding/secondary.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Branding/secondary.colorset/Contents.json new file mode 100644 index 0000000..0192ef3 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Branding/secondary.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.45", "green": "0.12", "blue": "0.35" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.45", "green": "0.12", "blue": "0.35" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.45", "green": "0.12", "blue": "0.35" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Button/Contents.json b/SelfieCam/Resources/Assets.xcassets/Button/Contents.json new file mode 100644 index 0000000..a162e38 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Button/Contents.json @@ -0,0 +1,4 @@ +{ + "info" : { "author" : "xcode", "version" : 1 }, + "properties" : { "provides-namespace" : true } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Button/cancelText.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Button/cancelText.colorset/Contents.json new file mode 100644 index 0000000..8750d7d --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Button/cancelText.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.700", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.700", "red": "0.000", "green": "0.000", "blue": "0.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.700", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Button/destructive.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Button/destructive.colorset/Contents.json new file mode 100644 index 0000000..a0593e9 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Button/destructive.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.800", "red": "1.000", "green": "0.000", "blue": "0.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.800", "red": "1.000", "green": "0.000", "blue": "0.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.800", "red": "1.000", "green": "0.000", "blue": "0.000" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Button/primaryDark.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Button/primaryDark.colorset/Contents.json new file mode 100644 index 0000000..b45771c --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Button/primaryDark.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.75", "green": "0.20", "blue": "0.40" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.75", "green": "0.20", "blue": "0.40" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.75", "green": "0.20", "blue": "0.40" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Button/primaryLight.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Button/primaryLight.colorset/Contents.json new file mode 100644 index 0000000..5ebb366 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Button/primaryLight.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.95", "green": "0.40", "blue": "0.55" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.95", "green": "0.40", "blue": "0.55" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.95", "green": "0.40", "blue": "0.55" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Button/secondary.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Button/secondary.colorset/Contents.json new file mode 100644 index 0000000..039c05a --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Button/secondary.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.100", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.100", "red": "0.000", "green": "0.000", "blue": "0.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.100", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Interactive/focus.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Interactive/focus.colorset/Contents.json new file mode 100644 index 0000000..4cae38e --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Interactive/focus.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.95", "green": "0.45", "blue": "0.60" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.95", "green": "0.45", "blue": "0.60" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.95", "green": "0.45", "blue": "0.60" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Interactive/hover.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Interactive/hover.colorset/Contents.json new file mode 100644 index 0000000..039c05a --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Interactive/hover.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.100", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.100", "red": "0.000", "green": "0.000", "blue": "0.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.100", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Interactive/pressed.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Interactive/pressed.colorset/Contents.json new file mode 100644 index 0000000..79feedc --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Interactive/pressed.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.150", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.150", "red": "0.000", "green": "0.000", "blue": "0.000" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.150", "red": "1.000", "green": "1.000", "blue": "1.000" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Interactive/selected.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Interactive/selected.colorset/Contents.json new file mode 100644 index 0000000..161bfd7 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Interactive/selected.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.150", "red": "0.85", "green": "0.25", "blue": "0.45" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.150", "red": "0.85", "green": "0.25", "blue": "0.45" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.150", "red": "0.85", "green": "0.25", "blue": "0.45" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Status/Contents.json b/SelfieCam/Resources/Assets.xcassets/Status/Contents.json new file mode 100644 index 0000000..a162e38 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Status/Contents.json @@ -0,0 +1,4 @@ +{ + "info" : { "author" : "xcode", "version" : 1 }, + "properties" : { "provides-namespace" : true } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Status/error.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Status/error.colorset/Contents.json new file mode 100644 index 0000000..8bdb880 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Status/error.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.9", "green": "0.3", "blue": "0.3" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.9", "green": "0.3", "blue": "0.3" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.9", "green": "0.3", "blue": "0.3" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Status/info.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Status/info.colorset/Contents.json new file mode 100644 index 0000000..b759f48 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Status/info.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.5", "green": "0.7", "blue": "0.95" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.5", "green": "0.7", "blue": "0.95" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.5", "green": "0.7", "blue": "0.95" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Status/success.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Status/success.colorset/Contents.json new file mode 100644 index 0000000..77a26a8 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Status/success.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.2", "green": "0.8", "blue": "0.4" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.2", "green": "0.8", "blue": "0.4" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.2", "green": "0.8", "blue": "0.4" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Status/warning.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Status/warning.colorset/Contents.json new file mode 100644 index 0000000..60bb8d2 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Status/warning.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "1.0", "green": "0.75", "blue": "0.2" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "1.0", "green": "0.75", "blue": "0.2" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "1.0", "green": "0.75", "blue": "0.2" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Surface/Contents.json b/SelfieCam/Resources/Assets.xcassets/Surface/Contents.json new file mode 100644 index 0000000..a162e38 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Surface/Contents.json @@ -0,0 +1,4 @@ +{ + "info" : { "author" : "xcode", "version" : 1 }, + "properties" : { "provides-namespace" : true } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Surface/card.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Surface/card.colorset/Contents.json new file mode 100644 index 0000000..e38cc28 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Surface/card.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.14", "green": "0.10", "blue": "0.16" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.94", "green": "0.92", "blue": "0.93" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.14", "green": "0.10", "blue": "0.16" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Surface/groupedFill.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Surface/groupedFill.colorset/Contents.json new file mode 100644 index 0000000..b39b225 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Surface/groupedFill.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.12", "green": "0.09", "blue": "0.14" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.96", "green": "0.95", "blue": "0.96" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.12", "green": "0.09", "blue": "0.14" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Surface/overlay.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Surface/overlay.colorset/Contents.json new file mode 100644 index 0000000..d818d2e --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Surface/overlay.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.10", "green": "0.07", "blue": "0.12" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.98", "green": "0.97", "blue": "0.98" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.10", "green": "0.07", "blue": "0.12" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Surface/primary.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Surface/primary.colorset/Contents.json new file mode 100644 index 0000000..5e7956c --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Surface/primary.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.08", "green": "0.06", "blue": "0.10" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "1.0", "green": "0.98", "blue": "0.98" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.08", "green": "0.06", "blue": "0.10" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Surface/secondary.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Surface/secondary.colorset/Contents.json new file mode 100644 index 0000000..59bae66 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Surface/secondary.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.12", "green": "0.08", "blue": "0.14" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.96", "green": "0.94", "blue": "0.95" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.12", "green": "0.08", "blue": "0.14" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Surface/sectionFill.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Surface/sectionFill.colorset/Contents.json new file mode 100644 index 0000000..664d2a8 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Surface/sectionFill.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.16", "green": "0.12", "blue": "0.18" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.92", "green": "0.90", "blue": "0.91" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.16", "green": "0.12", "blue": "0.18" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Surface/tertiary.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Surface/tertiary.colorset/Contents.json new file mode 100644 index 0000000..18861f3 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Surface/tertiary.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.16", "green": "0.11", "blue": "0.18" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.92", "green": "0.89", "blue": "0.91" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.16", "green": "0.11", "blue": "0.18" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Text/Contents.json b/SelfieCam/Resources/Assets.xcassets/Text/Contents.json new file mode 100644 index 0000000..a162e38 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Text/Contents.json @@ -0,0 +1,4 @@ +{ + "info" : { "author" : "xcode", "version" : 1 }, + "properties" : { "provides-namespace" : true } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Text/disabled.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Text/disabled.colorset/Contents.json new file mode 100644 index 0000000..b9b659d --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Text/disabled.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.250", "red": "1.0", "green": "1.0", "blue": "1.0" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.250", "red": "0.0", "green": "0.0", "blue": "0.0" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.250", "red": "1.0", "green": "1.0", "blue": "1.0" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Text/inverse.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Text/inverse.colorset/Contents.json new file mode 100644 index 0000000..0603371 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Text/inverse.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.0", "green": "0.0", "blue": "0.0" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "1.0", "green": "1.0", "blue": "1.0" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.0", "green": "0.0", "blue": "0.0" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Text/placeholder.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Text/placeholder.colorset/Contents.json new file mode 100644 index 0000000..7c41c73 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Text/placeholder.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.350", "red": "1.0", "green": "1.0", "blue": "1.0" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.350", "red": "0.0", "green": "0.0", "blue": "0.0" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.350", "red": "1.0", "green": "1.0", "blue": "1.0" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Text/primary.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Text/primary.colorset/Contents.json new file mode 100644 index 0000000..ed4e28e --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Text/primary.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "1.0", "green": "1.0", "blue": "1.0" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "0.0", "green": "0.0", "blue": "0.0" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "1.000", "red": "1.0", "green": "1.0", "blue": "1.0" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Text/secondary.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Text/secondary.colorset/Contents.json new file mode 100644 index 0000000..6ed0a45 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Text/secondary.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.650", "red": "1.0", "green": "1.0", "blue": "1.0" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.650", "red": "0.0", "green": "0.0", "blue": "0.0" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.650", "red": "1.0", "green": "1.0", "blue": "1.0" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Resources/Assets.xcassets/Text/tertiary.colorset/Contents.json b/SelfieCam/Resources/Assets.xcassets/Text/tertiary.colorset/Contents.json new file mode 100644 index 0000000..4956214 --- /dev/null +++ b/SelfieCam/Resources/Assets.xcassets/Text/tertiary.colorset/Contents.json @@ -0,0 +1,28 @@ +{ + "colors" : [ + { + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.500", "red": "1.0", "green": "1.0", "blue": "1.0" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "light" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.500", "red": "0.0", "green": "0.0", "blue": "0.0" } + } + }, + { + "appearances" : [ { "appearance": "luminosity", "value": "dark" } ], + "idiom" : "universal", + "color" : { + "color-space" : "display-p3", + "components" : { "alpha": "0.500", "red": "1.0", "green": "1.0", "blue": "1.0" } + } + } + ], + "info" : { "author" : "xcode", "version" : 1 } +} diff --git a/SelfieCam/Shared/Theme/BrandingConfig.swift b/SelfieCam/Shared/Theme/BrandingConfig.swift index 0c5da35..99659d2 100644 --- a/SelfieCam/Shared/Theme/BrandingConfig.swift +++ b/SelfieCam/Shared/Theme/BrandingConfig.swift @@ -1,4 +1,4 @@ -// +// // BrandingConfig.swift // SelfieCam // @@ -14,13 +14,13 @@ extension Color { /// SelfieCam branding colors for icon and launch screen. enum Branding { /// Primary gradient color - rich magenta/rose for a vibrant, modern selfie aesthetic. - static let primary = Color(red: 0.85, green: 0.25, blue: 0.45) + static let primary = Color("Branding/primary") /// Secondary gradient color - deeper magenta/purple for depth. - static let secondary = Color(red: 0.45, green: 0.12, blue: 0.35) + static let secondary = Color("Branding/secondary") /// Accent color - soft white/cream for clean, bright text and icons. - static let accent = Color.white + static let accent = Color("Branding/accent") } } diff --git a/SelfieCam/Shared/Theme/SelfieCamTheme.swift b/SelfieCam/Shared/Theme/SelfieCamTheme.swift index b0f0b19..9796777 100644 --- a/SelfieCam/Shared/Theme/SelfieCamTheme.swift +++ b/SelfieCam/Shared/Theme/SelfieCamTheme.swift @@ -1,4 +1,4 @@ -// +// // SelfieCamTheme.swift // SelfieCam // @@ -15,37 +15,37 @@ import Bedrock /// Provides more visual separation than neutral grays. public enum SelfieCamSurfaceColors: SurfaceColorProvider { /// Primary background - deep rose-tinted dark - public static let primary = Color(red: 0.08, green: 0.06, blue: 0.10) + public static let primary = Color("Surface/primary") /// Secondary/elevated surface - slightly lighter with rose tint - public static let secondary = Color(red: 0.12, green: 0.08, blue: 0.14) + public static let secondary = Color("Surface/secondary") /// Tertiary/card surface - more elevated - public static let tertiary = Color(red: 0.16, green: 0.11, blue: 0.18) + public static let tertiary = Color("Surface/tertiary") /// Overlay background (for sheets/modals) - deep with subtle rose - public static let overlay = Color(red: 0.10, green: 0.07, blue: 0.12) + public static let overlay = Color("Surface/overlay") /// Card/grouped element background - distinct from primary - public static let card = Color(red: 0.14, green: 0.10, blue: 0.16) + public static let card = Color("Surface/card") /// Subtle fill for grouped content sections - public static let groupedFill = Color(red: 0.12, green: 0.09, blue: 0.14) + public static let groupedFill = Color("Surface/groupedFill") /// Section fill for list sections - slightly more visible - public static let sectionFill = Color(red: 0.16, green: 0.12, blue: 0.18) + public static let sectionFill = Color("Surface/sectionFill") } // MARK: - SelfieCam Text Colors /// Text colors optimized for rose-tinted dark backgrounds. public enum SelfieCamTextColors: TextColorProvider { - public static let primary = Color.white - public static let secondary = Color.white.opacity(Design.Opacity.accent) - public static let tertiary = Color.white.opacity(Design.Opacity.medium) - public static let disabled = Color.white.opacity(Design.Opacity.light) - public static let placeholder = Color.white.opacity(Design.Opacity.overlay) - public static let inverse = Color.black + public static let primary = Color("Text/primary") + public static let secondary = Color("Text/secondary") + public static let tertiary = Color("Text/tertiary") + public static let disabled = Color("Text/disabled") + public static let placeholder = Color("Text/placeholder") + public static let inverse = Color("Text/inverse") } // MARK: - SelfieCam Accent Colors @@ -53,57 +53,57 @@ public enum SelfieCamTextColors: TextColorProvider { /// Accent colors derived from the app's branding magenta/rose. public enum SelfieCamAccentColors: AccentColorProvider { /// Primary accent - bright magenta/rose from branding - public static let primary = Color(red: 0.85, green: 0.25, blue: 0.45) + public static let primary = Color("Accent/primary") /// Light variant - softer pink - public static let light = Color(red: 0.95, green: 0.45, blue: 0.60) + public static let light = Color("Accent/light") /// Dark variant - deeper magenta - public static let dark = Color(red: 0.65, green: 0.18, blue: 0.35) + public static let dark = Color("Accent/dark") /// Secondary accent - soft cream/warm white for contrast - public static let secondary = Color(red: 1.0, green: 0.95, blue: 0.90) + public static let secondary = Color("Accent/secondary") } // MARK: - SelfieCam Button Colors /// Button colors matching the branded theme. public enum SelfieCamButtonColors: ButtonColorProvider { - public static let primaryLight = Color(red: 0.95, green: 0.40, blue: 0.55) - public static let primaryDark = Color(red: 0.75, green: 0.20, blue: 0.40) - public static let secondary = Color.white.opacity(Design.Opacity.subtle) - public static let destructive = Color.red.opacity(Design.Opacity.heavy) - public static let cancelText = Color.white.opacity(Design.Opacity.strong) + public static let primaryLight = Color("Button/primaryLight") + public static let primaryDark = Color("Button/primaryDark") + public static let secondary = Color("Button/secondary") + public static let destructive = Color("Button/destructive") + public static let cancelText = Color("Button/cancelText") } // MARK: - SelfieCam Status Colors /// Standard semantic status colors. public enum SelfieCamStatusColors: StatusColorProvider { - public static let success = Color(red: 0.2, green: 0.8, blue: 0.4) - public static let warning = Color(red: 1.0, green: 0.75, blue: 0.2) - public static let error = Color(red: 0.9, green: 0.3, blue: 0.3) - public static let info = Color(red: 0.5, green: 0.7, blue: 0.95) + public static let success = Color("Status/success") + public static let warning = Color("Status/warning") + public static let error = Color("Status/error") + public static let info = Color("Status/info") } // MARK: - SelfieCam Border Colors /// Border colors for the rose-tinted theme. public enum SelfieCamBorderColors: BorderColorProvider { - public static let subtle = Color.white.opacity(Design.Opacity.subtle) - public static let standard = Color.white.opacity(Design.Opacity.hint) - public static let emphasized = Color.white.opacity(Design.Opacity.light) - public static let selected = SelfieCamAccentColors.primary.opacity(Design.Opacity.medium) + public static let subtle = Color("Border/subtle") + public static let standard = Color("Border/standard") + public static let emphasized = Color("Border/emphasized") + public static let selected = Color("Border/selected") } // MARK: - SelfieCam Interactive Colors /// Interactive state colors for the theme. public enum SelfieCamInteractiveColors: InteractiveColorProvider { - public static let selected = SelfieCamAccentColors.primary.opacity(Design.Opacity.selection) - public static let hover = Color.white.opacity(Design.Opacity.subtle) - public static let pressed = Color.white.opacity(Design.Opacity.hint) - public static let focus = SelfieCamAccentColors.light + public static let selected = Color("Interactive/selected") + public static let hover = Color("Interactive/hover") + public static let pressed = Color("Interactive/pressed") + public static let focus = Color("Interactive/focus") } // MARK: - SelfieCam Theme