diff --git a/ios/RocketChat Watch App/Assets.xcassets/AppIcon.appiconset/1024.png b/ios/RocketChat Watch App/Assets.xcassets/AppIcon.appiconset/1024.png new file mode 100644 index 000000000..e737a61ea Binary files /dev/null and b/ios/RocketChat Watch App/Assets.xcassets/AppIcon.appiconset/1024.png differ diff --git a/ios/RocketChat Watch App/Assets.xcassets/AppIcon.appiconset/Contents.json b/ios/RocketChat Watch App/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 000000000..113d82165 --- /dev/null +++ b/ios/RocketChat Watch App/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,14 @@ +{ + "images" : [ + { + "filename" : "1024.png", + "idiom" : "universal", + "platform" : "watchos", + "size" : "1024x1024" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/ios/RocketChat Watch App/Assets.xcassets/Contents.json b/ios/RocketChat Watch App/Assets.xcassets/Contents.json new file mode 100644 index 000000000..73c00596a --- /dev/null +++ b/ios/RocketChat Watch App/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/ios/RocketChat Watch App/ContentView.swift b/ios/RocketChat Watch App/ContentView.swift new file mode 100644 index 000000000..b000a7e46 --- /dev/null +++ b/ios/RocketChat Watch App/ContentView.swift @@ -0,0 +1,17 @@ +import SwiftUI + +struct ContentView: View { + var body: some View { + VStack { + Image(systemName: "globe") + .imageScale(.large) + .foregroundStyle(.tint) + Text("Hello, world!") + } + .padding() + } +} + +#Preview { + ContentView() +} diff --git a/ios/RocketChat Watch App/Preview Content/Preview Assets.xcassets/Contents.json b/ios/RocketChat Watch App/Preview Content/Preview Assets.xcassets/Contents.json new file mode 100644 index 000000000..73c00596a --- /dev/null +++ b/ios/RocketChat Watch App/Preview Content/Preview Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/ios/RocketChat Watch App/RocketChatApp.swift b/ios/RocketChat Watch App/RocketChatApp.swift new file mode 100644 index 000000000..82663ac45 --- /dev/null +++ b/ios/RocketChat Watch App/RocketChatApp.swift @@ -0,0 +1,10 @@ +import SwiftUI + +@main +struct RocketChat_Watch_AppApp: App { + var body: some Scene { + WindowGroup { + ContentView() + } + } +} diff --git a/ios/RocketChatRN.xcodeproj/project.pbxproj b/ios/RocketChatRN.xcodeproj/project.pbxproj index 2aa158f3d..40415921a 100644 --- a/ios/RocketChatRN.xcodeproj/project.pbxproj +++ b/ios/RocketChatRN.xcodeproj/project.pbxproj @@ -74,6 +74,11 @@ 1EC6ACBB22CB9FC300A41C61 /* ShareRocketChatRN.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 1EC6ACB022CB9FC300A41C61 /* ShareRocketChatRN.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; 1EC6ACF622CBA01500A41C61 /* ShareRocketChatRN.m in Sources */ = {isa = PBXBuildFile; fileRef = 1EC6ACF522CBA01500A41C61 /* ShareRocketChatRN.m */; }; 1ED00BB12513E04400A1331F /* ReplyNotification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1ED00BB02513E04400A1331F /* ReplyNotification.swift */; }; + 1ED038912B507B4C00C007D4 /* RocketChatApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1ED038902B507B4C00C007D4 /* RocketChatApp.swift */; }; + 1ED038932B507B4C00C007D4 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1ED038922B507B4C00C007D4 /* ContentView.swift */; }; + 1ED038952B507B4D00C007D4 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 1ED038942B507B4D00C007D4 /* Assets.xcassets */; }; + 1ED038982B507B4D00C007D4 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 1ED038972B507B4D00C007D4 /* Preview Assets.xcassets */; }; + 1ED0389B2B507B4D00C007D4 /* Rocket.Chat.app in Embed Watch Content */ = {isa = PBXBuildFile; fileRef = 1ED0388E2B507B4B00C007D4 /* Rocket.Chat.app */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; 1ED59D4C22CBA77D00C54289 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 1ED59D4B22CBA77D00C54289 /* GoogleService-Info.plist */; }; 1EF5FBD1250C109E00614FEA /* Encryption.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EF5FBD0250C109E00614FEA /* Encryption.swift */; }; 1EFEB5982493B6640072EDC0 /* NotificationService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EFEB5972493B6640072EDC0 /* NotificationService.swift */; }; @@ -159,6 +164,13 @@ remoteGlobalIDString = 1EC6ACAF22CB9FC300A41C61; remoteInfo = ShareRocketChatRN; }; + 1ED038992B507B4D00C007D4 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1ED0388D2B507B4B00C007D4; + remoteInfo = "RocketChat Watch App"; + }; 1EFEB59A2493B6640072EDC0 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */; @@ -195,6 +207,17 @@ name = "Embed App Extensions"; runOnlyForDeploymentPostprocessing = 0; }; + 1ED0389C2B507B4F00C007D4 /* Embed Watch Content */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = "$(CONTENTS_FOLDER_PATH)/Watch"; + dstSubfolderSpec = 16; + files = ( + 1ED0389B2B507B4D00C007D4 /* Rocket.Chat.app in Embed Watch Content */, + ); + name = "Embed Watch Content"; + runOnlyForDeploymentPostprocessing = 0; + }; 7AAB3E48257E6A6E00707CF6 /* Embed App Extensions */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; @@ -259,6 +282,11 @@ 1EC6ACF522CBA01500A41C61 /* ShareRocketChatRN.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ShareRocketChatRN.m; sourceTree = ""; }; 1EC6AD6022CBA20C00A41C61 /* ShareRocketChatRN.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = ShareRocketChatRN.entitlements; sourceTree = ""; }; 1ED00BB02513E04400A1331F /* ReplyNotification.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReplyNotification.swift; sourceTree = ""; }; + 1ED0388E2B507B4B00C007D4 /* Rocket.Chat.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Rocket.Chat.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 1ED038902B507B4C00C007D4 /* RocketChatApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RocketChatApp.swift; sourceTree = ""; }; + 1ED038922B507B4C00C007D4 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = ""; }; + 1ED038942B507B4D00C007D4 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 1ED038972B507B4D00C007D4 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = ""; }; 1ED59D4B22CBA77D00C54289 /* GoogleService-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "GoogleService-Info.plist"; sourceTree = SOURCE_ROOT; }; 1EF5FBD0250C109E00614FEA /* Encryption.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Encryption.swift; sourceTree = ""; }; 1EFEB5952493B6640072EDC0 /* NotificationService.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = NotificationService.appex; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -326,6 +354,13 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 1ED0388B2B507B4B00C007D4 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; 1EFEB5922493B6640072EDC0 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -470,6 +505,25 @@ path = ShareRocketChatRN; sourceTree = ""; }; + 1ED0388F2B507B4C00C007D4 /* RocketChat Watch App */ = { + isa = PBXGroup; + children = ( + 1ED038902B507B4C00C007D4 /* RocketChatApp.swift */, + 1ED038922B507B4C00C007D4 /* ContentView.swift */, + 1ED038942B507B4D00C007D4 /* Assets.xcassets */, + 1ED038962B507B4D00C007D4 /* Preview Content */, + ); + path = "RocketChat Watch App"; + sourceTree = ""; + }; + 1ED038962B507B4D00C007D4 /* Preview Content */ = { + isa = PBXGroup; + children = ( + 1ED038972B507B4D00C007D4 /* Preview Assets.xcassets */, + ); + path = "Preview Content"; + sourceTree = ""; + }; 1EFEB5962493B6640072EDC0 /* NotificationService */ = { isa = PBXGroup; children = ( @@ -531,6 +585,7 @@ 832341AE1AAA6A7D00B99B32 /* Libraries */, 1EC6ACB122CB9FC300A41C61 /* ShareRocketChatRN */, 1EFEB5962493B6640072EDC0 /* NotificationService */, + 1ED0388F2B507B4C00C007D4 /* RocketChat Watch App */, 83CBBA001A601CBA00E9B192 /* Products */, BB4B591B5FC44CD9986DB2A6 /* Frameworks */, AF5E16F0398347E6A80C8CBE /* Resources */, @@ -549,6 +604,7 @@ 1EC6ACB022CB9FC300A41C61 /* ShareRocketChatRN.appex */, 1EFEB5952493B6640072EDC0 /* NotificationService.appex */, 7AAB3E52257E6A6E00707CF6 /* Rocket.Chat.app */, + 1ED0388E2B507B4B00C007D4 /* Rocket.Chat.app */, ); name = Products; sourceTree = ""; @@ -635,12 +691,14 @@ 7AAE9EB32891A0D20024F559 /* Upload source maps to Bugsnag */, 7F13D807CA5B7E43CE899DB3 /* [CP] Embed Pods Frameworks */, A1315A8FDA7B970DFBDB34C7 /* [CP] Copy Pods Resources */, + 1ED0389C2B507B4F00C007D4 /* Embed Watch Content */, ); buildRules = ( ); dependencies = ( 1EC6ACBA22CB9FC300A41C61 /* PBXTargetDependency */, 1EFEB59B2493B6640072EDC0 /* PBXTargetDependency */, + 1ED0389A2B507B4D00C007D4 /* PBXTargetDependency */, ); name = RocketChatRN; productName = "Hello World"; @@ -667,6 +725,23 @@ productReference = 1EC6ACB022CB9FC300A41C61 /* ShareRocketChatRN.appex */; productType = "com.apple.product-type.app-extension"; }; + 1ED0388D2B507B4B00C007D4 /* RocketChat Watch App */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1ED0389F2B507B4F00C007D4 /* Build configuration list for PBXNativeTarget "RocketChat Watch App" */; + buildPhases = ( + 1ED0388A2B507B4B00C007D4 /* Sources */, + 1ED0388B2B507B4B00C007D4 /* Frameworks */, + 1ED0388C2B507B4B00C007D4 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "RocketChat Watch App"; + productName = "RocketChat Watch App"; + productReference = 1ED0388E2B507B4B00C007D4 /* Rocket.Chat.app */; + productType = "com.apple.product-type.application"; + }; 1EFEB5942493B6640072EDC0 /* NotificationService */ = { isa = PBXNativeTarget; buildConfigurationList = 1EFEB5A02493B6640072EDC0 /* Build configuration list for PBXNativeTarget "NotificationService" */; @@ -720,7 +795,7 @@ isa = PBXProject; attributes = { DefaultBuildSystemTypeForWorkspace = Original; - LastSwiftUpdateCheck = 1150; + LastSwiftUpdateCheck = 1500; LastUpgradeCheck = 1130; ORGANIZATIONNAME = Facebook; TargetAttributes = { @@ -753,6 +828,11 @@ }; }; }; + 1ED0388D2B507B4B00C007D4 = { + CreatedOnToolsVersion = 15.0; + DevelopmentTeam = S6UPZG7ZR3; + ProvisioningStyle = Automatic; + }; 1EFEB5942493B6640072EDC0 = { CreatedOnToolsVersion = 11.5; DevelopmentTeam = S6UPZG7ZR3; @@ -782,6 +862,7 @@ 1EC6ACAF22CB9FC300A41C61 /* ShareRocketChatRN */, 1EFEB5942493B6640072EDC0 /* NotificationService */, 7AAB3E0D257E6A6E00707CF6 /* Rocket.Chat */, + 1ED0388D2B507B4B00C007D4 /* RocketChat Watch App */, ); }; /* End PBXProject section */ @@ -812,6 +893,15 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 1ED0388C2B507B4B00C007D4 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1ED038982B507B4D00C007D4 /* Preview Assets.xcassets in Resources */, + 1ED038952B507B4D00C007D4 /* Assets.xcassets in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 1EFEB5932493B6640072EDC0 /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -1391,6 +1481,15 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 1ED0388A2B507B4B00C007D4 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1ED038932B507B4C00C007D4 /* ContentView.swift in Sources */, + 1ED038912B507B4C00C007D4 /* RocketChatApp.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; 1EFEB5912493B6640072EDC0 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -1467,6 +1566,11 @@ target = 1EC6ACAF22CB9FC300A41C61 /* ShareRocketChatRN */; targetProxy = 1EC6ACB922CB9FC300A41C61 /* PBXContainerItemProxy */; }; + 1ED0389A2B507B4D00C007D4 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 1ED0388D2B507B4B00C007D4 /* RocketChat Watch App */; + targetProxy = 1ED038992B507B4D00C007D4 /* PBXContainerItemProxy */; + }; 1EFEB59B2493B6640072EDC0 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 1EFEB5942493B6640072EDC0 /* NotificationService */; @@ -1744,6 +1848,92 @@ }; name = Release; }; + 1ED0389D2B507B4F00C007D4 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CODE_SIGN_IDENTITY = "iPhone Developer"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DEVELOPMENT_ASSET_PATHS = "\"RocketChat Watch App/Preview Content\""; + DEVELOPMENT_TEAM = S6UPZG7ZR3; + ENABLE_PREVIEWS = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; + GCC_C_LANGUAGE_STANDARD = gnu17; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_KEY_UISupportedInterfaceOrientations = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown"; + INFOPLIST_KEY_WKCompanionAppBundleIdentifier = chat.rocket.reactnative; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LOCALIZATION_PREFERS_STRING_CATALOGS = YES; + MARKETING_VERSION = 1.0; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = chat.rocket.reactnative.watchkitapp; + PRODUCT_NAME = Rocket.Chat; + SDKROOT = watchos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 4; + WATCHOS_DEPLOYMENT_TARGET = 8.0; + }; + name = Debug; + }; + 1ED0389E2B507B4F00C007D4 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CODE_SIGN_IDENTITY = "iPhone Distribution"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; + CODE_SIGN_STYLE = Automatic; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEVELOPMENT_ASSET_PATHS = "\"RocketChat Watch App/Preview Content\""; + DEVELOPMENT_TEAM = S6UPZG7ZR3; + ENABLE_PREVIEWS = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; + GCC_C_LANGUAGE_STANDARD = gnu17; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_KEY_UISupportedInterfaceOrientations = "UIInterfaceOrientationPortrait UIInterfaceOrientationPortraitUpsideDown"; + INFOPLIST_KEY_WKCompanionAppBundleIdentifier = chat.rocket.reactnative; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LOCALIZATION_PREFERS_STRING_CATALOGS = YES; + MARKETING_VERSION = 1.0; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = chat.rocket.reactnative.watchkitapp; + PRODUCT_NAME = Rocket.Chat; + SDKROOT = watchos; + SKIP_INSTALL = YES; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 4; + WATCHOS_DEPLOYMENT_TARGET = 8.0; + }; + name = Release; + }; 1EFEB59D2493B6640072EDC0 /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = 8D9DA7CD79909E251F469FD5 /* Pods-defaults-NotificationService.debug.xcconfig */; @@ -2051,6 +2241,15 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + 1ED0389F2B507B4F00C007D4 /* Build configuration list for PBXNativeTarget "RocketChat Watch App" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1ED0389D2B507B4F00C007D4 /* Debug */, + 1ED0389E2B507B4F00C007D4 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; 1EFEB5A02493B6640072EDC0 /* Build configuration list for PBXNativeTarget "NotificationService" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/ios/RocketChatRN.xcodeproj/xcshareddata/xcschemes/RocketChat Watch.xcscheme b/ios/RocketChatRN.xcodeproj/xcshareddata/xcschemes/RocketChat Watch.xcscheme new file mode 100644 index 000000000..60e1d5a86 --- /dev/null +++ b/ios/RocketChatRN.xcodeproj/xcshareddata/xcschemes/RocketChat Watch.xcscheme @@ -0,0 +1,91 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +