Added SwiftUI support

This commit is contained in:
Doron Katz
2020-01-28 10:39:04 -08:00
parent f9282dcef2
commit e6fcda22fc
3 changed files with 45 additions and 1 deletions
@@ -23,6 +23,8 @@
76D7F24821BEB18A004B74CB /* Array+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76D7F24321BEB18A004B74CB /* Array+Extensions.swift */; };
76D7F24921BEB18A004B74CB /* UIView+Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76D7F24421BEB18A004B74CB /* UIView+Extensions.swift */; };
76EAA84F1E93EDCD009A41DA /* LicenceFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 76EAA84C1E93EDCD009A41DA /* LicenceFile.swift */; };
C415E47723E0B3AE002F960D /* OpenSourceViewController+UISwift.swift in Sources */ = {isa = PBXBuildFile; fileRef = C415E47623E0B3AE002F960D /* OpenSourceViewController+UISwift.swift */; };
C415E47823E0B3AE002F960D /* OpenSourceViewController+UISwift.swift in Sources */ = {isa = PBXBuildFile; fileRef = C415E47623E0B3AE002F960D /* OpenSourceViewController+UISwift.swift */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@@ -55,6 +57,7 @@
76EAA84C1E93EDCD009A41DA /* LicenceFile.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = LicenceFile.swift; path = Sources/Model/LicenceFile.swift; sourceTree = "<group>"; };
AD2FAA261CD0B6D800659CF4 /* OpenSourceController.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = OpenSourceController.plist; sourceTree = "<group>"; };
AD2FAA281CD0B6E100659CF4 /* OpenSourceControllerTests.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = OpenSourceControllerTests.plist; sourceTree = "<group>"; };
C415E47623E0B3AE002F960D /* OpenSourceViewController+UISwift.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "OpenSourceViewController+UISwift.swift"; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@@ -137,6 +140,7 @@
isa = PBXGroup;
children = (
76229B7F2180ADA800A61697 /* OpenSourceController.swift */,
C415E47623E0B3AE002F960D /* OpenSourceViewController+UISwift.swift */,
76229B7E2180ADA800A61697 /* OpenSourceControllerConfig.swift */,
76229B7B2180AD8E00A61697 /* Loader */,
76229B702180AD7700A61697 /* Model */,
@@ -241,7 +245,7 @@
52D6D9851BEFF229002C0205 = {
CreatedOnToolsVersion = 7.1;
DevelopmentTeam = XEHEC9B46E;
LastSwiftMigration = "";
LastSwiftMigration = 1130;
};
};
};
@@ -295,6 +299,7 @@
76D7F24721BEB18A004B74CB /* UIViewController+Extensions.swift in Sources */,
76EAA84F1E93EDCD009A41DA /* LicenceFile.swift in Sources */,
76D7F24521BEB18A004B74CB /* UITableView+Extensions.swift in Sources */,
C415E47723E0B3AE002F960D /* OpenSourceViewController+UISwift.swift in Sources */,
769FD9D421871DEC00FB5A53 /* OpenSourceTableViewCell.swift in Sources */,
76D7F24821BEB18A004B74CB /* Array+Extensions.swift in Sources */,
76229B812180ADA800A61697 /* OpenSourceController.swift in Sources */,
@@ -308,6 +313,7 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
C415E47823E0B3AE002F960D /* OpenSourceViewController+UISwift.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
+34
View File
@@ -0,0 +1,34 @@
//
// OpenSourceViewController+UISwift.swift
// OpenSourceController
//
// Created by Doron Katz on 1/28/20.
// Copyright © 2020 OpenSourceController. All rights reserved.
//
#if canImport(SwiftUI)
import SwiftUI
#endif
extension OpenSourceViewController{
public struct OpenSourceView: UIViewControllerRepresentable {
@available(iOS 13, *)
public func updateUIViewController(_ uiViewController: OpenSourceViewController, context: UIViewControllerRepresentableContext<OpenSourceView>) {
//
}
@available(iOS 13, *)
public func makeUIViewController(context: UIViewControllerRepresentableContext<OpenSourceView>) -> OpenSourceViewController {
let openSourceVC = OpenSourceViewController(licences:
[LicenceFile(title: "MovieSwiftUI",
url: "https://raw.githubusercontent.com/Dimillian/MovieSwiftUI/master/LICENSE"),
],
showCloseButton: true,
configuration: OpenSourceControllerConfig(),
licenceLoader: LicenceLoader())
return openSourceVC
}
}
}
+4
View File
@@ -5,6 +5,9 @@
// Created by Florian Gabach on 05/02/2017.
import UIKit
#if canImport(SwiftUI)
import SwiftUI
#endif
open class OpenSourceController: NSObject {
@@ -43,3 +46,4 @@ open class OpenSourceController: NSObject {
navigationController.pushViewController(licenceController, animated: true)
}
}