Skip to content

Commit a4e1ce4

Browse files
committed
Bump dependency versions, expose isFirstOrder and closeButton configurability
1 parent 3689445 commit a4e1ce4

20 files changed

Lines changed: 288 additions & 33 deletions

File tree

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,3 +106,6 @@ sample/vendor
106106

107107
# Sample app
108108
sample/**/AndroidManifest.xml
109+
110+
.claude/
111+
CLAUDE.md

CHANGELOG.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
# Changelog
22

3+
## 3.3.0 - Jul 14, 2025
4+
5+
- Upgrades Swift dependency to 3.3.0
6+
- Upgrades Android dependency to 3.5.0
7+
- Adds GooglePay support for eligible devices in Android
8+
- Adds isFirstOrder to web pixel events
9+
- Allow customizing sheet close button color
10+
- React Native dependency updates
11+
- Sample updates - fix for automatic scheme, stringify objects before logging.
12+
313
## 3.2.0 - December 18, 2024
414

515
- Handle geolocation requests for Android devices

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ This repo is subdivided into 3 parts using yarn workspaces:
1111
- The `@shopify/checkout-sheet-kit` Native Module (workspace name = `module`)
1212
- The sample application (workspace name = `sample`)
1313

14-
Each of the worksapces contains a separate `package.json` to manage tasks
14+
Each of the workspaces contains a separate `package.json` to manage tasks
1515
specific to each workspace.
1616

1717
## Getting started
@@ -132,7 +132,7 @@ Replace the details in the `sample/.env.example` file and rename it to
132132
# Storefront Details
133133
STOREFRONT_DOMAIN="YOUR_STORE.myshopify.com"
134134
STOREFRONT_ACCESS_TOKEN="YOUR_PUBLIC_STOREFRONT_ACCESS_TOKEN"
135-
STOREFRONT_VERSION="2024-04"
135+
STOREFRONT_VERSION="2025-07"
136136
```
137137

138138
### Start the sample app

README.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -202,7 +202,7 @@ import {STOREFRONT_NAME, STOREFRONT_ACCESS_TOKEN} from '@env';
202202

203203
// Create a new instance of the ApolloClient
204204
const client = new ApolloClient({
205-
uri: `https://${STOREFRONT_NAME}.myshopify.com/api/2024-01/graphql.json`,
205+
uri: `https://${STOREFRONT_NAME}.myshopify.com/api/2025-07/graphql.json`,
206206
headers: {
207207
'X-Shopify-Storefront-Access-Token': STOREFRONT_ACCESS_TOKEN,
208208
},
@@ -382,12 +382,14 @@ const config: Configuration = {
382382
ios: {
383383
backgroundColor: '#ffffff',
384384
tintColor: '#000000',
385+
closeButtonColor: '#333333',
385386
},
386387
android: {
387388
backgroundColor: '#ffffff',
388389
progressIndicator: '#2d2a38',
389390
headerBackgroundColor: '#ffffff',
390391
headerTextColor: '#000000',
392+
closeButtonColor: '#333333',
391393
},
392394
},
393395
};
@@ -414,12 +416,14 @@ const config: Configuration = {
414416
progressIndicator: '#2d2a38',
415417
headerBackgroundColor: '#ffffff',
416418
headerTextColor: '#000000',
419+
closeButtonColor: '#000000',
417420
},
418421
dark: {
419422
backgroundColor: '#000000',
420423
progressIndicator: '#0087ff',
421424
headerBackgroundColor: '#000000',
422425
headerTextColor: '#ffffff',
426+
closeButtonColor: '#ffffff',
423427
},
424428
},
425429
},

modules/@shopify/checkout-sheet-kit/RNShopifyCheckoutSheetKit.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Pod::Spec.new do |s|
2020
s.source_files = "ios/*.{h,m,mm,swift}"
2121

2222
s.dependency "React-Core"
23-
s.dependency "ShopifyCheckoutSheetKit", "~> 3.1.2"
23+
s.dependency "ShopifyCheckoutSheetKit", "~> 3.3.0"
2424

2525
if fabric_enabled
2626
install_modules_dependencies(s)

modules/@shopify/checkout-sheet-kit/android/build.gradle

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ buildscript {
55
}
66

77
dependencies {
8-
classpath "com.android.tools.build:gradle:7.4.2"
8+
classpath "com.android.tools.build:gradle:8.11.0"
99
}
1010
}
1111

@@ -32,10 +32,10 @@ static def supportsNamespace() {
3232
return (major == 7 && minor >= 3) || major >= 8
3333
}
3434

35-
buildToolsVersion = "33.0.0"
35+
buildToolsVersion = "35.0.0"
3636
minSdkVersion = 23
37-
compileSdkVersion = 33
38-
targetSdkVersion = 33
37+
compileSdkVersion = 36
38+
targetSdkVersion = 35
3939

