1#![cfg_attr(coverage_nightly, feature(coverage_attribute))]
44#![allow(unexpected_cfgs, reason = "`coverage_nightly` is set only by cargo-llvm-cov")]
45#![deny(unsafe_code)]
46#![warn(missing_docs)]
47
48pub mod cid;
49pub mod hash;
50pub mod ipfs;
51#[cfg(feature = "schema-validation")]
52pub mod schema;
53pub mod types;
54pub(crate) mod validation;
55
56#[allow(
57 deprecated,
58 reason = "re-exporting deprecated legacy function for backwards compatibility"
59)]
60pub use cid::app_data_hex_to_cid_legacy;
61pub use cid::{
62 CidComponents, appdata_hex_to_cid, assert_cid, cid_to_appdata_hex, decode_cid, extract_digest,
63 parse_cid,
64};
65pub use hash::{
66 appdata_hex, appdata_json, build_app_data_doc, build_app_data_doc_full, build_order_app_data,
67 merge_app_data_doc, stringify_deterministic,
68};
69pub use ipfs::{
70 AppDataInfo, DEFAULT_IPFS_READ_URI, DEFAULT_IPFS_WRITE_URI, Ipfs, IpfsUploadResult,
71 MetadataApi, ValidationResult, fetch_doc_from_app_data_hex, fetch_doc_from_cid,
72 get_app_data_info, get_app_data_schema, import_schema, upload_app_data_to_pinata,
73 upload_app_data_to_pinata as pin_json_in_pinata_ipfs, validate_app_data_doc,
74};
75#[allow(
76 deprecated,
77 reason = "re-exporting deprecated legacy functions for backwards compatibility"
78)]
79pub use ipfs::{
80 fetch_doc_from_app_data_hex_legacy, get_app_data_info_legacy,
81 upload_metadata_doc_to_ipfs_legacy,
82};
83#[cfg(feature = "schema-validation")]
84pub use schema::{
85 APP_DATA_SCHEMA, LATEST_VERSION as LATEST_APP_DATA_SCHEMA_VERSION, SchemaError,
86 SchemaViolation, supported_versions as supported_app_data_schema_versions,
87 validate as validate_schema, validate_json as validate_schema_json,
88 validate_json_with as validate_schema_json_with, validate_with as validate_schema_with,
89};
90pub use types::{
91 AppDataDoc, CowHook, LATEST_APP_DATA_VERSION, LATEST_HOOKS_METADATA_VERSION,
92 LATEST_ORDER_CLASS_METADATA_VERSION, LATEST_PARTNER_FEE_METADATA_VERSION,
93 LATEST_QUOTE_METADATA_VERSION, LATEST_REFERRER_METADATA_VERSION,
94 LATEST_REPLACED_ORDER_METADATA_VERSION, LATEST_SIGNER_METADATA_VERSION,
95 LATEST_USER_CONSENTS_METADATA_VERSION, LATEST_UTM_METADATA_VERSION,
96 LATEST_WIDGET_METADATA_VERSION, LATEST_WRAPPERS_METADATA_VERSION, Metadata, OrderClass,
97 OrderClassKind, OrderInteractionHooks, PartnerFee, PartnerFeeEntry, Quote, Referrer,
98 ReplacedOrder, Utm, Widget, get_partner_fee_bps,
99};
100pub use validation::ValidationError;