name-tokenizer 2.1.0

A Solana program which enables the tokenization of a Solana Name Service into an NFT
Documentation
use {
    bonfida_utils::BorshSize,
    borsh::{BorshDeserialize, BorshSerialize},
    mpl_token_metadata::types::Creator,
    solana_program::{pubkey, pubkey::Pubkey},
};

mod central_state;
mod nft_record;

pub use central_state::CentralState;
pub use nft_record::NftRecord;

pub const ROOT_DOMAIN_ACCOUNT: Pubkey = pubkey!("58PwtjSDuFHuUkYjH9BYnnQKHfwo9reZhC2zMJv9JPkx");

pub const MINT_PREFIX: &[u8; 14] = b"tokenized_name";

pub const SELLER_BASIS: u16 = 500;

pub const META_SYMBOL: &str = ".sol";

pub const CREATOR_KEY: Pubkey = pubkey!("5D2zKog251d6KPCyFyLMt3KroWwXXPWSgTPyhV22K2gR");

pub const CREATOR_FEE: Creator = Creator {
    address: CREATOR_KEY,
    verified: false,
    share: 100,
};

pub const COLLECTION_PREFIX: &[u8; 10] = b"collection";

pub const COLLECTION_NAME: &str = "Solana name service collection";

pub const COLLECTION_URI: &str =
    "https://cloudflare-ipfs.com/ipfs/QmPeTioTicb19seM6itP8KD39syNZVJS2KHXNkxauSGXAJ";

pub const METADATA_SIGNER: Pubkey = pubkey!("Es33LnWSTZ9GbW6yBaRkSLUaFibVd7iS54e4AvBg76LX");

#[derive(BorshSerialize, BorshDeserialize, BorshSize, PartialEq)]
#[allow(missing_docs)]
pub enum Tag {
    Uninitialized,
    CentralState,
    ActiveRecord,
    InactiveRecord,
}