Skip to content

Commit 78ec03f

Browse files
committed
release(0.0.1)
- Package structure improvements - CacheClient declaration & MemoryCacheClient implementation - IDFAPermissionsClient declaration & IDFAPermissionsClientLive implementation - NotificationsPermissionsClient declaration & NotificationsPermissionsClientLive implementation - DataRepresentable protocol improvements - DataRepresentable tests added - UserDefaultsClient improvements - LICENCE added for KeychainClientLive.Keychain object - LICENCE added - Readme updated
1 parent 928b412 commit 78ec03f

29 files changed

+1343
-162
lines changed

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2021 CaptureContext
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

Package.swift

Lines changed: 184 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -3,54 +3,188 @@
33
import PackageDescription
44

55
let package = Package(
6-
name: "swift-standard-clients",
7-
products: [
8-
],
9-
dependencies: [
10-
.package(
11-
name: "swift-prelude",
12-
url: "https://github.com/capturecontext/swift-prelude.git",
13-
.upToNextMinor(from: "0.0.1")
14-
)
15-
],
16-
targets: [
17-
// MARK: Private
18-
.target(name: "_DataRepresentable"),
19-
20-
// MARK: Keychain
21-
.target(
22-
name: "KeychainClient",
23-
dependencies: [
24-
.target(name: "_DataRepresentable"),
25-
.product(
26-
name: "Prelude",
27-
package: "swift-prelude"
28-
)
29-
]
30-
),
31-
.target(
32-
name: "KeychainClientLive",
33-
dependencies: [
34-
.target(name: "KeychainClient")
35-
]
36-
),
37-
38-
// MARK: UserDefaults
39-
.target(
40-
name: "UserDefaultsClient",
41-
dependencies: [
42-
.target(name: "_DataRepresentable"),
43-
.product(
44-
name: "Prelude",
45-
package: "swift-prelude"
46-
)
47-
]
48-
),
49-
.target(
50-
name: "UserDefaultsClientLive",
51-
dependencies: [
52-
.target(name: "UserDefaultsClient")
53-
]
54-
),
55-
]
6+
name: "swift-standard-clients",
7+
platforms: [
8+
.macOS(.v10_15),
9+
.iOS(.v13),
10+
.tvOS(.v13),
11+
.watchOS(.v6)
12+
],
13+
products: [
14+
// MARK: Cache
15+
.library(
16+
name: "CacheClient",
17+
type: .static,
18+
targets: ["CacheClient"]
19+
),
20+
.library(
21+
name: "MemoryCacheClient",
22+
type: .static,
23+
targets: ["MemoryCacheClient"]
24+
),
25+
26+
// MARK: DataRepresentable
27+
.library(
28+
name: "DataRepresentable",
29+
type: .static,
30+
targets: ["DataRepresentable"]
31+
),
32+
33+
// MARK: IDFA
34+
.library(
35+
name: "IDFAPermissionsClient",
36+
type: .static,
37+
targets: ["IDFAPermissionsClient"]
38+
),
39+
.library(
40+
name: "IDFAPermissionsClientLive",
41+
type: .static,
42+
targets: ["IDFAPermissionsClientLive"]
43+
),
44+
45+
// MARK: Keychain
46+
.library(
47+
name: "KeychainClient",
48+
type: .static,
49+
targets: ["KeychainClient"]
50+
),
51+
.library(
52+
name: "KeychainClientLive",
53+
type: .static,
54+
targets: ["KeychainClientLive"]
55+
),
56+
57+
// MARK: Notifications
58+
.library(
59+
name: "NotificationsPermissionsClient",
60+
type: .static,
61+
targets: ["NotificationsPermissionsClient"]
62+
),
63+
.library(
64+
name: "NotificationsPermissionsClientLive",
65+
type: .static,
66+
targets: ["NotificationsPermissionsClientLive"]
67+
),
68+
69+
// MARK: UserDefaults
70+
.library(
71+
name: "UserDefaultsClient",
72+
type: .static,
73+
targets: ["UserDefaultsClient"]
74+
),
75+
.library(
76+
name: "UserDefaultsClientLive",
77+
type: .static,
78+
targets: ["UserDefaultsClientLive"]
79+
),
80+
],
81+
dependencies: [
82+
.package(
83+
name: "swift-prelude",
84+
url: "https://github.com/capturecontext/swift-prelude.git",
85+
.upToNextMinor(from: "0.0.1")
86+
)
87+
],
88+
targets: [
89+
// MARK: Cache
90+
.target(
91+
name: "CacheClient",
92+
dependencies: [
93+
.target(name: "DataRepresentable"),
94+
.product(
95+
name: "Prelude",
96+
package: "swift-prelude"
97+
)
98+
]
99+
),
100+
.target(
101+
name: "MemoryCacheClient",
102+
dependencies: [
103+
.target(name: "CacheClient")
104+
]
105+
),
106+
107+
// MARK: DataRepresentable
108+
.target(name: "DataRepresentable"),
109+
110+
// MARK: IDFA
111+
.target(
112+
name: "IDFAPermissionsClient",
113+
dependencies: [
114+
.product(
115+
name: "Prelude",
116+
package: "swift-prelude"
117+
)
118+
]
119+
),
120+
.target(
121+
name: "IDFAPermissionsClientLive",
122+
dependencies: [
123+
.target(name: "IDFAPermissionsClient")
124+
]
125+
),
126+
127+
// MARK: Keychain
128+
.target(
129+
name: "KeychainClient",
130+
dependencies: [
131+
.target(name: "DataRepresentable"),
132+
.product(
133+
name: "Prelude",
134+
package: "swift-prelude"
135+
)
136+
]
137+
),
138+
.target(
139+
name: "KeychainClientLive",
140+
dependencies: [
141+
.target(name: "KeychainClient")
142+
]
143+
),
144+
145+
// MARK: Notifications
146+
.target(
147+
name: "NotificationsPermissionsClient",
148+
dependencies: [
149+
.product(
150+
name: "Prelude",
151+
package: "swift-prelude"
152+
)
153+
]
154+
),
155+
.target(
156+
name: "NotificationsPermissionsClientLive",
157+
dependencies: [
158+
.target(name: "NotificationsPermissionsClient")
159+
]
160+
),
161+
162+
// MARK: UserDefaults
163+
.target(
164+
name: "UserDefaultsClient",
165+
dependencies: [
166+
.target(name: "DataRepresentable"),
167+
.product(
168+
name: "Prelude",
169+
package: "swift-prelude"
170+
)
171+
]
172+
),
173+
.target(
174+
name: "UserDefaultsClientLive",
175+
dependencies: [
176+
.target(name: "UserDefaultsClient")
177+
]
178+
),
179+
180+
// MARK: - Tests
181+
182+
// MARK: DataRepresentable
183+
.testTarget(
184+
name: "DataRepresentableTests",
185+
dependencies: [
186+
.target(name: "DataRepresentable")
187+
]
188+
)
189+
]
56190
)

0 commit comments

Comments
 (0)