Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace ERC-165 with SRC-5 (Update Interface Ids) #637

Merged
merged 10 commits into from Jul 2, 2023

Conversation

ericnordelo
Copy link
Member

@ericnordelo ericnordelo commented Jun 20, 2023

This PR updates the following ids, to the SNIP-5 standard:

Also, replaces ERC165 with SRC5.

  • ISRC5_ID
const ISRC5_ID: felt252 = 0x3f918d17e5ee77373b56385708f855659a07f75997f365cf87748628532a055;

// Interface
trait ISRC5 {
    fn supports_interface(interface_id: felt252) -> bool;
}

// Signatures from SNIP-5
[
   'supports_interface(felt252)->E((),())',
]
  • IACCOUNT_ID
const IACCOUNT_ID: felt252 = 0x36c738c1c375b993078fe6b517d477e5a3c9b104e40c04662c4bdd3e2f5fa4a;

// Interface
trait IAccount {
    fn __execute__(calls: Array<Call>) -> Array<Span<felt252>>;
    fn __validate__(calls: Array<Call>) -> felt252;
    fn __validate_declare__(class_hash: felt252) -> felt252;
    fn is_valid_signature(message: felt252, signature: Array<felt252>) -> u32;
    fn supports_interface(interface_id: felt252) -> bool;
}

// Signatures from SNIP-5
[
   '__execute__(Array<(ContractAddress,felt252,Array<felt252>)>)->Array<(@Array<felt252>)>',
    '__validate__(Array<(ContractAddress,felt252,Array<felt252>)>)->felt252',
    '__validate_declare__(felt252)->felt252',
    'is_valid_signature(felt252,Array<felt252>)->u32',
    'supports_interface(felt252)->E((),())',
]
  • IERC721_ID
const IERC721_ID: felt252 = 0x33eb2f84c309543403fd69f0d0f363781ef06ef6faeb0131ff16ea3175bd943;

// Interface
trait IERC721 {
    fn balance_of(account: ContractAddress) -> u256;
    fn owner_of(token_id: u256) -> ContractAddress;
    fn transfer_from(from: ContractAddress, to: ContractAddress, token_id: u256);
    fn safe_transfer_from(
        from: ContractAddress, to: ContractAddress, token_id: u256, data: Span<felt252>
    );
    fn approve(to: ContractAddress, token_id: u256);
    fn set_approval_for_all(operator: ContractAddress, approved: bool);
    fn get_approved(token_id: u256) -> ContractAddress;
    fn is_approved_for_all(owner: ContractAddress, operator: ContractAddress) -> bool;
}

// Signatures from SNIP-5
[
   "balance_of(ContractAddress)->(u128,u128)",
    "owner_of((u128,u128))->ContractAddress",
    "transfer_from(ContractAddress,ContractAddress,(u128,u128))",
    "safe_transfer_from(ContractAddress,ContractAddress,(u128,u128),(@Array<felt252>))",
    "approve(ContractAddress,(u128,u128))",
    "set_approval_for_all(ContractAddress,E((),()))",
    "get_approved((u128,u128))->ContractAddress",
    "is_approved_for_all(ContractAddress,ContractAddress)->E((),())",
]
  • IERC721_RECEIVER_ID
const IERC721_RECEIVER_ID: felt252 = 0x3a0dff5f70d80458ad14ae37bb182a728e3c8cdda0402a5daa86620bdf910bc;

// Interface
trait IERC721Receiver {
    fn on_erc721_received(
        operator: ContractAddress, from: ContractAddress, token_id: u256, data: Span<felt252>
    ) -> felt252;
}

// Signatures from SNIP-5
[
   "on_erc721_received(ContractAddress,ContractAddress,(u128,u128),(@Array<felt252>))->felt252",
]
  • IERC721_METADATA_ID
const IERC721_METADATA_ID: felt252 = 0x6069a70848f907fa57668ba1875164eb4dcee693952468581406d131081bbd;

// Interface
trait IERC721Metadata {
    fn name() -> felt252;
    fn symbol() -> felt252;
    fn token_uri(token_id: u256) -> felt252;
}

// Signatures from SNIP-5
[
    "name()->felt252",
    "symbol()->felt252",
    "token_uri((u128,u128))->felt252",
]
  • IACCESSCONTROL_ID
const IACCESSCONTROL_ID: felt252 = 0x23700be02858dbe2ac4dc9c9f66d0b6b0ed81ec7f970ca6844500a56ff61751;

// Interface
trait IAccessControl {
    fn has_role(role: felt252, account: ContractAddress) -> bool;
    fn get_role_admin(role: felt252) -> felt252;
    fn grant_role(role: felt252, account: ContractAddress);
    fn revoke_role(role: felt252, account: ContractAddress);
    fn renounce_role(role: felt252, account: ContractAddress);
}

// Signatures from SNIP-5
[
    "has_role(felt252,ContractAddress)->E((),())",
    "get_role_admin(felt252)->felt252",
    "grant_role(felt252,ContractAddress)",
    "revoke_role(felt252,ContractAddress)",
    "renounce_role(felt252,ContractAddress)"
]
  • Tests
  • Tried the feature on a public network
  • Documentation

Copy link
Collaborator

@andrew-fleming andrew-fleming left a comment

Choose a reason for hiding this comment

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

Small nitpick, I'd update IACCOUNT_ID in the PR comment because it doesn't match:

const IACCOUNT_ID: felt252 = 0x161ab6ad32c5db670d95c8d430a19024784b4f88b39e4cf2f2cb9b1917fbcd5;

Otherwise, looks good to me!

@andrew-fleming andrew-fleming mentioned this pull request Jun 23, 2023
3 tasks
Copy link
Contributor

@martriay martriay left a comment

Choose a reason for hiding this comment

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

Looks good! I think we need to remove supports_interface from the Account ID interface (as we're not including it in other interfaces). But I guess that can wait the ad hoc PR we're working on, which is still waiting for design consensus with other account implementers.

src/openzeppelin/account/account.cairo Outdated Show resolved Hide resolved
src/openzeppelin/account/account.cairo Outdated Show resolved Hide resolved
src/openzeppelin/account/interface.cairo Outdated Show resolved Hide resolved
@ericnordelo
Copy link
Member Author

I fixed the IAccessControl interface id, after checking interfaces with src5-rs (I had a typo in the signatures :) ).

Copy link
Collaborator

@andrew-fleming andrew-fleming left a comment

Choose a reason for hiding this comment

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

Looking good, Eric! I left a small suggestion and question. It otherwise looks ready to me! I also tested the interface ids with src5-rs. Again, excellent work on that :)

src/openzeppelin/account/account.cairo Outdated Show resolved Hide resolved
src/openzeppelin/account/account.cairo Show resolved Hide resolved
src/openzeppelin/introspection/src5.cairo Outdated Show resolved Hide resolved
ericnordelo and others added 2 commits June 28, 2023 11:41
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Copy link
Collaborator

@andrew-fleming andrew-fleming left a comment

Choose a reason for hiding this comment

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

Looks good to me!

Copy link
Contributor

@martriay martriay left a comment

Choose a reason for hiding this comment

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

looks good to merge! left a final comment

@@ -20,7 +20,7 @@ const IERC721_RECEIVER_ID: felt252 =
// AccessControl
// See: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/access/IAccessControl.sol
const IACCESSCONTROL_ID: felt252 =
0x262988e98e77072d75a776162d7e30e5fe024a71909613481916261961df736;
0x23700be02858dbe2ac4dc9c9f66d0b6b0ed81ec7f970ca6844500a56ff61751;
Copy link
Contributor

Choose a reason for hiding this comment

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

i don't think having this constant duplicated here and in access/accesscontrol.cairo is a good idea. let's keep just one.

Copy link
Member Author

Choose a reason for hiding this comment

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

Your suggestion is just for AccessControl? All these constants are duplicated, and not a single one is being used from the constant module. Should I remove just AccessControl, or are you suggesting getting rid of the constants module? (at least current contents)

Copy link
Contributor

Choose a reason for hiding this comment

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

if all constants are already available from their respective modules and no single reference to this module exists (not even in tests) then we should remove it

Copy link
Member Author

Choose a reason for hiding this comment

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

There is no single reference indeed, but maybe it is better to let this for a separate PR? Even when it is a fairly small change, it will delay things. For example, should we add reference comments in the modules? that's not duplicated.

I can open a different issue and submit the PR removing the constants module if you agree.

@martriay martriay merged commit ba69328 into OpenZeppelin:cairo-1 Jul 2, 2023
1 check passed
martriay added a commit that referenced this pull request Sep 29, 2023
* fix: link (#545)

* add submodule

* update cairo

* add Cargo and Makefile

* update cairo

* add deps in cairo_project, create lib

* add presets

* add base lib

* add tests

* remove old cairo lib and interface

* remove unused import

* fix vars

* change external funcs to snake case

* remove unused import

* update cairo

* add tests for externals

* add bool assertions

* update cairo

* remove preset mods

* add IERC20 trait

* update cairo

* clean up test

* remove assertion

* update cairo

* simplify max_u256

* clarify error msg

* add erc165 + tests

* kickstart account module

* clean up python project. ready for rust/cairo1

* re-structure project

* re-structure project

* re-structure project

* update makefile

* bump submodule

* Update erc20 migration branch (#586)

* Change the spelling of "StarkNet" to "Starknet" (#557)

* fix: link (#545)

* change StarkNet to Starknet

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add Cargo and Makefile

* add deps in cairo_project, create lib

* add presets

* add base lib

* add tests

* remove old cairo lib and interface

* remove unused import

* fix vars

* change external funcs to snake case

* remove unused import

* add tests for externals

* add bool assertions

* remove preset mods

* add IERC20 trait

* clean up test

* remove assertion

* simplify max_u256

* clarify error msg

* clean up python project. ready for rust/cairo1

* add erc165 + tests

* kickstart account module

* re-structure project

* re-structure project

* re-structure project

* update makefile

* re-structure project

* update to felt252, add use ContractAddress

* formatting

* remove colons from storage, remove _mint from initializer

* add constructor test

* add comments

* fix format

* check error msg in tests

* set max_u256 as func

* update cairo

* update cargo

* revert doc commit

* remove __init__

* refix link

---------

Co-authored-by: kongtaoxing <69096526+kongtaoxing@users.noreply.github.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Migrate security/initializable (#592)

* update cairo

* fix path

* add security mod

* add initializable

* add tests

* Update src/openzeppelin/security/initializable.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore

* add internal macros

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Use zeroable::zero() instead of contract_address_const::<0>() (#598)

* use zeroable for address

* cleanup import

* Migrate security/pausable (#593)

* fix path

* add security mod

* add pausable

* add mock

* add tests

* add security mod

* update cargo

* update cairo

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore from _paused

* remove unused imports

* add test assertion for is_paused

* move mocks inside tests crate

* remove underscore

* add blank line

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* add utils and constants

* Revert "add utils and constants"

This reverts commit e86bcd2107b052e13c58a9af7907e1f82e427a60.

* Migrate ERC165 (#582)

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* add internal macro

* add deregister

---------

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* Migrate constants (#611)

* add utils and constants

* simplify role val

* add context comments for interface ids

* Set up new CI (#599)

* add lint and test

* fix name

* add md linter

* add header

* remove extra line

* add blank line

* remove env

* change name

* fix on condition

* change name

* fix formatting

* remove trailing comma in storage

* fix formatting (#613)

* Normalize error message style (#606)

* normalize error msg

* update cairo

* update Cargo

* fix test command

* update should_panic syntax

* use super for interface import

* Add `BoundedInt` and internal macros, update cairo (#600)

* update cairo

* update Cargo

* remove path flag

* refactor _spend_allowance with BoundedInt

* add BoundedInt for u256_max

* add internal macros

* update cairo

* update cairo

* update Cargo

* remove import

* update expected syntax

* remove redundant maxu256 fn

* update expected syntax

* Update src/openzeppelin/tests/test_erc20.cairo

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* use into trait

* use address zeroable in mod

* set cairo to alpha7

* update Cargo

---------

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* Migrate ownable (#604)

* add ownable

* add ownable tests

* simplify renounce

* fix formatting

* add internal macros

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* add test_transfer_ownership_from_zero

* update cairo to alpha7

* update Cargo

* fix expected syntax

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Update src/openzeppelin/token/erc20.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix set_caller_address

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate security/reentrancyguard (#590)

* add reentrancyguard

* update Cargo

* remove mytest

* add reentrancy mocks

* add utils

* finish tests

* remove unused func

* add comments

* clean up code

* clean up code

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore

* remove constructor in mock

* update interface name

* change count_this_recursive to count_external_recursive

* move mocks inside tests dir

* remove underscore

* update cairo to alpha7

* update Cargo

* add withdraw_gas

* fix formatting

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* remove duplicate import

* rename mod

* add mock interface

* finish tests

* update cairo

* add new line

* Update src/openzeppelin/tests/mocks/reentrancy_mock.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* import dispatchers

* fix formatting

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* add deploy fn to utils

* use deploy from utils

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate access control (#605)

* add accesscontrol

* add accesscontrol tests

* remove mock, add impl to contract

* fix formatting

* remove accesscontrol mock

* formatting, remove unused imports

* integrate erc165

* fix typo

* update cairo to alpha7

* update Cargo

* update expected syntax

* update expected syntax

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix storage mapping name

* rename impl

* add warning

* fix comment

* remove constructor, setup test constructor in setup

* fix format

* fix import format

* add test for granting already granted role

* add clarity to revoke role test

* add test for revoking already revoked role

* add test for renouncing already renounced role

* add test for revoked admin role losing privileges

* fix test_role_admin_cycle

* add target func as comment

* add default admin tests

* refactor tests, rename actors

* add tests for has_role and set_role_admin

* tidy up tests

* add general doc for events

* fix assert_only_role test

* remove redundant test

* remove unnecessary assertion

* remove duplicate test

* Update src/openzeppelin/access/accesscontrol.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix imports, define constants locally

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix test name

* bump cairo

* fix formatting

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Migrate account (#620)

* continue account implementation

* add missing account interface functions

* tidy up module

* fix validate

* bump cairo + account changes

* fix __execute__, add serde, rename felt>felt252

* tidy up code

* add account tests

* complete account implementation

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* clarify __execute__ guard

* add account tests

* add internals

* tidy up

* add internal macro

* add internal macro

* add deregister

* update erc165

* feat: refactor account and add validate_transaction test

* feat: work on span serde

* feat: add test for validate

* refactor: remove unnecessary imports

* refactor: tests

* feat: implement test_execute

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: update from review

* feat: format files

* feat: SpanSerde compiling version

* feat: update tests and interface

* feat: format file

* feat: add test for multicall

* feat: add more tests

* test: remove unused function

* refactor: update ERC20 interface and module

* feat: add impl again

* refactor: apply review comments

* test: execute out of gas

* refactor: is valid signature because of lack of short circuit condicionals

* refactor: apply updates from reviews

* feat: add SpanSerde implementation

* refactor: remove span_to_array

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update src/openzeppelin/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* test: update from review

* feat: splitting account interface and abi

* feat: add new account files

* remove underscore on mod api methods

* remove comment

* remove underscore

* move erc1271 id to interface

* remove unused import

* integrate deploy util

* add comments for validate dummy params

* add initializer

* change error msg

* add empty sig tests

* move test

* replace dummy args, fix comments

* fix formatting

* tidy up code

* add erc20 transfer call in execute test

* tidy up imports

* remove unused const

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC721 (#619)

* continue account implementation

* add missing account interface functions

* tidy up module

* fix validate

* bump cairo + account changes

* fix __execute__, add serde, rename felt>felt252

* tidy up code

* WIP ERC721

* make format

* fix dispatcher call

* clean

* working on tests

* replace match with `is_some()` and `is_none()` for readeability

* erc721 tests

* use Option.expect

* add account tests

* check panic reason

* rename _owner() to _owner_of()

* spacing

* complete account implementation

* apply recommandation for PR

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* check low level ownership int

* prefix test function with test_

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* clarify __execute__ guard

* add account tests

* add internals

* tidy up

* update ERC165 ids to u32

* apply sugestions from code review

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* update & expand tests

* update lock

* add internal macro

* add internal macro

* add deregister

* update erc165

* wip (dispatched issue)

* fix abi

* start array→span transition

* minimise account dependency

* add SpanSerde in utils

* add dual interfaces

* update test message. fix linter

* split interfaces from preset module

* fix linter

* rename metadata id var

* add camelCase to traits

* fully implement dual interface traits

* simplify _owner_of

* add constructor and getter tests

* add token_uri tests

* remove conflictive test

* add erc721receiver. add IERC721ABI

* add safe_transfer_from tests

* add safe_mint tests

* Update src/openzeppelin/token/erc721/interface.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move erc721 abi next to module

* address review comments

---------

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Dual interface dispatcher for ERC721 (#623)

* add dual interface dispatcher draft

* complete dual721 implementation

* fix format

* add felt252 <> bool casts

* simplify Felt252IntoBool

* make felt252 into -> try_into

* add base test suite

* implement most tests

* add mocks

* add tests for panic cases

* fix some tests

* fix format

* fix more tests

* fix tests

* apply review feedback

* normalize mock names

* add token_uri tests

* rename non implementing mock

* move comment

* upgrade to cairo 1.1.1

* Update src/openzeppelin/utils.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* address review comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Replace ERC-165 with SRC-5 (Update Interface Ids) (#637)

* feat: add src5 module

* refactor: interface ids and account standard interface

* refactor: naming convention

* refactor: separate interfaces

* feat: apply last SNIP update

* fix: account interface signature

* feat: apply updates from review

* fix: accesscontrol interface id

* Update src/openzeppelin/account/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply update from review

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Fix conflicts from the dual721 and src5 merge (#641)

* add abi to interfaces

* change u32 to felt

* Add camel support for ownable (#625)

* add camel support

* add camel tests

* nest ownable into dir

* move interface

* add dual ownable

* add const selectors

* add try_selector_with_fallback and bool impl

* nest access tests in test dirs

* move accesscontrol and ownable test mods

* move tests

* move tests

* add mocks

* add dual ownable tests

* add panic traits

* tidy up tests

* fix formatting

* remove comments

* fix hierarchy

* remove import comments

* remove comment

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove unused import

* fix camel dispatcher

* normalize assert error msg

* fix formatting

* remove redundant assertion

* change selector casing

* remove unused import

* fix comments, add ref for ignored tests

* fix comments

* remove panic trait

* bump to cairo v1.1.1

* update Cargo

* remove ignore from tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* remove selectors from constants

* add selectors to selectors.cairo

* remove selector bindings

* fix comment

* remove/fix comments

* fix conflicts

* Update src/openzeppelin/utils/selectors.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add camel support for access control (#626)

* add camel support

* add camel tests

* move accesscontrol into dir

* separate interface

* add try_selector_with_fallback and bool impl

* add const selectors

* add dual accesscontrol

* move access tests

* add panic trait

* add accesscontrol mocks

* add dual accesscontrol tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add comment to supportsInterface

* add tests for supports_interface

* remove comments

* alphabetize use clauses

* remove util panic trait

* remove unused imports

* remove unused imports

* remove unused import

* update selector casings

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix casing on target calls

* add space to comments

* remove comments, add ref with ignored tests

* remove unused imports

* remove selectors from constants

* add selectors to selectors mod

* fix formatting

* reorder selectors

* fix comment

* update interface id

* replace erc165 with src5

* fix conflicts

* replace u32 with felt

* add abi to interfaces

* remove ignore from tests

* fix formatting

* fix comment

* remove camel supportsInterface

* fix comment consistency

* Update src/openzeppelin/tests/access/test_dual_accesscontrol.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add append_serde

* change append to append_serde

* remove unused import

* remove bindings

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* erc20 dual dispatcher (#622)

* add camel methods

* update erc20 dispatcher path

* refactor tests, add tests for camel methods

* fix formatting

* add try_selector_with_fallback and bool impl

* add erc20 selectors

* add abi to traits

* add dual20 mocks

* add panic trait

* add dual20 mocks

* add dual20

* add dual20

* add dual20 tests

* tidy up tests

* move tests to token dir

* fix formatting

* clean up tests

* restructure token tests

* remove panic trait

* reorder imports

* remove unused imports

* fix comments

* update const selector casings

* remove comments

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* change target member to contract_address

* fix formatting

* fix dispatcher calls

* change dispatcher to dual_dispatcher

* reorder use clauses

* move selectors to selectors mod

* fix formatting

* reorder selectors

* remove duplicate selectors

* remove ignore

* simplify dispatcher vars

* fix comment

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix test constants

* add SerializedAppend trait

* integrate append_serde

* integrate append_serde and utils selector

* change u256 fns to constants

* change u256 fns to constants

* move dual721 test to token/, apply append_serde, change u256 fn to constant

* fix formatting

* add append_serde

* move append_serde to serde

* update append_serde path

* change dispatcher to IERC20

* remove unnecessary into()

* remove bindings

* add binding to empty arrays

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add `UnwrapAndCast` trait (#644)

* add unwrap_and_cast trait and impls

* use unwrap_and_cast

* tidy up code

* add UnwrapAndCastU8 impl

* reorder use clauses

* use unwrap_and_cast on view fns

* add test_dual721 mod (#648)

* Update account interface (#646)

* feat: update interface and ids

* refactor: format files

* feat: update from reviews

* Update src/openzeppelin/account/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Add camel support for Account (#647)

* feat: update interface and ids

* refactor: format files

* feat: update from reviews

* feat: add dual interface to account

* fix: tests

* feat: add tests

* feat: add more tests

* feat: apply review suggestions

* feat: apply review updates

* Update src/openzeppelin/tests/account/test_dual_account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Add src5 dual dispatcher (#659)

* add dual src5

* add dual src5 tests and mocks

* add felt impl

* remove unused imports, integrate unwrap_and_cast for felts

* add supports_interface to interface

* add supports_interface to erc721 interface

* add camelCase supportsInterface test

* add dual supports_interface to mocks

* add dual supports_interface tests

* add dual supports_interface to tests

* add comment

* fix formatting

* clean up test

* add comments

* remove unused imports

* fix interface

* fix src5 impl

* apply review suggestion

* Add dual case erc721 receiver (#649)

* add 721 holder

* add 721 receiver selectors

* add abis

* add dual receiver

* add dual receiver mocks

* add dual 721 receiver and holder mods

* add dual 721 receiver tests

* integrate dual case receiver

* remove camel supportsInterface

* add isrc5 impl

* add isrc5 impl

* fix formatting

* change receiver import

* remove unused mod

* add isrc5 impl

* remove mod

* fix formatting

* remove conflict

* add felt impl to UnwrapAndCast

* clean up mocks

* add camelCase ISRC5 impl

* add camelCase tests for safe methods

* fix test

* remove unused imports

* remove unused imports

* remove unused imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add transferFrom and safeTransferFrom tests

* fix comments

* fix comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add owner param to ownable initializer (#660)

* feat: add owner param to ownable initializer

* feat: apply review updates

* fix: remove unnecessary mut

* Update src/openzeppelin/tests/access/test_dual_ownable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Migrate SRC5 to Cairo 2 (#664)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* Migrate initializable to cairo2 (#661)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate Account to Cairo 2 (#666)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* fix: dual account tests

* fix: account tests

* feat: apply review updates

* Migrate pausable to cairo2 (#662)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* update pausable syntax

* update pausable tests

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify and clarify tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* use InternalImpl

* add external pausable impl

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate reentrancyguard to cairo2 (#663)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update reentrancyguard syntax

* add reentrancyguard mocks

* update reentrancyguard tests

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify and clarify tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* remove internal is_entered

* use internal contract state

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix import order

* change generic state to TState

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC721 to Cairo2 (#667)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* fix: dual account tests

* fix: account tests

* fix: mocks

* fix: dual721 tests

* fix: erc721 tests

* feat: apply review updates

* feat: apply review suggestions

* Migrate ownable to cairo2 (#665)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update ownable syntax

* add ownable_camel impl

* update syntax in ownable mocks

* update ownable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify internal fns

* add initializer

* fix constructor, tidy up code

* fix tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* start refactor

* change impls to external fns

* use IOwnableCamelOnly

* fix tests

* remove unneeded mut

* remove unneeded mut

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* change to TState

* fix formatting

* remove Ownable prefix in fn calls

* remove internal owner fn

* use internal state trait to read owner

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC20 to Cairo 2 (#669)

* feat: fix tests

* feat: apply review updates

* Migrate access control to cairo2 (#668)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update ownable syntax

* add ownable_camel impl

* update syntax in ownable mocks

* update ownable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify internal fns

* add initializer

* fix constructor, tidy up code

* fix tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* update syntax

* update mocks

* start updating tests

* start refactor

* change impls to external fns

* use IOwnableCamelOnly

* fix tests

* remove unneeded mut

* remove unneeded mut

* fix mocks

* simplify events

* change array syntax

* update syntax in tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add space between events

* fix generic state

* add space between events

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate to Scarb for cairo-2 (#671)

* Migrate to Scarb

* Hide tests module behind cfg

* Add spdx (#684)

* add spdx

* add spdx

* feat: sort imports (#679)

* Migrate upgrades (#603)

* add upgrades to lib

* add proxy mod

* update cairo

* update Cargo

* fix test command

* add upgrades

* fix spelling

* add upgrade test

* fix spelling

* add upgrade_and_call

* update cairo

* update Cargo

* add events

* tidy up code

* fix format

* update cairo to alpha7

* update Cargo

* fix expected syntax

* fix conflict

* update expected syntax

* formatting

* update cairo to rc0

* update Cargo

* fix import

* refactor mocks

* start test refactor

* simplify upgrades, add upgrade_and_call

* refactor mocks

* refactor upgrades

* refactor tests

* fix imports, add impl

* fix imports

* fix formatting

* add abis to mocks

* refactor tests with dispatchers

* fix formatting

* start migration

* update syntax

* update syntax in mocks

* fix tests

* add line

* remove line

* add upgradeable trait

* replace interface impl with trait impl

* fix formatting

* add assertion

* add tests for events

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move logic to internal impl

* add interface

* update paths

* fix formatting

* simplify imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove upgrade_and_call, test event in separate test

* remove upgrade_and_call

* remove unused import

* reorder imports, tidy up code

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for Ownable events (#675)

* feat: add tests for ownable events

* feat: improve tests

* Update src/tests/utils.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Add account events (#687)

* feat: add tests for ownable events

* define account events

* add event to set_public_key

* add event test

* change param name

* fix event emit param

* fix formatting

* add tests for events

* add default checks in tests

* feat: improve tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* reorder imports, remove Account prefix

* fix events

* fix formatting

* Update src/tests/utils.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* add event checks, use ZERO from constants

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for AccessControl events (#674)

* feat: add testing for events

* feat: add tests for ownable events

* feat: improve tests

* feat: apply review updates

* Add testing for Pausable events (#676)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for ERC20 events (#677)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* feat: add tests for erc20 events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add mint to erc721 preset constructor (#700)

* add _mint to constructor

* add constructor assertions

* fix formatting

* Add testing for ERC721 events (#678)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* feat: add tests for erc20 events

* feat: add tests for erc721 events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: add test helper for events

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update README and fix scarb package (#688)

* update README to cairo-2 and scarb usage. bump scarb package version

* update readme

fix linter issues

fix linter issues

fix linter issues

update readme

* add main to CI

* update readme

* update readme

* rename starknet

* fix linter

* update readme

* Update README.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Update README.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* update CONTRIBUTING

* fix linting

* Update CONTRIBUTING.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* apply review changes

* fix linter

* fix typo

---------

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Bump scarb and fix dual721 test context (#703)

* bump scarb and cairo version

* fix testing context

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* add rc version (#708)

* remove unused imports (#707)

* Upgrade Cairo version and Scarb version to latest releases (#712)

* 👽️ Update code due to breaking changes

* ⬆️ Upgrade scarb and cairo versions

* 💄 Code format

* bump antora (#715)

* Add selector inline macro/fix `tokenURI` (#724)

* update selectors

* use inline selector

* remove selectors file

* remove import

* fix camel tokenURI

* fix formatting

* re-add selectors mod

* import from selectors mod

* fix formatting

* import selector

* fix: naming convention (#732)

* feat: add Errors modules (#691)

* Update account docs (#709)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add Interface & Dispatchers docs (#730)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* add interface & dispatchers docs

* apply review feedback

* address feedback comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update overview docs (#735)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: update overview

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore from name_ and symbol_ (#738)

* Add prefixes to storage members (#743)

* feat: add prefixes

* Update src/access/accesscontrol/accesscontrol.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Sanitizing for release. (#736)

* refactor: sanitizing

* feat: sanitizing

* feat: apply review updates

* feat: apply review updates

* Update Access Control docs (#719)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* feat: update docs

* feat: update from account docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* feat: add event references

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* feat: apply review updates

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* feat: remove sn_keccak in comments

* feat: replace cairo-2 with replace-0.7.0

* feat: remove grayed-out areas

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add indexed keys to token events (#746)

* add indexed keys to events

* fix event assertions

* use pop_log from utils

* fix formatting

* remove event id from keys

* remove PartialEq from events

* revert event assertion changes

* fix sentence

* remove extra line

* fix comment

* add assert_indexed_keys

* apply assert_indexed_keys to tests

* fix formatting

* tidy up code

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove import

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update Introspection docs (#721)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* feat: update docs

* feat: update from account docs

* feat: update main page

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* feat: add event references

* feat: update API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/introspection.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/introspection.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/introspection.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/introspection.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/introspection.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/introspection.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/introspection.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/introspection.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

*…
martriay added a commit that referenced this pull request Oct 3, 2023
* fix: link (#545)

* add submodule

* update cairo

* add Cargo and Makefile

* update cairo

* add deps in cairo_project, create lib

* add presets

* add base lib

* add tests

* remove old cairo lib and interface

* remove unused import

* fix vars

* change external funcs to snake case

* remove unused import

* update cairo

* add tests for externals

* add bool assertions

* update cairo

* remove preset mods

* add IERC20 trait

* update cairo

* clean up test

* remove assertion

* update cairo

* simplify max_u256

* clarify error msg

* add erc165 + tests

* kickstart account module

* clean up python project. ready for rust/cairo1

* re-structure project

* re-structure project

* re-structure project

* update makefile

* bump submodule

* Update erc20 migration branch (#586)

* Change the spelling of "StarkNet" to "Starknet" (#557)

* fix: link (#545)

* change StarkNet to Starknet

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add Cargo and Makefile

* add deps in cairo_project, create lib

* add presets

* add base lib

* add tests

* remove old cairo lib and interface

* remove unused import

* fix vars

* change external funcs to snake case

* remove unused import

* add tests for externals

* add bool assertions

* remove preset mods

* add IERC20 trait

* clean up test

* remove assertion

* simplify max_u256

* clarify error msg

* clean up python project. ready for rust/cairo1

* add erc165 + tests

* kickstart account module

* re-structure project

* re-structure project

* re-structure project

* update makefile

* re-structure project

* update to felt252, add use ContractAddress

* formatting

* remove colons from storage, remove _mint from initializer

* add constructor test

* add comments

* fix format

* check error msg in tests

* set max_u256 as func

* update cairo

* update cargo

* revert doc commit

* remove __init__

* refix link

---------

Co-authored-by: kongtaoxing <69096526+kongtaoxing@users.noreply.github.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Migrate security/initializable (#592)

* update cairo

* fix path

* add security mod

* add initializable

* add tests

* Update src/openzeppelin/security/initializable.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore

* add internal macros

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Use zeroable::zero() instead of contract_address_const::<0>() (#598)

* use zeroable for address

* cleanup import

* Migrate security/pausable (#593)

* fix path

* add security mod

* add pausable

* add mock

* add tests

* add security mod

* update cargo

* update cairo

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore from _paused

* remove unused imports

* add test assertion for is_paused

* move mocks inside tests crate

* remove underscore

* add blank line

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* add utils and constants

* Revert "add utils and constants"

This reverts commit e86bcd2107b052e13c58a9af7907e1f82e427a60.

* Migrate ERC165 (#582)

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* add internal macro

* add deregister

---------

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* Migrate constants (#611)

* add utils and constants

* simplify role val

* add context comments for interface ids

* Set up new CI (#599)

* add lint and test

* fix name

* add md linter

* add header

* remove extra line

* add blank line

* remove env

* change name

* fix on condition

* change name

* fix formatting

* remove trailing comma in storage

* fix formatting (#613)

* Normalize error message style (#606)

* normalize error msg

* update cairo

* update Cargo

* fix test command

* update should_panic syntax

* use super for interface import

* Add `BoundedInt` and internal macros, update cairo (#600)

* update cairo

* update Cargo

* remove path flag

* refactor _spend_allowance with BoundedInt

* add BoundedInt for u256_max

* add internal macros

* update cairo

* update cairo

* update Cargo

* remove import

* update expected syntax

* remove redundant maxu256 fn

* update expected syntax

* Update src/openzeppelin/tests/test_erc20.cairo

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* use into trait

* use address zeroable in mod

* set cairo to alpha7

* update Cargo

---------

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* Migrate ownable (#604)

* add ownable

* add ownable tests

* simplify renounce

* fix formatting

* add internal macros

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* add test_transfer_ownership_from_zero

* update cairo to alpha7

* update Cargo

* fix expected syntax

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Update src/openzeppelin/token/erc20.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix set_caller_address

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate security/reentrancyguard (#590)

* add reentrancyguard

* update Cargo

* remove mytest

* add reentrancy mocks

* add utils

* finish tests

* remove unused func

* add comments

* clean up code

* clean up code

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore

* remove constructor in mock

* update interface name

* change count_this_recursive to count_external_recursive

* move mocks inside tests dir

* remove underscore

* update cairo to alpha7

* update Cargo

* add withdraw_gas

* fix formatting

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* remove duplicate import

* rename mod

* add mock interface

* finish tests

* update cairo

* add new line

* Update src/openzeppelin/tests/mocks/reentrancy_mock.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* import dispatchers

* fix formatting

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* add deploy fn to utils

* use deploy from utils

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate access control (#605)

* add accesscontrol

* add accesscontrol tests

* remove mock, add impl to contract

* fix formatting

* remove accesscontrol mock

* formatting, remove unused imports

* integrate erc165

* fix typo

* update cairo to alpha7

* update Cargo

* update expected syntax

* update expected syntax

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix storage mapping name

* rename impl

* add warning

* fix comment

* remove constructor, setup test constructor in setup

* fix format

* fix import format

* add test for granting already granted role

* add clarity to revoke role test

* add test for revoking already revoked role

* add test for renouncing already renounced role

* add test for revoked admin role losing privileges

* fix test_role_admin_cycle

* add target func as comment

* add default admin tests

* refactor tests, rename actors

* add tests for has_role and set_role_admin

* tidy up tests

* add general doc for events

* fix assert_only_role test

* remove redundant test

* remove unnecessary assertion

* remove duplicate test

* Update src/openzeppelin/access/accesscontrol.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix imports, define constants locally

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix test name

* bump cairo

* fix formatting

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Migrate account (#620)

* continue account implementation

* add missing account interface functions

* tidy up module

* fix validate

* bump cairo + account changes

* fix __execute__, add serde, rename felt>felt252

* tidy up code

* add account tests

* complete account implementation

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* clarify __execute__ guard

* add account tests

* add internals

* tidy up

* add internal macro

* add internal macro

* add deregister

* update erc165

* feat: refactor account and add validate_transaction test

* feat: work on span serde

* feat: add test for validate

* refactor: remove unnecessary imports

* refactor: tests

* feat: implement test_execute

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: update from review

* feat: format files

* feat: SpanSerde compiling version

* feat: update tests and interface

* feat: format file

* feat: add test for multicall

* feat: add more tests

* test: remove unused function

* refactor: update ERC20 interface and module

* feat: add impl again

* refactor: apply review comments

* test: execute out of gas

* refactor: is valid signature because of lack of short circuit condicionals

* refactor: apply updates from reviews

* feat: add SpanSerde implementation

* refactor: remove span_to_array

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update src/openzeppelin/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* test: update from review

* feat: splitting account interface and abi

* feat: add new account files

* remove underscore on mod api methods

* remove comment

* remove underscore

* move erc1271 id to interface

* remove unused import

* integrate deploy util

* add comments for validate dummy params

* add initializer

* change error msg

* add empty sig tests

* move test

* replace dummy args, fix comments

* fix formatting

* tidy up code

* add erc20 transfer call in execute test

* tidy up imports

* remove unused const

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC721 (#619)

* continue account implementation

* add missing account interface functions

* tidy up module

* fix validate

* bump cairo + account changes

* fix __execute__, add serde, rename felt>felt252

* tidy up code

* WIP ERC721

* make format

* fix dispatcher call

* clean

* working on tests

* replace match with `is_some()` and `is_none()` for readeability

* erc721 tests

* use Option.expect

* add account tests

* check panic reason

* rename _owner() to _owner_of()

* spacing

* complete account implementation

* apply recommandation for PR

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* check low level ownership int

* prefix test function with test_

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* clarify __execute__ guard

* add account tests

* add internals

* tidy up

* update ERC165 ids to u32

* apply sugestions from code review

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* update & expand tests

* update lock

* add internal macro

* add internal macro

* add deregister

* update erc165

* wip (dispatched issue)

* fix abi

* start array→span transition

* minimise account dependency

* add SpanSerde in utils

* add dual interfaces

* update test message. fix linter

* split interfaces from preset module

* fix linter

* rename metadata id var

* add camelCase to traits

* fully implement dual interface traits

* simplify _owner_of

* add constructor and getter tests

* add token_uri tests

* remove conflictive test

* add erc721receiver. add IERC721ABI

* add safe_transfer_from tests

* add safe_mint tests

* Update src/openzeppelin/token/erc721/interface.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move erc721 abi next to module

* address review comments

---------

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Dual interface dispatcher for ERC721 (#623)

* add dual interface dispatcher draft

* complete dual721 implementation

* fix format

* add felt252 <> bool casts

* simplify Felt252IntoBool

* make felt252 into -> try_into

* add base test suite

* implement most tests

* add mocks

* add tests for panic cases

* fix some tests

* fix format

* fix more tests

* fix tests

* apply review feedback

* normalize mock names

* add token_uri tests

* rename non implementing mock

* move comment

* upgrade to cairo 1.1.1

* Update src/openzeppelin/utils.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* address review comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Replace ERC-165 with SRC-5 (Update Interface Ids) (#637)

* feat: add src5 module

* refactor: interface ids and account standard interface

* refactor: naming convention

* refactor: separate interfaces

* feat: apply last SNIP update

* fix: account interface signature

* feat: apply updates from review

* fix: accesscontrol interface id

* Update src/openzeppelin/account/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply update from review

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Fix conflicts from the dual721 and src5 merge (#641)

* add abi to interfaces

* change u32 to felt

* Add camel support for ownable (#625)

* add camel support

* add camel tests

* nest ownable into dir

* move interface

* add dual ownable

* add const selectors

* add try_selector_with_fallback and bool impl

* nest access tests in test dirs

* move accesscontrol and ownable test mods

* move tests

* move tests

* add mocks

* add dual ownable tests

* add panic traits

* tidy up tests

* fix formatting

* remove comments

* fix hierarchy

* remove import comments

* remove comment

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove unused import

* fix camel dispatcher

* normalize assert error msg

* fix formatting

* remove redundant assertion

* change selector casing

* remove unused import

* fix comments, add ref for ignored tests

* fix comments

* remove panic trait

* bump to cairo v1.1.1

* update Cargo

* remove ignore from tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* remove selectors from constants

* add selectors to selectors.cairo

* remove selector bindings

* fix comment

* remove/fix comments

* fix conflicts

* Update src/openzeppelin/utils/selectors.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add camel support for access control (#626)

* add camel support

* add camel tests

* move accesscontrol into dir

* separate interface

* add try_selector_with_fallback and bool impl

* add const selectors

* add dual accesscontrol

* move access tests

* add panic trait

* add accesscontrol mocks

* add dual accesscontrol tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add comment to supportsInterface

* add tests for supports_interface

* remove comments

* alphabetize use clauses

* remove util panic trait

* remove unused imports

* remove unused imports

* remove unused import

* update selector casings

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix casing on target calls

* add space to comments

* remove comments, add ref with ignored tests

* remove unused imports

* remove selectors from constants

* add selectors to selectors mod

* fix formatting

* reorder selectors

* fix comment

* update interface id

* replace erc165 with src5

* fix conflicts

* replace u32 with felt

* add abi to interfaces

* remove ignore from tests

* fix formatting

* fix comment

* remove camel supportsInterface

* fix comment consistency

* Update src/openzeppelin/tests/access/test_dual_accesscontrol.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add append_serde

* change append to append_serde

* remove unused import

* remove bindings

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* erc20 dual dispatcher (#622)

* add camel methods

* update erc20 dispatcher path

* refactor tests, add tests for camel methods

* fix formatting

* add try_selector_with_fallback and bool impl

* add erc20 selectors

* add abi to traits

* add dual20 mocks

* add panic trait

* add dual20 mocks

* add dual20

* add dual20

* add dual20 tests

* tidy up tests

* move tests to token dir

* fix formatting

* clean up tests

* restructure token tests

* remove panic trait

* reorder imports

* remove unused imports

* fix comments

* update const selector casings

* remove comments

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* change target member to contract_address

* fix formatting

* fix dispatcher calls

* change dispatcher to dual_dispatcher

* reorder use clauses

* move selectors to selectors mod

* fix formatting

* reorder selectors

* remove duplicate selectors

* remove ignore

* simplify dispatcher vars

* fix comment

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix test constants

* add SerializedAppend trait

* integrate append_serde

* integrate append_serde and utils selector

* change u256 fns to constants

* change u256 fns to constants

* move dual721 test to token/, apply append_serde, change u256 fn to constant

* fix formatting

* add append_serde

* move append_serde to serde

* update append_serde path

* change dispatcher to IERC20

* remove unnecessary into()

* remove bindings

* add binding to empty arrays

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add `UnwrapAndCast` trait (#644)

* add unwrap_and_cast trait and impls

* use unwrap_and_cast

* tidy up code

* add UnwrapAndCastU8 impl

* reorder use clauses

* use unwrap_and_cast on view fns

* add test_dual721 mod (#648)

* Update account interface (#646)

* feat: update interface and ids

* refactor: format files

* feat: update from reviews

* Update src/openzeppelin/account/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Add camel support for Account (#647)

* feat: update interface and ids

* refactor: format files

* feat: update from reviews

* feat: add dual interface to account

* fix: tests

* feat: add tests

* feat: add more tests

* feat: apply review suggestions

* feat: apply review updates

* Update src/openzeppelin/tests/account/test_dual_account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Add src5 dual dispatcher (#659)

* add dual src5

* add dual src5 tests and mocks

* add felt impl

* remove unused imports, integrate unwrap_and_cast for felts

* add supports_interface to interface

* add supports_interface to erc721 interface

* add camelCase supportsInterface test

* add dual supports_interface to mocks

* add dual supports_interface tests

* add dual supports_interface to tests

* add comment

* fix formatting

* clean up test

* add comments

* remove unused imports

* fix interface

* fix src5 impl

* apply review suggestion

* Add dual case erc721 receiver (#649)

* add 721 holder

* add 721 receiver selectors

* add abis

* add dual receiver

* add dual receiver mocks

* add dual 721 receiver and holder mods

* add dual 721 receiver tests

* integrate dual case receiver

* remove camel supportsInterface

* add isrc5 impl

* add isrc5 impl

* fix formatting

* change receiver import

* remove unused mod

* add isrc5 impl

* remove mod

* fix formatting

* remove conflict

* add felt impl to UnwrapAndCast

* clean up mocks

* add camelCase ISRC5 impl

* add camelCase tests for safe methods

* fix test

* remove unused imports

* remove unused imports

* remove unused imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add transferFrom and safeTransferFrom tests

* fix comments

* fix comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add owner param to ownable initializer (#660)

* feat: add owner param to ownable initializer

* feat: apply review updates

* fix: remove unnecessary mut

* Update src/openzeppelin/tests/access/test_dual_ownable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Migrate SRC5 to Cairo 2 (#664)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* Migrate initializable to cairo2 (#661)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate Account to Cairo 2 (#666)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* fix: dual account tests

* fix: account tests

* feat: apply review updates

* Migrate pausable to cairo2 (#662)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* update pausable syntax

* update pausable tests

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify and clarify tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* use InternalImpl

* add external pausable impl

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate reentrancyguard to cairo2 (#663)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update reentrancyguard syntax

* add reentrancyguard mocks

* update reentrancyguard tests

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify and clarify tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* remove internal is_entered

* use internal contract state

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix import order

* change generic state to TState

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC721 to Cairo2 (#667)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* fix: dual account tests

* fix: account tests

* fix: mocks

* fix: dual721 tests

* fix: erc721 tests

* feat: apply review updates

* feat: apply review suggestions

* Migrate ownable to cairo2 (#665)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update ownable syntax

* add ownable_camel impl

* update syntax in ownable mocks

* update ownable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify internal fns

* add initializer

* fix constructor, tidy up code

* fix tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* start refactor

* change impls to external fns

* use IOwnableCamelOnly

* fix tests

* remove unneeded mut

* remove unneeded mut

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* change to TState

* fix formatting

* remove Ownable prefix in fn calls

* remove internal owner fn

* use internal state trait to read owner

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC20 to Cairo 2 (#669)

* feat: fix tests

* feat: apply review updates

* Migrate access control to cairo2 (#668)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update ownable syntax

* add ownable_camel impl

* update syntax in ownable mocks

* update ownable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify internal fns

* add initializer

* fix constructor, tidy up code

* fix tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* update syntax

* update mocks

* start updating tests

* start refactor

* change impls to external fns

* use IOwnableCamelOnly

* fix tests

* remove unneeded mut

* remove unneeded mut

* fix mocks

* simplify events

* change array syntax

* update syntax in tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add space between events

* fix generic state

* add space between events

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate to Scarb for cairo-2 (#671)

* Migrate to Scarb

* Hide tests module behind cfg

* Add spdx (#684)

* add spdx

* add spdx

* feat: sort imports (#679)

* start code comments

* start doc update

* fix typo

* finish internal descriptions

* fix comments

* finish api

* add spdx to containing items comments

* reorder heading

* Migrate upgrades (#603)

* add upgrades to lib

* add proxy mod

* update cairo

* update Cargo

* fix test command

* add upgrades

* fix spelling

* add upgrade test

* fix spelling

* add upgrade_and_call

* update cairo

* update Cargo

* add events

* tidy up code

* fix format

* update cairo to alpha7

* update Cargo

* fix expected syntax

* fix conflict

* update expected syntax

* formatting

* update cairo to rc0

* update Cargo

* fix import

* refactor mocks

* start test refactor

* simplify upgrades, add upgrade_and_call

* refactor mocks

* refactor upgrades

* refactor tests

* fix imports, add impl

* fix imports

* fix formatting

* add abis to mocks

* refactor tests with dispatchers

* fix formatting

* start migration

* update syntax

* update syntax in mocks

* fix tests

* add line

* remove line

* add upgradeable trait

* replace interface impl with trait impl

* fix formatting

* add assertion

* add tests for events

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move logic to internal impl

* add interface

* update paths

* fix formatting

* simplify imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove upgrade_and_call, test event in separate test

* remove upgrade_and_call

* remove unused import

* reorder imports, tidy up code

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for Ownable events (#675)

* feat: add tests for ownable events

* feat: improve tests

* Update src/tests/utils.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Add account events (#687)

* feat: add tests for ownable events

* define account events

* add event to set_public_key

* add event test

* change param name

* fix event emit param

* fix formatting

* add tests for events

* add default checks in tests

* feat: improve tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* reorder imports, remove Account prefix

* fix events

* fix formatting

* Update src/tests/utils.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* add event checks, use ZERO from constants

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add panics

* update compatibility, fix TState

* Add testing for AccessControl events (#674)

* feat: add testing for events

* feat: add tests for ownable events

* feat: improve tests

* feat: apply review updates

* Add testing for Pausable events (#676)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for ERC20 events (#677)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* feat: add tests for erc20 events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add mint to erc721 preset constructor (#700)

* add _mint to constructor

* add constructor assertions

* fix formatting

* Add testing for ERC721 events (#678)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* feat: add tests for erc20 events

* feat: add tests for erc721 events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: add test helper for events

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update README and fix scarb package (#688)

* update README to cairo-2 and scarb usage. bump scarb package version

* update readme

fix linter issues

fix linter issues

fix linter issues

update readme

* add main to CI

* update readme

* update readme

* rename starknet

* fix linter

* update readme

* Update README.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Update README.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* update CONTRIBUTING

* fix linting

* Update CONTRIBUTING.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* apply review changes

* fix linter

* fix typo

---------

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* fix returns format

* clean up api

* add panics to description

* fix allowance descriptions

* fix spdx

* clean up comments

* add safety section for _spend_allowance

* fix link

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* remove redundant line

* fix starknet casing

* remove Returns section

* remove headers, update refs

* change code block to js

* fix non-standard api

* fix formatting

* fix preset link

* remove panic sections

* add overview paragraph

* Bump scarb and fix dual721 test context (#703)

* bump scarb and cairo version

* fix testing context

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* add rc version (#708)

* remove unused imports (#707)

* Upgrade Cairo version and Scarb version to latest releases (#712)

* 👽️ Update code due to breaking changes

* ⬆️ Upgrade scarb and cairo versions

* 💄 Code format

* add erc20 api

* add api dir

* refactor erc20 docs

* change interface format, clean up links

* clean up links

* remove toc

* add toc

* bump antora (#715)

* Update docs/modules/ROOT/pages/erc20.adoc

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move and fix warning

* add sidebar collapse

* nest api in erc20 section

* add internals and update api

* add erc20 supply guide

* fix preset order

* fix decimals comment

* Add selector inline macro/fix `tokenURI` (#724)

* update selectors

* use inline selector

* remove selectors file

* remove import

* fix camel tokenURI

* fix formatting

* re-add selectors mod

* import from selectors mod

* fix formatting

* import selector

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove preset section sentence

* change theme to dark

* remove types from ierc20 list

* add erc20camel api

* add function headers

* fix camel func type

* add usage section

* add selector calculation difference

* remove toc

* add warning to example

* fix comment

* fix _mint comment

* fix: naming convention (#732)

* feat: add Errors modules (#691)

* add warning to example

* remove internal and external headings

* fix ierc20

* fix _transfer description

* change panics to requirements

* fix _approve description

* fix highlight

* fix usage sentence

* add custom decimals doc

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* change two colons to hyphen

* move decimals section to main page

* remove unused links

* normalize ids

* fix code block

* fix intro paragraph

* simplify sentence

* Update account docs (#709)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* fix example

* fix comment

* add parenthesis

* Add Interface & Dispatchers docs (#730)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* add interface & dispatchers docs

* apply review feedback

* address feedback comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* add headings in api

* remove underscore from name_ and symbol_

* Update overview docs (#735)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: update overview

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore from name_ and symbol_ (#738)

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move non-standard items under ierc20

* change ierc20 interface to erc20 abi

* add description to interface

* remove presets and extensions

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* add decimals warning

* fix api refs

* fix differences sentence

* Add prefixes to storage members (#743)

* feat: add prefixes

* Update src/access/accesscontrol/accesscontrol.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move reqs to abi

* fix links

* fix internal func descriptions

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* Sanitizing for release. (#736)

* refactor: sanitizing

* feat: sanitizing

* feat: apply review updates

* feat: apply review updates

* move decimals warning

* fix selectors sentence

* remove grayed-out subsections

* fix descriptions

* Update Access Control docs (#719)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* feat: update docs

* feat: update from account docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* feat: add event references

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* feat: apply review updates

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* feat: remove sn_keccak in comments

* feat: replace cairo-2 with replace-0.7.0

* feat: remove grayed-out areas

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add indexed keys to token events (#746)

* add indexed keys to events

* fix event assertions

* use pop_log from utils

* fix formatting

* remove event id from keys

* remove PartialEq from events

* revert event assertion changes

* fix sentence

* remove extra line

* fix comment

* add assert_indexed_keys

* apply assert_indexed_keys to tests

* fix formatting

* tidy up code

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove import

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update Introspection docs (#721)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* feat: update docs

* feat: update from account docs

* feat: update main page

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <mart…
ericnordelo added a commit that referenced this pull request Oct 10, 2023
* fix: link (#545)

* add submodule

* update cairo

* add Cargo and Makefile

* update cairo

* add deps in cairo_project, create lib

* add presets

* add base lib

* add tests

* remove old cairo lib and interface

* remove unused import

* fix vars

* change external funcs to snake case

* remove unused import

* update cairo

* add tests for externals

* add bool assertions

* update cairo

* remove preset mods

* add IERC20 trait

* update cairo

* clean up test

* remove assertion

* update cairo

* simplify max_u256

* clarify error msg

* add erc165 + tests

* kickstart account module

* clean up python project. ready for rust/cairo1

* re-structure project

* re-structure project

* re-structure project

* update makefile

* bump submodule

* Update erc20 migration branch (#586)

* Change the spelling of "StarkNet" to "Starknet" (#557)

* fix: link (#545)

* change StarkNet to Starknet

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add Cargo and Makefile

* add deps in cairo_project, create lib

* add presets

* add base lib

* add tests

* remove old cairo lib and interface

* remove unused import

* fix vars

* change external funcs to snake case

* remove unused import

* add tests for externals

* add bool assertions

* remove preset mods

* add IERC20 trait

* clean up test

* remove assertion

* simplify max_u256

* clarify error msg

* clean up python project. ready for rust/cairo1

* add erc165 + tests

* kickstart account module

* re-structure project

* re-structure project

* re-structure project

* update makefile

* re-structure project

* update to felt252, add use ContractAddress

* formatting

* remove colons from storage, remove _mint from initializer

* add constructor test

* add comments

* fix format

* check error msg in tests

* set max_u256 as func

* update cairo

* update cargo

* revert doc commit

* remove __init__

* refix link

---------

Co-authored-by: kongtaoxing <69096526+kongtaoxing@users.noreply.github.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Migrate security/initializable (#592)

* update cairo

* fix path

* add security mod

* add initializable

* add tests

* Update src/openzeppelin/security/initializable.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore

* add internal macros

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Use zeroable::zero() instead of contract_address_const::<0>() (#598)

* use zeroable for address

* cleanup import

* Migrate security/pausable (#593)

* fix path

* add security mod

* add pausable

* add mock

* add tests

* add security mod

* update cargo

* update cairo

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore from _paused

* remove unused imports

* add test assertion for is_paused

* move mocks inside tests crate

* remove underscore

* add blank line

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* add utils and constants

* Revert "add utils and constants"

This reverts commit e86bcd2107b052e13c58a9af7907e1f82e427a60.

* Migrate ERC165 (#582)

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* add internal macro

* add deregister

---------

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* Migrate constants (#611)

* add utils and constants

* simplify role val

* add context comments for interface ids

* Set up new CI (#599)

* add lint and test

* fix name

* add md linter

* add header

* remove extra line

* add blank line

* remove env

* change name

* fix on condition

* change name

* fix formatting

* remove trailing comma in storage

* fix formatting (#613)

* Normalize error message style (#606)

* normalize error msg

* update cairo

* update Cargo

* fix test command

* update should_panic syntax

* use super for interface import

* Add `BoundedInt` and internal macros, update cairo (#600)

* update cairo

* update Cargo

* remove path flag

* refactor _spend_allowance with BoundedInt

* add BoundedInt for u256_max

* add internal macros

* update cairo

* update cairo

* update Cargo

* remove import

* update expected syntax

* remove redundant maxu256 fn

* update expected syntax

* Update src/openzeppelin/tests/test_erc20.cairo

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* use into trait

* use address zeroable in mod

* set cairo to alpha7

* update Cargo

---------

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* Migrate ownable (#604)

* add ownable

* add ownable tests

* simplify renounce

* fix formatting

* add internal macros

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* add test_transfer_ownership_from_zero

* update cairo to alpha7

* update Cargo

* fix expected syntax

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Update src/openzeppelin/token/erc20.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix set_caller_address

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate security/reentrancyguard (#590)

* add reentrancyguard

* update Cargo

* remove mytest

* add reentrancy mocks

* add utils

* finish tests

* remove unused func

* add comments

* clean up code

* clean up code

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore

* remove constructor in mock

* update interface name

* change count_this_recursive to count_external_recursive

* move mocks inside tests dir

* remove underscore

* update cairo to alpha7

* update Cargo

* add withdraw_gas

* fix formatting

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* remove duplicate import

* rename mod

* add mock interface

* finish tests

* update cairo

* add new line

* Update src/openzeppelin/tests/mocks/reentrancy_mock.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* import dispatchers

* fix formatting

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* add deploy fn to utils

* use deploy from utils

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate access control (#605)

* add accesscontrol

* add accesscontrol tests

* remove mock, add impl to contract

* fix formatting

* remove accesscontrol mock

* formatting, remove unused imports

* integrate erc165

* fix typo

* update cairo to alpha7

* update Cargo

* update expected syntax

* update expected syntax

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix storage mapping name

* rename impl

* add warning

* fix comment

* remove constructor, setup test constructor in setup

* fix format

* fix import format

* add test for granting already granted role

* add clarity to revoke role test

* add test for revoking already revoked role

* add test for renouncing already renounced role

* add test for revoked admin role losing privileges

* fix test_role_admin_cycle

* add target func as comment

* add default admin tests

* refactor tests, rename actors

* add tests for has_role and set_role_admin

* tidy up tests

* add general doc for events

* fix assert_only_role test

* remove redundant test

* remove unnecessary assertion

* remove duplicate test

* Update src/openzeppelin/access/accesscontrol.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix imports, define constants locally

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix test name

* bump cairo

* fix formatting

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Migrate account (#620)

* continue account implementation

* add missing account interface functions

* tidy up module

* fix validate

* bump cairo + account changes

* fix __execute__, add serde, rename felt>felt252

* tidy up code

* add account tests

* complete account implementation

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* clarify __execute__ guard

* add account tests

* add internals

* tidy up

* add internal macro

* add internal macro

* add deregister

* update erc165

* feat: refactor account and add validate_transaction test

* feat: work on span serde

* feat: add test for validate

* refactor: remove unnecessary imports

* refactor: tests

* feat: implement test_execute

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: update from review

* feat: format files

* feat: SpanSerde compiling version

* feat: update tests and interface

* feat: format file

* feat: add test for multicall

* feat: add more tests

* test: remove unused function

* refactor: update ERC20 interface and module

* feat: add impl again

* refactor: apply review comments

* test: execute out of gas

* refactor: is valid signature because of lack of short circuit condicionals

* refactor: apply updates from reviews

* feat: add SpanSerde implementation

* refactor: remove span_to_array

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update src/openzeppelin/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* test: update from review

* feat: splitting account interface and abi

* feat: add new account files

* remove underscore on mod api methods

* remove comment

* remove underscore

* move erc1271 id to interface

* remove unused import

* integrate deploy util

* add comments for validate dummy params

* add initializer

* change error msg

* add empty sig tests

* move test

* replace dummy args, fix comments

* fix formatting

* tidy up code

* add erc20 transfer call in execute test

* tidy up imports

* remove unused const

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC721 (#619)

* continue account implementation

* add missing account interface functions

* tidy up module

* fix validate

* bump cairo + account changes

* fix __execute__, add serde, rename felt>felt252

* tidy up code

* WIP ERC721

* make format

* fix dispatcher call

* clean

* working on tests

* replace match with `is_some()` and `is_none()` for readeability

* erc721 tests

* use Option.expect

* add account tests

* check panic reason

* rename _owner() to _owner_of()

* spacing

* complete account implementation

* apply recommandation for PR

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* check low level ownership int

* prefix test function with test_

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* clarify __execute__ guard

* add account tests

* add internals

* tidy up

* update ERC165 ids to u32

* apply sugestions from code review

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* update & expand tests

* update lock

* add internal macro

* add internal macro

* add deregister

* update erc165

* wip (dispatched issue)

* fix abi

* start array→span transition

* minimise account dependency

* add SpanSerde in utils

* add dual interfaces

* update test message. fix linter

* split interfaces from preset module

* fix linter

* rename metadata id var

* add camelCase to traits

* fully implement dual interface traits

* simplify _owner_of

* add constructor and getter tests

* add token_uri tests

* remove conflictive test

* add erc721receiver. add IERC721ABI

* add safe_transfer_from tests

* add safe_mint tests

* Update src/openzeppelin/token/erc721/interface.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move erc721 abi next to module

* address review comments

---------

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Dual interface dispatcher for ERC721 (#623)

* add dual interface dispatcher draft

* complete dual721 implementation

* fix format

* add felt252 <> bool casts

* simplify Felt252IntoBool

* make felt252 into -> try_into

* add base test suite

* implement most tests

* add mocks

* add tests for panic cases

* fix some tests

* fix format

* fix more tests

* fix tests

* apply review feedback

* normalize mock names

* add token_uri tests

* rename non implementing mock

* move comment

* upgrade to cairo 1.1.1

* Update src/openzeppelin/utils.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* address review comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Replace ERC-165 with SRC-5 (Update Interface Ids) (#637)

* feat: add src5 module

* refactor: interface ids and account standard interface

* refactor: naming convention

* refactor: separate interfaces

* feat: apply last SNIP update

* fix: account interface signature

* feat: apply updates from review

* fix: accesscontrol interface id

* Update src/openzeppelin/account/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply update from review

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Fix conflicts from the dual721 and src5 merge (#641)

* add abi to interfaces

* change u32 to felt

* Add camel support for ownable (#625)

* add camel support

* add camel tests

* nest ownable into dir

* move interface

* add dual ownable

* add const selectors

* add try_selector_with_fallback and bool impl

* nest access tests in test dirs

* move accesscontrol and ownable test mods

* move tests

* move tests

* add mocks

* add dual ownable tests

* add panic traits

* tidy up tests

* fix formatting

* remove comments

* fix hierarchy

* remove import comments

* remove comment

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove unused import

* fix camel dispatcher

* normalize assert error msg

* fix formatting

* remove redundant assertion

* change selector casing

* remove unused import

* fix comments, add ref for ignored tests

* fix comments

* remove panic trait

* bump to cairo v1.1.1

* update Cargo

* remove ignore from tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* remove selectors from constants

* add selectors to selectors.cairo

* remove selector bindings

* fix comment

* remove/fix comments

* fix conflicts

* Update src/openzeppelin/utils/selectors.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add camel support for access control (#626)

* add camel support

* add camel tests

* move accesscontrol into dir

* separate interface

* add try_selector_with_fallback and bool impl

* add const selectors

* add dual accesscontrol

* move access tests

* add panic trait

* add accesscontrol mocks

* add dual accesscontrol tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add comment to supportsInterface

* add tests for supports_interface

* remove comments

* alphabetize use clauses

* remove util panic trait

* remove unused imports

* remove unused imports

* remove unused import

* update selector casings

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix casing on target calls

* add space to comments

* remove comments, add ref with ignored tests

* remove unused imports

* remove selectors from constants

* add selectors to selectors mod

* fix formatting

* reorder selectors

* fix comment

* update interface id

* replace erc165 with src5

* fix conflicts

* replace u32 with felt

* add abi to interfaces

* remove ignore from tests

* fix formatting

* fix comment

* remove camel supportsInterface

* fix comment consistency

* Update src/openzeppelin/tests/access/test_dual_accesscontrol.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add append_serde

* change append to append_serde

* remove unused import

* remove bindings

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* erc20 dual dispatcher (#622)

* add camel methods

* update erc20 dispatcher path

* refactor tests, add tests for camel methods

* fix formatting

* add try_selector_with_fallback and bool impl

* add erc20 selectors

* add abi to traits

* add dual20 mocks

* add panic trait

* add dual20 mocks

* add dual20

* add dual20

* add dual20 tests

* tidy up tests

* move tests to token dir

* fix formatting

* clean up tests

* restructure token tests

* remove panic trait

* reorder imports

* remove unused imports

* fix comments

* update const selector casings

* remove comments

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* change target member to contract_address

* fix formatting

* fix dispatcher calls

* change dispatcher to dual_dispatcher

* reorder use clauses

* move selectors to selectors mod

* fix formatting

* reorder selectors

* remove duplicate selectors

* remove ignore

* simplify dispatcher vars

* fix comment

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix test constants

* add SerializedAppend trait

* integrate append_serde

* integrate append_serde and utils selector

* change u256 fns to constants

* change u256 fns to constants

* move dual721 test to token/, apply append_serde, change u256 fn to constant

* fix formatting

* add append_serde

* move append_serde to serde

* update append_serde path

* change dispatcher to IERC20

* remove unnecessary into()

* remove bindings

* add binding to empty arrays

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add `UnwrapAndCast` trait (#644)

* add unwrap_and_cast trait and impls

* use unwrap_and_cast

* tidy up code

* add UnwrapAndCastU8 impl

* reorder use clauses

* use unwrap_and_cast on view fns

* add test_dual721 mod (#648)

* Update account interface (#646)

* feat: update interface and ids

* refactor: format files

* feat: update from reviews

* Update src/openzeppelin/account/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Add camel support for Account (#647)

* feat: update interface and ids

* refactor: format files

* feat: update from reviews

* feat: add dual interface to account

* fix: tests

* feat: add tests

* feat: add more tests

* feat: apply review suggestions

* feat: apply review updates

* Update src/openzeppelin/tests/account/test_dual_account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Add src5 dual dispatcher (#659)

* add dual src5

* add dual src5 tests and mocks

* add felt impl

* remove unused imports, integrate unwrap_and_cast for felts

* add supports_interface to interface

* add supports_interface to erc721 interface

* add camelCase supportsInterface test

* add dual supports_interface to mocks

* add dual supports_interface tests

* add dual supports_interface to tests

* add comment

* fix formatting

* clean up test

* add comments

* remove unused imports

* fix interface

* fix src5 impl

* apply review suggestion

* Add dual case erc721 receiver (#649)

* add 721 holder

* add 721 receiver selectors

* add abis

* add dual receiver

* add dual receiver mocks

* add dual 721 receiver and holder mods

* add dual 721 receiver tests

* integrate dual case receiver

* remove camel supportsInterface

* add isrc5 impl

* add isrc5 impl

* fix formatting

* change receiver import

* remove unused mod

* add isrc5 impl

* remove mod

* fix formatting

* remove conflict

* add felt impl to UnwrapAndCast

* clean up mocks

* add camelCase ISRC5 impl

* add camelCase tests for safe methods

* fix test

* remove unused imports

* remove unused imports

* remove unused imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add transferFrom and safeTransferFrom tests

* fix comments

* fix comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add owner param to ownable initializer (#660)

* feat: add owner param to ownable initializer

* feat: apply review updates

* fix: remove unnecessary mut

* Update src/openzeppelin/tests/access/test_dual_ownable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Migrate SRC5 to Cairo 2 (#664)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* Migrate initializable to cairo2 (#661)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate Account to Cairo 2 (#666)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* fix: dual account tests

* fix: account tests

* feat: apply review updates

* Migrate pausable to cairo2 (#662)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* update pausable syntax

* update pausable tests

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify and clarify tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* use InternalImpl

* add external pausable impl

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate reentrancyguard to cairo2 (#663)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update reentrancyguard syntax

* add reentrancyguard mocks

* update reentrancyguard tests

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify and clarify tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* remove internal is_entered

* use internal contract state

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix import order

* change generic state to TState

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC721 to Cairo2 (#667)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* fix: dual account tests

* fix: account tests

* fix: mocks

* fix: dual721 tests

* fix: erc721 tests

* feat: apply review updates

* feat: apply review suggestions

* Migrate ownable to cairo2 (#665)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update ownable syntax

* add ownable_camel impl

* update syntax in ownable mocks

* update ownable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify internal fns

* add initializer

* fix constructor, tidy up code

* fix tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* start refactor

* change impls to external fns

* use IOwnableCamelOnly

* fix tests

* remove unneeded mut

* remove unneeded mut

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* change to TState

* fix formatting

* remove Ownable prefix in fn calls

* remove internal owner fn

* use internal state trait to read owner

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC20 to Cairo 2 (#669)

* feat: fix tests

* feat: apply review updates

* Migrate access control to cairo2 (#668)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update ownable syntax

* add ownable_camel impl

* update syntax in ownable mocks

* update ownable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify internal fns

* add initializer

* fix constructor, tidy up code

* fix tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* update syntax

* update mocks

* start updating tests

* start refactor

* change impls to external fns

* use IOwnableCamelOnly

* fix tests

* remove unneeded mut

* remove unneeded mut

* fix mocks

* simplify events

* change array syntax

* update syntax in tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add space between events

* fix generic state

* add space between events

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate to Scarb for cairo-2 (#671)

* Migrate to Scarb

* Hide tests module behind cfg

* Add spdx (#684)

* add spdx

* add spdx

* feat: sort imports (#679)

* Migrate upgrades (#603)

* add upgrades to lib

* add proxy mod

* update cairo

* update Cargo

* fix test command

* add upgrades

* fix spelling

* add upgrade test

* fix spelling

* add upgrade_and_call

* update cairo

* update Cargo

* add events

* tidy up code

* fix format

* update cairo to alpha7

* update Cargo

* fix expected syntax

* fix conflict

* update expected syntax

* formatting

* update cairo to rc0

* update Cargo

* fix import

* refactor mocks

* start test refactor

* simplify upgrades, add upgrade_and_call

* refactor mocks

* refactor upgrades

* refactor tests

* fix imports, add impl

* fix imports

* fix formatting

* add abis to mocks

* refactor tests with dispatchers

* fix formatting

* start migration

* update syntax

* update syntax in mocks

* fix tests

* add line

* remove line

* add upgradeable trait

* replace interface impl with trait impl

* fix formatting

* add assertion

* add tests for events

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move logic to internal impl

* add interface

* update paths

* fix formatting

* simplify imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove upgrade_and_call, test event in separate test

* remove upgrade_and_call

* remove unused import

* reorder imports, tidy up code

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for Ownable events (#675)

* feat: add tests for ownable events

* feat: improve tests

* Update src/tests/utils.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Add account events (#687)

* feat: add tests for ownable events

* define account events

* add event to set_public_key

* add event test

* change param name

* fix event emit param

* fix formatting

* add tests for events

* add default checks in tests

* feat: improve tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* reorder imports, remove Account prefix

* fix events

* fix formatting

* Update src/tests/utils.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* add event checks, use ZERO from constants

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for AccessControl events (#674)

* feat: add testing for events

* feat: add tests for ownable events

* feat: improve tests

* feat: apply review updates

* Add testing for Pausable events (#676)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for ERC20 events (#677)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* feat: add tests for erc20 events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add mint to erc721 preset constructor (#700)

* add _mint to constructor

* add constructor assertions

* fix formatting

* Add testing for ERC721 events (#678)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* feat: add tests for erc20 events

* feat: add tests for erc721 events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: add test helper for events

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update README and fix scarb package (#688)

* update README to cairo-2 and scarb usage. bump scarb package version

* update readme

fix linter issues

fix linter issues

fix linter issues

update readme

* add main to CI

* update readme

* update readme

* rename starknet

* fix linter

* update readme

* Update README.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Update README.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* update CONTRIBUTING

* fix linting

* Update CONTRIBUTING.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* apply review changes

* fix linter

* fix typo

---------

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Bump scarb and fix dual721 test context (#703)

* bump scarb and cairo version

* fix testing context

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* add rc version (#708)

* remove unused imports (#707)

* Upgrade Cairo version and Scarb version to latest releases (#712)

* 👽️ Update code due to breaking changes

* ⬆️ Upgrade scarb and cairo versions

* 💄 Code format

* bump antora (#715)

* Add selector inline macro/fix `tokenURI` (#724)

* update selectors

* use inline selector

* remove selectors file

* remove import

* fix camel tokenURI

* fix formatting

* re-add selectors mod

* import from selectors mod

* fix formatting

* import selector

* fix: naming convention (#732)

* feat: add Errors modules (#691)

* Update account docs (#709)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add Interface & Dispatchers docs (#730)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* add interface & dispatchers docs

* apply review feedback

* address feedback comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update overview docs (#735)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: update overview

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore from name_ and symbol_ (#738)

* Add prefixes to storage members (#743)

* feat: add prefixes

* Update src/access/accesscontrol/accesscontrol.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Sanitizing for release. (#736)

* refactor: sanitizing

* feat: sanitizing

* feat: apply review updates

* feat: apply review updates

* feat: update logic

* feat: apply review updates

* feat: remove unnecesary imports

* feat: add in-code comments

* feat: apply review updates

* Update docs/modules/ROOT/pages/introspection.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update src/introspection/src5.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: bump scarb

---------

Co-authored-by: Andrew <fleming-andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: kongtaoxing <69096526+kongtaoxing@users.noreply.github.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: maciektr <mtratnowiecki@gmail.com>
Co-authored-by: Bal7hazar @ Carbonable <bal7hazar@proton.me>
ericnordelo added a commit that referenced this pull request Oct 12, 2023
* fix: link (#545)

* add submodule

* update cairo

* add Cargo and Makefile

* update cairo

* add deps in cairo_project, create lib

* add presets

* add base lib

* add tests

* remove old cairo lib and interface

* remove unused import

* fix vars

* change external funcs to snake case

* remove unused import

* update cairo

* add tests for externals

* add bool assertions

* update cairo

* remove preset mods

* add IERC20 trait

* update cairo

* clean up test

* remove assertion

* update cairo

* simplify max_u256

* clarify error msg

* add erc165 + tests

* kickstart account module

* clean up python project. ready for rust/cairo1

* re-structure project

* re-structure project

* re-structure project

* update makefile

* bump submodule

* Update erc20 migration branch (#586)

* Change the spelling of "StarkNet" to "Starknet" (#557)

* fix: link (#545)

* change StarkNet to Starknet

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add Cargo and Makefile

* add deps in cairo_project, create lib

* add presets

* add base lib

* add tests

* remove old cairo lib and interface

* remove unused import

* fix vars

* change external funcs to snake case

* remove unused import

* add tests for externals

* add bool assertions

* remove preset mods

* add IERC20 trait

* clean up test

* remove assertion

* simplify max_u256

* clarify error msg

* clean up python project. ready for rust/cairo1

* add erc165 + tests

* kickstart account module

* re-structure project

* re-structure project

* re-structure project

* update makefile

* re-structure project

* update to felt252, add use ContractAddress

* formatting

* remove colons from storage, remove _mint from initializer

* add constructor test

* add comments

* fix format

* check error msg in tests

* set max_u256 as func

* update cairo

* update cargo

* revert doc commit

* remove __init__

* refix link

---------

Co-authored-by: kongtaoxing <69096526+kongtaoxing@users.noreply.github.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Migrate security/initializable (#592)

* update cairo

* fix path

* add security mod

* add initializable

* add tests

* Update src/openzeppelin/security/initializable.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore

* add internal macros

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Use zeroable::zero() instead of contract_address_const::<0>() (#598)

* use zeroable for address

* cleanup import

* Migrate security/pausable (#593)

* fix path

* add security mod

* add pausable

* add mock

* add tests

* add security mod

* update cargo

* update cairo

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore from _paused

* remove unused imports

* add test assertion for is_paused

* move mocks inside tests crate

* remove underscore

* add blank line

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* add utils and constants

* Revert "add utils and constants"

This reverts commit e86bcd2107b052e13c58a9af7907e1f82e427a60.

* Migrate ERC165 (#582)

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* add internal macro

* add deregister

---------

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* Migrate constants (#611)

* add utils and constants

* simplify role val

* add context comments for interface ids

* Set up new CI (#599)

* add lint and test

* fix name

* add md linter

* add header

* remove extra line

* add blank line

* remove env

* change name

* fix on condition

* change name

* fix formatting

* remove trailing comma in storage

* fix formatting (#613)

* Normalize error message style (#606)

* normalize error msg

* update cairo

* update Cargo

* fix test command

* update should_panic syntax

* use super for interface import

* Add `BoundedInt` and internal macros, update cairo (#600)

* update cairo

* update Cargo

* remove path flag

* refactor _spend_allowance with BoundedInt

* add BoundedInt for u256_max

* add internal macros

* update cairo

* update cairo

* update Cargo

* remove import

* update expected syntax

* remove redundant maxu256 fn

* update expected syntax

* Update src/openzeppelin/tests/test_erc20.cairo

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* use into trait

* use address zeroable in mod

* set cairo to alpha7

* update Cargo

---------

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* Migrate ownable (#604)

* add ownable

* add ownable tests

* simplify renounce

* fix formatting

* add internal macros

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* add test_transfer_ownership_from_zero

* update cairo to alpha7

* update Cargo

* fix expected syntax

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Update src/openzeppelin/token/erc20.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix set_caller_address

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate security/reentrancyguard (#590)

* add reentrancyguard

* update Cargo

* remove mytest

* add reentrancy mocks

* add utils

* finish tests

* remove unused func

* add comments

* clean up code

* clean up code

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore

* remove constructor in mock

* update interface name

* change count_this_recursive to count_external_recursive

* move mocks inside tests dir

* remove underscore

* update cairo to alpha7

* update Cargo

* add withdraw_gas

* fix formatting

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* remove duplicate import

* rename mod

* add mock interface

* finish tests

* update cairo

* add new line

* Update src/openzeppelin/tests/mocks/reentrancy_mock.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* import dispatchers

* fix formatting

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* add deploy fn to utils

* use deploy from utils

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate access control (#605)

* add accesscontrol

* add accesscontrol tests

* remove mock, add impl to contract

* fix formatting

* remove accesscontrol mock

* formatting, remove unused imports

* integrate erc165

* fix typo

* update cairo to alpha7

* update Cargo

* update expected syntax

* update expected syntax

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix storage mapping name

* rename impl

* add warning

* fix comment

* remove constructor, setup test constructor in setup

* fix format

* fix import format

* add test for granting already granted role

* add clarity to revoke role test

* add test for revoking already revoked role

* add test for renouncing already renounced role

* add test for revoked admin role losing privileges

* fix test_role_admin_cycle

* add target func as comment

* add default admin tests

* refactor tests, rename actors

* add tests for has_role and set_role_admin

* tidy up tests

* add general doc for events

* fix assert_only_role test

* remove redundant test

* remove unnecessary assertion

* remove duplicate test

* Update src/openzeppelin/access/accesscontrol.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix imports, define constants locally

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix test name

* bump cairo

* fix formatting

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Migrate account (#620)

* continue account implementation

* add missing account interface functions

* tidy up module

* fix validate

* bump cairo + account changes

* fix __execute__, add serde, rename felt>felt252

* tidy up code

* add account tests

* complete account implementation

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* clarify __execute__ guard

* add account tests

* add internals

* tidy up

* add internal macro

* add internal macro

* add deregister

* update erc165

* feat: refactor account and add validate_transaction test

* feat: work on span serde

* feat: add test for validate

* refactor: remove unnecessary imports

* refactor: tests

* feat: implement test_execute

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: update from review

* feat: format files

* feat: SpanSerde compiling version

* feat: update tests and interface

* feat: format file

* feat: add test for multicall

* feat: add more tests

* test: remove unused function

* refactor: update ERC20 interface and module

* feat: add impl again

* refactor: apply review comments

* test: execute out of gas

* refactor: is valid signature because of lack of short circuit condicionals

* refactor: apply updates from reviews

* feat: add SpanSerde implementation

* refactor: remove span_to_array

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update src/openzeppelin/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* test: update from review

* feat: splitting account interface and abi

* feat: add new account files

* remove underscore on mod api methods

* remove comment

* remove underscore

* move erc1271 id to interface

* remove unused import

* integrate deploy util

* add comments for validate dummy params

* add initializer

* change error msg

* add empty sig tests

* move test

* replace dummy args, fix comments

* fix formatting

* tidy up code

* add erc20 transfer call in execute test

* tidy up imports

* remove unused const

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC721 (#619)

* continue account implementation

* add missing account interface functions

* tidy up module

* fix validate

* bump cairo + account changes

* fix __execute__, add serde, rename felt>felt252

* tidy up code

* WIP ERC721

* make format

* fix dispatcher call

* clean

* working on tests

* replace match with `is_some()` and `is_none()` for readeability

* erc721 tests

* use Option.expect

* add account tests

* check panic reason

* rename _owner() to _owner_of()

* spacing

* complete account implementation

* apply recommandation for PR

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* check low level ownership int

* prefix test function with test_

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* clarify __execute__ guard

* add account tests

* add internals

* tidy up

* update ERC165 ids to u32

* apply sugestions from code review

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* update & expand tests

* update lock

* add internal macro

* add internal macro

* add deregister

* update erc165

* wip (dispatched issue)

* fix abi

* start array→span transition

* minimise account dependency

* add SpanSerde in utils

* add dual interfaces

* update test message. fix linter

* split interfaces from preset module

* fix linter

* rename metadata id var

* add camelCase to traits

* fully implement dual interface traits

* simplify _owner_of

* add constructor and getter tests

* add token_uri tests

* remove conflictive test

* add erc721receiver. add IERC721ABI

* add safe_transfer_from tests

* add safe_mint tests

* Update src/openzeppelin/token/erc721/interface.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move erc721 abi next to module

* address review comments

---------

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Dual interface dispatcher for ERC721 (#623)

* add dual interface dispatcher draft

* complete dual721 implementation

* fix format

* add felt252 <> bool casts

* simplify Felt252IntoBool

* make felt252 into -> try_into

* add base test suite

* implement most tests

* add mocks

* add tests for panic cases

* fix some tests

* fix format

* fix more tests

* fix tests

* apply review feedback

* normalize mock names

* add token_uri tests

* rename non implementing mock

* move comment

* upgrade to cairo 1.1.1

* Update src/openzeppelin/utils.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* address review comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Replace ERC-165 with SRC-5 (Update Interface Ids) (#637)

* feat: add src5 module

* refactor: interface ids and account standard interface

* refactor: naming convention

* refactor: separate interfaces

* feat: apply last SNIP update

* fix: account interface signature

* feat: apply updates from review

* fix: accesscontrol interface id

* Update src/openzeppelin/account/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply update from review

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Fix conflicts from the dual721 and src5 merge (#641)

* add abi to interfaces

* change u32 to felt

* Add camel support for ownable (#625)

* add camel support

* add camel tests

* nest ownable into dir

* move interface

* add dual ownable

* add const selectors

* add try_selector_with_fallback and bool impl

* nest access tests in test dirs

* move accesscontrol and ownable test mods

* move tests

* move tests

* add mocks

* add dual ownable tests

* add panic traits

* tidy up tests

* fix formatting

* remove comments

* fix hierarchy

* remove import comments

* remove comment

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove unused import

* fix camel dispatcher

* normalize assert error msg

* fix formatting

* remove redundant assertion

* change selector casing

* remove unused import

* fix comments, add ref for ignored tests

* fix comments

* remove panic trait

* bump to cairo v1.1.1

* update Cargo

* remove ignore from tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* remove selectors from constants

* add selectors to selectors.cairo

* remove selector bindings

* fix comment

* remove/fix comments

* fix conflicts

* Update src/openzeppelin/utils/selectors.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add camel support for access control (#626)

* add camel support

* add camel tests

* move accesscontrol into dir

* separate interface

* add try_selector_with_fallback and bool impl

* add const selectors

* add dual accesscontrol

* move access tests

* add panic trait

* add accesscontrol mocks

* add dual accesscontrol tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add comment to supportsInterface

* add tests for supports_interface

* remove comments

* alphabetize use clauses

* remove util panic trait

* remove unused imports

* remove unused imports

* remove unused import

* update selector casings

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix casing on target calls

* add space to comments

* remove comments, add ref with ignored tests

* remove unused imports

* remove selectors from constants

* add selectors to selectors mod

* fix formatting

* reorder selectors

* fix comment

* update interface id

* replace erc165 with src5

* fix conflicts

* replace u32 with felt

* add abi to interfaces

* remove ignore from tests

* fix formatting

* fix comment

* remove camel supportsInterface

* fix comment consistency

* Update src/openzeppelin/tests/access/test_dual_accesscontrol.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add append_serde

* change append to append_serde

* remove unused import

* remove bindings

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* erc20 dual dispatcher (#622)

* add camel methods

* update erc20 dispatcher path

* refactor tests, add tests for camel methods

* fix formatting

* add try_selector_with_fallback and bool impl

* add erc20 selectors

* add abi to traits

* add dual20 mocks

* add panic trait

* add dual20 mocks

* add dual20

* add dual20

* add dual20 tests

* tidy up tests

* move tests to token dir

* fix formatting

* clean up tests

* restructure token tests

* remove panic trait

* reorder imports

* remove unused imports

* fix comments

* update const selector casings

* remove comments

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* change target member to contract_address

* fix formatting

* fix dispatcher calls

* change dispatcher to dual_dispatcher

* reorder use clauses

* move selectors to selectors mod

* fix formatting

* reorder selectors

* remove duplicate selectors

* remove ignore

* simplify dispatcher vars

* fix comment

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix test constants

* add SerializedAppend trait

* integrate append_serde

* integrate append_serde and utils selector

* change u256 fns to constants

* change u256 fns to constants

* move dual721 test to token/, apply append_serde, change u256 fn to constant

* fix formatting

* add append_serde

* move append_serde to serde

* update append_serde path

* change dispatcher to IERC20

* remove unnecessary into()

* remove bindings

* add binding to empty arrays

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add `UnwrapAndCast` trait (#644)

* add unwrap_and_cast trait and impls

* use unwrap_and_cast

* tidy up code

* add UnwrapAndCastU8 impl

* reorder use clauses

* use unwrap_and_cast on view fns

* add test_dual721 mod (#648)

* Update account interface (#646)

* feat: update interface and ids

* refactor: format files

* feat: update from reviews

* Update src/openzeppelin/account/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Add camel support for Account (#647)

* feat: update interface and ids

* refactor: format files

* feat: update from reviews

* feat: add dual interface to account

* fix: tests

* feat: add tests

* feat: add more tests

* feat: apply review suggestions

* feat: apply review updates

* Update src/openzeppelin/tests/account/test_dual_account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Add src5 dual dispatcher (#659)

* add dual src5

* add dual src5 tests and mocks

* add felt impl

* remove unused imports, integrate unwrap_and_cast for felts

* add supports_interface to interface

* add supports_interface to erc721 interface

* add camelCase supportsInterface test

* add dual supports_interface to mocks

* add dual supports_interface tests

* add dual supports_interface to tests

* add comment

* fix formatting

* clean up test

* add comments

* remove unused imports

* fix interface

* fix src5 impl

* apply review suggestion

* Add dual case erc721 receiver (#649)

* add 721 holder

* add 721 receiver selectors

* add abis

* add dual receiver

* add dual receiver mocks

* add dual 721 receiver and holder mods

* add dual 721 receiver tests

* integrate dual case receiver

* remove camel supportsInterface

* add isrc5 impl

* add isrc5 impl

* fix formatting

* change receiver import

* remove unused mod

* add isrc5 impl

* remove mod

* fix formatting

* remove conflict

* add felt impl to UnwrapAndCast

* clean up mocks

* add camelCase ISRC5 impl

* add camelCase tests for safe methods

* fix test

* remove unused imports

* remove unused imports

* remove unused imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add transferFrom and safeTransferFrom tests

* fix comments

* fix comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add owner param to ownable initializer (#660)

* feat: add owner param to ownable initializer

* feat: apply review updates

* fix: remove unnecessary mut

* Update src/openzeppelin/tests/access/test_dual_ownable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Migrate SRC5 to Cairo 2 (#664)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* Migrate initializable to cairo2 (#661)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate Account to Cairo 2 (#666)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* fix: dual account tests

* fix: account tests

* feat: apply review updates

* Migrate pausable to cairo2 (#662)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* update pausable syntax

* update pausable tests

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify and clarify tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* use InternalImpl

* add external pausable impl

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate reentrancyguard to cairo2 (#663)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update reentrancyguard syntax

* add reentrancyguard mocks

* update reentrancyguard tests

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify and clarify tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* remove internal is_entered

* use internal contract state

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix import order

* change generic state to TState

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC721 to Cairo2 (#667)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* fix: dual account tests

* fix: account tests

* fix: mocks

* fix: dual721 tests

* fix: erc721 tests

* feat: apply review updates

* feat: apply review suggestions

* Migrate ownable to cairo2 (#665)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update ownable syntax

* add ownable_camel impl

* update syntax in ownable mocks

* update ownable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify internal fns

* add initializer

* fix constructor, tidy up code

* fix tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* start refactor

* change impls to external fns

* use IOwnableCamelOnly

* fix tests

* remove unneeded mut

* remove unneeded mut

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* change to TState

* fix formatting

* remove Ownable prefix in fn calls

* remove internal owner fn

* use internal state trait to read owner

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC20 to Cairo 2 (#669)

* feat: fix tests

* feat: apply review updates

* Migrate access control to cairo2 (#668)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update ownable syntax

* add ownable_camel impl

* update syntax in ownable mocks

* update ownable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify internal fns

* add initializer

* fix constructor, tidy up code

* fix tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* update syntax

* update mocks

* start updating tests

* start refactor

* change impls to external fns

* use IOwnableCamelOnly

* fix tests

* remove unneeded mut

* remove unneeded mut

* fix mocks

* simplify events

* change array syntax

* update syntax in tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add space between events

* fix generic state

* add space between events

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate to Scarb for cairo-2 (#671)

* Migrate to Scarb

* Hide tests module behind cfg

* Add spdx (#684)

* add spdx

* add spdx

* feat: sort imports (#679)

* Migrate upgrades (#603)

* add upgrades to lib

* add proxy mod

* update cairo

* update Cargo

* fix test command

* add upgrades

* fix spelling

* add upgrade test

* fix spelling

* add upgrade_and_call

* update cairo

* update Cargo

* add events

* tidy up code

* fix format

* update cairo to alpha7

* update Cargo

* fix expected syntax

* fix conflict

* update expected syntax

* formatting

* update cairo to rc0

* update Cargo

* fix import

* refactor mocks

* start test refactor

* simplify upgrades, add upgrade_and_call

* refactor mocks

* refactor upgrades

* refactor tests

* fix imports, add impl

* fix imports

* fix formatting

* add abis to mocks

* refactor tests with dispatchers

* fix formatting

* start migration

* update syntax

* update syntax in mocks

* fix tests

* add line

* remove line

* add upgradeable trait

* replace interface impl with trait impl

* fix formatting

* add assertion

* add tests for events

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move logic to internal impl

* add interface

* update paths

* fix formatting

* simplify imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove upgrade_and_call, test event in separate test

* remove upgrade_and_call

* remove unused import

* reorder imports, tidy up code

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for Ownable events (#675)

* feat: add tests for ownable events

* feat: improve tests

* Update src/tests/utils.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Add account events (#687)

* feat: add tests for ownable events

* define account events

* add event to set_public_key

* add event test

* change param name

* fix event emit param

* fix formatting

* add tests for events

* add default checks in tests

* feat: improve tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* reorder imports, remove Account prefix

* fix events

* fix formatting

* Update src/tests/utils.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* add event checks, use ZERO from constants

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for AccessControl events (#674)

* feat: add testing for events

* feat: add tests for ownable events

* feat: improve tests

* feat: apply review updates

* Add testing for Pausable events (#676)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for ERC20 events (#677)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* feat: add tests for erc20 events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add mint to erc721 preset constructor (#700)

* add _mint to constructor

* add constructor assertions

* fix formatting

* Add testing for ERC721 events (#678)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* feat: add tests for erc20 events

* feat: add tests for erc721 events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: add test helper for events

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update README and fix scarb package (#688)

* update README to cairo-2 and scarb usage. bump scarb package version

* update readme

fix linter issues

fix linter issues

fix linter issues

update readme

* add main to CI

* update readme

* update readme

* rename starknet

* fix linter

* update readme

* Update README.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Update README.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* update CONTRIBUTING

* fix linting

* Update CONTRIBUTING.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* apply review changes

* fix linter

* fix typo

---------

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Bump scarb and fix dual721 test context (#703)

* bump scarb and cairo version

* fix testing context

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* add rc version (#708)

* remove unused imports (#707)

* Upgrade Cairo version and Scarb version to latest releases (#712)

* 👽️ Update code due to breaking changes

* ⬆️ Upgrade scarb and cairo versions

* 💄 Code format

* bump antora (#715)

* Add selector inline macro/fix `tokenURI` (#724)

* update selectors

* use inline selector

* remove selectors file

* remove import

* fix camel tokenURI

* fix formatting

* re-add selectors mod

* import from selectors mod

* fix formatting

* import selector

* fix: naming convention (#732)

* feat: add Errors modules (#691)

* Update account docs (#709)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add Interface & Dispatchers docs (#730)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* add interface & dispatchers docs

* apply review feedback

* address feedback comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update overview docs (#735)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: update overview

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore from name_ and symbol_ (#738)

* Add prefixes to storage members (#743)

* feat: add prefixes

* Update src/access/accesscontrol/accesscontrol.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Sanitizing for release. (#736)

* refactor: sanitizing

* feat: sanitizing

* feat: apply review updates

* feat: apply review updates

* feat: migrate logic

* feat: update workflow

* fix: docs

* feat: apply update reviews

* refactor: remove imports

* Update src/access/ownable/ownable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: add comments to camelCase functions

* fix: comment

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: update docs

* feat: update comments

* Update src/tests/utils.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew <fleming-andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: kongtaoxing <69096526+kongtaoxing@users.noreply.github.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: maciektr <mtratnowiecki@gmail.com>
Co-authored-by: Bal7hazar @ Carbonable <bal7hazar@proton.me>
ericnordelo added a commit that referenced this pull request Oct 18, 2023
* fix: link (#545)

* add submodule

* update cairo

* add Cargo and Makefile

* update cairo

* add deps in cairo_project, create lib

* add presets

* add base lib

* add tests

* remove old cairo lib and interface

* remove unused import

* fix vars

* change external funcs to snake case

* remove unused import

* update cairo

* add tests for externals

* add bool assertions

* update cairo

* remove preset mods

* add IERC20 trait

* update cairo

* clean up test

* remove assertion

* update cairo

* simplify max_u256

* clarify error msg

* add erc165 + tests

* kickstart account module

* clean up python project. ready for rust/cairo1

* re-structure project

* re-structure project

* re-structure project

* update makefile

* bump submodule

* Update erc20 migration branch (#586)

* Change the spelling of "StarkNet" to "Starknet" (#557)

* fix: link (#545)

* change StarkNet to Starknet

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add Cargo and Makefile

* add deps in cairo_project, create lib

* add presets

* add base lib

* add tests

* remove old cairo lib and interface

* remove unused import

* fix vars

* change external funcs to snake case

* remove unused import

* add tests for externals

* add bool assertions

* remove preset mods

* add IERC20 trait

* clean up test

* remove assertion

* simplify max_u256

* clarify error msg

* clean up python project. ready for rust/cairo1

* add erc165 + tests

* kickstart account module

* re-structure project

* re-structure project

* re-structure project

* update makefile

* re-structure project

* update to felt252, add use ContractAddress

* formatting

* remove colons from storage, remove _mint from initializer

* add constructor test

* add comments

* fix format

* check error msg in tests

* set max_u256 as func

* update cairo

* update cargo

* revert doc commit

* remove __init__

* refix link

---------

Co-authored-by: kongtaoxing <69096526+kongtaoxing@users.noreply.github.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Migrate security/initializable (#592)

* update cairo

* fix path

* add security mod

* add initializable

* add tests

* Update src/openzeppelin/security/initializable.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore

* add internal macros

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Use zeroable::zero() instead of contract_address_const::<0>() (#598)

* use zeroable for address

* cleanup import

* Migrate security/pausable (#593)

* fix path

* add security mod

* add pausable

* add mock

* add tests

* add security mod

* update cargo

* update cairo

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore from _paused

* remove unused imports

* add test assertion for is_paused

* move mocks inside tests crate

* remove underscore

* add blank line

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* add utils and constants

* Revert "add utils and constants"

This reverts commit e86bcd2107b052e13c58a9af7907e1f82e427a60.

* Migrate ERC165 (#582)

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* add internal macro

* add deregister

---------

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* Migrate constants (#611)

* add utils and constants

* simplify role val

* add context comments for interface ids

* Set up new CI (#599)

* add lint and test

* fix name

* add md linter

* add header

* remove extra line

* add blank line

* remove env

* change name

* fix on condition

* change name

* fix formatting

* remove trailing comma in storage

* fix formatting (#613)

* Normalize error message style (#606)

* normalize error msg

* update cairo

* update Cargo

* fix test command

* update should_panic syntax

* use super for interface import

* Add `BoundedInt` and internal macros, update cairo (#600)

* update cairo

* update Cargo

* remove path flag

* refactor _spend_allowance with BoundedInt

* add BoundedInt for u256_max

* add internal macros

* update cairo

* update cairo

* update Cargo

* remove import

* update expected syntax

* remove redundant maxu256 fn

* update expected syntax

* Update src/openzeppelin/tests/test_erc20.cairo

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* use into trait

* use address zeroable in mod

* set cairo to alpha7

* update Cargo

---------

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* Migrate ownable (#604)

* add ownable

* add ownable tests

* simplify renounce

* fix formatting

* add internal macros

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* add test_transfer_ownership_from_zero

* update cairo to alpha7

* update Cargo

* fix expected syntax

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Update src/openzeppelin/token/erc20.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix set_caller_address

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate security/reentrancyguard (#590)

* add reentrancyguard

* update Cargo

* remove mytest

* add reentrancy mocks

* add utils

* finish tests

* remove unused func

* add comments

* clean up code

* clean up code

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore

* remove constructor in mock

* update interface name

* change count_this_recursive to count_external_recursive

* move mocks inside tests dir

* remove underscore

* update cairo to alpha7

* update Cargo

* add withdraw_gas

* fix formatting

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* remove duplicate import

* rename mod

* add mock interface

* finish tests

* update cairo

* add new line

* Update src/openzeppelin/tests/mocks/reentrancy_mock.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* import dispatchers

* fix formatting

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* add deploy fn to utils

* use deploy from utils

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate access control (#605)

* add accesscontrol

* add accesscontrol tests

* remove mock, add impl to contract

* fix formatting

* remove accesscontrol mock

* formatting, remove unused imports

* integrate erc165

* fix typo

* update cairo to alpha7

* update Cargo

* update expected syntax

* update expected syntax

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix storage mapping name

* rename impl

* add warning

* fix comment

* remove constructor, setup test constructor in setup

* fix format

* fix import format

* add test for granting already granted role

* add clarity to revoke role test

* add test for revoking already revoked role

* add test for renouncing already renounced role

* add test for revoked admin role losing privileges

* fix test_role_admin_cycle

* add target func as comment

* add default admin tests

* refactor tests, rename actors

* add tests for has_role and set_role_admin

* tidy up tests

* add general doc for events

* fix assert_only_role test

* remove redundant test

* remove unnecessary assertion

* remove duplicate test

* Update src/openzeppelin/access/accesscontrol.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix imports, define constants locally

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix test name

* bump cairo

* fix formatting

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Migrate account (#620)

* continue account implementation

* add missing account interface functions

* tidy up module

* fix validate

* bump cairo + account changes

* fix __execute__, add serde, rename felt>felt252

* tidy up code

* add account tests

* complete account implementation

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* clarify __execute__ guard

* add account tests

* add internals

* tidy up

* add internal macro

* add internal macro

* add deregister

* update erc165

* feat: refactor account and add validate_transaction test

* feat: work on span serde

* feat: add test for validate

* refactor: remove unnecessary imports

* refactor: tests

* feat: implement test_execute

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: update from review

* feat: format files

* feat: SpanSerde compiling version

* feat: update tests and interface

* feat: format file

* feat: add test for multicall

* feat: add more tests

* test: remove unused function

* refactor: update ERC20 interface and module

* feat: add impl again

* refactor: apply review comments

* test: execute out of gas

* refactor: is valid signature because of lack of short circuit condicionals

* refactor: apply updates from reviews

* feat: add SpanSerde implementation

* refactor: remove span_to_array

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update src/openzeppelin/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* test: update from review

* feat: splitting account interface and abi

* feat: add new account files

* remove underscore on mod api methods

* remove comment

* remove underscore

* move erc1271 id to interface

* remove unused import

* integrate deploy util

* add comments for validate dummy params

* add initializer

* change error msg

* add empty sig tests

* move test

* replace dummy args, fix comments

* fix formatting

* tidy up code

* add erc20 transfer call in execute test

* tidy up imports

* remove unused const

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC721 (#619)

* continue account implementation

* add missing account interface functions

* tidy up module

* fix validate

* bump cairo + account changes

* fix __execute__, add serde, rename felt>felt252

* tidy up code

* WIP ERC721

* make format

* fix dispatcher call

* clean

* working on tests

* replace match with `is_some()` and `is_none()` for readeability

* erc721 tests

* use Option.expect

* add account tests

* check panic reason

* rename _owner() to _owner_of()

* spacing

* complete account implementation

* apply recommandation for PR

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* check low level ownership int

* prefix test function with test_

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* clarify __execute__ guard

* add account tests

* add internals

* tidy up

* update ERC165 ids to u32

* apply sugestions from code review

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* update & expand tests

* update lock

* add internal macro

* add internal macro

* add deregister

* update erc165

* wip (dispatched issue)

* fix abi

* start array→span transition

* minimise account dependency

* add SpanSerde in utils

* add dual interfaces

* update test message. fix linter

* split interfaces from preset module

* fix linter

* rename metadata id var

* add camelCase to traits

* fully implement dual interface traits

* simplify _owner_of

* add constructor and getter tests

* add token_uri tests

* remove conflictive test

* add erc721receiver. add IERC721ABI

* add safe_transfer_from tests

* add safe_mint tests

* Update src/openzeppelin/token/erc721/interface.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move erc721 abi next to module

* address review comments

---------

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Dual interface dispatcher for ERC721 (#623)

* add dual interface dispatcher draft

* complete dual721 implementation

* fix format

* add felt252 <> bool casts

* simplify Felt252IntoBool

* make felt252 into -> try_into

* add base test suite

* implement most tests

* add mocks

* add tests for panic cases

* fix some tests

* fix format

* fix more tests

* fix tests

* apply review feedback

* normalize mock names

* add token_uri tests

* rename non implementing mock

* move comment

* upgrade to cairo 1.1.1

* Update src/openzeppelin/utils.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* address review comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Replace ERC-165 with SRC-5 (Update Interface Ids) (#637)

* feat: add src5 module

* refactor: interface ids and account standard interface

* refactor: naming convention

* refactor: separate interfaces

* feat: apply last SNIP update

* fix: account interface signature

* feat: apply updates from review

* fix: accesscontrol interface id

* Update src/openzeppelin/account/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply update from review

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Fix conflicts from the dual721 and src5 merge (#641)

* add abi to interfaces

* change u32 to felt

* Add camel support for ownable (#625)

* add camel support

* add camel tests

* nest ownable into dir

* move interface

* add dual ownable

* add const selectors

* add try_selector_with_fallback and bool impl

* nest access tests in test dirs

* move accesscontrol and ownable test mods

* move tests

* move tests

* add mocks

* add dual ownable tests

* add panic traits

* tidy up tests

* fix formatting

* remove comments

* fix hierarchy

* remove import comments

* remove comment

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove unused import

* fix camel dispatcher

* normalize assert error msg

* fix formatting

* remove redundant assertion

* change selector casing

* remove unused import

* fix comments, add ref for ignored tests

* fix comments

* remove panic trait

* bump to cairo v1.1.1

* update Cargo

* remove ignore from tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* remove selectors from constants

* add selectors to selectors.cairo

* remove selector bindings

* fix comment

* remove/fix comments

* fix conflicts

* Update src/openzeppelin/utils/selectors.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add camel support for access control (#626)

* add camel support

* add camel tests

* move accesscontrol into dir

* separate interface

* add try_selector_with_fallback and bool impl

* add const selectors

* add dual accesscontrol

* move access tests

* add panic trait

* add accesscontrol mocks

* add dual accesscontrol tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add comment to supportsInterface

* add tests for supports_interface

* remove comments

* alphabetize use clauses

* remove util panic trait

* remove unused imports

* remove unused imports

* remove unused import

* update selector casings

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix casing on target calls

* add space to comments

* remove comments, add ref with ignored tests

* remove unused imports

* remove selectors from constants

* add selectors to selectors mod

* fix formatting

* reorder selectors

* fix comment

* update interface id

* replace erc165 with src5

* fix conflicts

* replace u32 with felt

* add abi to interfaces

* remove ignore from tests

* fix formatting

* fix comment

* remove camel supportsInterface

* fix comment consistency

* Update src/openzeppelin/tests/access/test_dual_accesscontrol.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add append_serde

* change append to append_serde

* remove unused import

* remove bindings

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* erc20 dual dispatcher (#622)

* add camel methods

* update erc20 dispatcher path

* refactor tests, add tests for camel methods

* fix formatting

* add try_selector_with_fallback and bool impl

* add erc20 selectors

* add abi to traits

* add dual20 mocks

* add panic trait

* add dual20 mocks

* add dual20

* add dual20

* add dual20 tests

* tidy up tests

* move tests to token dir

* fix formatting

* clean up tests

* restructure token tests

* remove panic trait

* reorder imports

* remove unused imports

* fix comments

* update const selector casings

* remove comments

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* change target member to contract_address

* fix formatting

* fix dispatcher calls

* change dispatcher to dual_dispatcher

* reorder use clauses

* move selectors to selectors mod

* fix formatting

* reorder selectors

* remove duplicate selectors

* remove ignore

* simplify dispatcher vars

* fix comment

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix test constants

* add SerializedAppend trait

* integrate append_serde

* integrate append_serde and utils selector

* change u256 fns to constants

* change u256 fns to constants

* move dual721 test to token/, apply append_serde, change u256 fn to constant

* fix formatting

* add append_serde

* move append_serde to serde

* update append_serde path

* change dispatcher to IERC20

* remove unnecessary into()

* remove bindings

* add binding to empty arrays

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add `UnwrapAndCast` trait (#644)

* add unwrap_and_cast trait and impls

* use unwrap_and_cast

* tidy up code

* add UnwrapAndCastU8 impl

* reorder use clauses

* use unwrap_and_cast on view fns

* add test_dual721 mod (#648)

* Update account interface (#646)

* feat: update interface and ids

* refactor: format files

* feat: update from reviews

* Update src/openzeppelin/account/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Add camel support for Account (#647)

* feat: update interface and ids

* refactor: format files

* feat: update from reviews

* feat: add dual interface to account

* fix: tests

* feat: add tests

* feat: add more tests

* feat: apply review suggestions

* feat: apply review updates

* Update src/openzeppelin/tests/account/test_dual_account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Add src5 dual dispatcher (#659)

* add dual src5

* add dual src5 tests and mocks

* add felt impl

* remove unused imports, integrate unwrap_and_cast for felts

* add supports_interface to interface

* add supports_interface to erc721 interface

* add camelCase supportsInterface test

* add dual supports_interface to mocks

* add dual supports_interface tests

* add dual supports_interface to tests

* add comment

* fix formatting

* clean up test

* add comments

* remove unused imports

* fix interface

* fix src5 impl

* apply review suggestion

* Add dual case erc721 receiver (#649)

* add 721 holder

* add 721 receiver selectors

* add abis

* add dual receiver

* add dual receiver mocks

* add dual 721 receiver and holder mods

* add dual 721 receiver tests

* integrate dual case receiver

* remove camel supportsInterface

* add isrc5 impl

* add isrc5 impl

* fix formatting

* change receiver import

* remove unused mod

* add isrc5 impl

* remove mod

* fix formatting

* remove conflict

* add felt impl to UnwrapAndCast

* clean up mocks

* add camelCase ISRC5 impl

* add camelCase tests for safe methods

* fix test

* remove unused imports

* remove unused imports

* remove unused imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add transferFrom and safeTransferFrom tests

* fix comments

* fix comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add owner param to ownable initializer (#660)

* feat: add owner param to ownable initializer

* feat: apply review updates

* fix: remove unnecessary mut

* Update src/openzeppelin/tests/access/test_dual_ownable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Migrate SRC5 to Cairo 2 (#664)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* Migrate initializable to cairo2 (#661)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate Account to Cairo 2 (#666)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* fix: dual account tests

* fix: account tests

* feat: apply review updates

* Migrate pausable to cairo2 (#662)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* update pausable syntax

* update pausable tests

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify and clarify tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* use InternalImpl

* add external pausable impl

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate reentrancyguard to cairo2 (#663)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update reentrancyguard syntax

* add reentrancyguard mocks

* update reentrancyguard tests

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify and clarify tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* remove internal is_entered

* use internal contract state

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix import order

* change generic state to TState

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC721 to Cairo2 (#667)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* fix: dual account tests

* fix: account tests

* fix: mocks

* fix: dual721 tests

* fix: erc721 tests

* feat: apply review updates

* feat: apply review suggestions

* Migrate ownable to cairo2 (#665)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update ownable syntax

* add ownable_camel impl

* update syntax in ownable mocks

* update ownable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify internal fns

* add initializer

* fix constructor, tidy up code

* fix tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* start refactor

* change impls to external fns

* use IOwnableCamelOnly

* fix tests

* remove unneeded mut

* remove unneeded mut

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* change to TState

* fix formatting

* remove Ownable prefix in fn calls

* remove internal owner fn

* use internal state trait to read owner

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC20 to Cairo 2 (#669)

* feat: fix tests

* feat: apply review updates

* Migrate access control to cairo2 (#668)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update ownable syntax

* add ownable_camel impl

* update syntax in ownable mocks

* update ownable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify internal fns

* add initializer

* fix constructor, tidy up code

* fix tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* update syntax

* update mocks

* start updating tests

* start refactor

* change impls to external fns

* use IOwnableCamelOnly

* fix tests

* remove unneeded mut

* remove unneeded mut

* fix mocks

* simplify events

* change array syntax

* update syntax in tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add space between events

* fix generic state

* add space between events

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate to Scarb for cairo-2 (#671)

* Migrate to Scarb

* Hide tests module behind cfg

* Add spdx (#684)

* add spdx

* add spdx

* feat: sort imports (#679)

* Migrate upgrades (#603)

* add upgrades to lib

* add proxy mod

* update cairo

* update Cargo

* fix test command

* add upgrades

* fix spelling

* add upgrade test

* fix spelling

* add upgrade_and_call

* update cairo

* update Cargo

* add events

* tidy up code

* fix format

* update cairo to alpha7

* update Cargo

* fix expected syntax

* fix conflict

* update expected syntax

* formatting

* update cairo to rc0

* update Cargo

* fix import

* refactor mocks

* start test refactor

* simplify upgrades, add upgrade_and_call

* refactor mocks

* refactor upgrades

* refactor tests

* fix imports, add impl

* fix imports

* fix formatting

* add abis to mocks

* refactor tests with dispatchers

* fix formatting

* start migration

* update syntax

* update syntax in mocks

* fix tests

* add line

* remove line

* add upgradeable trait

* replace interface impl with trait impl

* fix formatting

* add assertion

* add tests for events

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move logic to internal impl

* add interface

* update paths

* fix formatting

* simplify imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove upgrade_and_call, test event in separate test

* remove upgrade_and_call

* remove unused import

* reorder imports, tidy up code

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for Ownable events (#675)

* feat: add tests for ownable events

* feat: improve tests

* Update src/tests/utils.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Add account events (#687)

* feat: add tests for ownable events

* define account events

* add event to set_public_key

* add event test

* change param name

* fix event emit param

* fix formatting

* add tests for events

* add default checks in tests

* feat: improve tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* reorder imports, remove Account prefix

* fix events

* fix formatting

* Update src/tests/utils.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* add event checks, use ZERO from constants

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for AccessControl events (#674)

* feat: add testing for events

* feat: add tests for ownable events

* feat: improve tests

* feat: apply review updates

* Add testing for Pausable events (#676)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for ERC20 events (#677)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* feat: add tests for erc20 events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add mint to erc721 preset constructor (#700)

* add _mint to constructor

* add constructor assertions

* fix formatting

* Add testing for ERC721 events (#678)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* feat: add tests for erc20 events

* feat: add tests for erc721 events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: add test helper for events

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update README and fix scarb package (#688)

* update README to cairo-2 and scarb usage. bump scarb package version

* update readme

fix linter issues

fix linter issues

fix linter issues

update readme

* add main to CI

* update readme

* update readme

* rename starknet

* fix linter

* update readme

* Update README.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Update README.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* update CONTRIBUTING

* fix linting

* Update CONTRIBUTING.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* apply review changes

* fix linter

* fix typo

---------

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Bump scarb and fix dual721 test context (#703)

* bump scarb and cairo version

* fix testing context

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* add rc version (#708)

* remove unused imports (#707)

* Upgrade Cairo version and Scarb version to latest releases (#712)

* 👽️ Update code due to breaking changes

* ⬆️ Upgrade scarb and cairo versions

* 💄 Code format

* bump antora (#715)

* Add selector inline macro/fix `tokenURI` (#724)

* update selectors

* use inline selector

* remove selectors file

* remove import

* fix camel tokenURI

* fix formatting

* re-add selectors mod

* import from selectors mod

* fix formatting

* import selector

* fix: naming convention (#732)

* feat: add Errors modules (#691)

* Update account docs (#709)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add Interface & Dispatchers docs (#730)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* add interface & dispatchers docs

* apply review feedback

* address feedback comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update overview docs (#735)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: update overview

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore from name_ and symbol_ (#738)

* Add prefixes to storage members (#743)

* feat: add prefixes

* Update src/access/accesscontrol/accesscontrol.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Sanitizing for release. (#736)

* refactor: sanitizing

* feat: sanitizing

* feat: apply review updates

* feat: apply review updates

* feat: migrate logic

* feat: update workflow

* feat: update logic

* fix: docs

* feat: add main logic with dependencies

* feat: apply review updates

* feat: remove unnecesary imports

* feat: add in-code comments

* feat: apply review updates

* refactor: remove unnecessary trait

* feat: apply update reviews

* refactor: remove imports

* Update src/access/ownable/ownable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: add comments to camelCase functions

* fix: comment

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: update docs

* docs: add in-code documentation

* feat: update comments

* feat: apply review

* docs: update access page

* docs: update api

* feat: apply review updates

---------

Co-authored-by: Andrew <fleming-andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: kongtaoxing <69096526+kongtaoxing@users.noreply.github.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: maciektr <mtratnowiecki@gmail.com>
Co-authored-by: Bal7hazar @ Carbonable <bal7hazar@proton.me>
martriay added a commit that referenced this pull request Nov 26, 2023
* remove unused import

* update cairo

* add tests for externals

* add bool assertions

* update cairo

* remove preset mods

* add IERC20 trait

* update cairo

* clean up test

* remove assertion

* update cairo

* simplify max_u256

* clarify error msg

* add erc165 + tests

* kickstart account module

* clean up python project. ready for rust/cairo1

* re-structure project

* re-structure project

* re-structure project

* update makefile

* bump submodule

* Update erc20 migration branch (#586)

* Change the spelling of "StarkNet" to "Starknet" (#557)

* fix: link (#545)

* change StarkNet to Starknet

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add Cargo and Makefile

* add deps in cairo_project, create lib

* add presets

* add base lib

* add tests

* remove old cairo lib and interface

* remove unused import

* fix vars

* change external funcs to snake case

* remove unused import

* add tests for externals

* add bool assertions

* remove preset mods

* add IERC20 trait

* clean up test

* remove assertion

* simplify max_u256

* clarify error msg

* clean up python project. ready for rust/cairo1

* add erc165 + tests

* kickstart account module

* re-structure project

* re-structure project

* re-structure project

* update makefile

* re-structure project

* update to felt252, add use ContractAddress

* formatting

* remove colons from storage, remove _mint from initializer

* add constructor test

* add comments

* fix format

* check error msg in tests

* set max_u256 as func

* update cairo

* update cargo

* revert doc commit

* remove __init__

* refix link

---------

Co-authored-by: kongtaoxing <69096526+kongtaoxing@users.noreply.github.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Migrate security/initializable (#592)

* update cairo

* fix path

* add security mod

* add initializable

* add tests

* Update src/openzeppelin/security/initializable.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore

* add internal macros

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Use zeroable::zero() instead of contract_address_const::<0>() (#598)

* use zeroable for address

* cleanup import

* Migrate security/pausable (#593)

* fix path

* add security mod

* add pausable

* add mock

* add tests

* add security mod

* update cargo

* update cairo

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore from _paused

* remove unused imports

* add test assertion for is_paused

* move mocks inside tests crate

* remove underscore

* add blank line

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* add utils and constants

* Revert "add utils and constants"

This reverts commit e86bcd2107b052e13c58a9af7907e1f82e427a60.

* Migrate ERC165 (#582)

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* add internal macro

* add deregister

---------

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* Migrate constants (#611)

* add utils and constants

* simplify role val

* add context comments for interface ids

* Set up new CI (#599)

* add lint and test

* fix name

* add md linter

* add header

* remove extra line

* add blank line

* remove env

* change name

* fix on condition

* change name

* fix formatting

* remove trailing comma in storage

* fix formatting (#613)

* Normalize error message style (#606)

* normalize error msg

* update cairo

* update Cargo

* fix test command

* update should_panic syntax

* use super for interface import

* Add `BoundedInt` and internal macros, update cairo (#600)

* update cairo

* update Cargo

* remove path flag

* refactor _spend_allowance with BoundedInt

* add BoundedInt for u256_max

* add internal macros

* update cairo

* update cairo

* update Cargo

* remove import

* update expected syntax

* remove redundant maxu256 fn

* update expected syntax

* Update src/openzeppelin/tests/test_erc20.cairo

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* use into trait

* use address zeroable in mod

* set cairo to alpha7

* update Cargo

---------

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* Migrate ownable (#604)

* add ownable

* add ownable tests

* simplify renounce

* fix formatting

* add internal macros

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* add test_transfer_ownership_from_zero

* update cairo to alpha7

* update Cargo

* fix expected syntax

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Update src/openzeppelin/token/erc20.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix set_caller_address

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate security/reentrancyguard (#590)

* add reentrancyguard

* update Cargo

* remove mytest

* add reentrancy mocks

* add utils

* finish tests

* remove unused func

* add comments

* clean up code

* clean up code

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove underscore

* remove constructor in mock

* update interface name

* change count_this_recursive to count_external_recursive

* move mocks inside tests dir

* remove underscore

* update cairo to alpha7

* update Cargo

* add withdraw_gas

* fix formatting

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* remove duplicate import

* rename mod

* add mock interface

* finish tests

* update cairo

* add new line

* Update src/openzeppelin/tests/mocks/reentrancy_mock.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* import dispatchers

* fix formatting

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* add deploy fn to utils

* use deploy from utils

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate access control (#605)

* add accesscontrol

* add accesscontrol tests

* remove mock, add impl to contract

* fix formatting

* remove accesscontrol mock

* formatting, remove unused imports

* integrate erc165

* fix typo

* update cairo to alpha7

* update Cargo

* update expected syntax

* update expected syntax

* update cairo to rc0

* update Cargo

* fix import

* simplify imports

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix storage mapping name

* rename impl

* add warning

* fix comment

* remove constructor, setup test constructor in setup

* fix format

* fix import format

* add test for granting already granted role

* add clarity to revoke role test

* add test for revoking already revoked role

* add test for renouncing already renounced role

* add test for revoked admin role losing privileges

* fix test_role_admin_cycle

* add target func as comment

* add default admin tests

* refactor tests, rename actors

* add tests for has_role and set_role_admin

* tidy up tests

* add general doc for events

* fix assert_only_role test

* remove redundant test

* remove unnecessary assertion

* remove duplicate test

* Update src/openzeppelin/access/accesscontrol.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix imports, define constants locally

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix test name

* bump cairo

* fix formatting

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Migrate account (#620)

* continue account implementation

* add missing account interface functions

* tidy up module

* fix validate

* bump cairo + account changes

* fix __execute__, add serde, rename felt>felt252

* tidy up code

* add account tests

* complete account implementation

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* clarify __execute__ guard

* add account tests

* add internals

* tidy up

* add internal macro

* add internal macro

* add deregister

* update erc165

* feat: refactor account and add validate_transaction test

* feat: work on span serde

* feat: add test for validate

* refactor: remove unnecessary imports

* refactor: tests

* feat: implement test_execute

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: update from review

* feat: format files

* feat: SpanSerde compiling version

* feat: update tests and interface

* feat: format file

* feat: add test for multicall

* feat: add more tests

* test: remove unused function

* refactor: update ERC20 interface and module

* feat: add impl again

* refactor: apply review comments

* test: execute out of gas

* refactor: is valid signature because of lack of short circuit condicionals

* refactor: apply updates from reviews

* feat: add SpanSerde implementation

* refactor: remove span_to_array

* Update src/openzeppelin/tests/test_account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update src/openzeppelin/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* test: update from review

* feat: splitting account interface and abi

* feat: add new account files

* remove underscore on mod api methods

* remove comment

* remove underscore

* move erc1271 id to interface

* remove unused import

* integrate deploy util

* add comments for validate dummy params

* add initializer

* change error msg

* add empty sig tests

* move test

* replace dummy args, fix comments

* fix formatting

* tidy up code

* add erc20 transfer call in execute test

* tidy up imports

* remove unused const

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC721 (#619)

* continue account implementation

* add missing account interface functions

* tidy up module

* fix validate

* bump cairo + account changes

* fix __execute__, add serde, rename felt>felt252

* tidy up code

* WIP ERC721

* make format

* fix dispatcher call

* clean

* working on tests

* replace match with `is_some()` and `is_none()` for readeability

* erc721 tests

* use Option.expect

* add account tests

* check panic reason

* rename _owner() to _owner_of()

* spacing

* complete account implementation

* apply recommandation for PR

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* check low level ownership int

* prefix test function with test_

* Apply suggestions from code review

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>

* apply review suggestions

* remove unused import

* clarify __execute__ guard

* add account tests

* add internals

* tidy up

* update ERC165 ids to u32

* apply sugestions from code review

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* update & expand tests

* update lock

* add internal macro

* add internal macro

* add deregister

* update erc165

* wip (dispatched issue)

* fix abi

* start array→span transition

* minimise account dependency

* add SpanSerde in utils

* add dual interfaces

* update test message. fix linter

* split interfaces from preset module

* fix linter

* rename metadata id var

* add camelCase to traits

* fully implement dual interface traits

* simplify _owner_of

* add constructor and getter tests

* add token_uri tests

* remove conflictive test

* add erc721receiver. add IERC721ABI

* add safe_transfer_from tests

* add safe_mint tests

* Update src/openzeppelin/token/erc721/interface.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move erc721 abi next to module

* address review comments

---------

Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Dual interface dispatcher for ERC721 (#623)

* add dual interface dispatcher draft

* complete dual721 implementation

* fix format

* add felt252 <> bool casts

* simplify Felt252IntoBool

* make felt252 into -> try_into

* add base test suite

* implement most tests

* add mocks

* add tests for panic cases

* fix some tests

* fix format

* fix more tests

* fix tests

* apply review feedback

* normalize mock names

* add token_uri tests

* rename non implementing mock

* move comment

* upgrade to cairo 1.1.1

* Update src/openzeppelin/utils.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* address review comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Replace ERC-165 with SRC-5 (Update Interface Ids) (#637)

* feat: add src5 module

* refactor: interface ids and account standard interface

* refactor: naming convention

* refactor: separate interfaces

* feat: apply last SNIP update

* fix: account interface signature

* feat: apply updates from review

* fix: accesscontrol interface id

* Update src/openzeppelin/account/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply update from review

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Fix conflicts from the dual721 and src5 merge (#641)

* add abi to interfaces

* change u32 to felt

* Add camel support for ownable (#625)

* add camel support

* add camel tests

* nest ownable into dir

* move interface

* add dual ownable

* add const selectors

* add try_selector_with_fallback and bool impl

* nest access tests in test dirs

* move accesscontrol and ownable test mods

* move tests

* move tests

* add mocks

* add dual ownable tests

* add panic traits

* tidy up tests

* fix formatting

* remove comments

* fix hierarchy

* remove import comments

* remove comment

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove unused import

* fix camel dispatcher

* normalize assert error msg

* fix formatting

* remove redundant assertion

* change selector casing

* remove unused import

* fix comments, add ref for ignored tests

* fix comments

* remove panic trait

* bump to cairo v1.1.1

* update Cargo

* remove ignore from tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* remove selectors from constants

* add selectors to selectors.cairo

* remove selector bindings

* fix comment

* remove/fix comments

* fix conflicts

* Update src/openzeppelin/utils/selectors.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

---------

Co-authored-by: Martín Triay <martriay@gmail.com>
Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add camel support for access control (#626)

* add camel support

* add camel tests

* move accesscontrol into dir

* separate interface

* add try_selector_with_fallback and bool impl

* add const selectors

* add dual accesscontrol

* move access tests

* add panic trait

* add accesscontrol mocks

* add dual accesscontrol tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add comment to supportsInterface

* add tests for supports_interface

* remove comments

* alphabetize use clauses

* remove util panic trait

* remove unused imports

* remove unused imports

* remove unused import

* update selector casings

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* fix casing on target calls

* add space to comments

* remove comments, add ref with ignored tests

* remove unused imports

* remove selectors from constants

* add selectors to selectors mod

* fix formatting

* reorder selectors

* fix comment

* update interface id

* replace erc165 with src5

* fix conflicts

* replace u32 with felt

* add abi to interfaces

* remove ignore from tests

* fix formatting

* fix comment

* remove camel supportsInterface

* fix comment consistency

* Update src/openzeppelin/tests/access/test_dual_accesscontrol.cairo

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add append_serde

* change append to append_serde

* remove unused import

* remove bindings

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* erc20 dual dispatcher (#622)

* add camel methods

* update erc20 dispatcher path

* refactor tests, add tests for camel methods

* fix formatting

* add try_selector_with_fallback and bool impl

* add erc20 selectors

* add abi to traits

* add dual20 mocks

* add panic trait

* add dual20 mocks

* add dual20

* add dual20

* add dual20 tests

* tidy up tests

* move tests to token dir

* fix formatting

* clean up tests

* restructure token tests

* remove panic trait

* reorder imports

* remove unused imports

* fix comments

* update const selector casings

* remove comments

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* change target member to contract_address

* fix formatting

* fix dispatcher calls

* change dispatcher to dual_dispatcher

* reorder use clauses

* move selectors to selectors mod

* fix formatting

* reorder selectors

* remove duplicate selectors

* remove ignore

* simplify dispatcher vars

* fix comment

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix test constants

* add SerializedAppend trait

* integrate append_serde

* integrate append_serde and utils selector

* change u256 fns to constants

* change u256 fns to constants

* move dual721 test to token/, apply append_serde, change u256 fn to constant

* fix formatting

* add append_serde

* move append_serde to serde

* update append_serde path

* change dispatcher to IERC20

* remove unnecessary into()

* remove bindings

* add binding to empty arrays

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add `UnwrapAndCast` trait (#644)

* add unwrap_and_cast trait and impls

* use unwrap_and_cast

* tidy up code

* add UnwrapAndCastU8 impl

* reorder use clauses

* use unwrap_and_cast on view fns

* add test_dual721 mod (#648)

* Update account interface (#646)

* feat: update interface and ids

* refactor: format files

* feat: update from reviews

* Update src/openzeppelin/account/account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Add camel support for Account (#647)

* feat: update interface and ids

* refactor: format files

* feat: update from reviews

* feat: add dual interface to account

* fix: tests

* feat: add tests

* feat: add more tests

* feat: apply review suggestions

* feat: apply review updates

* Update src/openzeppelin/tests/account/test_dual_account.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Add src5 dual dispatcher (#659)

* add dual src5

* add dual src5 tests and mocks

* add felt impl

* remove unused imports, integrate unwrap_and_cast for felts

* add supports_interface to interface

* add supports_interface to erc721 interface

* add camelCase supportsInterface test

* add dual supports_interface to mocks

* add dual supports_interface tests

* add dual supports_interface to tests

* add comment

* fix formatting

* clean up test

* add comments

* remove unused imports

* fix interface

* fix src5 impl

* apply review suggestion

* Add dual case erc721 receiver (#649)

* add 721 holder

* add 721 receiver selectors

* add abis

* add dual receiver

* add dual receiver mocks

* add dual 721 receiver and holder mods

* add dual 721 receiver tests

* integrate dual case receiver

* remove camel supportsInterface

* add isrc5 impl

* add isrc5 impl

* fix formatting

* change receiver import

* remove unused mod

* add isrc5 impl

* remove mod

* fix formatting

* remove conflict

* add felt impl to UnwrapAndCast

* clean up mocks

* add camelCase ISRC5 impl

* add camelCase tests for safe methods

* fix test

* remove unused imports

* remove unused imports

* remove unused imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add transferFrom and safeTransferFrom tests

* fix comments

* fix comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Add owner param to ownable initializer (#660)

* feat: add owner param to ownable initializer

* feat: apply review updates

* fix: remove unnecessary mut

* Update src/openzeppelin/tests/access/test_dual_ownable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Migrate SRC5 to Cairo 2 (#664)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* Migrate initializable to cairo2 (#661)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate Account to Cairo 2 (#666)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* fix: dual account tests

* fix: account tests

* feat: apply review updates

* Migrate pausable to cairo2 (#662)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* update pausable syntax

* update pausable tests

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify and clarify tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* use InternalImpl

* add external pausable impl

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate reentrancyguard to cairo2 (#663)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update reentrancyguard syntax

* add reentrancyguard mocks

* update reentrancyguard tests

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify and clarify tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* remove internal is_entered

* use internal contract state

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix import order

* change generic state to TState

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC721 to Cairo2 (#667)

* feat: migrate files

* feat: add interface.cairo

* feat: apply review updates

* refactor: improve readability

* fix: dual account tests

* fix: account tests

* fix: mocks

* fix: dual721 tests

* fix: erc721 tests

* feat: apply review updates

* feat: apply review suggestions

* Migrate ownable to cairo2 (#665)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update ownable syntax

* add ownable_camel impl

* update syntax in ownable mocks

* update ownable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify internal fns

* add initializer

* fix constructor, tidy up code

* fix tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* start refactor

* change impls to external fns

* use IOwnableCamelOnly

* fix tests

* remove unneeded mut

* remove unneeded mut

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* change to TState

* fix formatting

* remove Ownable prefix in fn calls

* remove internal owner fn

* use internal state trait to read owner

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate ERC20 to Cairo 2 (#669)

* feat: fix tests

* feat: apply review updates

* Migrate access control to cairo2 (#668)

* bump to cairo v2.0.2

* update Cargo

* comment out mods

* update initializable syntax

* move security tests

* update initializable tests

* fix formatting

* remove SpanSerde

* update ownable syntax

* add ownable_camel impl

* update syntax in ownable mocks

* update ownable tests

* fix formatting

* update cairo

* update Cargo

* simplify and clarify tests

* fix formatting

* simplify internal fns

* add initializer

* fix constructor, tidy up code

* fix tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* fix tests

* change StorageTrait to InternalTrait

* update syntax

* update mocks

* start updating tests

* start refactor

* change impls to external fns

* use IOwnableCamelOnly

* fix tests

* remove unneeded mut

* remove unneeded mut

* fix mocks

* simplify events

* change array syntax

* update syntax in tests

* fix formatting

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add space between events

* fix generic state

* add space between events

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Migrate to Scarb for cairo-2 (#671)

* Migrate to Scarb

* Hide tests module behind cfg

* Add spdx (#684)

* add spdx

* add spdx

* feat: sort imports (#679)

* start erc721 comments

* Migrate upgrades (#603)

* add upgrades to lib

* add proxy mod

* update cairo

* update Cargo

* fix test command

* add upgrades

* fix spelling

* add upgrade test

* fix spelling

* add upgrade_and_call

* update cairo

* update Cargo

* add events

* tidy up code

* fix format

* update cairo to alpha7

* update Cargo

* fix expected syntax

* fix conflict

* update expected syntax

* formatting

* update cairo to rc0

* update Cargo

* fix import

* refactor mocks

* start test refactor

* simplify upgrades, add upgrade_and_call

* refactor mocks

* refactor upgrades

* refactor tests

* fix imports, add impl

* fix imports

* fix formatting

* add abis to mocks

* refactor tests with dispatchers

* fix formatting

* start migration

* update syntax

* update syntax in mocks

* fix tests

* add line

* remove line

* add upgradeable trait

* replace interface impl with trait impl

* fix formatting

* add assertion

* add tests for events

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* move logic to internal impl

* add interface

* update paths

* fix formatting

* simplify imports

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove upgrade_and_call, test event in separate test

* remove upgrade_and_call

* remove unused import

* reorder imports, tidy up code

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* finish basic comments for interface

* Add testing for Ownable events (#675)

* feat: add tests for ownable events

* feat: improve tests

* Update src/tests/utils.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Add account events (#687)

* feat: add tests for ownable events

* define account events

* add event to set_public_key

* add event test

* change param name

* fix event emit param

* fix formatting

* add tests for events

* add default checks in tests

* feat: improve tests

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* reorder imports, remove Account prefix

* fix events

* fix formatting

* Update src/tests/utils.cairo

Co-authored-by: Martín Triay <martriay@gmail.com>

* add event checks, use ZERO from constants

* fix formatting

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* fix comments

* finish ierc721 api

* update erc721receiver

* Add testing for AccessControl events (#674)

* feat: add testing for events

* feat: add tests for ownable events

* feat: improve tests

* feat: apply review updates

* Add testing for Pausable events (#676)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add testing for ERC20 events (#677)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* feat: add tests for erc20 events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add mint to erc721 preset constructor (#700)

* add _mint to constructor

* add constructor assertions

* fix formatting

* Add testing for ERC721 events (#678)

* feat: add testing for events

* feat: add tests for ownable events

* feat: add tests for pausable events

* feat: add tests for erc20 events

* feat: add tests for erc721 events

* Update src/openzeppelin/tests/security/test_pausable.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* feat: add test helper for events

* feat: improve tests

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* work on internalImpl

* finish api

* Update README and fix scarb package (#688)

* update README to cairo-2 and scarb usage. bump scarb package version

* update readme

fix linter issues

fix linter issues

fix linter issues

update readme

* add main to CI

* update readme

* update readme

* rename starknet

* fix linter

* update readme

* Update README.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Update README.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* update CONTRIBUTING

* fix linting

* Update CONTRIBUTING.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* Update CONTRIBUTING.md

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* apply review changes

* fix linter

* fix typo

---------

Co-authored-by: Andrew Fleming <fleming-andrew@protonmail.com>

* clean up ERC721Received section

* trim comments

* Bump scarb and fix dual721 test context (#703)

* bump scarb and cairo version

* fix testing context

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* add rc version (#708)

* remove unused imports (#707)

* change code block to js

* remove headers

* fix state

* remove panics

* remove example

* add section overview

* fix typo

* finish internal fn comments

* Upgrade Cairo version and Scarb version to latest releases (#712)

* 👽️ Update code due to breaking changes

* ⬆️ Upgrade scarb and cairo versions

* 💄 Code format

* add erc721 api

* add api page, start metadata

* add erc721 api

* remove api, start doc refactor

* fix links

* bump antora (#715)

* Add selector inline macro/fix `tokenURI` (#724)

* update selectors

* use inline selector

* remove selectors file

* remove import

* fix camel tokenURI

* fix formatting

* re-add selectors mod

* import from selectors mod

* fix formatting

* import selector

* nest erc721 api

* add InternalImpl to api

* fix link

* fix links, add function headers

* fix links, tidy up

* fix link

* fix: naming convention (#732)

* feat: add Errors modules (#691)

* change to dark theme

* fix functions heading

* change panics to requirements

* Update account docs (#709)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor usage section

* add camel methods, link to introspection

* fix last paragraph

* fix constructor comment

* add external/internal headings in func list

* clean up comments

* remove unnecessary list items

* remove list item

* add parenthesis

* add isrc5 to example

* fix impls

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add interface sections near top

* fix erc165 storage link and compatibility section

* clean up compatibility section

* add api links, remove dash from SRCs

* remove presets and extensions

* tidy up usage

* fix heading

* add more api links

* add src5 link

* Add Interface & Dispatchers docs (#730)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* add interface & dispatchers docs

* apply review feedback

* address feedback comments

---------

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>
Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update overview docs (#735)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: update overview

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/index.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* add _mint_with_uri to example

* Apply suggestions from code review

Co-authored-by: Eric Nordelo <eric.nordelo39@gmail.com>

* add headings

* remove underscore from name_ and symbol_ (#738)

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* normalize formatting

* normalize warning

* simplify code block

* Add prefixes to storage members (#743)

* feat: add prefixes

* Update src/access/accesscontrol/accesscontrol.cairo

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* fix compatibility heading

* add erc721abi interface

* fix heading

* fix interface intro

* consolidate token transfers section

* normalize function order

* remove grayed-out subsections

* add src5 ids

* add link to src5 id

* remove extra line

* Sanitizing for release. (#736)

* refactor: sanitizing

* feat: sanitizing

* feat: apply review updates

* feat: apply review updates

* move reqs to preset api

* fix description

* fix typo

* fix src5 link

* fix metadata description

* Update Access Control docs (#719)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* feat: update docs

* feat: update from account docs

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* feat: add event references

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* feat: apply review updates

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* feat: remove sn_keccak in comments

* feat: replace cairo-2 with replace-0.7.0

* feat: remove grayed-out areas

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: apply review updates

* Update docs/modules/ROOT/pages/access.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

---------

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>
Co-authored-by: Martín Triay <martriay@gmail.com>

* Add indexed keys to token events (#746)

* add indexed keys to events

* fix event assertions

* use pop_log from utils

* fix formatting

* remove event id from keys

* remove PartialEq from events

* revert event assertion changes

* fix sentence

* remove extra line

* fix comment

* add assert_indexed_keys

* apply assert_indexed_keys to tests

* fix formatting

* tidy up code

* Apply suggestions from code review

Co-authored-by: Martín Triay <martriay@gmail.com>

* remove import

---------

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update Introspection docs (#721)

* feat: update format and add api

* fix: typo

* feat: add counterfactual deployment doc

* feat: add API entries

* feat: add events

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* feat: update from reviews

* feat: apply review updates

* feat: update docs

* feat: update docs

* feat: update from account docs

* feat: update main page

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/guides/deployment.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply review updates

* fix: account casing

* feat: add headers

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: add link

* feat: move API

* feat: add event references

* feat: update API

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/accounts.adoc

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* refactor: update wording

* Update docs/antora.yml

Co-authored-by: Andrew Fleming <fleming.andrew@protonmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* feat: apply update reviews

* Update docs/modules/ROOT/pages/api/account.adoc

Co-authored-by: Martín Triay <martriay@gmail.com>

* refactor: UI

* fix: UI

* feat: focus on SRC6

* Update docs/modules/ROOT/pages/api/access.adoc

Co-authored-by: Andrew Flemi…
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.

None yet

3 participants