@upscopeio/react-native-sdk 2026.7.1 → 2026.7.3

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.
package/README.md CHANGED
@@ -231,6 +231,7 @@ interface UpscopeConfig {
231
231
  autoConnect?: boolean; // Connect on initialize(). Default: false.
232
232
  region?: string; // Override the server region.
233
233
  showTerminateButton?: boolean; // Show an end-session button during a session.
234
+ showUpscopeLink?: boolean; // Show the "Powered by Upscope" link. Hiding it requires the whitelabel feature on the account.
234
235
  authorizationPromptTitle?: string; // Custom title for the session request dialog.
235
236
  authorizationPromptMessage?: string; // Custom message for the session request dialog.
236
237
  endOfSessionMessage?: string; // Message shown when a session ends.
@@ -27,10 +27,22 @@ android {
27
27
  named("main") {
28
28
  java.srcDirs("src/main/kotlin")
29
29
  }
30
+ named("test") {
31
+ java.srcDirs("src/test/kotlin")
32
+ }
33
+ }
34
+
35
+ testOptions {
36
+ unitTests {
37
+ isIncludeAndroidResources = true
38
+ }
30
39
  }
31
40
  }
32
41
 
33
42
  dependencies {
34
43
  implementation("com.facebook.react:react-android")
35
- implementation("io.github.upscopeio:upscope-android-sdk:2026.7.2")
44
+ implementation("io.github.upscopeio:upscope-android-sdk:2026.7.4")
45
+
46
+ testImplementation("junit:junit:4.13.2")
47
+ testImplementation("org.robolectric:robolectric:4.16")
36
48
  }
@@ -0,0 +1,28 @@
1
+ package io.upscope.reactnative
2
+
3
+ import android.content.Context
4
+ import android.view.View
5
+ import com.facebook.react.views.view.ReactViewGroup
6
+ import io.upscope.sdk.Upscope
7
+
8
+ /**
9
+ * Host view for the UpscopeMasked component. Extends ReactViewGroup so that
10
+ * Android-initiated layout passes never reposition the Yoga-laid-out children
11
+ * (ReactViewGroup no-ops onLayout and terminates requestLayout); a plain
12
+ * ViewGroup would stack all children at the top-left on the first native
13
+ * layout pass after window attach.
14
+ */
15
+ class UpscopeMaskedView(context: Context) : ReactViewGroup(context) {
16
+
17
+ init {
18
+ addOnAttachStateChangeListener(object : View.OnAttachStateChangeListener {
19
+ override fun onViewAttachedToWindow(v: View) {
20
+ Upscope.addMaskedView(v)
21
+ }
22
+
23
+ override fun onViewDetachedFromWindow(v: View) {
24
+ Upscope.removeMaskedView(v)
25
+ }
26
+ })
27
+ }
28
+ }
@@ -1,13 +1,11 @@
1
1
  package io.upscope.reactnative
2
2
 
3
- import android.widget.FrameLayout
4
3
  import com.facebook.react.module.annotations.ReactModule
5
4
  import com.facebook.react.uimanager.ThemedReactContext
6
5
  import com.facebook.react.uimanager.ViewGroupManager
7
- import io.upscope.sdk.Upscope
8
6
 
9
7
  @ReactModule(name = UpscopeMaskedViewManager.NAME)
