diff --git a/src/PKPass.ts b/src/PKPass.ts index c06e441..61bff73 100644 --- a/src/PKPass.ts +++ b/src/PKPass.ts @@ -276,7 +276,7 @@ export default class PKPass extends Bundle { if (this.type !== "eventTicket") { throw new TypeError( - Messages.UPCOMING_PASS_INFORMATION.UNEXPECTED_PASS_TYPE, + Messages.UPCOMING_PASS_INFORMATION.UNEXPECTED_PASS_TYPE_SET, ); } @@ -297,6 +297,16 @@ export default class PKPass extends Bundle { this[propsSymbol].upcomingPassInformation = value; } + public get upcomingPassInformation(): Schemas.UpcomingPassInformationEntry[] { + if (this.type !== "eventTicket") { + throw new TypeError( + Messages.UPCOMING_PASS_INFORMATION.UNEXPECTED_PASS_TYPE_GET, + ); + } + + return this[propsSymbol].upcomingPassInformation || []; + } + /** * Allows setting a transitType property * for a boardingPass. diff --git a/src/messages.ts b/src/messages.ts index c0ce833..8c33c3a 100644 --- a/src/messages.ts +++ b/src/messages.ts @@ -25,8 +25,10 @@ export const PREFERRED_STYLE_SCHEMES = { } as const; export const UPCOMING_PASS_INFORMATION = { - UNEXPECTED_PASS_TYPE: + UNEXPECTED_PASS_TYPE_SET: "Cannot set upcomingPassInformation on a pass with type different from eventTicket.", + UNEXPECTED_PASS_TYPE_GET: + "Cannot get upcomingPassInformation on a pass with type different from eventTicket.", UNEXPECTED_STYLE_SCHEME: "Cannot set upcomingPassInformation because 'preferredStyleSchemes' does not include 'posterEventTicket' style.", INVALID: