diff --git a/Session.xcodeproj/project.pbxproj b/Session.xcodeproj/project.pbxproj index a6289c579..3c940a890 100644 --- a/Session.xcodeproj/project.pbxproj +++ b/Session.xcodeproj/project.pbxproj @@ -112,6 +112,7 @@ 7B4C75CD26BB92060000AC89 /* DeletedMessageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B4C75CC26BB92060000AC89 /* DeletedMessageView.swift */; }; 7B50D64D28AC7CF80086CCEC /* silence.aiff in Resources */ = {isa = PBXBuildFile; fileRef = 7B50D64C28AC7CF80086CCEC /* silence.aiff */; }; 7B521E0A29BFF84400C3C36A /* GroupLeavingJob.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B521E0929BFF84400C3C36A /* GroupLeavingJob.swift */; }; + 7B5802992AAEF1B50050EEB1 /* OpenGroupInvitationView_SwiftUI.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B5802982AAEF1B50050EEB1 /* OpenGroupInvitationView_SwiftUI.swift */; }; 7B7037432834B81F000DCF35 /* ReactionContainerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B7037422834B81F000DCF35 /* ReactionContainerView.swift */; }; 7B7037452834BCC0000DCF35 /* ReactionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B7037442834BCC0000DCF35 /* ReactionView.swift */; }; 7B7CB18E270D066F0079FF93 /* IncomingCallBanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B7CB18D270D066F0079FF93 /* IncomingCallBanner.swift */; }; @@ -1228,6 +1229,7 @@ 7B4C75CC26BB92060000AC89 /* DeletedMessageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DeletedMessageView.swift; sourceTree = ""; }; 7B50D64C28AC7CF80086CCEC /* silence.aiff */ = {isa = PBXFileReference; lastKnownFileType = audio.aiff; path = silence.aiff; sourceTree = ""; }; 7B521E0929BFF84400C3C36A /* GroupLeavingJob.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GroupLeavingJob.swift; sourceTree = ""; }; + 7B5802982AAEF1B50050EEB1 /* OpenGroupInvitationView_SwiftUI.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OpenGroupInvitationView_SwiftUI.swift; sourceTree = ""; }; 7B7037422834B81F000DCF35 /* ReactionContainerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReactionContainerView.swift; sourceTree = ""; }; 7B7037442834BCC0000DCF35 /* ReactionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReactionView.swift; sourceTree = ""; }; 7B7CB18D270D066F0079FF93 /* IncomingCallBanner.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IncomingCallBanner.swift; sourceTree = ""; }; @@ -2464,6 +2466,7 @@ 7BAFA7592AAEA281001DA43E /* LinkPreviewView_SwiftUI.swift */, B8D84EA225DF745A005A043E /* LinkPreviewState.swift */, B8EB20EF2640F7F000773E52 /* OpenGroupInvitationView.swift */, + 7B5802982AAEF1B50050EEB1 /* OpenGroupInvitationView_SwiftUI.swift */, 7B4C75CC26BB92060000AC89 /* DeletedMessageView.swift */, 7B7037422834B81F000DCF35 /* ReactionContainerView.swift */, 7B7037442834BCC0000DCF35 /* ReactionView.swift */, @@ -6170,6 +6173,7 @@ FDF848F529413EEC007DCAE5 /* SessionCell+Styling.swift in Sources */, 7BFD1A8A2745C4F000FB91B9 /* Permissions.swift in Sources */, B85357BF23A1AE0800AAF6CD /* SeedReminderView.swift in Sources */, + 7B5802992AAEF1B50050EEB1 /* OpenGroupInvitationView_SwiftUI.swift in Sources */, FD716E6C28505E1C00C96BF4 /* MessageRequestsViewModel.swift in Sources */, C35E8AAE2485E51D00ACB629 /* IP2Country.swift in Sources */, B835249B25C3AB650089A44F /* VisibleMessageCell.swift in Sources */, diff --git a/Session/Conversations/Message Cells/Content Views/LinkPreviewView_SwiftUI.swift b/Session/Conversations/Message Cells/Content Views/LinkPreviewView_SwiftUI.swift index 7b33df46e..6257d56c1 100644 --- a/Session/Conversations/Message Cells/Content Views/LinkPreviewView_SwiftUI.swift +++ b/Session/Conversations/Message Cells/Content Views/LinkPreviewView_SwiftUI.swift @@ -1,7 +1,7 @@ // Copyright © 2023 Rangeproof Pty Ltd. All rights reserved. import SwiftUI -import NVActivityIndicatorView +import NVActivityIndicatorView // TODO: Loading view import SessionUIKit import SessionMessagingKit diff --git a/Session/Conversations/Message Cells/Content Views/OpenGroupInvitationView_SwiftUI.swift b/Session/Conversations/Message Cells/Content Views/OpenGroupInvitationView_SwiftUI.swift new file mode 100644 index 000000000..55746c988 --- /dev/null +++ b/Session/Conversations/Message Cells/Content Views/OpenGroupInvitationView_SwiftUI.swift @@ -0,0 +1,89 @@ +// Copyright © 2023 Rangeproof Pty Ltd. All rights reserved. + +import SwiftUI +import SessionUIKit +import SessionMessagingKit + +struct OpenGroupInvitationView_SwiftUI: View { + private let name: String + private let url: String + private let textColor: ThemeValue + private let isOutgoing: Bool + + private static let iconSize: CGFloat = 24 + private static let iconImageViewSize: CGFloat = 48 + + init( + name: String, + url: String, + textColor: ThemeValue, + isOutgoing: Bool + ) { + self.name = name + self.url = { + if let range = url.range(of: "?public_key=") { + return String(url[..