1use thiserror::Error;
4
5mod container;
6mod manifest;
7
8pub use container::{Container, DataFile, OpenOptions, SignatureFile};
9
10pub const MIMETYPE: &str = "application/vnd.etsi.asic-e+zip";
12
13pub(crate) const MANIFEST_NS: &str = "urn:oasis:names:tc:opendocument:xmlns:manifest:1.0";
15
16#[derive(Error, Debug)]
18pub enum LibError {
19 #[error("container: {0}")]
21 Container(String),
22
23 #[error("zip: {0}")]
25 Zip(#[from] zip::result::ZipError),
26
27 #[error("io: {0}")]
29 Io(#[from] std::io::Error),
30
31 #[error("xml: {0}")]
33 Xml(String),
34}
35
36pub type Result<T> = std::result::Result<T, LibError>;