From 67d66555d5f9bc40d1e9a6a3505715f81c400ec5 Mon Sep 17 00:00:00 2001 From: Christoph Wendt Date: Tue, 6 Aug 2019 16:20:11 +0200 Subject: [PATCH 1/8] chore: adjust Package.swift to produce lib (draft) --- Package.swift | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Package.swift b/Package.swift index a095c67..bbf1758 100644 --- a/Package.swift +++ b/Package.swift @@ -8,9 +8,20 @@ let package = Package( .package(url: "https://github.com/Realm/SwiftLint", from: "0.34.0"), .package(url: "https://github.com/orta/Komondor", from: "1.0.4"), .package(url: "https://github.com/eneko/SourceDocs.git", from: "0.5.1"), + .package(url: "https://github.com/chrs1885/Capable.git", from: "1.0.1"), + .package(url: "https://github.com/Quick/Quick.git", from: "2.1.0"), + .package(url: "https://github.com/Quick/Nimble.git", from: "8.0.2") + .package(url: "https://github.com/pointfreeco/swift-snapshot-testing.git", from: "1.5.0"), + ], + products: [ + .library( + name: "SheetyColors", + targets: ["SheetyColors"]) ], targets: [ .target(name: "SheetyColors_Example", dependencies: [], path: "Example", sources: ["SheetyColors/SheetType.swift"]), + .target(name: "SheetyColors", dependencies: ["Capable"], path: "SheetyColors"), + .testTarget(name: "SheetyColors_Tests", dependencies: ["SheetyColors", "Quick", "Nimble", "SnapshotTesting"], path: "Example/Tests"), ] ) From c06dde8c9e93207a38e945d75ad5dde680cb3546 Mon Sep 17 00:00:00 2001 From: Christoph Wendt Date: Tue, 25 Feb 2020 22:27:20 +0100 Subject: [PATCH 2/8] add swiftLanguageVersions --- Package.swift | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Package.swift b/Package.swift index bbf1758..fbe63be 100644 --- a/Package.swift +++ b/Package.swift @@ -8,7 +8,7 @@ let package = Package( .package(url: "https://github.com/Realm/SwiftLint", from: "0.34.0"), .package(url: "https://github.com/orta/Komondor", from: "1.0.4"), .package(url: "https://github.com/eneko/SourceDocs.git", from: "0.5.1"), - .package(url: "https://github.com/chrs1885/Capable.git", from: "1.0.1"), + .package(url: "https://github.com/chrs1885/Capable.git", from: "1.1.3"), .package(url: "https://github.com/Quick/Quick.git", from: "2.1.0"), .package(url: "https://github.com/Quick/Nimble.git", from: "8.0.2") .package(url: "https://github.com/pointfreeco/swift-snapshot-testing.git", from: "1.5.0"), @@ -22,6 +22,9 @@ let package = Package( .target(name: "SheetyColors_Example", dependencies: [], path: "Example", sources: ["SheetyColors/SheetType.swift"]), .target(name: "SheetyColors", dependencies: ["Capable"], path: "SheetyColors"), .testTarget(name: "SheetyColors_Tests", dependencies: ["SheetyColors", "Quick", "Nimble", "SnapshotTesting"], path: "Example/Tests"), + ], + swiftLanguageVersions: [ + .v5, ] ) From 7e1743b30665a4604792f3004d06bdf4881597eb Mon Sep 17 00:00:00 2001 From: Christoph Wendt Date: Tue, 25 Feb 2020 22:51:04 +0100 Subject: [PATCH 3/8] docs: add spm integration example to readme file --- README.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 5995011..f713936 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ To run the example project from Xcode, clone the repo, and run `pod install` fro ## Installation -There are currently three different ways to integrate **SheetyColors** into your apps. +There are currently four different ways to integrate **SheetyColors** into your apps. ### CocoaPods @@ -43,6 +43,14 @@ target 'MyApp' do end ``` +### Swift Package Manager + +```ruby +dependencies: [ + .package(url: "https://github.com/chrs1885/SheetyColors.git", from: "1.0.2") +] +``` + ### Carthage ```ruby From 3ad23348e397a27b8bcf76f4b3dca0760254cf23 Mon Sep 17 00:00:00 2001 From: Christoph Wendt Date: Tue, 25 Feb 2020 22:51:19 +0100 Subject: [PATCH 4/8] docs: update podspec --- Example/Podfile.lock | 14 +++++++------- SheetyColors.podspec | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Example/Podfile.lock b/Example/Podfile.lock index ba39926..55efc94 100644 --- a/Example/Podfile.lock +++ b/Example/Podfile.lock @@ -1,9 +1,9 @@ PODS: - - Capable/Colors (1.0.1) + - Capable/Colors (1.1.3) - Nimble (8.0.2) - Quick (2.1.0) - - SheetyColors (1.0.0): - - Capable/Colors (~> 1.0.0) + - SheetyColors (1.0.2): + - Capable/Colors (~> 1.1) - SnapshotTesting (1.5.0) DEPENDENCIES: @@ -13,7 +13,7 @@ DEPENDENCIES: - SnapshotTesting (= 1.5.0) SPEC REPOS: - https://github.com/cocoapods/specs.git: + trunk: - Capable - Nimble - Quick @@ -24,12 +24,12 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - Capable: f102b9cb3167470fac31d07d175b95ecb4f9ca9a + Capable: 1568ec5d4dde7daf0925ea327463ee333c9f7341 Nimble: 622629381bda1dd5678162f21f1368cec7cbba60 Quick: 4be43f6634acfa727dd106bdf3929ce125ffa79d - SheetyColors: dbf4b6b427d10f0316a2237b8a00cd8d576466dd + SheetyColors: 1d0d56e5ee7923b3f12eea59a2815eae826479ee SnapshotTesting: 9ca1d80f6322509a035856170c11d0571b1f7171 PODFILE CHECKSUM: 4d25efd32952718fd1b46a2d61df3cf0534d24cf -COCOAPODS: 1.7.5 +COCOAPODS: 1.8.4 diff --git a/SheetyColors.podspec b/SheetyColors.podspec index 57fd778..2a71a52 100644 --- a/SheetyColors.podspec +++ b/SheetyColors.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'SheetyColors' - s.version = '1.0.1' + s.version = '1.0.2' s.summary = 'An action sheet styled color picker for iOS.' s.description = <<-DESC @@ -15,7 +15,7 @@ The SheetyColors color picker is based on UIKit's UIAlertController. Therefore, s.social_media_url = 'https://twitter.com/chr_wendt' s.ios.deployment_target = '11.0' - s.dependency 'Capable/Colors', '~> 1.0' + s.dependency 'Capable/Colors', '~> 1.1' s.source_files = 'SheetyColors/Classes/**/*.{swift}' s.resources = 'SheetyColors/Classes/**/*.{xcassets,xib}' From 8d4657d7adbca18936b3bb46942d6cf01c3b5c30 Mon Sep 17 00:00:00 2001 From: Christoph Wendt Date: Tue, 25 Feb 2020 22:51:46 +0100 Subject: [PATCH 5/8] fix: package.swift --- Package.swift | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/Package.swift b/Package.swift index fbe63be..fe068f9 100644 --- a/Package.swift +++ b/Package.swift @@ -3,20 +3,24 @@ import PackageDescription let package = Package( name: "SheetyColors", - dependencies: [ - .package(url: "https://github.com/nicklockwood/SwiftFormat", from: "0.40.11"), - .package(url: "https://github.com/Realm/SwiftLint", from: "0.34.0"), - .package(url: "https://github.com/orta/Komondor", from: "1.0.4"), - .package(url: "https://github.com/eneko/SourceDocs.git", from: "0.5.1"), - .package(url: "https://github.com/chrs1885/Capable.git", from: "1.1.3"), - .package(url: "https://github.com/Quick/Quick.git", from: "2.1.0"), - .package(url: "https://github.com/Quick/Nimble.git", from: "8.0.2") - .package(url: "https://github.com/pointfreeco/swift-snapshot-testing.git", from: "1.5.0"), + platforms: [ + .iOS(.v11), ], products: [ .library( name: "SheetyColors", - targets: ["SheetyColors"]) + targets: ["SheetyColors"] + ) + ], + dependencies: [ + .package(url: "https://github.com/chrs1885/Capable.git", from: "1.1.3"), + .package(url: "https://github.com/pointfreeco/swift-snapshot-testing.git", from: "1.5.0"), + .package(url: "https://github.com/Quick/Quick.git", from: "2.1.0"), + .package(url: "https://github.com/Quick/Nimble.git", from: "8.0.4"), + .package(url: "https://github.com/nicklockwood/SwiftFormat", from: "0.40.13"), + .package(url: "https://github.com/Realm/SwiftLint", from: "0.35.0"), + .package(url: "https://github.com/orta/Komondor", from: "1.0.4"), + .package(url: "https://github.com/eneko/SourceDocs.git", from: "0.5.1"), ], targets: [ .target(name: "SheetyColors_Example", dependencies: [], path: "Example", sources: ["SheetyColors/SheetType.swift"]), From 6a056ec05d4ce3d64bad6b0d05f596d8606ebcf4 Mon Sep 17 00:00:00 2001 From: Christoph Wendt Date: Wed, 26 Feb 2020 21:47:58 +0100 Subject: [PATCH 6/8] chore: add missing imports --- .../Common/Models/Extensions/CGFloat+constrainToRange.swift | 2 +- .../Common/ViewModels/SheetyColorsViewModelProtocol.swift | 1 + SheetyColors/Classes/Grayscale/Models/GrayscaleColor.swift | 2 ++ .../Classes/Grayscale/ViewModels/GrayscaleViewModel.swift | 4 ++++ SheetyColors/Classes/HSB/Models/HSBAColor.swift | 2 +- SheetyColors/Classes/HSB/ViewModels/HSBViewModel.swift | 2 ++ SheetyColors/Classes/RGB/Models/RGBAColor.swift | 2 +- SheetyColors/Classes/RGB/ViewModels/RGBViewModel.swift | 3 +++ 8 files changed, 15 insertions(+), 3 deletions(-) diff --git a/SheetyColors/Classes/Common/Models/Extensions/CGFloat+constrainToRange.swift b/SheetyColors/Classes/Common/Models/Extensions/CGFloat+constrainToRange.swift index 5e90a60..14d38fe 100644 --- a/SheetyColors/Classes/Common/Models/Extensions/CGFloat+constrainToRange.swift +++ b/SheetyColors/Classes/Common/Models/Extensions/CGFloat+constrainToRange.swift @@ -5,7 +5,7 @@ // Created by Christoph Wendt on 25.04.19. // -import Foundation +import CoreGraphics extension CGFloat { mutating func constrainTo(min: CGFloat = 0.0, max: CGFloat) { diff --git a/SheetyColors/Classes/Common/ViewModels/SheetyColorsViewModelProtocol.swift b/SheetyColors/Classes/Common/ViewModels/SheetyColorsViewModelProtocol.swift index c3ff0fd..2c6ee0b 100644 --- a/SheetyColors/Classes/Common/ViewModels/SheetyColorsViewModelProtocol.swift +++ b/SheetyColors/Classes/Common/ViewModels/SheetyColorsViewModelProtocol.swift @@ -5,6 +5,7 @@ // Created by Christoph Wendt on 08.02.19. // +import CoreGraphics protocol SheetyColorsViewModelProtocol { var viewModelDelegate: SheetyColorsViewModelDelegate? { get set } var hasTextOrMessage: Bool { get } diff --git a/SheetyColors/Classes/Grayscale/Models/GrayscaleColor.swift b/SheetyColors/Classes/Grayscale/Models/GrayscaleColor.swift index ef3a754..b97e000 100644 --- a/SheetyColors/Classes/Grayscale/Models/GrayscaleColor.swift +++ b/SheetyColors/Classes/Grayscale/Models/GrayscaleColor.swift @@ -5,7 +5,9 @@ // Created by Christoph Wendt on 25.04.19. // +import Foundation import CoreGraphics +import UIKit /// A model class representing grayscale colors. The white component can hold values between 0.0 and 255.0 while the alphavalue has a maximum value of 100.0. public class GrayscaleColor: NSObject, NSCopying, Codable { diff --git a/SheetyColors/Classes/Grayscale/ViewModels/GrayscaleViewModel.swift b/SheetyColors/Classes/Grayscale/ViewModels/GrayscaleViewModel.swift index b88ff08..ac861f0 100644 --- a/SheetyColors/Classes/Grayscale/ViewModels/GrayscaleViewModel.swift +++ b/SheetyColors/Classes/Grayscale/ViewModels/GrayscaleViewModel.swift @@ -5,6 +5,10 @@ // Created by Christoph Wendt on 25.04.19. // +import Foundation +import CoreGraphics +import UIKit + private enum SliderType: Int, CaseIterable { case white, alpha } diff --git a/SheetyColors/Classes/HSB/Models/HSBAColor.swift b/SheetyColors/Classes/HSB/Models/HSBAColor.swift index 280e8e9..335052a 100644 --- a/SheetyColors/Classes/HSB/Models/HSBAColor.swift +++ b/SheetyColors/Classes/HSB/Models/HSBAColor.swift @@ -5,7 +5,7 @@ // Created by Christoph Wendt on 20.04.19. // -import CoreGraphics +import UIKit /// A model class representing HSBA colors. The hue component can hold values between 0.0 and 360.0 while the saturation and brightnes values have a maximum value of 100.0. public class HSBAColor: NSObject, NSCopying, Codable { diff --git a/SheetyColors/Classes/HSB/ViewModels/HSBViewModel.swift b/SheetyColors/Classes/HSB/ViewModels/HSBViewModel.swift index 3cb2afb..615ebe2 100644 --- a/SheetyColors/Classes/HSB/ViewModels/HSBViewModel.swift +++ b/SheetyColors/Classes/HSB/ViewModels/HSBViewModel.swift @@ -5,6 +5,8 @@ // Created by Christoph Wendt on 20.04.19. // +import CoreGraphics + private enum SliderType: Int, CaseIterable { case hue, saturation, brightness, alpha } diff --git a/SheetyColors/Classes/RGB/Models/RGBAColor.swift b/SheetyColors/Classes/RGB/Models/RGBAColor.swift index 4d8a80d..8269d78 100644 --- a/SheetyColors/Classes/RGB/Models/RGBAColor.swift +++ b/SheetyColors/Classes/RGB/Models/RGBAColor.swift @@ -5,7 +5,7 @@ // Created by Christoph Wendt on 10.02.19. // -import CoreGraphics +import UIKit /// A model class representing RGBA colors. The red, green, and blue component can hold values between 0.0 and 255.0 while the alpha value has a maximum value of 100.0. public class RGBAColor: NSObject, NSCopying, Codable { diff --git a/SheetyColors/Classes/RGB/ViewModels/RGBViewModel.swift b/SheetyColors/Classes/RGB/ViewModels/RGBViewModel.swift index cbe6c24..2553985 100644 --- a/SheetyColors/Classes/RGB/ViewModels/RGBViewModel.swift +++ b/SheetyColors/Classes/RGB/ViewModels/RGBViewModel.swift @@ -5,6 +5,9 @@ // Created by Christoph Wendt on 03.02.19. // +import Foundation +import CoreGraphics + private enum SliderType: Int, CaseIterable { case red, green, blue, alpha } From 4470bac447f15147f04757747e82bd044ceb1b3e Mon Sep 17 00:00:00 2001 From: Christoph Wendt Date: Wed, 26 Feb 2020 22:17:04 +0100 Subject: [PATCH 7/8] docs: update changelog --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 89b3def..5795f18 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## Version 1.0.2 +### Enhancements +*[Support Swift Package Manager](https://github.com/chrs1885/SheetyColors/issues/10) + ## Version 1.0.1 ### Bugfix * Fix version of Capable dependency which was causing issues in projects where Capable was used side by side with SheetyColors From 446dc009cf3fe8b4da27bd123df76bb3fcccfb69 Mon Sep 17 00:00:00 2001 From: Christoph Wendt Date: Wed, 26 Feb 2020 22:20:34 +0100 Subject: [PATCH 8/8] remove redundant imports --- .../Common/ViewModels/SheetyColorsViewModelProtocol.swift | 1 + SheetyColors/Classes/Grayscale/Models/GrayscaleColor.swift | 2 -- .../Classes/Grayscale/ViewModels/GrayscaleViewModel.swift | 2 -- SheetyColors/Classes/RGB/ViewModels/RGBViewModel.swift | 1 - 4 files changed, 1 insertion(+), 5 deletions(-) diff --git a/SheetyColors/Classes/Common/ViewModels/SheetyColorsViewModelProtocol.swift b/SheetyColors/Classes/Common/ViewModels/SheetyColorsViewModelProtocol.swift index 2c6ee0b..b10601b 100644 --- a/SheetyColors/Classes/Common/ViewModels/SheetyColorsViewModelProtocol.swift +++ b/SheetyColors/Classes/Common/ViewModels/SheetyColorsViewModelProtocol.swift @@ -6,6 +6,7 @@ // import CoreGraphics + protocol SheetyColorsViewModelProtocol { var viewModelDelegate: SheetyColorsViewModelDelegate? { get set } var hasTextOrMessage: Bool { get } diff --git a/SheetyColors/Classes/Grayscale/Models/GrayscaleColor.swift b/SheetyColors/Classes/Grayscale/Models/GrayscaleColor.swift index b97e000..8136d80 100644 --- a/SheetyColors/Classes/Grayscale/Models/GrayscaleColor.swift +++ b/SheetyColors/Classes/Grayscale/Models/GrayscaleColor.swift @@ -5,8 +5,6 @@ // Created by Christoph Wendt on 25.04.19. // -import Foundation -import CoreGraphics import UIKit /// A model class representing grayscale colors. The white component can hold values between 0.0 and 255.0 while the alphavalue has a maximum value of 100.0. diff --git a/SheetyColors/Classes/Grayscale/ViewModels/GrayscaleViewModel.swift b/SheetyColors/Classes/Grayscale/ViewModels/GrayscaleViewModel.swift index ac861f0..d2288bb 100644 --- a/SheetyColors/Classes/Grayscale/ViewModels/GrayscaleViewModel.swift +++ b/SheetyColors/Classes/Grayscale/ViewModels/GrayscaleViewModel.swift @@ -5,9 +5,7 @@ // Created by Christoph Wendt on 25.04.19. // -import Foundation import CoreGraphics -import UIKit private enum SliderType: Int, CaseIterable { case white, alpha diff --git a/SheetyColors/Classes/RGB/ViewModels/RGBViewModel.swift b/SheetyColors/Classes/RGB/ViewModels/RGBViewModel.swift index 2553985..171c627 100644 --- a/SheetyColors/Classes/RGB/ViewModels/RGBViewModel.swift +++ b/SheetyColors/Classes/RGB/ViewModels/RGBViewModel.swift @@ -5,7 +5,6 @@ // Created by Christoph Wendt on 03.02.19. // -import Foundation import CoreGraphics private enum SliderType: Int, CaseIterable {