diff --git a/LeadKit/LeadKit/Info.plist b/LeadKit/LeadKit/Info.plist
index e1dc5748..d68312bc 100644
--- a/LeadKit/LeadKit/Info.plist
+++ b/LeadKit/LeadKit/Info.plist
@@ -15,7 +15,7 @@
CFBundlePackageType
FMWK
CFBundleShortVersionString
- 0.3.3
+ 0.3.4
CFBundleSignature
????
CFBundleVersion
diff --git a/LeadKit/LeadKit/Protocols/BaseViewModel.swift b/LeadKit/LeadKit/Protocols/BaseViewModel.swift
index 0df125d9..a6521eff 100644
--- a/LeadKit/LeadKit/Protocols/BaseViewModel.swift
+++ b/LeadKit/LeadKit/Protocols/BaseViewModel.swift
@@ -22,6 +22,6 @@
import Foundation
-protocol BaseViewModel {
+public protocol BaseViewModel {
// Nothing
}
diff --git a/LeadKit/LeadKit/Protocols/ConfigurableController.swift b/LeadKit/LeadKit/Protocols/ConfigurableController.swift
index e6934b4a..0dd264b1 100644
--- a/LeadKit/LeadKit/Protocols/ConfigurableController.swift
+++ b/LeadKit/LeadKit/Protocols/ConfigurableController.swift
@@ -23,49 +23,54 @@
import Foundation
import UIKit
-protocol ConfigurableController {
+public protocol ConfigurableController {
associatedtype ViewModelT
- var viewModel: ViewModelT { get }
+ public var viewModel: ViewModelT { get }
- func bindViews(with _: ViewModelT)
+ public func bindViews()
- func addViews()
+ public func addViews()
- func setAppearance()
+ public func setAppearance()
- func configureBarButtons()
+ public func configureBarButtons()
- func localize()
+ public func localize()
- func initialLoadView()
+ public func initialLoadView()
}
extension ConfigurableController where Self: UIViewController {
- func addViews() {
+ public func bindViews() {
// nothing
}
- func setAppearance() {
+ public func addViews() {
// nothing
}
- func configureBarButtons() {
+ public func setAppearance() {
// nothing
}
- func localize() {
+ public func configureBarButtons() {
// nothing
}
- func initialLoadView() {
+ public func localize() {
+ // nothing
+ }
+
+ public func initialLoadView() {
addViews()
setAppearance()
configureBarButtons()
localize()
+ bindViews()
}
}
diff --git a/LeadKit/LeadKit/Protocols/ModuleConfigurator.swift b/LeadKit/LeadKit/Protocols/ModuleConfigurator.swift
index 1fe158f1..177f936a 100644
--- a/LeadKit/LeadKit/Protocols/ModuleConfigurator.swift
+++ b/LeadKit/LeadKit/Protocols/ModuleConfigurator.swift
@@ -20,9 +20,9 @@
// THE SOFTWARE.
//
-protocol ModuleConfigurator {
+public protocol ModuleConfigurator {
associatedtype ViewControllerT
- func configure(input: ViewControllerT)
+ public func configure(input: ViewControllerT)
}
diff --git a/LeadKit/LeadKit/Protocols/StoryboardProtocol.swift b/LeadKit/LeadKit/Protocols/StoryboardProtocol.swift
index c12c1451..3fe4507c 100644
--- a/LeadKit/LeadKit/Protocols/StoryboardProtocol.swift
+++ b/LeadKit/LeadKit/Protocols/StoryboardProtocol.swift
@@ -50,3 +50,15 @@ public protocol StoryboardProtocol {
static func instantiateViewController(_: ViewControllerIdentifier) -> UIViewController
}
+
+public extension StoryboardProtocol {
+
+ public static func instantiate(_ identificator: Self.ViewControllerIdentifier) -> T {
+ guard let controller = instantiateViewController(identificator) as? T else {
+ assertionFailure("\(T.self) not created")
+ return T()
+ }
+ return controller
+ }
+
+}