Skip to content

Commit 458e70a

Browse files
authored
Merge pull request #134 from ProteGO-Safe/release/4.12.0
Release/4.12.0
2 parents f088dc4 + f115416 commit 458e70a

File tree

5 files changed

+47
-36
lines changed

5 files changed

+47
-36
lines changed

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ All notable changes to this project will be documented in this file.
66
The format is based on [Keep a Changelog](http://keepachangelog.com/)
77
and this project adheres to [Semantic Versioning](http://semver.org/).
88

9+
## 4.12.0
10+
- Disabled DeviceCheck for lab test
11+
- Updated UI
12+
913
## 4.11.0
1014
- Updated UI
1115

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,10 @@ For convenience, there's a `rebuild.sh` script which performs actions mentioned
7373
To launch it, type `sh rebuild.sh` in your console.
7474

7575
## ChangeLog
76+
**4.12.0**
77+
- Disabled DeviceCheck for lab test
78+
- Updated UI
79+
7680
**4.11.0**
7781
- Updated UI
7882

project.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ targets:
4242
PushMutableContent:
4343
settings:
4444
CODE_SIGN_STYLE: Manual
45-
MARKETING_VERSION: "4.11.0"
45+
MARKETING_VERSION: "4.12.0"
4646
CURRENT_PROJECT_VERSION: 746
4747
TARGETED_DEVICE_FAMILY: 1,2
4848
type: app-extension
@@ -77,7 +77,7 @@ targets:
7777
deploymentTarget: "12.1"
7878
settings:
7979
CODE_SIGN_STYLE: Manual
80-
MARKETING_VERSION: "4.11.0"
80+
MARKETING_VERSION: "4.12.0"
8181
CURRENT_PROJECT_VERSION: 746
8282
TARGETED_DEVICE_FAMILY: 1
8383
SWIFT_OBJC_BRIDGING_HEADER: $(PROJECT_DIR)/safesafe/App/safesafe-Bridging-Header.h

safesafe/Services/Free test/FreeTestService.swift

Lines changed: 30 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -9,46 +9,46 @@ import Foundation
99
import PromiseKit
1010
import Moya
1111

12-
class FreeTestService {
13-
12+
final class FreeTestService {
13+
14+
// MARK: - Properties
15+
1416
private let localStorage: RealmLocalStorage?
1517
private let deviceCheckService: DeviceCheckServiceProtocol
1618
private let apiProvider: MoyaProvider<FreeTestTarget>
1719
private let configuration: RemoteConfigProtocol
1820
private let renewableRequest: RenewableRequest<FreeTestTarget>
1921

2022
private var jsOnSubscriptionInfoClosure: ((FreeTestSubscriptionInfoResponse) -> ())?
21-
23+
24+
// MARK: - Initialization
25+
2226
init(
2327
with localStorage: RealmLocalStorage?,
2428
deviceCheckService: DeviceCheckServiceProtocol,
2529
apiProvider: MoyaProvider<FreeTestTarget>,
26-
configuration: RemoteConfigProtocol) {
27-
30+
configuration: RemoteConfigProtocol
31+
) {
2832
self.localStorage = localStorage
2933
self.deviceCheckService = deviceCheckService
3034
self.apiProvider = apiProvider
31-
self.renewableRequest = .init(provider: apiProvider, alertManager: NetworkingAlertManager(), notRenewableErrorCodes: [400])
35+
self.renewableRequest = .init(
36+
provider: apiProvider,
37+
alertManager: NetworkingAlertManager(),
38+
notRenewableErrorCodes: [400]
39+
)
3240
self.configuration = configuration
3341
}
3442

3543
func uploadPIN(jsRequest: FreeTestUploadPinRequest) -> Promise<FreeTestPinUploadResponse> {
36-
deviceCheckService.generatePayload()
37-
.then { deviceCheckToken -> Promise<(String, DeviceGUIDModel)> in
38-
console("📗 Device Check Token (1/3)\n:\(deviceCheckToken)")
39-
return self.generateGUIDIfNeeded().map { (deviceCheckToken, $0) }
40-
}
41-
.then { deviceCheckToken, guidModel -> Promise<FreeTestCreateSubscriptionResponseModel> in
42-
console("📗 Generate GUID (2/3)\n:\(guidModel)")
43-
let headers = FreeTestRequestHeader(deviceCheckToken: deviceCheckToken)
44-
let request = FreeTestCreateSubscriptionRequestModel(code: jsRequest.pin, guid: guidModel.uuid)
45-
46-
return self.createSubscription(headers: headers, request: request)
47-
}
48-
.then { apiResponse -> Promise<FreeTestPinUploadResponse> in
49-
console("📗 API Response (3/3)\n:\(apiResponse)")
50-
return .value(.init(result: .success))
51-
}
44+
return generateGUIDIfNeeded()
45+
.then { guid -> Promise<FreeTestCreateSubscriptionResponseModel> in
46+
let request = FreeTestCreateSubscriptionRequestModel(code: jsRequest.pin, guid: guid.uuid)
47+
return self.createSubscription(request: request)
48+
}.then { apiResponse -> Promise<FreeTestPinUploadResponse> in
49+
console("📗 API Response \n:\(apiResponse)")
50+
return .value(.init(result: .success))
51+
}
5252
}
5353

5454
func subscriptionInfo() -> Promise<FreeTestSubscriptionInfoResponse> {
@@ -142,7 +142,7 @@ class FreeTestService {
142142
let nowTimestamp = Int(Date().timeIntervalSince1970)
143143
guard (nowTimestamp - guid.update) > config.interval else { return }
144144

145-
let headers = FreeTestRequestHeader(deviceCheckToken: deviceCheckToken, accessToken: guid.token)
145+
let headers = FreeTestRequestHeader(accessToken: guid.token)
146146
let target: FreeTestTarget = .getSubscription(header: headers, request: FreeTestGetSubscriptionRequestModel(guid: guid.uuid))
147147
self?.apiProvider.request(target) { result in
148148
switch result {
@@ -205,11 +205,14 @@ class FreeTestService {
205205
}
206206
}
207207

208-
// Cloud API
209-
//
208+
// MARK: - CloudAPI
209+
210210
private extension FreeTestService {
211-
func createSubscription(headers: FreeTestRequestHeader, request: FreeTestCreateSubscriptionRequestModel) -> Promise<FreeTestCreateSubscriptionResponseModel> {
212-
let target: FreeTestTarget = .createSubscription(header: headers, request: request)
211+
func createSubscription(
212+
header: FreeTestRequestHeader = .init(),
213+
request: FreeTestCreateSubscriptionRequestModel
214+
) -> Promise<FreeTestCreateSubscriptionResponseModel> {
215+
let target: FreeTestTarget = .createSubscription(header: header, request: request)
213216
return renewableRequest.make(target: target)
214217
.recover { error -> Promise<Response> in
215218
if (error as? InternalError) == nil {
@@ -230,6 +233,5 @@ private extension FreeTestService {
230233
throw error
231234
}
232235
}
233-
234236
}
235237
}

safesafe/Services/Free test/Model/Networking/FreeTestRequestHeader.swift

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,20 @@
88
import Foundation
99

1010
struct FreeTestRequestHeader: Codable, RequestHeader {
11-
11+
12+
// MARK: - Properties
13+
1214
enum CodingKeys: String, CodingKey {
13-
case deviceCheckToken = "Safety-Token"
1415
case userAgent = "User-Agent"
1516
case accessToken = "Authorization"
1617
}
1718

18-
let deviceCheckToken: String
1919
let userAgent = "ios"
2020
let accessToken: String?
21-
22-
init(deviceCheckToken: String, accessToken: String? = nil) {
23-
self.deviceCheckToken = deviceCheckToken
21+
22+
// MARK: - Initialization
23+
24+
init(accessToken: String? = nil) {
2425
if let accessToken = accessToken {
2526
self.accessToken = "Bearer \(accessToken)"
2627
} else {

0 commit comments

Comments
 (0)