This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
enum MailClient: CaseIterable { | |
case gmail | |
case outlook | |
case yahoo | |
case spark | |
case apple | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import UIKit | |
import AVFoundation | |
extension AVAsset { | |
func videoOrientation() -> (orientation: UIInterfaceOrientation, device: AVCaptureDevice.Position) { | |
var orientation: UIInterfaceOrientation = .unknown | |
var device: AVCaptureDevice.Position = .unspecified | |
let tracks: [AVAssetTrack] = self.tracks(withMediaType: .video) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import Foundation | |
import TwilioAccessManager | |
import TwilioChatClient | |
class TwilioChatManager: NSObject { | |
//MARK: Singleton instance | |
public static let manager = TwilioChatManager() | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import Foundation | |
import UIKit | |
import TwilioVideo | |
class TwilioVideoManager: NSObject { | |
//MARK: Static instance to class | |
public static let shared = TwilioVideoManager() | |
//MARK: TwilioVideo SDK components |