diff --git a/AppIcon.icon/Assets/StosPlug.svg b/AppIcon.icon/Assets/StosPlug.svg
new file mode 100644
index 0000000..458d629
--- /dev/null
+++ b/AppIcon.icon/Assets/StosPlug.svg
@@ -0,0 +1,3 @@
+
diff --git a/AppIcon.icon/icon.json b/AppIcon.icon/icon.json
new file mode 100644
index 0000000..e5b6368
--- /dev/null
+++ b/AppIcon.icon/icon.json
@@ -0,0 +1,34 @@
+{
+ "fill" : {
+ "automatic-gradient" : "display-p3:0.23889,0.54053,0.96826,1.00000"
+ },
+ "groups" : [
+ {
+ "layers" : [
+ {
+ "image-name" : "StosPlug.svg",
+ "name" : "StosPlug"
+ }
+ ],
+ "shadow" : {
+ "kind" : "neutral",
+ "opacity" : 0.5
+ },
+ "translucency-specializations" : [
+ {
+ "appearance" : "tinted",
+ "value" : {
+ "enabled" : true,
+ "value" : 0.7
+ }
+ }
+ ]
+ }
+ ],
+ "supported-platforms" : {
+ "circles" : [
+ "watchOS"
+ ],
+ "squares" : "shared"
+ }
+}
\ No newline at end of file
diff --git a/StosVPN.xcodeproj/project.pbxproj b/StosVPN.xcodeproj/project.pbxproj
index 2e4428e..11c7272 100644
--- a/StosVPN.xcodeproj/project.pbxproj
+++ b/StosVPN.xcodeproj/project.pbxproj
@@ -10,6 +10,7 @@
0E6351BE2E18EABA002AF750 /* NavigationBackport in Frameworks */ = {isa = PBXBuildFile; productRef = 0E6351BD2E18EABA002AF750 /* NavigationBackport */; };
4EB3C7712D96715400C1B22C /* NetworkExtension.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4EB3C7702D96715400C1B22C /* NetworkExtension.framework */; };
4EB3C7792D96715400C1B22C /* TunnelProv.appex in Embed Foundation Extensions */ = {isa = PBXBuildFile; fileRef = 4EB3C76E2D96715400C1B22C /* TunnelProv.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
+ 4EE6B99B2E8F756700E30694 /* AppIcon.icon in Resources */ = {isa = PBXBuildFile; fileRef = 4EE6B99A2E8F756700E30694 /* AppIcon.icon */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@@ -43,6 +44,7 @@
4EB3C7582D96631A00C1B22C /* StosVPN.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = StosVPN.app; sourceTree = BUILT_PRODUCTS_DIR; };
4EB3C76E2D96715400C1B22C /* TunnelProv.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = TunnelProv.appex; sourceTree = BUILT_PRODUCTS_DIR; };
4EB3C7702D96715400C1B22C /* NetworkExtension.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = NetworkExtension.framework; path = System/Library/Frameworks/NetworkExtension.framework; sourceTree = SDKROOT; };
+ 4EE6B99A2E8F756700E30694 /* AppIcon.icon */ = {isa = PBXFileReference; lastKnownFileType = folder.iconcomposer.icon; path = AppIcon.icon; sourceTree = ""; };
/* End PBXFileReference section */
/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */
@@ -90,6 +92,7 @@
4EB3C74F2D96631A00C1B22C = {
isa = PBXGroup;
children = (
+ 4EE6B99A2E8F756700E30694 /* AppIcon.icon */,
0E6351B62E18DF53002AF750 /* Build.xcconfig */,
0E6351B72E18DF53002AF750 /* CodeSigning.xcconfig */,
0E6351B82E18DF53002AF750 /* CodeSigning.xcconfig.sample */,
@@ -218,6 +221,7 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
+ 4EE6B99B2E8F756700E30694 /* AppIcon.icon in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -293,6 +297,7 @@
CODE_SIGN_ENTITLEMENTS = "$(TARGET_NAME)/$(TARGET_NAME).entitlements";
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = dwarf;
+ DEVELOPMENT_TEAM = 95J8WZ4TN8;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
@@ -369,6 +374,7 @@
CODE_SIGN_ENTITLEMENTS = "$(TARGET_NAME)/$(TARGET_NAME).entitlements";
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ DEVELOPMENT_TEAM = 95J8WZ4TN8;
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_USER_SCRIPT_SANDBOXING = YES;
@@ -406,6 +412,7 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
+ ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES;
CLANG_ENABLE_MODULES = YES;
DEVELOPMENT_ASSET_PATHS = "\"StosVPN/Preview Content\"";
ENABLE_PREVIEWS = YES;
@@ -433,6 +440,7 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
+ ASSETCATALOG_COMPILER_INCLUDE_ALL_APPICON_ASSETS = YES;
CLANG_ENABLE_MODULES = YES;
DEVELOPMENT_ASSET_PATHS = "\"StosVPN/Preview Content\"";
ENABLE_PREVIEWS = YES;
@@ -457,6 +465,9 @@
4EB3C77C2D96715400C1B22C /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ INFOPLIST_KEY_CFBundleDisplayName = TunnelProv;
+ INFOPLIST_KEY_NSHumanReadableCopyright = Stossy11;
+ INFOPLIST_KEY_UIRequiredDeviceCapabilities = arm64;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
@@ -476,6 +487,9 @@
4EB3C77D2D96715400C1B22C /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ INFOPLIST_KEY_CFBundleDisplayName = TunnelProv;
+ INFOPLIST_KEY_NSHumanReadableCopyright = Stossy11;
+ INFOPLIST_KEY_UIRequiredDeviceCapabilities = arm64;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
diff --git a/StosVPN.xcodeproj/project.xcworkspace/xcuserdata/stossy11.xcuserdatad/UserInterfaceState.xcuserstate b/StosVPN.xcodeproj/project.xcworkspace/xcuserdata/stossy11.xcuserdatad/UserInterfaceState.xcuserstate
index 718cd03..6380d3b 100644
Binary files a/StosVPN.xcodeproj/project.xcworkspace/xcuserdata/stossy11.xcuserdatad/UserInterfaceState.xcuserstate and b/StosVPN.xcodeproj/project.xcworkspace/xcuserdata/stossy11.xcuserdatad/UserInterfaceState.xcuserstate differ
diff --git a/StosVPN/Assets.xcassets/.DS_Store b/StosVPN/Assets.xcassets/.DS_Store
index 1943592..f1e7878 100644
Binary files a/StosVPN/Assets.xcassets/.DS_Store and b/StosVPN/Assets.xcassets/.DS_Store differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/1280x768 copy 3.jpeg b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/1280x768 copy 3.jpeg
new file mode 100644
index 0000000..f0a3c06
Binary files /dev/null and b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/1280x768 copy 3.jpeg differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/Contents.json
new file mode 100644
index 0000000..c8220ca
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Content.imageset/Contents.json
@@ -0,0 +1,12 @@
+{
+ "images" : [
+ {
+ "filename" : "1280x768 copy 3.jpeg",
+ "idiom" : "tv"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Contents.json
new file mode 100644
index 0000000..73c0059
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Back.imagestacklayer/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Contents.json
new file mode 100644
index 0000000..de59d88
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Contents.json
@@ -0,0 +1,17 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ },
+ "layers" : [
+ {
+ "filename" : "Front.imagestacklayer"
+ },
+ {
+ "filename" : "Middle.imagestacklayer"
+ },
+ {
+ "filename" : "Back.imagestacklayer"
+ }
+ ]
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/1280x768.png b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/1280x768.png
new file mode 100644
index 0000000..7ef95d2
Binary files /dev/null and b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/1280x768.png differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/Contents.json
new file mode 100644
index 0000000..27e4230
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Content.imageset/Contents.json
@@ -0,0 +1,12 @@
+{
+ "images" : [
+ {
+ "filename" : "1280x768.png",
+ "idiom" : "tv"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Contents.json
new file mode 100644
index 0000000..73c0059
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Front.imagestacklayer/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/1280x768 copy 3.jpeg b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/1280x768 copy 3.jpeg
new file mode 100644
index 0000000..f0a3c06
Binary files /dev/null and b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/1280x768 copy 3.jpeg differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json
new file mode 100644
index 0000000..c8220ca
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json
@@ -0,0 +1,12 @@
+{
+ "images" : [
+ {
+ "filename" : "1280x768 copy 3.jpeg",
+ "idiom" : "tv"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Contents.json
new file mode 100644
index 0000000..73c0059
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/App Icon - App Store.imagestack/Middle.imagestacklayer/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Content.png b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Content.png
new file mode 100644
index 0000000..89a14de
Binary files /dev/null and b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Content.png differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Content@2x.png b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Content@2x.png
new file mode 100644
index 0000000..4c0fa55
Binary files /dev/null and b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Content@2x.png differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Contents.json
new file mode 100644
index 0000000..1e15e2e
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Content.imageset/Contents.json
@@ -0,0 +1,18 @@
+{
+ "images" : [
+ {
+ "filename" : "Content.png",
+ "idiom" : "tv",
+ "scale" : "1x"
+ },
+ {
+ "filename" : "Content@2x.png",
+ "idiom" : "tv",
+ "scale" : "2x"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Contents.json
new file mode 100644
index 0000000..73c0059
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Back.imagestacklayer/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Contents.json
new file mode 100644
index 0000000..de59d88
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Contents.json
@@ -0,0 +1,17 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ },
+ "layers" : [
+ {
+ "filename" : "Front.imagestacklayer"
+ },
+ {
+ "filename" : "Middle.imagestacklayer"
+ },
+ {
+ "filename" : "Back.imagestacklayer"
+ }
+ ]
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/Contents.json
new file mode 100644
index 0000000..0de3f67
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/Contents.json
@@ -0,0 +1,18 @@
+{
+ "images" : [
+ {
+ "filename" : "cool.png",
+ "idiom" : "tv",
+ "scale" : "1x"
+ },
+ {
+ "filename" : "cool 1.png",
+ "idiom" : "tv",
+ "scale" : "2x"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/cool 1.png b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/cool 1.png
new file mode 100644
index 0000000..a7be7ca
Binary files /dev/null and b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/cool 1.png differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/cool.png b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/cool.png
new file mode 100644
index 0000000..6cb0562
Binary files /dev/null and b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Content.imageset/cool.png differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Contents.json
new file mode 100644
index 0000000..73c0059
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Front.imagestacklayer/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Content.png b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Content.png
new file mode 100644
index 0000000..5e99d16
Binary files /dev/null and b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Content.png differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Content@2x.png b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Content@2x.png
new file mode 100644
index 0000000..5e99d16
Binary files /dev/null and b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Content@2x.png differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json
new file mode 100644
index 0000000..1e15e2e
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Content.imageset/Contents.json
@@ -0,0 +1,18 @@
+{
+ "images" : [
+ {
+ "filename" : "Content.png",
+ "idiom" : "tv",
+ "scale" : "1x"
+ },
+ {
+ "filename" : "Content@2x.png",
+ "idiom" : "tv",
+ "scale" : "2x"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Contents.json
new file mode 100644
index 0000000..73c0059
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/AppIcon.imagestack/Middle.imagestacklayer/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/Contents.json
new file mode 100644
index 0000000..386cafd
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/Contents.json
@@ -0,0 +1,32 @@
+{
+ "assets" : [
+ {
+ "filename" : "App Icon - App Store.imagestack",
+ "idiom" : "tv",
+ "role" : "primary-app-icon",
+ "size" : "1280x768"
+ },
+ {
+ "filename" : "AppIcon.imagestack",
+ "idiom" : "tv",
+ "role" : "primary-app-icon",
+ "size" : "400x240"
+ },
+ {
+ "filename" : "Top Shelf Image Wide.imageset",
+ "idiom" : "tv",
+ "role" : "top-shelf-image-wide",
+ "size" : "2320x720"
+ },
+ {
+ "filename" : "Top Shelf Image.imageset",
+ "idiom" : "tv",
+ "role" : "top-shelf-image",
+ "size" : "1920x720"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/1280x768 copy 4 2.jpeg b/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/1280x768 copy 4 2.jpeg
new file mode 100644
index 0000000..43f56a7
Binary files /dev/null and b/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/1280x768 copy 4 2.jpeg differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/1280x768 copy 4.jpeg b/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/1280x768 copy 4.jpeg
new file mode 100644
index 0000000..7e958fe
Binary files /dev/null and b/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/1280x768 copy 4.jpeg differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/Contents.json
new file mode 100644
index 0000000..b9e7578
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image Wide.imageset/Contents.json
@@ -0,0 +1,18 @@
+{
+ "images" : [
+ {
+ "filename" : "1280x768 copy 4.jpeg",
+ "idiom" : "tv",
+ "scale" : "1x"
+ },
+ {
+ "filename" : "1280x768 copy 4 2.jpeg",
+ "idiom" : "tv",
+ "scale" : "2x"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/1280x768 copy 4.jpeg b/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/1280x768 copy 4.jpeg
new file mode 100644
index 0000000..5be157c
Binary files /dev/null and b/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/1280x768 copy 4.jpeg differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/1280x768 copy 5.jpeg b/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/1280x768 copy 5.jpeg
new file mode 100644
index 0000000..eb86f22
Binary files /dev/null and b/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/1280x768 copy 5.jpeg differ
diff --git a/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/Contents.json b/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/Contents.json
new file mode 100644
index 0000000..455acd2
--- /dev/null
+++ b/StosVPN/Assets.xcassets/AppIcon.brandassets/Top Shelf Image.imageset/Contents.json
@@ -0,0 +1,18 @@
+{
+ "images" : [
+ {
+ "filename" : "1280x768 copy 4.jpeg",
+ "idiom" : "tv",
+ "scale" : "1x"
+ },
+ {
+ "filename" : "1280x768 copy 5.jpeg",
+ "idiom" : "tv",
+ "scale" : "2x"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/StosVPN/ContentView.swift b/StosVPN/ContentView.swift
index 9159f68..3176ba0 100644
--- a/StosVPN/ContentView.swift
+++ b/StosVPN/ContentView.swift
@@ -118,7 +118,11 @@ class TunnelManager: ObservableObject {
DispatchQueue.main.async {
if let error = error {
VPNLogger.shared.log("Error loading preferences: \(error.localizedDescription)")
+ #if targetEnvironment(simulator)
+ self.tunnelStatus = .disconnected
+ #else
self.tunnelStatus = .error
+ #endif
self.waitingOnSettings = true
return
}
@@ -199,7 +203,7 @@ class TunnelManager: ObservableObject {
}
private func updateTunnelStatus(from connectionStatus: NEVPNStatus) {
- let newStatus: TunnelStatus
+ var newStatus: TunnelStatus
switch connectionStatus {
case .invalid, .disconnected:
newStatus = .disconnected
@@ -215,6 +219,10 @@ class TunnelManager: ObservableObject {
newStatus = .error
}
+ #if targetEnvironment(simulator)
+ newStatus = .connected
+ #endif
+
DispatchQueue.main.async { [weak self] in
guard let self = self else { return }
if self.tunnelStatus != newStatus {