Skip to content

Conversation

@brozorec
Copy link
Contributor

@brozorec brozorec commented Jun 19, 2025

  • Add Access Control with Ownable and Roles
  • Add Stablecoin tab with allow- and blocklist
  • Refactor Fungible and NonFungible to use default_impl macro

Todo:

  • change version to 0.3.0 when released

@brozorec brozorec requested a review from Copilot June 19, 2025 13:40
@brozorec brozorec self-assigned this Jun 19, 2025

This comment was marked as outdated.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@brozorec brozorec requested a review from Copilot June 19, 2025 13:43
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR introduces stablecoin support by adding a new Stablecoin tab, refactors access control to support both Ownable and Roles, and updates the default versions along with a macro-based implementation for fungible and non‐fungible token contracts.

  • Adds a new Stablecoin module with allow-/blocklist limitations
  • Updates access control logic across contracts to include roles support
  • Refactors the contract function definition to leverage the default_impl macro

Reviewed Changes

Copilot reviewed 20 out of 33 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
packages/ui/src/stellar/AccessControlSection.svelte Implements UI for access control with reactive updates
packages/core/stellar/src/utils/version.ts Updates version constants to 0.3.0-rc.2
packages/core/stellar/src/utils/define-functions.ts Refactors function definitions to remove implicit name handling
packages/core/stellar/src/stablecoin.ts Adds new stablecoin logic and limitations handling
packages/core/stellar/src/set-access-control.ts Expands access options to include roles and adjusts access enforcement logic
Others (tests, API, generators, etc.) Updates to support stablecoin inclusion and access control consistency
Comments suppressed due to low confidence (1)

packages/core/stellar/src/stablecoin.ts:57

  • [nitpick] Using 'type' as a variable name can be confusing due to its overlap with the TypeScript keyword; consider renaming it to 'isAllowlist' or a similar descriptive name to improve code clarity.
  const type = mode === 'allowlist';

@brozorec brozorec marked this pull request as ready for review June 23, 2025 11:52
Copy link
Contributor

@ozgunozerk ozgunozerk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking great in general, big chunk of work, thanks 💯

After the comments have resolved, should be good to go. Will test the webapp in the meantime and will let you know if I find any bug 👍

Co-authored-by: Eric Lau <ericglau@outlook.com>
Copy link
Member

@ericglau ericglau left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks for the great work!

@brozorec brozorec enabled auto-merge (squash) July 3, 2025 14:54
@brozorec brozorec disabled auto-merge July 3, 2025 15:28
@brozorec brozorec merged commit 4b86b07 into OpenZeppelin:master Jul 3, 2025
15 checks passed
@github-actions github-actions bot locked and limited conversation to collaborators Jul 3, 2025
@brozorec brozorec deleted the stablecoin branch July 3, 2025 15:40
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants