Skip to content

Commit 223594d

Browse files
authored
Implement encode(to:) method of Event (fixes #252) (#255)
1 parent b654208 commit 223594d

File tree

1 file changed

+108
-1
lines changed

1 file changed

+108
-1
lines changed

Sources/StripeKit/Core Resources/Events/Event.swift

Lines changed: 108 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,114 @@ public enum EventObject: Codable {
235235
}
236236
}
237237

238-
public func encode(to encoder: Encoder) throws { }
238+
public func encode(to encoder: Encoder) throws {
239+
switch self {
240+
case .account(let connectAccount):
241+
try connectAccount.encode(to: encoder)
242+
case .application(let connectApplication):
243+
try connectApplication.encode(to: encoder)
244+
case .card(let card):
245+
try card.encode(to: encoder)
246+
case .cashBalance(let cashBalance):
247+
try cashBalance.encode(to: encoder)
248+
case .bankAccount(let bankAccount):
249+
try bankAccount.encode(to: encoder)
250+
case .applicationFee(let applicationFee):
251+
try applicationFee.encode(to: encoder)
252+
case .applicationFeeRefund(let applicationFeeRefund):
253+
try applicationFeeRefund.encode(to: encoder)
254+
case .balance(let balance):
255+
try balance.encode(to: encoder)
256+
case .capability(let capability):
257+
try capability.encode(to: encoder)
258+
case .charge(let charge):
259+
try charge.encode(to: encoder)
260+
case .dispute(let dispute):
261+
try dispute.encode(to: encoder)
262+
case .refund(let refund):
263+
try refund.encode(to: encoder)
264+
case .checkoutSession(let session):
265+
try session.encode(to: encoder)
266+
case .configuration(let portalConfiguration):
267+
try portalConfiguration.encode(to: encoder)
268+
case .coupon(let coupon):
269+
try coupon.encode(to: encoder)
270+
case .creditNote(let creditNote):
271+
try creditNote.encode(to: encoder)
272+
case .customer(let customer):
273+
try customer.encode(to: encoder)
274+
case .discount(let discount):
275+
try discount.encode(to: encoder)
276+
case .subscription(let subscription):
277+
try subscription.encode(to: encoder)
278+
case .taxId(let taxID):
279+
try taxID.encode(to: encoder)
280+
case .file(let file):
281+
try file.encode(to: encoder)
282+
case .invoice(let invoice):
283+
try invoice.encode(to: encoder)
284+
case .invoiceItem(let invoiceItem):
285+
try invoiceItem.encode(to: encoder)
286+
case .issuingAuthorization(let authorization):
287+
try authorization.encode(to: encoder)
288+
case .issuingCard(let issuingCard):
289+
try issuingCard.encode(to: encoder)
290+
case .issuingCardHolder(let cardholder):
291+
try cardholder.encode(to: encoder)
292+
case .issuingDispute(let issuingDispute):
293+
try issuingDispute.encode(to: encoder)
294+
case .issuingTransaction(let transaction):
295+
try transaction.encode(to: encoder)
296+
case .mandate(let mandate):
297+
try mandate.encode(to: encoder)
298+
case .paymentIntent(let paymentIntent):
299+
try paymentIntent.encode(to: encoder)
300+
case .paymentLink(let paymentLink):
301+
try paymentLink.encode(to: encoder)
302+
case .paymentMethod(let paymentMethod):
303+
try paymentMethod.encode(to: encoder)
304+
case .payout(let payout):
305+
try payout.encode(to: encoder)
306+
case .person(let person):
307+
try person.encode(to: encoder)
308+
case .plan(let plan):
309+
try plan.encode(to: encoder)
310+
case .price(let price):
311+
try price.encode(to: encoder)
312+
case .product(let product):
313+
try product.encode(to: encoder)
314+
case .promotionCode(let promotionCode):
315+
try promotionCode.encode(to: encoder)
316+
case .earlyFraudWarniing(let earlyFraudWarning):
317+
try earlyFraudWarning.encode(to: encoder)
318+
case .quote(let quote):
319+
try quote.encode(to: encoder)
320+
case .reportRun(let reportRun):
321+
try reportRun.encode(to: encoder)
322+
case .reportType(let reportType):
323+
try reportType.encode(to: encoder)
324+
case .review(let review):
325+
try review.encode(to: encoder)
326+
case .setupIntent(let setupIntent):
327+
try setupIntent.encode(to: encoder)
328+
case .scheduledQueryRun(let scheduledQueryRun):
329+
try scheduledQueryRun.encode(to: encoder)
330+
case .subscriptionSchedule(let subscriptionSchedule):
331+
try subscriptionSchedule.encode(to: encoder)
332+
case .taxRate(let taxRate):
333+
try taxRate.encode(to: encoder)
334+
case .topup(let topUp):
335+
try topUp.encode(to: encoder)
336+
case .transfer(let transfer):
337+
try transfer.encode(to: encoder)
338+
case .testClock(let testClock):
339+
try testClock.encode(to: encoder)
340+
case .reader(let terminalReader):
341+
try terminalReader.encode(to: encoder)
342+
case .verificationSession(let verificationSession):
343+
try verificationSession.encode(to: encoder)
344+
}
345+
}
239346

240347
private enum CodingKeys: String, CodingKey {
241348
case object

0 commit comments

Comments
 (0)