feat(widget): extract AuditTrailViewer into standalone zero-dependency React widget - #27
Open
jdjioe5-cpu wants to merge 1 commit into
Open
Conversation
…y React widget Closes nirium-protocol#12 Adds packages/widget delivering the acceptance criteria for the \ USDC standalone widget bounty: - Single React component (<AuditTrailViewer />) accepts an appId and fetches anchored receipts via GET /api/audit/info - Cleanly renders IPFS CID + Stellar tx hashes with external links (IPFS gateway + Stellar Expert) and Tailwind-friendly class hooks - Dual ESM/CJS build via tsup + TypeScript declarations - Dependency-free fetchAuditInfo() helper for non-React hosts - vitest test suite (15 tests) covering success / loading / error / empty states + click interaction - README with usage + non-React examples + MIT license The widget declares only React + react-dom as peerDependencies so any third-party Web3 dashboard can embed it without pulling in the full nirium SDK.
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.
Closes #12
What this PR delivers
A self-contained React widget package at \packages/widget\ that satisfies the acceptance criteria for the \ USDC standalone widget bounty:
Beyond the spec
enderExternalLink\ prop slot + \onReceiptClick\ callback for full host-app customisation without forking.
Validation
\
npm test → 15/15 passing (3 test files)
npm run build → ESM (8.90 KB) + CJS (9.89 KB) + d.ts (3.68 KB)
npm run typecheck → tsc clean
\\
The widget declares only React + react-dom as peerDependencies, so third-party Web3 dashboards can embed it without pulling in the full nirium SDK.