diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 4fb1fdc..8b7e397 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -93,12 +93,12 @@ jobs:
yarn turbo run build:android
build-ios:
- runs-on: macos-15
+ runs-on: macos-26
steps:
- name: Setup Xcode
uses: maxim-lobanov/setup-xcode@v1
with:
- xcode-version: 16.4
+ xcode-version: '26.1.1'
- name: Checkout
uses: actions/checkout@v3
diff --git a/README.md b/README.md
index 323fb3f..2ef99f3 100644
--- a/README.md
+++ b/README.md
@@ -1,11 +1,3 @@
-
-
-
-
-
-
-
-

# react-native-ticketmaster-ignite
@@ -15,7 +7,8 @@ This library serves as a wrapper for the three Ticketmaster Ignite SDK's: [Accou
In order to use the library, setup a developer account with Ticketmaster by contacting nexus_sdk@ticketmaster.com. When your account is activated you will receive an **API key** and **scheme** that you'll need to use to finish the setup.
-## Installation
+
+Installation
Depending on your package manager you can install this library with one of the below commands:
@@ -38,7 +31,10 @@ npx expo install react-native-ticketmaster-ignite
If your project is an **Expo Managed Workflow** project then skip the "Setting up iOS" and "Setting up Android" sections and go straight to the [Setting up Expo](https://github.com/ticketmaster/react-native-ticketmaster-ignite?tab=readme-ov-file#setting-up-expo) section
-## Setting up iOS
+
+
+
+Setting up iOS
Edit the `Podfile` and set the platform to `17.0`
@@ -48,7 +44,10 @@ platform :ios, '17.0'
- `cd` into the `ios` directory and run `pod install`
-## Setting up Android
+
+
+
+Setting up Android
#### Set the minSdkVersion and compileSdkVersion
@@ -144,11 +143,17 @@ dependencies {
}
```
-## Setting up Expo
+
+
+
+Setting up Expo
If you are using an expo managed workflow you should ignore the iOS and Android setup sections above and use a config plugin to update your native files. See [here](./docs/expo.md) for an **example** config plugin written for an expo app that uses this library
-## Usage
+
+
+
+Usage
`react-native-ticketmaster-ignite` exports the following modules:
@@ -927,7 +932,10 @@ As the initial Accounts SDK configuration is done for your app via `IgniteProvid
On any logs of `TicketmasterFoundation.ConnectionError error` see [here](https://github.com/ticketmaster/react-native-ticketmaster-ignite?tab=readme-ov-file#refresh-token)
-## Running the demo apps
+
+
+
+Running the demo apps
To run the React Native example app:
@@ -953,7 +961,10 @@ cd expo
Then run the project with either `yarn expo:android`/`yarn expo:ios`
-## Environment variables
+
+
+
+Environment variables
In order to use the library, setup a developer account with Ticketmaster by contacting nexus_sdk@ticketmaster.com.
diff --git a/android/build.gradle b/android/build.gradle
index 1efead8..dac62fe 100644
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -117,12 +117,12 @@ dependencies {
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.1'
implementation 'com.google.code.gson:gson:2.11.0'
- implementation 'com.ticketmaster.tickets:tickets:3.16.0'
+ implementation 'com.ticketmaster.tickets:tickets:3.17.4'
implementation 'com.ticketmaster.tickets:secure-entry:1.7.0'
- implementation 'com.ticketmaster.retail:purchase:3.8.14'
- implementation 'com.ticketmaster.retail:prepurchase:3.8.14'
- implementation 'com.ticketmaster.retail:discoveryapi:3.8.14'
- implementation 'com.ticketmaster.retail:foundation:3.8.14'
+ implementation 'com.ticketmaster.retail:purchase:3.8.20'
+ implementation 'com.ticketmaster.retail:prepurchase:3.8.20'
+ implementation 'com.ticketmaster.retail:discoveryapi:3.8.20'
+ implementation 'com.ticketmaster.retail:foundation:3.8.20'
implementation 'androidx.compose.material3:material3:1.4.0'
testImplementation 'junit:junit:4.13.2'
diff --git a/example/ios/Podfile b/example/ios/Podfile
index bdd6020..81fa903 100644
--- a/example/ios/Podfile
+++ b/example/ios/Podfile
@@ -36,5 +36,14 @@ target 'TicketmasterIgniteExample' do
:mac_catalyst_enabled => false,
# :ccache_enabled => true
)
+
+ # Force fmt 11.0.2 to compile as C++17 to dodge an Apple clang 21 (Xcode 26)
+ # consteval evaluation bug in that surfaces under C++20.
+ installer.pods_project.targets.each do |t|
+ next unless t.name == 'fmt'
+ t.build_configurations.each do |c|
+ c.build_settings['CLANG_CXX_LANGUAGE_STANDARD'] = 'c++17'
+ end
+ end
end
end
\ No newline at end of file
diff --git a/example/ios/TicketmasterIgniteExample.xcodeproj/project.pbxproj b/example/ios/TicketmasterIgniteExample.xcodeproj/project.pbxproj
index 55cc472..241e7ab 100644
--- a/example/ios/TicketmasterIgniteExample.xcodeproj/project.pbxproj
+++ b/example/ios/TicketmasterIgniteExample.xcodeproj/project.pbxproj
@@ -274,14 +274,10 @@
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-TicketmasterIgniteExample/Pods-TicketmasterIgniteExample-frameworks-${CONFIGURATION}-input-files.xcfilelist",
);
- inputPaths = (
- );
name = "[CP] Embed Pods Frameworks";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-TicketmasterIgniteExample/Pods-TicketmasterIgniteExample-frameworks-${CONFIGURATION}-output-files.xcfilelist",
);
- outputPaths = (
- );
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-TicketmasterIgniteExample/Pods-TicketmasterIgniteExample-frameworks.sh\"\n";
@@ -339,14 +335,10 @@
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-TicketmasterIgniteExample-TicketmasterIgniteExampleTests/Pods-TicketmasterIgniteExample-TicketmasterIgniteExampleTests-frameworks-${CONFIGURATION}-input-files.xcfilelist",
);
- inputPaths = (
- );
name = "[CP] Embed Pods Frameworks";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-TicketmasterIgniteExample-TicketmasterIgniteExampleTests/Pods-TicketmasterIgniteExample-TicketmasterIgniteExampleTests-frameworks-${CONFIGURATION}-output-files.xcfilelist",
);
- outputPaths = (
- );
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-TicketmasterIgniteExample-TicketmasterIgniteExampleTests/Pods-TicketmasterIgniteExample-TicketmasterIgniteExampleTests-frameworks.sh\"\n";
@@ -360,14 +352,10 @@
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-TicketmasterIgniteExample/Pods-TicketmasterIgniteExample-resources-${CONFIGURATION}-input-files.xcfilelist",
);
- inputPaths = (
- );
name = "[CP] Copy Pods Resources";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-TicketmasterIgniteExample/Pods-TicketmasterIgniteExample-resources-${CONFIGURATION}-output-files.xcfilelist",
);
- outputPaths = (
- );
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-TicketmasterIgniteExample/Pods-TicketmasterIgniteExample-resources.sh\"\n";
@@ -381,14 +369,10 @@
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-TicketmasterIgniteExample-TicketmasterIgniteExampleTests/Pods-TicketmasterIgniteExample-TicketmasterIgniteExampleTests-resources-${CONFIGURATION}-input-files.xcfilelist",
);
- inputPaths = (
- );
name = "[CP] Copy Pods Resources";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-TicketmasterIgniteExample-TicketmasterIgniteExampleTests/Pods-TicketmasterIgniteExample-TicketmasterIgniteExampleTests-resources-${CONFIGURATION}-output-files.xcfilelist",
);
- outputPaths = (
- );
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-TicketmasterIgniteExample-TicketmasterIgniteExampleTests/Pods-TicketmasterIgniteExample-TicketmasterIgniteExampleTests-resources.sh\"\n";
@@ -601,7 +585,10 @@
"-DFOLLY_CFG_NO_COROUTINES=1",
"-DFOLLY_HAVE_CLOCK_GETTIME=1",
);
- OTHER_LDFLAGS = "$(inherited) ";
+ OTHER_LDFLAGS = (
+ "$(inherited)",
+ " ",
+ );
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
SDKROOT = iphoneos;
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) DEBUG";
@@ -675,7 +662,10 @@
"-DFOLLY_CFG_NO_COROUTINES=1",
"-DFOLLY_HAVE_CLOCK_GETTIME=1",
);
- OTHER_LDFLAGS = "$(inherited) ";
+ OTHER_LDFLAGS = (
+ "$(inherited)",
+ " ",
+ );
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
SDKROOT = iphoneos;
USE_HERMES = true;
diff --git a/example/package.json b/example/package.json
index 53078c8..23682be 100644
--- a/example/package.json
+++ b/example/package.json
@@ -8,7 +8,7 @@
"ios": "cd ios && pod install && cd .. && react-native run-ios",
"start": "react-native start",
"build:android": "rm -rf ../android/build && cd android && ./gradlew assembleDebug --no-daemon --console=plain -PreactNativeArchitectures=arm64-v8a",
- "build:ios": "cd ios && xcodebuild -workspace TicketmasterIgniteExample.xcworkspace -scheme TicketmasterIgniteExample -configuration Debug -sdk iphonesimulator CC=clang CPLUSPLUS=clang++ LD=clang LDPLUSPLUS=clang++ GCC_OPTIMIZATION_LEVEL=0 GCC_PRECOMPILE_PREFIX_HEADER=YES ASSETCATALOG_COMPILER_OPTIMIZATION=time DEBUG_INFORMATION_FORMAT=dwarf COMPILER_INDEX_STORE_ENABLE=NO"
+ "build:ios": "cd ios && xcodebuild -workspace TicketmasterIgniteExample.xcworkspace -scheme TicketmasterIgniteExample -configuration Debug -sdk iphonesimulator -destination 'generic/platform=iOS Simulator' CC=clang CPLUSPLUS=clang++ LD=clang LDPLUSPLUS=clang++ GCC_OPTIMIZATION_LEVEL=0 GCC_PRECOMPILE_PREFIX_HEADER=YES ASSETCATALOG_COMPILER_OPTIMIZATION=time DEBUG_INFORMATION_FORMAT=dwarf COMPILER_INDEX_STORE_ENABLE=NO"
},
"dependencies": {
"@react-navigation/bottom-tabs": "^7.4.4",
@@ -43,7 +43,6 @@
"jest": "^29.6.3",
"prettier": "2.8.8",
"react-native-builder-bob": "^0.40.13",
- "react-native-test-app": "^4.0.1",
"react-test-renderer": "19.1.0",
"typescript": "5.8.3"
},
diff --git a/example/react-native.config.js b/example/react-native.config.js
index 3a4bda0..ea50c70 100644
--- a/example/react-native.config.js
+++ b/example/react-native.config.js
@@ -1,9 +1,8 @@
const path = require('path');
const pkg = require('../package.json');
-const { configureProjects } = require('react-native-test-app');
module.exports = {
- project: configureProjects({
+ project: {
android: {
sourceDir: 'android',
},
@@ -11,7 +10,7 @@ module.exports = {
sourceDir: 'ios',
automaticPodsInstallation: true,
},
- }),
+ },
dependencies: {
[pkg.name]: {
root: path.join(__dirname, '..'),
diff --git a/react-native-ticketmaster-ignite.podspec b/react-native-ticketmaster-ignite.podspec
index 1615860..64c8240 100644
--- a/react-native-ticketmaster-ignite.podspec
+++ b/react-native-ticketmaster-ignite.podspec
@@ -19,7 +19,7 @@ Pod::Spec.new do |s|
# Use install_modules_dependencies helper to install the dependencies if React Native version >=0.71.0.
# See https://github.com/facebook/react-native/blob/febf6b7f33fdb4904669f99d795eba4c0f95d7bf/scripts/cocoapods/new_architecture.rb#L79.
- s.dependency "TM-Ignite", '= 1.19.0'
+ s.dependency "TM-Ignite", '= 1.20.0'
if respond_to?(:install_modules_dependencies, true)
install_modules_dependencies(s)
else
diff --git a/yarn.lock b/yarn.lock
index 339b78d..9868969 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -5148,31 +5148,6 @@ __metadata:
languageName: node
linkType: hard
-"@rnx-kit/react-native-host@npm:^0.5.0":
- version: 0.5.1
- resolution: "@rnx-kit/react-native-host@npm:0.5.1"
- peerDependencies:
- react-native: ">=0.66"
- checksum: e98ad62297f40b8f0326815b4a6b01bc6cf313305483300c24c0ac18f2afca7f16ee0ea6246f20b1e324c125e56f4ce1f5f9da1e3fd862f9eb439aed4a09e5d6
- languageName: node
- linkType: hard
-
-"@rnx-kit/tools-node@npm:^3.0.0":
- version: 3.0.0
- resolution: "@rnx-kit/tools-node@npm:3.0.0"
- checksum: fecf7d94e1d1eed1e06ac9e172591011ed24c8babe435492c8b8cecc1a6ab5c4445630bc14468990345e8e3804ee4a1f4ad59b5ef3ae9dd0827572a5378d642b
- languageName: node
- linkType: hard
-
-"@rnx-kit/tools-react-native@npm:^2.0.0":
- version: 2.0.1
- resolution: "@rnx-kit/tools-react-native@npm:2.0.1"
- dependencies:
- "@rnx-kit/tools-node": ^3.0.0
- checksum: aa7cf2f972210f0cd385e883e351cd8de9fd1b87ad0b8d84fb967ef0ee553211c07a81d214f06cb611707b0cafef8a8c1fdf22bb956efddabdd56e05c48e2bee
- languageName: node
- linkType: hard
-
"@sideway/address@npm:^4.1.5":
version: 4.1.5
resolution: "@sideway/address@npm:4.1.5"
@@ -5986,7 +5961,7 @@ __metadata:
languageName: node
linkType: hard
-"ajv@npm:^8.0.0, ajv@npm:^8.11.0":
+"ajv@npm:^8.11.0":
version: 8.17.1
resolution: "ajv@npm:8.17.1"
dependencies:
@@ -7138,7 +7113,7 @@ __metadata:
languageName: node
linkType: hard
-"cliui@npm:^8.0.0, cliui@npm:^8.0.1":
+"cliui@npm:^8.0.1":
version: 8.0.1
resolution: "cliui@npm:8.0.1"
dependencies:
@@ -9310,7 +9285,7 @@ __metadata:
languageName: node
linkType: hard
-"fast-xml-parser@npm:^4.0.0, fast-xml-parser@npm:^4.4.1":
+"fast-xml-parser@npm:^4.4.1":
version: 4.5.0
resolution: "fast-xml-parser@npm:4.5.0"
dependencies:
@@ -14220,7 +14195,7 @@ __metadata:
languageName: node
linkType: hard
-"prompts@npm:^2.0.1, prompts@npm:^2.2.1, prompts@npm:^2.3.2, prompts@npm:^2.4.0, prompts@npm:^2.4.2":
+"prompts@npm:^2.0.1, prompts@npm:^2.2.1, prompts@npm:^2.3.2, prompts@npm:^2.4.2":
version: 2.4.2
resolution: "prompts@npm:2.4.2"
dependencies:
@@ -14629,43 +14604,6 @@ __metadata:
languageName: node
linkType: hard
-"react-native-test-app@npm:^4.0.1":
- version: 4.0.3
- resolution: "react-native-test-app@npm:4.0.3"
- dependencies:
- "@rnx-kit/react-native-host": ^0.5.0
- "@rnx-kit/tools-react-native": ^2.0.0
- ajv: ^8.0.0
- cliui: ^8.0.0
- fast-xml-parser: ^4.0.0
- prompts: ^2.4.0
- semver: ^7.3.5
- uuid: ^10.0.0
- peerDependencies:
- "@callstack/react-native-visionos": 0.73 - 0.76
- "@expo/config-plugins": ">=5.0"
- react: 18.1 - 19.0
- react-native: 0.70 - 0.76 || >=0.77.0-0 <0.77.0
- react-native-macos: ^0.0.0-0 || 0.71 - 0.76
- react-native-windows: ^0.0.0-0 || 0.70 - 0.76
- peerDependenciesMeta:
- "@callstack/react-native-visionos":
- optional: true
- "@expo/config-plugins":
- optional: true
- react-native-macos:
- optional: true
- react-native-windows:
- optional: true
- bin:
- configure-test-app: scripts/configure.mjs
- init: scripts/init.mjs
- init-test-app: scripts/init.mjs
- install-windows-test-app: windows/test-app.mjs
- checksum: 6d0ba3482ff8a76bf9134ba39fb5fe7ec9ffd55d94f6ec7411a7b346967727fc92cb67d006385c328f0ec10621d20e816e8ae8c2b9bb31b85c5b0fd2f65cc689
- languageName: node
- linkType: hard
-
"react-native-ticketmaster-ignite-example@workspace:example":
version: 0.0.0-use.local
resolution: "react-native-ticketmaster-ignite-example@workspace:example"
@@ -14700,7 +14638,6 @@ __metadata:
react-native-safe-area-context: ^5.5.2
react-native-screens: ^4.16.0
react-native-svg: ^15.14.0
- react-native-test-app: ^4.0.1
react-test-renderer: 19.1.0
typescript: 5.8.3
languageName: unknown
@@ -16787,7 +16724,7 @@ __metadata:
"typescript@patch:typescript@5.8.3#~builtin":
version: 5.8.3
- resolution: "typescript@patch:typescript@npm%3A5.8.3#~builtin::version=5.8.3&hash=29ae49"
+ resolution: "typescript@patch:typescript@npm%3A5.8.3#~builtin::version=5.8.3&hash=14eedb"
bin:
tsc: bin/tsc
tsserver: bin/tsserver
@@ -16797,7 +16734,7 @@ __metadata:
"typescript@patch:typescript@^5.2.2#~builtin":
version: 5.6.3
- resolution: "typescript@patch:typescript@npm%3A5.6.3#~builtin::version=5.6.3&hash=29ae49"
+ resolution: "typescript@patch:typescript@npm%3A5.6.3#~builtin::version=5.6.3&hash=14eedb"
bin:
tsc: bin/tsc
tsserver: bin/tsserver
@@ -16807,7 +16744,7 @@ __metadata:
"typescript@patch:typescript@~5.9.2#~builtin":
version: 5.9.3
- resolution: "typescript@patch:typescript@npm%3A5.9.3#~builtin::version=5.9.3&hash=29ae49"
+ resolution: "typescript@patch:typescript@npm%3A5.9.3#~builtin::version=5.9.3&hash=14eedb"
bin:
tsc: bin/tsc
tsserver: bin/tsserver
@@ -17097,15 +17034,6 @@ __metadata:
languageName: node
linkType: hard
-"uuid@npm:^10.0.0":
- version: 10.0.0
- resolution: "uuid@npm:10.0.0"
- bin:
- uuid: dist/bin/uuid
- checksum: 4b81611ade2885d2313ddd8dc865d93d8dccc13ddf901745edca8f86d99bc46d7a330d678e7532e7ebf93ce616679fb19b2e3568873ac0c14c999032acb25869
- languageName: node
- linkType: hard
-
"uuid@npm:^7.0.3":
version: 7.0.3
resolution: "uuid@npm:7.0.3"