substrate icon indicating copy to clipboard operation
substrate copied to clipboard

Make pallet_nfts storages public

Open jasl opened this issue 2 years ago • 1 comments

Background: I'm trying to build a pallet to work with pallet_nft, my goal is disable most of pallet_nfts extrinsic and my pallet will help to management collection, minting nfts and update them, users can only own and burn, rest of other operations are limited.

my first try is using nonfungibles_v2 traits but meet some trouble (I make a PR https://github.com/paritytech/substrate/pull/13514 ), but I don't know how to construct ItemId so I'm stuck.

here's second try, I'm letting my pallet extending pallet_nft (pub trait Config<I: 'static = ()>: frame_system::Config + pallet_nfts::Config<I>), so I can access pallet_nft directly, and most of functions are public so I can call them, however, some of arguments require read from storage (e.g. collection_id) are restricted by pub(super) so I can't access them.

But still, ItemId is hard to construct... any advice?

this PR make them public.

jasl avatar Mar 02 '23 19:03 jasl

@jsidorenko Could you help to take a look? (don't know how to assign reviewers...)

jasl avatar Mar 02 '23 20:03 jasl

bot merge

shawntabrizi avatar Mar 09 '23 15:03 shawntabrizi