Skip to content

Support for iOS 26 Changes#254

Merged
alexandercerutti merged 27 commits intomasterfrom
feature/iOS26
Oct 7, 2025
Merged

Support for iOS 26 Changes#254
alexandercerutti merged 27 commits intomasterfrom
feature/iOS26

Conversation

@alexandercerutti
Copy link
Copy Markdown
Owner

@alexandercerutti alexandercerutti commented Sep 25, 2025

Description

Closes #249

Check relevant checkboxes

  • I've run tests (through npm test) and they passed
  • I generated a working Apple Wallet Pass after the change
  • Provided examples keep working after the change
  • This improvement is or might be a breaking change

Relevant information

Copilot AI review requested due to automatic review settings September 25, 2025 16:17
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds support for iOS 26 changes to the Apple Wallet pass generation library. The primary purpose is to extend the library's capabilities to support new iOS 26 features, particularly for semantic boarding passes and enhanced event tickets.

Key changes include:

  • Addition of new iOS 26 semantic properties and URL fields for boarding passes
  • Support for upcoming pass information entries for enhanced event tickets
  • Migration from Field to PassFieldContent naming to match Apple's terminology
  • Enhanced relevancy date handling with backward compatibility

Reviewed Changes

Copilot reviewed 19 out of 30 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/schemas/index.ts Core schema updates including new iOS 26 properties, URL validation, and relevancy date handling
src/schemas/UpcomingPassInformation.ts New schema for upcoming pass information entries supporting event tickets
src/schemas/Semantics.ts Extended semantic properties for iOS 26 boarding pass enhancements
src/schemas/PassFields.ts Updated field references to use new naming convention
src/schemas/PassFieldContent.ts Renamed from Field.ts to match Apple's naming, with deprecation aliases
src/PKPass.ts Added support for upcoming pass information and extended preferredStyleSchemes
src/FieldsArray.ts Updated type references for renamed field types
src/messages.ts Added validation messages for new upcoming pass information feature
examples/ Updated example files with ES modules compatibility fixes
package.json Version bump to 3.5.0-alpha.1
specs/PKPass.spec.mjs Updated test descriptions and assertions
Comments suppressed due to low confidence (1)

src/schemas/index.ts:1

  • The date field in DateInformation schema is marked as required, but in the interface definition it's optional (date?: string | Date;). This creates an inconsistency between the TypeScript interface and Joi validation.
export * from "./Barcode.js";

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

alexandercerutti and others added 3 commits September 25, 2025 18:20
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@alexandercerutti alexandercerutti merged commit 72709bd into master Oct 7, 2025
1 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Supporting iOS 26 Changes

2 participants