dpns_contract/v1/
mod.rs

1use crate::Error;
2use serde_json::Value;
3
4pub mod document_types {
5    pub mod domain {
6        pub const NAME: &str = "domain";
7
8        pub mod properties {
9            pub const LABEL: &str = "label";
10            pub const NORMALIZED_LABEL: &str = "normalizedLabel";
11            pub const PARENT_DOMAIN_NAME: &str = "parentDomainName";
12            pub const NORMALIZED_PARENT_DOMAIN_NAME: &str = "normalizedParentDomainName";
13            pub const PREORDER_SALT: &str = "preorderSalt";
14            pub const ALLOW_SUBDOMAINS: &str = "subdomainRules.allowSubdomains";
15            pub const RECORDS: &str = "records";
16            pub const DASH_UNIQUE_IDENTITY_ID: &str = "dashUniqueIdentityId";
17            pub const DASH_ALIAS_IDENTITY_ID: &str = "dashAliasIdentityId";
18        }
19    }
20}
21
22pub fn load_documents_schemas() -> Result<Value, Error> {
23    serde_json::from_str(include_str!("../../schema/v1/dpns-contract-documents.json"))
24        .map_err(Error::InvalidSchemaJson)
25}