Conversation
A WalletPlugin for @wharfkit/session that logs in and signs transactions with TackleBox over the anchor-link protocol it speaks: ESR identity requests presented paste-first (QR, copy button and esr: link), buoy callbacks, and sealed transaction requests pushed straight into the wallet's announced channel, with a manual QR/paste fallback when no channel exists. Based on the wharfkit/wallet-plugin-template structure and modeled on wharfkit/wallet-plugin-anchor (BSD-3-Clause, Greymass Inc). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
protocol-esr's isKnownMobile dereferences navigator, which only exists as a global from Node 21 - guard it so SSR and Node 18/20 work. Clamp the expiry timer below the 2^31-1ms setTimeout ceiling so far-future expirations do not fire immediately. The sign suite now pins Date to the recorded chain head so TAPOS-derived expirations stay in the future no matter when the tests run. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Vite + web-renderer + the plugin from file:../..: login, self-transfer on the linked chain, session restore and logout. Verified in a browser that the real WebRenderer renders the paste-first login prompt (QR, copy button with copied-feedback re-prompt, esr: link) exactly as the mocked UI tests describe. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Login now fires a tacklebox://request/<payload> deep link that opens the wallet with the identity request (channel-less signing does the same); the prompt keeps a Launch TackleBox link, the QR code and copy-paste as fallbacks, and a disableAutoLaunch option opts out. The wallet's own scheme is used because esr: may belong to Anchor on the same machine - verified live against an Anchor install. Channel signing does not navigate; TackleBox raises its own window when the push arrives. While a TackleBox prompt is up, the session modal wears the wallet's theme - deep-void navy, cyan light lines, restrained glow - via a stylesheet injected into the web renderer's shadow root, scoped behind a host attribute so other wallets' prompts keep the stock look, and feature-detected so non-web-renderer UIs are untouched. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This repository is the upstream source; the plugin is meant to be forked into the official Wharfkit plugin collection, which is where an npm package would be published. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The angular navy tacklebox with teal lid, cyan circuit accents and hook emblem replaces the placeholder mark: plugin logo (both variants), README header, example dapp favicon, and the SVG source in assets/. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Wallet metadata (homepage/download), docs and test expectations now point at github.com/doyen-games; this plugin repository itself stays put, destined for the Wharfkit collection. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Upstream review (Greymass) is right that a wallet plugin should have no idea what is rendering it: the theme injection reached into web-renderer's shadow root through unsupported fields, silently no-opped under wharfkit/web-ui or custom UIs, and collided with any theming the integrating dapp does. Removed entirely - the plugin now speaks only the abstract UserInterface contract, and TackleBox's presence in the modal comes through its logo and prompt content. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Packages changed: light-api, session, wallet-plugin-tacklebox.
Shared build changes: bun.lock, rolldown.config.mjs, scripts/release.ts.