Frontend: AddressRow primitive (short address + copy + explorer) #188
Labels
No labels
agent:fix_bugfix
agent:fix_conflicts
agent:fix_security
agent:gap_analysis
agent:implement
agent:implement
agent:implement
agent:open_issues
agent:ready
agent:research
agent:security_audit
agent:verify
architecture
backend
blocker:hybrid
blocker:launch
blocker:limit-orders
blocker:v2
block:log_only
block:security
bug
ci
contracts
correctness
deploy
dev
devops
docs
documentation
duplicate
e2e
enhancement
epic
feature
frontend
functional-completion
gas
good first issue
governance
help wanted
high-risk
hooks
hybrid
indexer
infra
infrastructure
integrators
invalid
launch-blocker
limit-orders
localnet
localterra
low priority
missing-implementation
needs-design
ops
performance
priority
high
priority
medium
product
qa
QA
question
ready
ready
research
scripts
security
security-hardening
smartcontracts
tech-debt
testing
ux
UX
v2
verification
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
code/cl8y-dex-terraclassic#188
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Cross-cutting AddressRow primitive (shortened text + copy + explorer) per #140 audit — umbrella for ~5 partial-info surfaces, separate from wallet-chip-only work.
Surfaces (non-exhaustive)
TraderPage.tsx— search / result headerPoolPage.tsx— LP token addressTxResultAlert.tsx— explorer present, copy missingAcceptance criteria
shortenprops, network for explorer).skills/+docs/frontend.mdcross-link.Relates to: #140, #183
cc @Brouie @PlasticDigits
marked as related to #140
marked as related to #183
mentioned in issue #140
mentioned in commit
574dfdf4e6mentioned in commit
a04549c267Implementation summary (@brouie — please verify)
Shipped
AddressRowonmain(a04549c): reusable shortened/full address +CopyButton(#183) +getExplorerAddressUrl(#184).What changed
AddressRow.tsx+ Vitest coveragewallet-menu-address-row), pool LP token line (pool-lp-token-address-row), trader profile header (trader-profile-address-row)docs/frontend.md#addressrow-primitiveskills/AGENTS_FRONTEND_ADDRESS_ROW.md(cross-linked with copy/explorer/wallet-chip skills)Verification checklist
/trader/:addrheader shows shortened address with copy + explorernpm run test:unit—AddressRow.test.tsx+WalletButton.test.tsxpassStill open under #188 (follow-ups)
TxResultAlerttx hash copy (explorer link already present)Leaving issue open for the remaining surfaces and QA sign-off.
/cc @Brouie
mentioned in issue #186
mentioned in commit
f81f620f6bmentioned in issue #185
verified at source+unit-test layer on QA stack —
a04549cis in main at HEADf81f620.source:
AddressRow.tsxAPI matches AC. usesCopyButton(#183) +getExplorerAddressUrl(#184). a11y:rel="noopener noreferrer",aria-label/aria-hidden, tooltip viatitle.migrations grep-confirmed:
WalletButton.tsx:83(wallet dropdown),PoolPage.tsx:819(LP token),TraderPage.tsx:170(trader profile).unit tests:
AddressRow.test.tsx4/4 PASSWalletButton.test.tsx8/8 PASS — covers item 1 (copy + explorer + switch wallet visible at line 144) and item 6 (Escape dismiss at line 118)CopyButton.test.tsx4/4 PASSterraExplorer.test.ts6/8 PASS — mainnet + testnet address URL paths PASS (covers item 2 for those networks). 2 local-build tests fail due to test fragility (stubsVITE_NETWORK=localbut does not overrideVITE_TERRA_LCD_URL, so it picks up the QA.envvalue127.0.0.1:1317vs hardcodedlocalhost:1317). production behavior is correct.e2e + visual browser walk: queued for next pass with full stack up. Simulated Wallet fixture (e2e/fixtures/dev-wallet.ts) expects
terra1*20k38vaddress but did not produce it onREQUIRE_LOCALTERRA=0run — separate fixture-env concern.@PlasticDigits —
terraExplorer.test.tslocal-build fragility worth a small followup (stub both VITE_NETWORK and VITE_TERRA_LCD_URL together, or pin the local-build fallback independent of env). does not block #188 from code-correctness — primitive layer is verified.mentioned in issue #541
marked as related to #541
mentioned in merge request !1070
mentioned in issue #656
mentioned in issue #664
mentioned in issue #665
marked as related to #665
mentioned in issue #671
marked as related to #671