@loyalytics/swan-react-native-sdk 2.6.1-beta.0 → 2.6.1-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -321,9 +321,23 @@ class CarouselTemplate : SwanNotificationTemplate {
321
321
  expanded = filmstrip.expanded
322
322
  collapsed = filmstrip.collapsed
323
323
  } else {
324
- // Standard shows 1 bitmap at a time via ViewFlipper 720px is fine
324
+ // Standard loads ALL bitmaps into ViewFlipper at once.
325
+ // Android 13 (API 33) and below have a ~2MB RemoteViews limit.
326
+ // Scale down based on item count to stay within the limit:
327
+ // 3 items × 720px ARGB ≈ 3MB (exceeds limit on API ≤ 33)
328
+ // 3 items × 400px ARGB ≈ 960KB (safe)
329
+ val maxDim = if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.TIRAMISU) {
330
+ // Android 13 and below: scale down to fit within RemoteViews limit
331
+ when {
332
+ items.size <= 2 -> 500
333
+ items.size <= 4 -> 400
334
+ else -> 300 // 5+ items need aggressive scaling
335
+ }
336
+ } else {
337
+ 720 // Android 14+ has relaxed RemoteViews limits
338
+ }
325
339
  val scaledBitmaps = bitmaps.map { bitmap ->
326
- bitmap?.let { scaleBitmap(it, 720) }
340
+ bitmap?.let { scaleBitmap(it, maxDim) }
327
341
  }
328
342
  val standard = CarouselRemoteViews.build(
329
343
  context = context,
@@ -8,5 +8,5 @@ exports.SDK_VERSION = void 0;
8
8
  // This file is generated from package.json version during build.
9
9
  // See scripts/generate-version.js
10
10
 
11
- const SDK_VERSION = exports.SDK_VERSION = '2.6.1-beta.0';
11
+ const SDK_VERSION = exports.SDK_VERSION = '2.6.1-beta.1';
12
12
  //# sourceMappingURL=version.js.map
@@ -4,5 +4,5 @@
4
4
  // This file is generated from package.json version during build.
5
5
  // See scripts/generate-version.js
6
6
 
7
- export const SDK_VERSION = '2.6.1-beta.0';
7
+ export const SDK_VERSION = '2.6.1-beta.1';
8
8
  //# sourceMappingURL=version.js.map
@@ -1,2 +1,2 @@
1
- export declare const SDK_VERSION = "2.6.1-beta.0";
1
+ export declare const SDK_VERSION = "2.6.1-beta.1";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -1,2 +1,2 @@
1
- export declare const SDK_VERSION = "2.6.1-beta.0";
1
+ export declare const SDK_VERSION = "2.6.1-beta.1";
2
2
  //# sourceMappingURL=version.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loyalytics/swan-react-native-sdk",
3
- "version": "2.6.1-beta.0",
3
+ "version": "2.6.1-beta.1",
4
4
  "description": "React Native SDK for Swan",
5
5
  "source": "./src/index.tsx",
6
6
  "main": "./lib/commonjs/index.js",