Skip to content

Permission Delegation support #1315

Open
cybele-ripple wants to merge 13 commits into
mainfrom
explorer-permission-delegation
Open

Permission Delegation support #1315
cybele-ripple wants to merge 13 commits into
mainfrom
explorer-permission-delegation

Conversation

@cybele-ripple

@cybele-ripple cybele-ripple commented Apr 17, 2026

Copy link
Copy Markdown
Contributor

High Level Overview of Change

This PR includes a permission delegation section in the account account page.

Context of Change

The new permission delegation section appears between account properties and assets held in the account page. If the account does not have any permission delegations associated with it, then the section will now appear

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Refactor (non-breaking change that only restructures code)
  • Tests (You added tests for code that already exists, or your new feature included in this PR)
  • Documentation Updates
  • Translation Updates
  • Release

Codebase Modernization

  • Updated files to React Hooks
  • Updated files to TypeScript

Before / After

Example of the account page before any permission delegations (or if the account does not have any permission delegations associated with it):
Screenshot 2026-04-17 at 11 47 42 AM

Screenshots for both desktop and mobile after the permission delegation changes are made:
Screenshot 2026-05-26 at 1 19 19 PM
Screenshot 2026-05-26 at 1 19 32 PM

Test Plan

There are tests that cover this change:

  • src/containers/Accounts/test/index.test.tsx
  • src/containers/Accounts/PermissionDelegation/test/PermissionDelegation.test.tsx

Comment thread public/locales/en-US/translations.json Outdated
Comment thread src/containers/Accounts/PermissionDelegation/index.tsx
Comment thread src/containers/Accounts/PermissionDelegation/index.tsx Outdated
Comment thread src/containers/Accounts/PermissionDelegation/index.tsx Outdated
Comment thread public/locales/en-US/translations.json Outdated
Comment thread src/containers/Accounts/PermissionDelegation/index.tsx Outdated
Comment thread src/containers/Accounts/PermissionDelegation/index.tsx Outdated
Comment thread src/containers/Accounts/PermissionDelegation/styles.scss Outdated
Comment thread src/containers/Accounts/PermissionDelegation/styles.scss Outdated
Comment thread src/containers/Accounts/test/index.test.tsx
@mvadari

mvadari commented Apr 23, 2026

Copy link
Copy Markdown
Collaborator

Not sure if this is happening in another PR, but IMO the transaction page (maybe also the table detail section) should also show that the tx was sent by a delegate

- Extract shared CollapsibleSection component used by PermissionDelegation,
  AccountAsset, and AccountSummary (removes 3 duplicate implementations)
- Redesign PermissionDelegation as a card layout (address + permission
  chips) instead of a full-width table
- Drop the always-"Active" Status column and unused EmptyMessageTableRow
  branch
- Remove unused in-branch translation keys (permission_delegation column/
  status/no_delegations, assets_available, other_data, not_available,
  percent_of_supply, currency_toggle_help)
CI fails to resolve react-router-dom from the new test file. Use
MemoryRouter from react-router (the pattern used by QuickHarness)
to avoid the resolution issue.
- Reorder padding/gap in delegate-item to satisfy stylelint
- Wait for rendered state (not just mock call) in the empty and
  card-structure tests to avoid CI timing failures
- Re-prettier AccountAsset styles.scss
Restore assets_available, other_data, not_available, percent_of_supply,
and currency_toggle_help at their original positions. These were added
earlier in this branch and should be preserved even if not yet wired up.
Comment thread src/containers/Accounts/test/index.test.tsx
Comment thread public/locales/en-US/translations.json
Updates the PermissionDelegation mock to return a testid element and
adds a getByTestId assertion alongside the other child-component checks
in the 'renders static parts' test.
@cybele-ripple

Copy link
Copy Markdown
Contributor Author

Not sure if this is happening in another PR, but IMO the transaction page (maybe also the table detail section) should also show that the tx was sent by a delegate

Created an issue for this new feature

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.

3 participants