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 IDENTITY: &str = "identity";
17 pub const DASH_UNIQUE_IDENTITY_ID: &str = "dashUniqueIdentityId";
18 pub const DASH_ALIAS_IDENTITY_ID: &str = "dashAliasIdentityId";
19 }
20 }
21}
22
23pub fn load_documents_schemas() -> Result<Value, Error> {
24 serde_json::from_str(include_str!("../../schema/v1/dpns-contract-documents.json"))
25 .map_err(Error::InvalidSchemaJson)
26}