10
- class UpscopeMaskedViewManager : ViewGroupManager<FrameLayout>() {
8
+ class UpscopeMaskedViewManager : ViewGroupManager<UpscopeMaskedView>() {
11
9
 
12
10
  companion object {
13
11
  const val NAME = "UpscopeMaskedView"
@@ -15,17 +13,6 @@ class UpscopeMaskedViewManager : ViewGroupManager<FrameLayout>() {
15
13
 
16
14
  override fun getName(): String = NAME
17
15
 
18
- override fun createViewInstance(reactContext: ThemedReactContext): FrameLayout {
19
- val view = FrameLayout(reactContext)
20
- view.addOnAttachStateChangeListener(object : android.view.View.OnAttachStateChangeListener {
21
- override fun onViewAttachedToWindow(v: android.view.View) {
22
- Upscope.addMaskedView(v)
23
- }
24
-
25
- override fun onViewDetachedFromWindow(v: android.view.View) {
26
- Upscope.removeMaskedView(v)
27
- }
28
- })
29
- return view
30
- }
16
+ override fun createViewInstance(reactContext: ThemedReactContext): UpscopeMaskedView =
17
+ UpscopeMaskedView(reactContext)
31
18
  }
@@ -169,6 +169,9 @@ class UpscopeModule(
169
169
  if (config.hasKey("showTerminateButton")) {
170
170
  builder.showTerminateButton(config.getBoolean("showTerminateButton"))
171
171
  }
172
+ if (config.hasKey("showUpscopeLink")) {
173
+ builder.showUpscopeLink(config.getBoolean("showUpscopeLink"))
174
+ }
172
175
  if (config.hasKey("authorizationPromptTitle")) {
173
176
  builder.authorizationPromptTitle(
174
177
  checkNotNull(config.getString("authorizationPromptTitle"))
@@ -0,0 +1,52 @@
1
+ package io.upscope.reactnative
2
+
3
+ import android.view.View
4
+ import android.widget.TextView
5
+ import org.junit.Assert.assertEquals
6
+ import org.junit.Test
7
+ import org.junit.runner.RunWith
8
+ import org.robolectric.RobolectricTestRunner
9
+ import org.robolectric.RuntimeEnvironment
10
+
11
+ /**
12
+ * React Native positions children directly via layout() calls from Yoga; the
13
+ * host view must not re-run Android's own layout pass on them. A plain
14
+ * FrameLayout does exactly that on the window-attach layout pass (cold start),
15
+ * stacking every child at the top-left corner.
16
+ */
17
+ @RunWith(RobolectricTestRunner::class)
18
+ class UpscopeMaskedViewTest {
19
+
20
+ @Test
21
+ fun childrenKeepRnAssignedPositionsAcrossAndroidLayoutPass() {
22
+ val context = RuntimeEnvironment.getApplication()
23
+ val view = UpscopeMaskedView(context)
24
+ val line1 = TextView(context)
25
+ val line2 = TextView(context)
26
+ view.addView(line1)
27
+ view.addView(line2)
28
+
29
+ // RN (Yoga) lays out the container, then positions children directly.
30
+ measureExactly(view, 720, 200)
31
+ view.layout(0, 0, 720, 200)
32
+ line1.layout(0, 0, 720, 100)
33
+ line2.layout(0, 100, 720, 200)
34
+
35
+ // Android-initiated layout pass, e.g. window attach on cold start
36
+ // (attach requests layout, forcing measure/layout to re-run).
37
+ view.forceLayout()
38
+ measureExactly(view, 720, 200)
39
+ view.layout(0, 0, 720, 200)
40
+
41
+ assertEquals(0, line1.top)
42
+ assertEquals(100, line2.top)
43
+ assertEquals(200, line2.bottom)
44
+ }
45
+
46
+ private fun measureExactly(view: View, width: Int, height: Int) {
47
+ view.measure(
48
+ View.MeasureSpec.makeMeasureSpec(width, View.MeasureSpec.EXACTLY),
49
+ View.MeasureSpec.makeMeasureSpec(height, View.MeasureSpec.EXACTLY),
50
+ )
51
+ }
52
+ }
@@ -122,6 +122,7 @@ class UpscopeModule: RCTEventEmitter, UpscopeDelegate {
122
122
  autoconnect: config["autoConnect"] as? Bool,
123
123
  region: config["region"] as? String,
124
124
  showTerminateButton: config["showTerminateButton"] as? Bool,
125
+ showUpscopeLink: config["showUpscopeLink"] as? Bool,
125
126
  authorizationPromptTitle: config["authorizationPromptTitle"] as? String,
126
127
  authorizationPromptMessage: config["authorizationPromptMessage"] as? String,
127
128
  endOfSessionMessage: config["endOfSessionMessage"] as? String,
@@ -5,5 +5,5 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.SDK_VERSION = void 0;
7
7
  // Auto-generated by scripts/generate-version.sh — do not edit manually
8
- const SDK_VERSION = exports.SDK_VERSION = "2026.7.1";
8
+ const SDK_VERSION = exports.SDK_VERSION = "2026.7.3";
9
9
  //# sourceMappingURL=version.js.map
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
 
3
3
  // Auto-generated by scripts/generate-version.sh — do not edit manually
4
- export const SDK_VERSION = "2026.7.1";
4
+ export const SDK_VERSION = "2026.7.3";
5
5
  //# sourceMappingURL=version.js.map
@@ -33,6 +33,13 @@ export interface UpscopeConfig {
33
33
  */
34
34
  readonly onPremiseBaseEndpoint?: string;
35
35
  readonly showTerminateButton?: boolean;
36
+ /**
37
+ * Whether to show the "Powered by Upscope" link during a session. Leave
38
+ * unset to use the server config. Hiding the link requires the whitelabel
39
+ * feature on the account; without it, the server forces the link on and
40
+ * this option is ignored.
41
+ */
42
+ readonly showUpscopeLink?: boolean;
36
43
  readonly authorizationPromptTitle?: string;
37
44
  readonly authorizationPromptMessage?: string;
38
45
  readonly endOfSessionMessage?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GACzB,UAAU,GAAG,YAAY,GAAG,WAAW,GAAG,cAAc,GAAG,OAAO,CAAC;AAErE,MAAM,MAAM,YAAY,GACtB,UAAU,GAAG,gBAAgB,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEhE,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG,cAAc,GAAG,SAAS,CAAC;AAE1E,mEAAmE;AACnE,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,gBAAgB,GAAG,QAAQ,CAAC;AAE1E,2EAA2E;AAC3E,MAAM,MAAM,sBAAsB,GAAG,UAAU,GAAG,gBAAgB,GAAG,QAAQ,CAAC;AAE9E,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG;IAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAE/E,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,8BAA8B,CAAC,EAAE,OAAO,CAAC;IAClD,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,6GAA6G;IAC7G,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAC7C,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;IAC3C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC;;;;;OAKG;IACH,QAAQ,CAAC,2BAA2B,CAAC,EAAE,OAAO,CAAC;IAC/C,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IACzC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IACxC;;;;;OAKG;IACH,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAC1C;;;;;OAKG;IACH,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAC1C;;;;;;OAMG;IACH,QAAQ,CAAC,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAC7C,QAAQ,CAAC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAC3C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;IAC3C,QAAQ,CAAC,cAAc,CAAC,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,cAAc,CAAC,EAAE,eAAe,CAAC;IAC1C;;;OAGG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC;;;OAGG;IACH,QAAQ,CAAC,0BAA0B,CAAC,EAAE,MAAM,CAAC;CAC9C;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAGD,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;CACnC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;CAC9B;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;CACpC;AAED,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,KAAK,EAAE,sBAAsB,CAAC;CACxC;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,sBAAsB,EAAE,2BAA2B,CAAC;IAC7D,QAAQ,CAAC,mBAAmB,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,cAAc,EAAE,mBAAmB,CAAC;IAC7C,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACzC,QAAQ,CAAC,qBAAqB,EAAE,kBAAkB,CAAC;IACnD,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;IACrC,QAAQ,CAAC,kBAAkB,EAAE,uBAAuB,CAAC;IACrD,QAAQ,CAAC,cAAc,EAAE,mBAAmB,CAAC;IAC7C,QAAQ,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;IACnD,QAAQ,CAAC,yBAAyB,EAAE,8BAA8B,CAAC;IACnE,QAAQ,CAAC,6BAA6B,EAAE,kCAAkC,CAAC;IAC3E,QAAQ,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;IACnD,QAAQ,CAAC,cAAc,EAAE,mBAAmB,CAAC;IAC7C,QAAQ,CAAC,cAAc,EAAE,mBAAmB,CAAC;CAC9C,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const SDK_VERSION = "2026.7.1";
1
+ export declare const SDK_VERSION = "2026.7.3";
2
2
  //# sourceMappingURL=version.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@upscopeio/react-native-sdk",
3
- "version": "2026.7.1",
3
+ "version": "2026.7.3",
4
4
  "description": "React Native SDK for Upscope cobrowsing",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
package/src/types.ts CHANGED
@@ -40,6 +40,13 @@ export interface UpscopeConfig {
40
40
  */
41
41
  readonly onPremiseBaseEndpoint?: string;
42
42
  readonly showTerminateButton?: boolean;
43
+ /**
44
+ * Whether to show the "Powered by Upscope" link during a session. Leave
45
+ * unset to use the server config. Hiding the link requires the whitelabel
46
+ * feature on the account; without it, the server forces the link on and
47
+ * this option is ignored.
48
+ */
49
+ readonly showUpscopeLink?: boolean;
43
50
  readonly authorizationPromptTitle?: string;
44
51
  readonly authorizationPromptMessage?: string;
45
52
  readonly endOfSessionMessage?: string;
package/src/version.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  // Auto-generated by scripts/generate-version.sh — do not edit manually
2
- export const SDK_VERSION = "2026.7.1";
2
+ export const SDK_VERSION = "2026.7.3";
@@ -11,7 +11,7 @@ Pod::Spec.new do |s|
11
11
  s.source_files = "ios/**/*.{h,m,mm,swift}"
12
12
  s.swift_version = "5.9"
13
13
 
14
- s.dependency "UpscopeSDK", "2026.7.2"
14
+ s.dependency "UpscopeSDK", "2026.7.4"
15
15
 
16
16
  install_modules_dependencies(s)
17
17
  end