4040
// We use NDK 23 which has both M1 support and is the side-by-side NDK version from AGP.
4141
ndkVersion = "23.1.7779620"
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
minSdkVersion=23
2-
targetSdkVersion=33
3-
compileSdkVersion=33
2+
targetSdkVersion=35
3+
compileSdkVersion=36
44
ndkVersion=23.1.7779620
5-
buildToolsVersion = "33.0.0"
5+
buildToolsVersion = "35.0.0"
66

77
# Version of Shopify Checkout SDK to use with React Native
8-
SHOPIFY_CHECKOUT_SDK_VERSION=3.3.0
8+
SHOPIFY_CHECKOUT_SDK_VERSION=3.5.0

modules/@shopify/checkout-sheet-kit/android/src/main/java/com/shopify/reactnative/checkoutsheetkit/ShopifyCheckoutSheetKitModule.java

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -194,14 +194,21 @@ private boolean isValidColorConfig(ReadableMap config) {
194194
return false;
195195
}
196196

197-
String[] colorKeys = { "backgroundColor", "progressIndicator", "headerTextColor", "headerBackgroundColor" };
197+
String[] requiredColorKeys = { "backgroundColor", "progressIndicator", "headerTextColor", "headerBackgroundColor" };
198198

199-
for (String key : colorKeys) {
199+
for (String key : requiredColorKeys) {
200200
if (!config.hasKey(key) || config.getString(key) == null || parseColor(config.getString(key)) == null) {
201201
return false;
202202
}
203203
}
204204

205+
// closeButtonColor is optional, so we only validate it if it's present
206+
if (config.hasKey("closeButtonColor") && config.getString("closeButtonColor") != null) {
207+
if (parseColor(config.getString("closeButtonColor")) == null) {
208+
return false;
209+
}
210+
}
211+
205212
return true;
206213
}
207214

@@ -242,13 +249,17 @@ private Colors createColorsFromConfig(ReadableMap config) {
242249
Color headerBackground = parseColorFromConfig(config, "headerBackgroundColor");
243250
Color headerFont = parseColorFromConfig(config, "headerTextColor");
244251
Color progressIndicator = parseColorFromConfig(config, "progressIndicator");
252+
Color closeButtonColor = parseColorFromConfig(config, "closeButtonColor");
245253

246254
if (webViewBackground != null && progressIndicator != null && headerFont != null && headerBackground != null) {
247255
return new Colors(
248256
webViewBackground,
249257
headerBackground,
250258
headerFont,
251-
progressIndicator);
259+
progressIndicator,
260+
null,
261+
closeButtonColor
262+
);
252263
}
253264

254265
return null;

modules/@shopify/checkout-sheet-kit/ios/ShopifyCheckoutSheetKit.swift

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,6 +242,10 @@ class RCTShopifyCheckoutSheetKit: RCTEventEmitter, CheckoutDelegate {
242242
if let backgroundColorHex = iosConfig?["backgroundColor"] as? String {
243243
ShopifyCheckoutSheetKit.configuration.backgroundColor = UIColor(hex: backgroundColorHex)
244244
}
245+
246+
if let closeButtonColorHex = iosConfig?["closeButtonColor"] as? String {
247+
ShopifyCheckoutSheetKit.configuration.closeButtonTintColor = UIColor(hex: closeButtonColorHex)
248+
}
245249
}
246250

247251
@objc func getConfig(_ resolve: @escaping RCTPromiseResolveBlock, reject _: @escaping RCTPromiseRejectBlock) {
@@ -250,7 +254,8 @@ class RCTShopifyCheckoutSheetKit: RCTEventEmitter, CheckoutDelegate {
250254
"preloading": ShopifyCheckoutSheetKit.configuration.preloading.enabled,
251255
"colorScheme": ShopifyCheckoutSheetKit.configuration.colorScheme.rawValue,
252256
"tintColor": ShopifyCheckoutSheetKit.configuration.tintColor,
253-
"backgroundColor": ShopifyCheckoutSheetKit.configuration.backgroundColor
257+
"backgroundColor": ShopifyCheckoutSheetKit.configuration.backgroundColor,
258+
"closeButtonColor": ShopifyCheckoutSheetKit.configuration.closeButtonTintColor
254259
]
255260

256261
resolve(config)

modules/@shopify/checkout-sheet-kit/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@shopify/checkout-sheet-kit",
33
"license": "MIT",
4-
"version": "3.2.0",
4+
"version": "3.3.0",
55
"main": "lib/commonjs/index.js",
66
"types": "src/index.ts",
77
"source": "src/index.ts",

0 commit comments

Comments
 (0)