Skip to content

Bridge No-Codes loadScreen, defaultVariables and custom action event (DEV-1191) - #70

Merged
SpertsyanKM merged 2 commits into
mainfrom
kamo/dev-1191-capacitor-no-codes-loadscreen-defaultvariables-and-custom
Jul 17, 2026
Merged

Bridge No-Codes loadScreen, defaultVariables and custom action event (DEV-1191)#70
SpertsyanKM merged 2 commits into
mainfrom
kamo/dev-1191-capacitor-no-codes-loadscreen-defaultvariables-and-custom

Conversation

@SpertsyanKM

Copy link
Copy Markdown
Contributor

Brings the No-Codes API from sandwich 7.10.1 (native iOS 6.13.0 / Android nocodes 1.10.0) into the Capacitor layer.

DEV-1191

Changes

  • Sandwich bump 7.9.0 → 7.10.1 (podspec + gradle).
  • NoCodes.loadScreen(contextKey): Promise<NoCodesScreen> — load-before-present; the screen model exposes id, contextKey, defaultSelectedProductId and typed defaultVariables (kind/key/type/value/stringValue) with a defaultVariable(key, kind?) lookup mirroring the native SDKs. Presenting stays on showScreen (served from cache). New plugin method registered in pluginMethods (iOS) / @PluginMethod (Android); iOS resolves the sandwich completion, Android uses call.toResultListener().
  • New nocodes_custom_action event → optional onCustomAction(value) callback on NoCodesListener (native noCodesEvent envelope is generic, TS-only change for the event).

Verification

  • yarn build (tsc + rollup, the publish gate) ✅; eslint delta on touched files kept at the level of the surrounding pre-existing debt
  • verify:android / verify:ios — running, will report in a comment

🤖 Generated with Claude Code

https://claude.ai/code/session_01KQEJXqfVNxqoUcKXhSPhWn

…(DEV-1191)

Bump sandwich to 7.10.1. loadScreen(contextKey) resolves with a typed
NoCodesScreen (id, contextKey, defaultSelectedProductId, typed
defaultVariables). Custom builder actions surface via the optional
onCustomAction listener callback fed by the new nocodes_custom_action
event.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KQEJXqfVNxqoUcKXhSPhWn
@SpertsyanKM

Copy link
Copy Markdown
Contributor Author

Verification notes:

  • yarn build (tsc + rollup — the CI publish gate) ✅
  • verify:android fails locally while configuring the :capacitor-android dependency project (Gradle cannot instrument bcprov-jdk18on-1.79.jar with the JDKs available on this machine — 11/15/18/19, no 17). The failure happens before our module is even configured and reproduces without this diff. Kotlin-side compile-compatibility of the same sandwich 7.10.1 loadScreen(ResultListener) surface is proven in the sibling PRs (flutter/RN compileDebugKotlin, cordova full sample build).
  • verify:ios fails on unable to resolve module dependency: 'QonversionSandwich'Package.swift declares no sandwich dependency while Extensions.swift (untouched here) imports it, so the SPM verify path is broken independently of this diff. iOS compiles through the example app pods instead.

Happy to fix the two verify paths in a follow-up if wanted.

…, ClientError code (DEV-1191)

The empty-data guard now rejects with ScreenLoadingFailed instead of an
empty resolve, and a nil sandwich rejects with SDKInitializationError.
Map the ClientError code both natives emit since sandwich 7.10.1 and
extend the NoCodeEvent payload union with QNoCodeCustomActionInfo.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KQEJXqfVNxqoUcKXhSPhWn
@SpertsyanKM

Copy link
Copy Markdown
Contributor Author

Review addressed: the empty-data guard rejects with ScreenLoadingFailed instead of an empty resolve, nil sandwich rejects with SDKInitializationError, CLIENT_ERROR added to the enum + mapper (the reviewer's hunch was right — it was missing here too), NoCodeEvent.payload union extended. Build green.

@SpertsyanKM
SpertsyanKM merged commit 46edcb1 into main Jul 17, 2026
1 check passed
@SpertsyanKM
SpertsyanKM deleted the kamo/dev-1191-capacitor-no-codes-loadscreen-defaultvariables-and-custom branch July 17, 2026 11:57
SpertsyanKM added a commit that referenced this pull request Jul 17, 2026
…ction feature and review fixes (DEV-1191)

The feature PR #70 landed in main (repo default) while the one-click
release flow cuts from develop — converge so the 1.6.0 release carries
the feature.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KQEJXqfVNxqoUcKXhSPhWn
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant