Skip to content

Feat/incognito mode - #201

Open
rishabhjain92 wants to merge 5 commits into
developmentfrom
feat/incognito-mode
Open

Feat/incognito mode#201
rishabhjain92 wants to merge 5 commits into
developmentfrom
feat/incognito-mode

Conversation

@rishabhjain92

Copy link
Copy Markdown

No description provided.

rishabhjain92 and others added 5 commits September 3, 2026 13:24
Threads an optional incognito boolean (default false) through all three
bridge layers to the new incognito support in the native SDKs:
- JS: triggerTransaction(transactionId, utmParams, brokerList, incognito)
- Android: new trailing incognito param on the @ReactMethod, forwarded to
  SmallcaseGatewaySdk.triggerTransaction's incognito param
- iOS: new trailing incognito param on the RCT_REMAP_METHOD, forwarded to
  the triggerTransactionFlow(...incognito:completion:) Obj-C overload

Additive/backward-compatible - existing callers passing 1-3 args are
unaffected. Requires the native SDK dependency pins (android/build.gradle,
react-native-smallcase-gateway.podspec) to point at builds containing the
incognito support before this compiles - currently still pinned to stable
6.1.1 / 7.2.0, which predate it.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Adds an Incognito Mode section to the README covering the new
triggerTransaction(transactionId, utmParams, brokerList, incognito)
parameter - what it does, backward compatibility, and known limitations
(AutoFill, account-level connection state).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Internal test pins for QA against the incognito-mode branch builds,
mirroring the existing dark-theme branch pin pattern:
- Android: com.smallcase.gateway:sdk-feat-incognito-mode-c1b21c9:6.1.2-3193-release
- iOS: SCGateway-feat-incognito-mode-2d15c7b 7.2.0-28-release

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Previously incognito was a required non-nullable param at the native
bridge layer (Boolean in Kotlin, BOOL in Objective-C) - it only felt
optional to JS callers because src/SmallcaseGateway.js always computed a
default before forwarding. That's inconsistent with utmParams/brokerList,
which are genuinely nullable at the bridge, and with the native SDKs
themselves where incognito is a real default parameter. Now nullable on
both platforms (Boolean? / nullable NSNumber *), defaulting to false when
absent, so the bridge methods are robust regardless of whether a caller
goes through the JS wrapper.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
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.

1 participant