chore(linter/swift): add shorthand_optional_binding rule (#3456)

* chore(linter/swift): add `shorthand_optional_binding` rule

* lint code
This commit is contained in:
Krzysztof Moch
2024-01-04 20:16:23 +01:00
committed by GitHub
parent 481cc71eda
commit 2ed3949307
10 changed files with 56 additions and 55 deletions

View File

@@ -24,7 +24,7 @@
}
func requestAds() {
guard let _video = _video else { return }
guard let _video else { return }
// Create ad display container for ad rendering.
let adDisplayContainer = IMAAdDisplayContainer(adContainer: _video, viewController: _video.reactViewController())
@@ -57,7 +57,7 @@
// MARK: - IMAAdsLoaderDelegate
func adsLoader(_: IMAAdsLoader, adsLoadedWith adsLoadedData: IMAAdsLoadedData) {
guard let _video = _video else { return }
guard let _video else { return }
// Grab the instance of the IMAAdsManager and set yourself as the delegate.
adsManager = adsLoadedData.adsManager
adsManager?.delegate = self
@@ -81,7 +81,7 @@
// MARK: - IMAAdsManagerDelegate
func adsManager(_ adsManager: IMAAdsManager, didReceive event: IMAAdEvent) {
guard let _video = _video else { return }
guard let _video else { return }
// Mute ad if the main player is muted
if _video.isMuted() {
adsManager.volume = 0
@@ -117,7 +117,7 @@
print("AdsManager error: " + error.message!)
}
guard let _video = _video else { return }
guard let _video else { return }
if _video.onReceiveAdEvent != nil {
_video.onReceiveAdEvent?([

View File

@@ -18,13 +18,13 @@ import React
}
func pictureInPictureControllerDidStartPictureInPicture(_: AVPictureInPictureController) {
guard let _onPictureInPictureStatusChanged = _onPictureInPictureStatusChanged else { return }
guard let _onPictureInPictureStatusChanged else { return }
_onPictureInPictureStatusChanged()
}
func pictureInPictureControllerDidStopPictureInPicture(_: AVPictureInPictureController) {
guard let _onPictureInPictureStatusChanged = _onPictureInPictureStatusChanged else { return }
guard let _onPictureInPictureStatusChanged else { return }
_onPictureInPictureStatusChanged()
}
@@ -33,7 +33,7 @@ import React
_: AVPictureInPictureController,
restoreUserInterfaceForPictureInPictureStopWithCompletionHandler completionHandler: @escaping (Bool) -> Void
) {
guard let _onRestoreUserInterfaceForPictureInPictureStop = _onRestoreUserInterfaceForPictureInPictureStop else { return }
guard let _onRestoreUserInterfaceForPictureInPictureStop else { return }
_onRestoreUserInterfaceForPictureInPictureStop()
@@ -41,7 +41,7 @@ import React
}
func setRestoreUserInterfaceForPIPStopCompletionHandler(_ restore: Bool) {
guard let _restoreUserInterfaceForPIPStopCompletionHandler = _restoreUserInterfaceForPIPStopCompletionHandler else { return }
guard let _restoreUserInterfaceForPIPStopCompletionHandler else { return }
_restoreUserInterfaceForPIPStopCompletionHandler(restore)
self._restoreUserInterfaceForPIPStopCompletionHandler = nil
}
@@ -61,7 +61,7 @@ import React
}
_isActive = isActive
guard let _pipController = _pipController else { return }
guard let _pipController else { return }
if _isActive && !_pipController.isPictureInPictureActive {
DispatchQueue.main.async {

View File

@@ -98,7 +98,7 @@ class RCTPlayerObserver: NSObject, AVPlayerItemMetadataOutputPushDelegate {
private var _playerViewControllerOverlayFrameObserver: NSKeyValueObservation?
deinit {
if let _handlers = _handlers {
if let _handlers {
NotificationCenter.default.removeObserver(_handlers)
}
}
@@ -206,7 +206,7 @@ class RCTPlayerObserver: NSObject, AVPlayerItemMetadataOutputPushDelegate {
}
func replaceTimeObserverIfSet(_ newUpdateInterval: Float64? = nil) {
if let newUpdateInterval = newUpdateInterval {
if let newUpdateInterval {
_progressUpdateInterval = newUpdateInterval
}
if _timeObserver != nil {

View File

@@ -159,12 +159,12 @@ enum RCTPlayerOperations {
mediaOption = group.options[index]
}
}
} else if let group = group { // default. invalid type or "system"
} else if let group { // default. invalid type or "system"
player?.currentItem?.selectMediaOptionAutomatically(in: group)
return
}
if let group = group {
if let group {
// If a match isn't found, option will be nil and text tracks will be disabled
player?.currentItem?.select(mediaOption, in: group)
}
@@ -206,7 +206,7 @@ enum RCTPlayerOperations {
options = .duckOthers
}
if let category = category, let options = options {
if let category, let options {
do {
try audioSession.setCategory(category, options: options)
} catch {
@@ -229,13 +229,13 @@ enum RCTPlayerOperations {
}
#endif
}
} else if let category = category, options == nil {
} else if let category, options == nil {
do {
try audioSession.setCategory(category)
} catch {
debugPrint("[RCTPlayerOperations] Problem setting up AVAudioSession category. Error: \(error).")
}
} else if category == nil, let options = options {
} else if category == nil, let options {
do {
try audioSession.setCategory(audioSession.category, options: options)
} catch {

View File

@@ -113,7 +113,7 @@ class RCTResourceLoaderDelegate: NSObject, AVAssetResourceLoaderDelegate, URLSes
func handleEmbeddedKey(_ loadingRequest: AVAssetResourceLoadingRequest!) -> Bool {
guard let url = loadingRequest.request.url,
let _localSourceEncryptionKeyScheme = _localSourceEncryptionKeyScheme,
let _localSourceEncryptionKeyScheme,
let persistentKeyData = RCTVideoUtils.extractDataFromCustomSchemeUrl(from: url, scheme: _localSourceEncryptionKeyScheme)
else {
return false
@@ -139,7 +139,7 @@ class RCTResourceLoaderDelegate: NSObject, AVAssetResourceLoaderDelegate, URLSes
_loadingRequests[requestKey] = loadingRequest
guard let _drm = _drm, let drmType = _drm.type, drmType == "fairplay" else {
guard let _drm, let drmType = _drm.type, drmType == "fairplay" else {
return finishLoadingWithError(error: RCTVideoErrorHandler.noDRMData, licenseUrl: requestKey)
}

View File

@@ -48,7 +48,7 @@ enum RCTVideoDRM {
var request = URLRequest(url: URL(string: licenseServer)!)
request.httpMethod = "POST"
if let headers = headers {
if let headers {
for item in headers {
guard let key = item.key as? String, let value = item.value as? String else {
continue
@@ -90,7 +90,7 @@ enum RCTVideoDRM {
reject(spcError)
}
guard let spcData = spcData else {
guard let spcData else {
reject(RCTVideoErrorHandler.noSPC)
return
}
@@ -101,7 +101,7 @@ enum RCTVideoDRM {
static func createCertificateData(certificateStringUrl: String?, base64Certificate: Bool?) -> Promise<Data> {
return Promise<Data>(on: .global()) { fulfill, reject in
guard let certificateStringUrl = certificateStringUrl,
guard let certificateStringUrl,
let certificateURL = URL(string: certificateStringUrl.addingPercentEncoding(withAllowedCharacters: .urlFragmentAllowed) ?? "") else {
reject(RCTVideoErrorHandler.noCertificateURL)
return
@@ -115,7 +115,7 @@ enum RCTVideoDRM {
}
} catch {}
guard let certificateData = certificateData else {
guard let certificateData else {
reject(RCTVideoErrorHandler.noCertificateData)
return
}
@@ -130,7 +130,7 @@ enum RCTVideoDRM {
return RCTVideoDRM.createCertificateData(certificateStringUrl: certificateUrl, base64Certificate: base64Certificate)
.then { certificateData -> Promise<Data> in
guard let contentIdData = contentIdData else {
guard let contentIdData else {
throw RCTVideoError.invalidContentId as! Error
}
@@ -167,7 +167,7 @@ enum RCTVideoDRM {
)
}
.then { spcData -> Promise<Data> in
guard let licenseServer = licenseServer else {
guard let licenseServer else {
throw RCTVideoError.noLicenseServerURL as! Error
}
return RCTVideoDRM.fetchLicense(

View File

@@ -12,7 +12,7 @@ enum RCTVideoUtils {
* \returns The playable duration of the current player item in seconds.
*/
static func calculatePlayableDuration(_ player: AVPlayer?, withSource source: VideoSource?) -> NSNumber {
guard let player = player,
guard let player,
let video: AVPlayerItem = player.currentItem,
video.status == AVPlayerItem.Status.readyToPlay else {
return 0
@@ -31,7 +31,7 @@ enum RCTVideoUtils {
}
}
if let effectiveTimeRange = effectiveTimeRange {
if let effectiveTimeRange {
let playableDuration: Float64 = CMTimeGetSeconds(CMTimeRangeGetEnd(effectiveTimeRange))
if playableDuration > 0 {
if source?.cropStart != nil {
@@ -95,7 +95,7 @@ enum RCTVideoUtils {
}
static func getAudioTrackInfo(_ player: AVPlayer?) -> [AnyObject]! {
guard let player = player else {
guard let player else {
return []
}
@@ -124,7 +124,7 @@ enum RCTVideoUtils {
}
static func getTextTrackInfo(_ player: AVPlayer?) -> [TextTrack]! {
guard let player = player else {
guard let player else {
return []
}
@@ -158,7 +158,7 @@ enum RCTVideoUtils {
}
static func base64DataFromBase64String(base64String: String?) -> Data? {
if let base64String = base64String {
if let base64String {
return Data(base64Encoded: base64String)
}
return nil
@@ -216,7 +216,7 @@ enum RCTVideoUtils {
let videoAsset: AVAssetTrack! = asset.tracks(withMediaType: AVMediaType.video).first
var validTextTracks: [TextTrack] = []
if let textTracks = textTracks, !textTracks.isEmpty {
if let textTracks, !textTracks.isEmpty {
for i in 0 ..< textTracks.count {
var textURLAsset: AVURLAsset!
let textUri: String = textTracks[i].uri