Skip to content

Commit de3785f

Browse files
add external subscribe not
1 parent 1cfb33f commit de3785f

File tree

2 files changed

+24
-0
lines changed

2 files changed

+24
-0
lines changed

Source/Notification/Models/InPlayerNotification.swift

+9
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import Foundation
77
case accessRevoked(resource: INPItemRevokedModel)
88
case externalPaymentSuccess(resource: INPPaymentSuccessModel)
99
case externalPaymentFailed(resource: INPExternalPaymentFailedModel)
10+
case externalSubscribeCancelSuccess(resource: INPPaymentSuccessModel)
1011
case accountLogout
1112
case accountErased
1213
case accountDeactivated
@@ -18,6 +19,7 @@ public enum NotificationType {
1819
case accessRevoked(resource: InPlayerItemRevoked)
1920
case externalPaymentSuccess(resource: InPlayerPaymentSuccess)
2021
case externalPaymentFailed(resource: InPlayerExternalPaymentFailed)
22+
case externalSubscribeCancelSuccess(resource: InPlayerPaymentSuccess)
2123
case accountLogout
2224
case accountErased
2325
case accountDeactivated
@@ -40,6 +42,7 @@ public struct InPlayerNotification: Codable {
4042
static let accessRevoked = "access.revoked"
4143
static let externalPaymentSuccess = "external.payment.success"
4244
static let externalPaymentFailed = "external.payment.failed"
45+
static let externalSubscribeCancelSuccess = "external.subscribe.cancel.success"
4346
static let accountLogout = "account.logout"
4447
static let accountErased = "account.erased"
4548
static let accountDeactivated = "account.deactivated"
@@ -65,6 +68,9 @@ public struct InPlayerNotification: Codable {
6568
case NotificationTypeStrings.externalPaymentFailed:
6669
let resource = try values.decode(InPlayerExternalPaymentFailed.self, forKey: .resource)
6770
type = .externalPaymentFailed(resource: resource)
71+
case NotificationTypeStrings.externalSubscribeCancelSuccess:
72+
let resource = try values.decode(InPlayerPaymentSuccess.self, forKey: .resource)
73+
type = .externalSubscribeCancelSuccess(resource: resource)
6874
case NotificationTypeStrings.accountLogout:
6975
type = .accountLogout
7076
case NotificationTypeStrings.accountErased:
@@ -93,6 +99,9 @@ public struct InPlayerNotification: Codable {
9399
case .externalPaymentFailed(let resource):
94100
try values.encode(resource, forKey: .resource)
95101
try values.encode(NotificationTypeStrings.externalPaymentFailed, forKey: .typeString)
102+
case .externalSubscribeCancelSuccess(let resource):
103+
try values.encode(resource, forKey: .resource)
104+
try values.encode(NotificationTypeStrings.externalSubscribeCancelSuccess, forKey: .typeString)
96105
case .accountLogout:
97106
try values.encode(NotificationTypeStrings.accountLogout, forKey: .typeString)
98107
case .accountErased:

Source/Notification/Models/InPlayerPaymentSuccess.swift

+15
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,15 @@ public struct InPlayerPaymentSuccess: Codable {
1818
public var customerId: Int?
1919
public var formattedAmount: String?
2020
public var amount: Double?
21+
public var fullAmount: Double?
22+
public var nextBillingDate: Double?
23+
public var paymentMethod: String?
2124
public var currency: String?
2225
public var status: String?
26+
public var voucherCode: String?
2327
public var timestamp: Double?
2428
public var code: Int?
29+
public var discountPercent: Int?
2530

2631
private enum CodingKeys: String, CodingKey {
2732
case itemId = "item_id"
@@ -33,10 +38,15 @@ public struct InPlayerPaymentSuccess: Codable {
3338
case customerId = "customer_id"
3439
case formattedAmount = "formatted_amount"
3540
case amount
41+
case fullAmount = "full_amount"
42+
case nextBillingDate = "next_rebill_date"
43+
case paymentMethod = "payment_method"
3644
case currency = "currency_iso"
3745
case status
46+
case voucherCode = "voucher_code"
3847
case timestamp
3948
case code
49+
case discountPercent = "discount_percent"
4050
}
4151

4252
/// Decoder method
@@ -51,9 +61,14 @@ public struct InPlayerPaymentSuccess: Codable {
5161
customerId = try values.decodeIfPresent(Int.self, forKey: .customerId)
5262
formattedAmount = try values.decodeIfPresent(String.self, forKey: .formattedAmount)
5363
amount = try values.decodeIfPresent(Double.self, forKey: .amount)
64+
fullAmount = try values.decodeIfPresent(Double.self, forKey: .fullAmount)
65+
nextBillingDate = try values.decodeIfPresent(Double.self, forKey: .nextBillingDate)
66+
paymentMethod = try values.decodeIfPresent(String.self, forKey: .paymentMethod)
5467
currency = try values.decodeIfPresent(String.self, forKey: .currency)
5568
status = try values.decodeIfPresent(String.self, forKey: .status)
69+
voucherCode = try values.decodeIfPresent(String.self, forKey: .voucherCode)
5670
timestamp = try values.decodeIfPresent(Double.self, forKey: .timestamp)
5771
code = try values.decodeIfPresent(Int.self, forKey: .code)
72+
discountPercent = try values.decodeIfPresent(Int.self, forKey: .discountPercent)
5873
}
5974
}

0 commit comments

Comments
 (0)