├── examples ├── web │ ├── style │ │ └── main.scss │ ├── dist │ │ ├── typst-as-library-web-4ae9d4e87c0af9f7_bg.wasm │ │ ├── main-7a3eebc0636b914.css │ │ ├── .stage │ │ │ └── main-7a3eebc0636b914.css │ │ ├── index.html │ │ └── typst-as-library-web-4ae9d4e87c0af9f7.js │ ├── src │ │ └── main.rs │ ├── Cargo.toml │ └── index.html ├── README.md └── native │ ├── Cargo.toml │ ├── src │ └── main.rs │ └── Cargo.lock ├── .gitignore ├── Cargo.toml ├── README.md ├── src └── lib.rs └── LICENSE /examples/web/style/main.scss: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | Cargo.lock 2 | target/ 3 | /target 4 | *.pdf 5 | *.svg 6 | -------------------------------------------------------------------------------- /examples/README.md: -------------------------------------------------------------------------------- 1 | # Typst as Library - Examples 2 | 3 | Find an example to compile this to `native`. 4 | In order to compile as `wasm32`, proper font handling has to be fixed. 5 | -------------------------------------------------------------------------------- /examples/web/dist/typst-as-library-web-4ae9d4e87c0af9f7_bg.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tfachmann/typst-as-library/HEAD/examples/web/dist/typst-as-library-web-4ae9d4e87c0af9f7_bg.wasm -------------------------------------------------------------------------------- /examples/web/dist/main-7a3eebc0636b914.css: -------------------------------------------------------------------------------- 1 | 2 | 3 | /*# sourceMappingURL=data:application/json;charset=utf-8,%7B%22version%22:3,%22sourceRoot%22:%22%22,%22sources%22:%5B%5D,%22names%22:%5B%5D,%22mappings%22:%22%22,%22file%22:%22main.css%22%7D */ 4 | -------------------------------------------------------------------------------- /examples/web/dist/.stage/main-7a3eebc0636b914.css: -------------------------------------------------------------------------------- 1 | 2 | 3 | /*# sourceMappingURL=data:application/json;charset=utf-8,%7B%22version%22:3,%22sourceRoot%22:%22%22,%22sources%22:%5B%5D,%22names%22:%5B%5D,%22mappings%22:%22%22,%22file%22:%22main.css%22%7D */ 4 | -------------------------------------------------------------------------------- /examples/native/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "typst-as-library-example" 3 | version = "0.1.0" 4 | edition = "2021" 5 | 6 | [dependencies] 7 | typst = "0.13.1" 8 | typst-as-library = { path = "../.." } 9 | typst-pdf = "0.13.1" 10 | typst-svg = "0.13.1" 11 | -------------------------------------------------------------------------------- /examples/web/src/main.rs: -------------------------------------------------------------------------------- 1 | use leptos::*; 2 | 3 | #[component] 4 | fn App() -> impl IntoView { 5 | view! { 6 |
Hello, World!
7 | } 8 | } 9 | 10 | fn main() { 11 | console_error_panic_hook::set_once(); 12 | mount_to_body(|| view! { }) 13 | } 14 | -------------------------------------------------------------------------------- /examples/web/Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "typst-as-library-web" 3 | version = "0.1.0" 4 | edition = "2021" 5 | 6 | [dependencies] 7 | typst-as-library = { path = "../.." } 8 | typst = "0.11" 9 | typst-svg = "0.11" 10 | 11 | leptos = { version = "0.6", features = ["csr"] } 12 | console_error_panic_hook = "0.1.7" 13 | -------------------------------------------------------------------------------- /examples/web/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Wabanti Preview 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "typst-as-library" 3 | version = "0.1.0" 4 | edition = "2021" 5 | 6 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 7 | 8 | [dependencies] 9 | # typst essentials 10 | typst = "0.13.1" 11 | comemo = "0.4" 12 | 13 | # Fetching and unzipping packages 14 | zune-inflate = { version = "0.2", default-features = false, features = [ 15 | "gzip", 16 | "std", 17 | ] } 18 | tar = "0.4" 19 | ureq = "2.9" 20 | 21 | # utils 22 | time = "0.3" 23 | ttf-parser = "0.25" 24 | typst-kit = { version = "0.13.1", features = ["embed-fonts"] } 25 | 26 | [lib] 27 | name = "typst_as_library" 28 | 29 | [dev-dependencies] 30 | typst-pdf = "0.13.1" 31 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Typst as Library 2 | 3 | This repository shows how to use [typst](https://github.com/typst/typst) as a library in Rust. 4 | Any code presented in this repository is meant to help you understand how to interface with `typst`. 5 | Please use the code as you like. 6 | 7 | ```rust 8 | fn main() { 9 | let content = "= Hello, World!"; 10 | 11 | // All the abstraction needed is here (!) 12 | let world = TypstWrapperWorld::new("./examples".to_owned(), content.to_owned()); 13 | 14 | // Render document 15 | let document = typst::compile(&world) 16 | .output 17 | .expect("Error compiling typst"); 18 | 19 | // Output to pdf 20 | let pdf = typst_pdf::pdf(&document, &PdfOptions::default()).expect("Error exporting PDF"); 21 | fs::write("./output.pdf", pdf).expect("Error writing PDF."); 22 | } 23 | ``` 24 | 25 | Check the [example](https://github.com/tfachmann/typst-as-library/tree/main/examples/native) for more information. 26 | 27 | --- 28 | 29 | ## Acknowledgment 30 | 31 | Code has been inspired by 32 | - [https://github.com/fenjalien/obsidian-typst](https://github.com/fenjalien/obsidian-typst) 33 | - [https://github.com/mattfbacon/typst-bot](https://github.com/mattfbacon/typst-bot) 34 | -------------------------------------------------------------------------------- /examples/native/src/main.rs: -------------------------------------------------------------------------------- 1 | use std::fs; 2 | 3 | use typst::layout::Abs; 4 | use typst_as_library::TypstWrapperWorld; 5 | use typst_pdf::PdfOptions; 6 | 7 | fn main() { 8 | let content = r#" 9 | #import "@preview/polylux:0.4.0": * 10 | 11 | #set page(paper: "presentation-16-9") 12 | 13 | 14 | #set text( 15 | font: "Lato", 16 | size: 23pt, 17 | ) 18 | 19 | #slide[ 20 | #set page(footer: none) 21 | #set align(horizon + center) 22 | 23 | = Hello, World! 24 | A document (+ `polylux` library) rendered with `Typst`! 25 | $ y = m x + n $ 26 | ]"# 27 | .to_owned(); 28 | 29 | // Create world with content. 30 | let world = TypstWrapperWorld::new("../".to_owned(), content); 31 | 32 | // Render document 33 | let document = typst::compile(&world) 34 | .output 35 | .expect("Error compiling typst"); 36 | 37 | // Output to pdf and svg 38 | let pdf = typst_pdf::pdf(&document, &PdfOptions::default()).expect("Error exporting PDF"); 39 | fs::write("./output.pdf", pdf).expect("Error writing PDF."); 40 | println!("Created pdf: `./output.pdf`"); 41 | 42 | let svg = typst_svg::svg_merged(&document, Abs::pt(2.0)); 43 | fs::write("./output.svg", svg).expect("Error writing SVG."); 44 | println!("Created svg: `./output.svg`"); 45 | } 46 | -------------------------------------------------------------------------------- /examples/web/dist/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Wabanti Preview 5 | 6 | 7 | 18 | 19 | 20 | 21 | 22 | 23 | 153 | 154 | -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- 1 | use std::collections::HashMap; 2 | use std::path::PathBuf; 3 | use std::sync::{Arc, Mutex}; 4 | 5 | use typst::diag::{eco_format, FileError, FileResult, PackageError, PackageResult}; 6 | use typst::foundations::{Bytes, Datetime}; 7 | use typst::syntax::package::PackageSpec; 8 | use typst::syntax::{FileId, Source}; 9 | use typst::text::{Font, FontBook}; 10 | use typst::utils::LazyHash; 11 | use typst::Library; 12 | use typst_kit::fonts::{FontSearcher, FontSlot}; 13 | 14 | /// Main interface that determines the environment for Typst. 15 | pub struct TypstWrapperWorld { 16 | /// Root path to which files will be resolved. 17 | root: PathBuf, 18 | 19 | /// The content of a source. 20 | source: Source, 21 | 22 | /// The standard library. 23 | library: LazyHash, 24 | 25 | /// Metadata about all known fonts. 26 | book: LazyHash, 27 | 28 | /// Metadata about all known fonts. 29 | fonts: Vec, 30 | 31 | /// Map of all known files. 32 | files: Arc>>, 33 | 34 | /// Cache directory (e.g. where packages are downloaded to). 35 | cache_directory: PathBuf, 36 | 37 | /// http agent to download packages. 38 | http: ureq::Agent, 39 | 40 | /// Datetime. 41 | time: time::OffsetDateTime, 42 | } 43 | 44 | impl TypstWrapperWorld { 45 | pub fn new(root: String, source: String) -> Self { 46 | let root = PathBuf::from(root); 47 | let fonts = FontSearcher::new().include_system_fonts(true).search(); 48 | 49 | Self { 50 | library: LazyHash::new(Library::default()), 51 | book: LazyHash::new(fonts.book), 52 | root, 53 | fonts: fonts.fonts, 54 | source: Source::detached(source), 55 | time: time::OffsetDateTime::now_utc(), 56 | cache_directory: std::env::var_os("CACHE_DIRECTORY") 57 | .map(|os_path| os_path.into()) 58 | .unwrap_or(std::env::temp_dir()), 59 | http: ureq::Agent::new(), 60 | files: Arc::new(Mutex::new(HashMap::new())), 61 | } 62 | } 63 | } 64 | 65 | /// A File that will be stored in the HashMap. 66 | #[derive(Clone, Debug)] 67 | struct FileEntry { 68 | bytes: Bytes, 69 | source: Option, 70 | } 71 | 72 | impl FileEntry { 73 | fn new(bytes: Vec, source: Option) -> Self { 74 | Self { 75 | bytes: Bytes::new(bytes), 76 | source, 77 | } 78 | } 79 | 80 | fn source(&mut self, id: FileId) -> FileResult { 81 | let source = if let Some(source) = &self.source { 82 | source 83 | } else { 84 | let contents = std::str::from_utf8(&self.bytes).map_err(|_| FileError::InvalidUtf8)?; 85 | let contents = contents.trim_start_matches('\u{feff}'); 86 | let source = Source::new(id, contents.into()); 87 | self.source.insert(source) 88 | }; 89 | Ok(source.clone()) 90 | } 91 | } 92 | 93 | impl TypstWrapperWorld { 94 | /// Helper to handle file requests. 95 | /// 96 | /// Requests will be either in packages or a local file. 97 | fn file(&self, id: FileId) -> FileResult { 98 | let mut files = self.files.lock().map_err(|_| FileError::AccessDenied)?; 99 | if let Some(entry) = files.get(&id) { 100 | return Ok(entry.clone()); 101 | } 102 | let path = if let Some(package) = id.package() { 103 | // Fetching file from package 104 | let package_dir = self.download_package(package)?; 105 | id.vpath().resolve(&package_dir) 106 | } else { 107 | // Fetching file from disk 108 | id.vpath().resolve(&self.root) 109 | } 110 | .ok_or(FileError::AccessDenied)?; 111 | 112 | let content = std::fs::read(&path).map_err(|error| FileError::from_io(error, &path))?; 113 | Ok(files 114 | .entry(id) 115 | .or_insert(FileEntry::new(content, None)) 116 | .clone()) 117 | } 118 | 119 | /// Downloads the package and returns the system path of the unpacked package. 120 | fn download_package(&self, package: &PackageSpec) -> PackageResult { 121 | let package_subdir = format!("{}/{}/{}", package.namespace, package.name, package.version); 122 | let path = self.cache_directory.join(package_subdir); 123 | 124 | if path.exists() { 125 | return Ok(path); 126 | } 127 | 128 | eprintln!("downloading {package}"); 129 | let url = format!( 130 | "https://packages.typst.org/{}/{}-{}.tar.gz", 131 | package.namespace, package.name, package.version, 132 | ); 133 | 134 | let response = retry(|| { 135 | let response = self 136 | .http 137 | .get(&url) 138 | .call() 139 | .map_err(|error| eco_format!("{error}"))?; 140 | 141 | let status = response.status(); 142 | if !http_successful(status) { 143 | return Err(eco_format!( 144 | "response returned unsuccessful status code {status}", 145 | )); 146 | } 147 | 148 | Ok(response) 149 | }) 150 | .map_err(|error| PackageError::NetworkFailed(Some(error)))?; 151 | 152 | let mut compressed_archive = Vec::new(); 153 | response 154 | .into_reader() 155 | .read_to_end(&mut compressed_archive) 156 | .map_err(|error| PackageError::NetworkFailed(Some(eco_format!("{error}"))))?; 157 | let raw_archive = zune_inflate::DeflateDecoder::new(&compressed_archive) 158 | .decode_gzip() 159 | .map_err(|error| PackageError::MalformedArchive(Some(eco_format!("{error}"))))?; 160 | let mut archive = tar::Archive::new(raw_archive.as_slice()); 161 | archive.unpack(&path).map_err(|error| { 162 | _ = std::fs::remove_dir_all(&path); 163 | PackageError::MalformedArchive(Some(eco_format!("{error}"))) 164 | })?; 165 | 166 | Ok(path) 167 | } 168 | } 169 | 170 | /// This is the interface we have to implement such that `typst` can compile it. 171 | /// 172 | /// I have tried to keep it as minimal as possible 173 | impl typst::World for TypstWrapperWorld { 174 | /// Standard library. 175 | fn library(&self) -> &LazyHash { 176 | &self.library 177 | } 178 | 179 | /// Metadata about all known Books. 180 | fn book(&self) -> &LazyHash { 181 | &self.book 182 | } 183 | 184 | /// Accessing the main source file. 185 | fn main(&self) -> FileId { 186 | self.source.id() 187 | } 188 | 189 | /// Accessing a specified source file (based on `FileId`). 190 | fn source(&self, id: FileId) -> FileResult { 191 | if id == self.source.id() { 192 | Ok(self.source.clone()) 193 | } else { 194 | self.file(id)?.source(id) 195 | } 196 | } 197 | 198 | /// Accessing a specified file (non-file). 199 | fn file(&self, id: FileId) -> FileResult { 200 | self.file(id).map(|file| file.bytes.clone()) 201 | } 202 | 203 | /// Accessing a specified font per index of font book. 204 | fn font(&self, id: usize) -> Option { 205 | self.fonts[id].get() 206 | } 207 | 208 | /// Get the current date. 209 | /// 210 | /// Optionally, an offset in hours is given. 211 | fn today(&self, offset: Option) -> Option { 212 | let offset = offset.unwrap_or(0); 213 | let offset = time::UtcOffset::from_hms(offset.try_into().ok()?, 0, 0).ok()?; 214 | let time = self.time.checked_to_offset(offset)?; 215 | Some(Datetime::Date(time.date())) 216 | } 217 | } 218 | 219 | fn retry(mut f: impl FnMut() -> Result) -> Result { 220 | if let Ok(ok) = f() { 221 | Ok(ok) 222 | } else { 223 | f() 224 | } 225 | } 226 | 227 | fn http_successful(status: u16) -> bool { 228 | // 2XX 229 | status / 100 == 2 230 | } 231 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | -------------------------------------------------------------------------------- /examples/web/dist/typst-as-library-web-4ae9d4e87c0af9f7.js: -------------------------------------------------------------------------------- 1 | let wasm; 2 | 3 | const cachedTextDecoder = (typeof TextDecoder !== 'undefined' ? new TextDecoder('utf-8', { ignoreBOM: true, fatal: true }) : { decode: () => { throw Error('TextDecoder not available') } } ); 4 | 5 | if (typeof TextDecoder !== 'undefined') { cachedTextDecoder.decode(); }; 6 | 7 | let cachedUint8Memory0 = null; 8 | 9 | function getUint8Memory0() { 10 | if (cachedUint8Memory0 === null || cachedUint8Memory0.byteLength === 0) { 11 | cachedUint8Memory0 = new Uint8Array(wasm.memory.buffer); 12 | } 13 | return cachedUint8Memory0; 14 | } 15 | 16 | function getStringFromWasm0(ptr, len) { 17 | ptr = ptr >>> 0; 18 | return cachedTextDecoder.decode(getUint8Memory0().subarray(ptr, ptr + len)); 19 | } 20 | 21 | const heap = new Array(128).fill(undefined); 22 | 23 | heap.push(undefined, null, true, false); 24 | 25 | let heap_next = heap.length; 26 | 27 | function addHeapObject(obj) { 28 | if (heap_next === heap.length) heap.push(heap.length + 1); 29 | const idx = heap_next; 30 | heap_next = heap[idx]; 31 | 32 | heap[idx] = obj; 33 | return idx; 34 | } 35 | 36 | function getObject(idx) { return heap[idx]; } 37 | 38 | function dropObject(idx) { 39 | if (idx < 132) return; 40 | heap[idx] = heap_next; 41 | heap_next = idx; 42 | } 43 | 44 | function takeObject(idx) { 45 | const ret = getObject(idx); 46 | dropObject(idx); 47 | return ret; 48 | } 49 | 50 | function debugString(val) { 51 | // primitive types 52 | const type = typeof val; 53 | if (type == 'number' || type == 'boolean' || val == null) { 54 | return `${val}`; 55 | } 56 | if (type == 'string') { 57 | return `"${val}"`; 58 | } 59 | if (type == 'symbol') { 60 | const description = val.description; 61 | if (description == null) { 62 | return 'Symbol'; 63 | } else { 64 | return `Symbol(${description})`; 65 | } 66 | } 67 | if (type == 'function') { 68 | const name = val.name; 69 | if (typeof name == 'string' && name.length > 0) { 70 | return `Function(${name})`; 71 | } else { 72 | return 'Function'; 73 | } 74 | } 75 | // objects 76 | if (Array.isArray(val)) { 77 | const length = val.length; 78 | let debug = '['; 79 | if (length > 0) { 80 | debug += debugString(val[0]); 81 | } 82 | for(let i = 1; i < length; i++) { 83 | debug += ', ' + debugString(val[i]); 84 | } 85 | debug += ']'; 86 | return debug; 87 | } 88 | // Test for built-in 89 | const builtInMatches = /\[object ([^\]]+)\]/.exec(toString.call(val)); 90 | let className; 91 | if (builtInMatches.length > 1) { 92 | className = builtInMatches[1]; 93 | } else { 94 | // Failed to match the standard '[object ClassName]' 95 | return toString.call(val); 96 | } 97 | if (className == 'Object') { 98 | // we're a user defined class or Object 99 | // JSON.stringify avoids problems with cycles, and is generally much 100 | // easier than looping through ownProperties of `val`. 101 | try { 102 | return 'Object(' + JSON.stringify(val) + ')'; 103 | } catch (_) { 104 | return 'Object'; 105 | } 106 | } 107 | // errors 108 | if (val instanceof Error) { 109 | return `${val.name}: ${val.message}\n${val.stack}`; 110 | } 111 | // TODO we could test for more things here, like `Set`s and `Map`s. 112 | return className; 113 | } 114 | 115 | let WASM_VECTOR_LEN = 0; 116 | 117 | const cachedTextEncoder = (typeof TextEncoder !== 'undefined' ? new TextEncoder('utf-8') : { encode: () => { throw Error('TextEncoder not available') } } ); 118 | 119 | const encodeString = (typeof cachedTextEncoder.encodeInto === 'function' 120 | ? function (arg, view) { 121 | return cachedTextEncoder.encodeInto(arg, view); 122 | } 123 | : function (arg, view) { 124 | const buf = cachedTextEncoder.encode(arg); 125 | view.set(buf); 126 | return { 127 | read: arg.length, 128 | written: buf.length 129 | }; 130 | }); 131 | 132 | function passStringToWasm0(arg, malloc, realloc) { 133 | 134 | if (realloc === undefined) { 135 | const buf = cachedTextEncoder.encode(arg); 136 | const ptr = malloc(buf.length, 1) >>> 0; 137 | getUint8Memory0().subarray(ptr, ptr + buf.length).set(buf); 138 | WASM_VECTOR_LEN = buf.length; 139 | return ptr; 140 | } 141 | 142 | let len = arg.length; 143 | let ptr = malloc(len, 1) >>> 0; 144 | 145 | const mem = getUint8Memory0(); 146 | 147 | let offset = 0; 148 | 149 | for (; offset < len; offset++) { 150 | const code = arg.charCodeAt(offset); 151 | if (code > 0x7F) break; 152 | mem[ptr + offset] = code; 153 | } 154 | 155 | if (offset !== len) { 156 | if (offset !== 0) { 157 | arg = arg.slice(offset); 158 | } 159 | ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0; 160 | const view = getUint8Memory0().subarray(ptr + offset, ptr + len); 161 | const ret = encodeString(arg, view); 162 | 163 | offset += ret.written; 164 | ptr = realloc(ptr, len, offset, 1) >>> 0; 165 | } 166 | 167 | WASM_VECTOR_LEN = offset; 168 | return ptr; 169 | } 170 | 171 | let cachedInt32Memory0 = null; 172 | 173 | function getInt32Memory0() { 174 | if (cachedInt32Memory0 === null || cachedInt32Memory0.byteLength === 0) { 175 | cachedInt32Memory0 = new Int32Array(wasm.memory.buffer); 176 | } 177 | return cachedInt32Memory0; 178 | } 179 | 180 | const CLOSURE_DTORS = (typeof FinalizationRegistry === 'undefined') 181 | ? { register: () => {}, unregister: () => {} } 182 | : new FinalizationRegistry(state => { 183 | wasm.__wbindgen_export_2.get(state.dtor)(state.a, state.b) 184 | }); 185 | 186 | function makeMutClosure(arg0, arg1, dtor, f) { 187 | const state = { a: arg0, b: arg1, cnt: 1, dtor }; 188 | const real = (...args) => { 189 | // First up with a closure we increment the internal reference 190 | // count. This ensures that the Rust closure environment won't 191 | // be deallocated while we're invoking it. 192 | state.cnt++; 193 | const a = state.a; 194 | state.a = 0; 195 | try { 196 | return f(a, state.b, ...args); 197 | } finally { 198 | if (--state.cnt === 0) { 199 | wasm.__wbindgen_export_2.get(state.dtor)(a, state.b); 200 | CLOSURE_DTORS.unregister(state); 201 | } else { 202 | state.a = a; 203 | } 204 | } 205 | }; 206 | real.original = state; 207 | CLOSURE_DTORS.register(real, state, state); 208 | return real; 209 | } 210 | function __wbg_adapter_20(arg0, arg1, arg2) { 211 | wasm._dyn_core__ops__function__FnMut__A____Output___R_as_wasm_bindgen__closure__WasmClosure___describe__invoke__he4b722fea85bc43d(arg0, arg1, addHeapObject(arg2)); 212 | } 213 | 214 | function getCachedStringFromWasm0(ptr, len) { 215 | if (ptr === 0) { 216 | return getObject(len); 217 | } else { 218 | return getStringFromWasm0(ptr, len); 219 | } 220 | } 221 | 222 | function isLikeNone(x) { 223 | return x === undefined || x === null; 224 | } 225 | 226 | function handleError(f, args) { 227 | try { 228 | return f.apply(this, args); 229 | } catch (e) { 230 | wasm.__wbindgen_exn_store(addHeapObject(e)); 231 | } 232 | } 233 | function __wbg_adapter_99(arg0, arg1, arg2, arg3) { 234 | wasm.wasm_bindgen__convert__closures__invoke2_mut__hd8cc6286424e0c10(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3)); 235 | } 236 | 237 | const IntoUnderlyingByteSourceFinalization = (typeof FinalizationRegistry === 'undefined') 238 | ? { register: () => {}, unregister: () => {} } 239 | : new FinalizationRegistry(ptr => wasm.__wbg_intounderlyingbytesource_free(ptr >>> 0)); 240 | /** 241 | */ 242 | export class IntoUnderlyingByteSource { 243 | 244 | __destroy_into_raw() { 245 | const ptr = this.__wbg_ptr; 246 | this.__wbg_ptr = 0; 247 | IntoUnderlyingByteSourceFinalization.unregister(this); 248 | return ptr; 249 | } 250 | 251 | free() { 252 | const ptr = this.__destroy_into_raw(); 253 | wasm.__wbg_intounderlyingbytesource_free(ptr); 254 | } 255 | /** 256 | * @returns {string} 257 | */ 258 | get type() { 259 | try { 260 | const retptr = wasm.__wbindgen_add_to_stack_pointer(-16); 261 | wasm.intounderlyingbytesource_type(retptr, this.__wbg_ptr); 262 | var r0 = getInt32Memory0()[retptr / 4 + 0]; 263 | var r1 = getInt32Memory0()[retptr / 4 + 1]; 264 | var v1 = getCachedStringFromWasm0(r0, r1); 265 | if (r0 !== 0) { wasm.__wbindgen_free(r0, r1, 1); } 266 | return v1; 267 | } finally { 268 | wasm.__wbindgen_add_to_stack_pointer(16); 269 | } 270 | } 271 | /** 272 | * @returns {number} 273 | */ 274 | get autoAllocateChunkSize() { 275 | const ret = wasm.intounderlyingbytesource_autoAllocateChunkSize(this.__wbg_ptr); 276 | return ret >>> 0; 277 | } 278 | /** 279 | * @param {ReadableByteStreamController} controller 280 | */ 281 | start(controller) { 282 | wasm.intounderlyingbytesource_start(this.__wbg_ptr, addHeapObject(controller)); 283 | } 284 | /** 285 | * @param {ReadableByteStreamController} controller 286 | * @returns {Promise} 287 | */ 288 | pull(controller) { 289 | const ret = wasm.intounderlyingbytesource_pull(this.__wbg_ptr, addHeapObject(controller)); 290 | return takeObject(ret); 291 | } 292 | /** 293 | */ 294 | cancel() { 295 | const ptr = this.__destroy_into_raw(); 296 | wasm.intounderlyingbytesource_cancel(ptr); 297 | } 298 | } 299 | 300 | const IntoUnderlyingSinkFinalization = (typeof FinalizationRegistry === 'undefined') 301 | ? { register: () => {}, unregister: () => {} } 302 | : new FinalizationRegistry(ptr => wasm.__wbg_intounderlyingsink_free(ptr >>> 0)); 303 | /** 304 | */ 305 | export class IntoUnderlyingSink { 306 | 307 | __destroy_into_raw() { 308 | const ptr = this.__wbg_ptr; 309 | this.__wbg_ptr = 0; 310 | IntoUnderlyingSinkFinalization.unregister(this); 311 | return ptr; 312 | } 313 | 314 | free() { 315 | const ptr = this.__destroy_into_raw(); 316 | wasm.__wbg_intounderlyingsink_free(ptr); 317 | } 318 | /** 319 | * @param {any} chunk 320 | * @returns {Promise} 321 | */ 322 | write(chunk) { 323 | const ret = wasm.intounderlyingsink_write(this.__wbg_ptr, addHeapObject(chunk)); 324 | return takeObject(ret); 325 | } 326 | /** 327 | * @returns {Promise} 328 | */ 329 | close() { 330 | const ptr = this.__destroy_into_raw(); 331 | const ret = wasm.intounderlyingsink_close(ptr); 332 | return takeObject(ret); 333 | } 334 | /** 335 | * @param {any} reason 336 | * @returns {Promise} 337 | */ 338 | abort(reason) { 339 | const ptr = this.__destroy_into_raw(); 340 | const ret = wasm.intounderlyingsink_abort(ptr, addHeapObject(reason)); 341 | return takeObject(ret); 342 | } 343 | } 344 | 345 | const IntoUnderlyingSourceFinalization = (typeof FinalizationRegistry === 'undefined') 346 | ? { register: () => {}, unregister: () => {} } 347 | : new FinalizationRegistry(ptr => wasm.__wbg_intounderlyingsource_free(ptr >>> 0)); 348 | /** 349 | */ 350 | export class IntoUnderlyingSource { 351 | 352 | __destroy_into_raw() { 353 | const ptr = this.__wbg_ptr; 354 | this.__wbg_ptr = 0; 355 | IntoUnderlyingSourceFinalization.unregister(this); 356 | return ptr; 357 | } 358 | 359 | free() { 360 | const ptr = this.__destroy_into_raw(); 361 | wasm.__wbg_intounderlyingsource_free(ptr); 362 | } 363 | /** 364 | * @param {ReadableStreamDefaultController} controller 365 | * @returns {Promise} 366 | */ 367 | pull(controller) { 368 | const ret = wasm.intounderlyingsource_pull(this.__wbg_ptr, addHeapObject(controller)); 369 | return takeObject(ret); 370 | } 371 | /** 372 | */ 373 | cancel() { 374 | const ptr = this.__destroy_into_raw(); 375 | wasm.intounderlyingsource_cancel(ptr); 376 | } 377 | } 378 | 379 | async function __wbg_load(module, imports) { 380 | if (typeof Response === 'function' && module instanceof Response) { 381 | if (typeof WebAssembly.instantiateStreaming === 'function') { 382 | try { 383 | return await WebAssembly.instantiateStreaming(module, imports); 384 | 385 | } catch (e) { 386 | if (module.headers.get('Content-Type') != 'application/wasm') { 387 | console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n", e); 388 | 389 | } else { 390 | throw e; 391 | } 392 | } 393 | } 394 | 395 | const bytes = await module.arrayBuffer(); 396 | return await WebAssembly.instantiate(bytes, imports); 397 | 398 | } else { 399 | const instance = await WebAssembly.instantiate(module, imports); 400 | 401 | if (instance instanceof WebAssembly.Instance) { 402 | return { instance, module }; 403 | 404 | } else { 405 | return instance; 406 | } 407 | } 408 | } 409 | 410 | function __wbg_get_imports() { 411 | const imports = {}; 412 | imports.wbg = {}; 413 | imports.wbg.__wbg_error_f851667af71bcfc6 = function(arg0, arg1) { 414 | var v0 = getCachedStringFromWasm0(arg0, arg1); 415 | if (arg0 !== 0) { wasm.__wbindgen_free(arg0, arg1, 1); } 416 | console.error(v0); 417 | }; 418 | imports.wbg.__wbg_new_abda76e883ba8a5f = function() { 419 | const ret = new Error(); 420 | return addHeapObject(ret); 421 | }; 422 | imports.wbg.__wbg_stack_658279fe44541cf6 = function(arg0, arg1) { 423 | const ret = getObject(arg1).stack; 424 | const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); 425 | const len1 = WASM_VECTOR_LEN; 426 | getInt32Memory0()[arg0 / 4 + 1] = len1; 427 | getInt32Memory0()[arg0 / 4 + 0] = ptr1; 428 | }; 429 | imports.wbg.__wbindgen_string_new = function(arg0, arg1) { 430 | const ret = getStringFromWasm0(arg0, arg1); 431 | return addHeapObject(ret); 432 | }; 433 | imports.wbg.__wbindgen_object_clone_ref = function(arg0) { 434 | const ret = getObject(arg0); 435 | return addHeapObject(ret); 436 | }; 437 | imports.wbg.__wbindgen_is_undefined = function(arg0) { 438 | const ret = getObject(arg0) === undefined; 439 | return ret; 440 | }; 441 | imports.wbg.__wbindgen_cb_drop = function(arg0) { 442 | const obj = takeObject(arg0).original; 443 | if (obj.cnt-- == 1) { 444 | obj.a = 0; 445 | return true; 446 | } 447 | const ret = false; 448 | return ret; 449 | }; 450 | imports.wbg.__wbg_instanceof_Window_f401953a2cf86220 = function(arg0) { 451 | let result; 452 | try { 453 | result = getObject(arg0) instanceof Window; 454 | } catch (_) { 455 | result = false; 456 | } 457 | const ret = result; 458 | return ret; 459 | }; 460 | imports.wbg.__wbg_document_5100775d18896c16 = function(arg0) { 461 | const ret = getObject(arg0).document; 462 | return isLikeNone(ret) ? 0 : addHeapObject(ret); 463 | }; 464 | imports.wbg.__wbg_body_edb1908d3ceff3a1 = function(arg0) { 465 | const ret = getObject(arg0).body; 466 | return isLikeNone(ret) ? 0 : addHeapObject(ret); 467 | }; 468 | imports.wbg.__wbg_createComment_354ccab4fdc521ee = function(arg0, arg1, arg2) { 469 | var v0 = getCachedStringFromWasm0(arg1, arg2); 470 | const ret = getObject(arg0).createComment(v0); 471 | return addHeapObject(ret); 472 | }; 473 | imports.wbg.__wbg_createDocumentFragment_8c86903bbb0a3c3c = function(arg0) { 474 | const ret = getObject(arg0).createDocumentFragment(); 475 | return addHeapObject(ret); 476 | }; 477 | imports.wbg.__wbg_createElement_8bae7856a4bb7411 = function() { return handleError(function (arg0, arg1, arg2) { 478 | var v0 = getCachedStringFromWasm0(arg1, arg2); 479 | const ret = getObject(arg0).createElement(v0); 480 | return addHeapObject(ret); 481 | }, arguments) }; 482 | imports.wbg.__wbg_createTextNode_0c38fd80a5b2284d = function(arg0, arg1, arg2) { 483 | var v0 = getCachedStringFromWasm0(arg1, arg2); 484 | const ret = getObject(arg0).createTextNode(v0); 485 | return addHeapObject(ret); 486 | }; 487 | imports.wbg.__wbg_namespaceURI_5235ee79fd5f6781 = function(arg0, arg1) { 488 | const ret = getObject(arg1).namespaceURI; 489 | var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); 490 | var len1 = WASM_VECTOR_LEN; 491 | getInt32Memory0()[arg0 / 4 + 1] = len1; 492 | getInt32Memory0()[arg0 / 4 + 0] = ptr1; 493 | }; 494 | imports.wbg.__wbg_outerHTML_e073aa84e7bc1eaf = function(arg0, arg1) { 495 | const ret = getObject(arg1).outerHTML; 496 | const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); 497 | const len1 = WASM_VECTOR_LEN; 498 | getInt32Memory0()[arg0 / 4 + 1] = len1; 499 | getInt32Memory0()[arg0 / 4 + 0] = ptr1; 500 | }; 501 | imports.wbg.__wbg_before_210596e44d88649f = function() { return handleError(function (arg0, arg1) { 502 | getObject(arg0).before(getObject(arg1)); 503 | }, arguments) }; 504 | imports.wbg.__wbg_warn_63bbae1730aead09 = function(arg0) { 505 | console.warn(getObject(arg0)); 506 | }; 507 | imports.wbg.__wbg_close_a994f9425dab445c = function() { return handleError(function (arg0) { 508 | getObject(arg0).close(); 509 | }, arguments) }; 510 | imports.wbg.__wbg_enqueue_ea194723156c0cc2 = function() { return handleError(function (arg0, arg1) { 511 | getObject(arg0).enqueue(getObject(arg1)); 512 | }, arguments) }; 513 | imports.wbg.__wbg_byobRequest_72fca99f9c32c193 = function(arg0) { 514 | const ret = getObject(arg0).byobRequest; 515 | return isLikeNone(ret) ? 0 : addHeapObject(ret); 516 | }; 517 | imports.wbg.__wbg_close_184931724d961ccc = function() { return handleError(function (arg0) { 518 | getObject(arg0).close(); 519 | }, arguments) }; 520 | imports.wbg.__wbg_append_f7fa3534fc158323 = function() { return handleError(function (arg0, arg1, arg2) { 521 | getObject(arg0).append(getObject(arg1), getObject(arg2)); 522 | }, arguments) }; 523 | imports.wbg.__wbg_childNodes_118168e8b23bcb9b = function(arg0) { 524 | const ret = getObject(arg0).childNodes; 525 | return addHeapObject(ret); 526 | }; 527 | imports.wbg.__wbg_nextSibling_709614fdb0fb7a66 = function(arg0) { 528 | const ret = getObject(arg0).nextSibling; 529 | return isLikeNone(ret) ? 0 : addHeapObject(ret); 530 | }; 531 | imports.wbg.__wbg_settextContent_d271bab459cbb1ba = function(arg0, arg1, arg2) { 532 | var v0 = getCachedStringFromWasm0(arg1, arg2); 533 | getObject(arg0).textContent = v0; 534 | }; 535 | imports.wbg.__wbg_appendChild_580ccb11a660db68 = function() { return handleError(function (arg0, arg1) { 536 | const ret = getObject(arg0).appendChild(getObject(arg1)); 537 | return addHeapObject(ret); 538 | }, arguments) }; 539 | imports.wbg.__wbg_cloneNode_e19c313ea20d5d1d = function() { return handleError(function (arg0) { 540 | const ret = getObject(arg0).cloneNode(); 541 | return addHeapObject(ret); 542 | }, arguments) }; 543 | imports.wbg.__wbg_view_7f0ce470793a340f = function(arg0) { 544 | const ret = getObject(arg0).view; 545 | return isLikeNone(ret) ? 0 : addHeapObject(ret); 546 | }; 547 | imports.wbg.__wbg_respond_b1a43b2e3a06d525 = function() { return handleError(function (arg0, arg1) { 548 | getObject(arg0).respond(arg1 >>> 0); 549 | }, arguments) }; 550 | imports.wbg.__wbg_length_d0a802565d17eec4 = function(arg0) { 551 | const ret = getObject(arg0).length; 552 | return ret; 553 | }; 554 | imports.wbg.__wbindgen_is_function = function(arg0) { 555 | const ret = typeof(getObject(arg0)) === 'function'; 556 | return ret; 557 | }; 558 | imports.wbg.__wbg_queueMicrotask_481971b0d87f3dd4 = function(arg0) { 559 | queueMicrotask(getObject(arg0)); 560 | }; 561 | imports.wbg.__wbg_queueMicrotask_3cbae2ec6b6cd3d6 = function(arg0) { 562 | const ret = getObject(arg0).queueMicrotask; 563 | return addHeapObject(ret); 564 | }; 565 | imports.wbg.__wbg_new_28c511d9baebfa89 = function(arg0, arg1) { 566 | var v0 = getCachedStringFromWasm0(arg0, arg1); 567 | const ret = new Error(v0); 568 | return addHeapObject(ret); 569 | }; 570 | imports.wbg.__wbg_newnoargs_e258087cd0daa0ea = function(arg0, arg1) { 571 | var v0 = getCachedStringFromWasm0(arg0, arg1); 572 | const ret = new Function(v0); 573 | return addHeapObject(ret); 574 | }; 575 | imports.wbg.__wbg_call_27c0f87801dedf93 = function() { return handleError(function (arg0, arg1) { 576 | const ret = getObject(arg0).call(getObject(arg1)); 577 | return addHeapObject(ret); 578 | }, arguments) }; 579 | imports.wbg.__wbg_call_b3ca7c6051f9bec1 = function() { return handleError(function (arg0, arg1, arg2) { 580 | const ret = getObject(arg0).call(getObject(arg1), getObject(arg2)); 581 | return addHeapObject(ret); 582 | }, arguments) }; 583 | imports.wbg.__wbg_is_010fdc0f4ab96916 = function(arg0, arg1) { 584 | const ret = Object.is(getObject(arg0), getObject(arg1)); 585 | return ret; 586 | }; 587 | imports.wbg.__wbg_new_81740750da40724f = function(arg0, arg1) { 588 | try { 589 | var state0 = {a: arg0, b: arg1}; 590 | var cb0 = (arg0, arg1) => { 591 | const a = state0.a; 592 | state0.a = 0; 593 | try { 594 | return __wbg_adapter_99(a, state0.b, arg0, arg1); 595 | } finally { 596 | state0.a = a; 597 | } 598 | }; 599 | const ret = new Promise(cb0); 600 | return addHeapObject(ret); 601 | } finally { 602 | state0.a = state0.b = 0; 603 | } 604 | }; 605 | imports.wbg.__wbg_resolve_b0083a7967828ec8 = function(arg0) { 606 | const ret = Promise.resolve(getObject(arg0)); 607 | return addHeapObject(ret); 608 | }; 609 | imports.wbg.__wbg_then_0c86a60e8fcfe9f6 = function(arg0, arg1) { 610 | const ret = getObject(arg0).then(getObject(arg1)); 611 | return addHeapObject(ret); 612 | }; 613 | imports.wbg.__wbg_globalThis_d1e6af4856ba331b = function() { return handleError(function () { 614 | const ret = globalThis.globalThis; 615 | return addHeapObject(ret); 616 | }, arguments) }; 617 | imports.wbg.__wbg_self_ce0dbfc45cf2f5be = function() { return handleError(function () { 618 | const ret = self.self; 619 | return addHeapObject(ret); 620 | }, arguments) }; 621 | imports.wbg.__wbg_window_c6fb939a7f436783 = function() { return handleError(function () { 622 | const ret = window.window; 623 | return addHeapObject(ret); 624 | }, arguments) }; 625 | imports.wbg.__wbg_global_207b558942527489 = function() { return handleError(function () { 626 | const ret = global.global; 627 | return addHeapObject(ret); 628 | }, arguments) }; 629 | imports.wbg.__wbg_newwithbyteoffsetandlength_aa4a17c33a06e5cb = function(arg0, arg1, arg2) { 630 | const ret = new Uint8Array(getObject(arg0), arg1 >>> 0, arg2 >>> 0); 631 | return addHeapObject(ret); 632 | }; 633 | imports.wbg.__wbg_buffer_dd7f74bc60f1faab = function(arg0) { 634 | const ret = getObject(arg0).buffer; 635 | return addHeapObject(ret); 636 | }; 637 | imports.wbg.__wbg_length_c20a40f15020d68a = function(arg0) { 638 | const ret = getObject(arg0).length; 639 | return ret; 640 | }; 641 | imports.wbg.__wbg_byteLength_58f7b4fab1919d44 = function(arg0) { 642 | const ret = getObject(arg0).byteLength; 643 | return ret; 644 | }; 645 | imports.wbg.__wbg_byteOffset_81d60f7392524f62 = function(arg0) { 646 | const ret = getObject(arg0).byteOffset; 647 | return ret; 648 | }; 649 | imports.wbg.__wbg_set_a47bac70306a19a7 = function(arg0, arg1, arg2) { 650 | getObject(arg0).set(getObject(arg1), arg2 >>> 0); 651 | }; 652 | imports.wbg.__wbg_buffer_12d079cc21e14bdb = function(arg0) { 653 | const ret = getObject(arg0).buffer; 654 | return addHeapObject(ret); 655 | }; 656 | imports.wbg.__wbindgen_debug_string = function(arg0, arg1) { 657 | const ret = debugString(getObject(arg1)); 658 | const ptr1 = passStringToWasm0(ret, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc); 659 | const len1 = WASM_VECTOR_LEN; 660 | getInt32Memory0()[arg0 / 4 + 1] = len1; 661 | getInt32Memory0()[arg0 / 4 + 0] = ptr1; 662 | }; 663 | imports.wbg.__wbindgen_object_drop_ref = function(arg0) { 664 | takeObject(arg0); 665 | }; 666 | imports.wbg.__wbindgen_throw = function(arg0, arg1) { 667 | throw new Error(getStringFromWasm0(arg0, arg1)); 668 | }; 669 | imports.wbg.__wbindgen_memory = function() { 670 | const ret = wasm.memory; 671 | return addHeapObject(ret); 672 | }; 673 | imports.wbg.__wbindgen_closure_wrapper5584 = function(arg0, arg1, arg2) { 674 | const ret = makeMutClosure(arg0, arg1, 114, __wbg_adapter_20); 675 | return addHeapObject(ret); 676 | }; 677 | 678 | return imports; 679 | } 680 | 681 | function __wbg_init_memory(imports, maybe_memory) { 682 | 683 | } 684 | 685 | function __wbg_finalize_init(instance, module) { 686 | wasm = instance.exports; 687 | __wbg_init.__wbindgen_wasm_module = module; 688 | cachedInt32Memory0 = null; 689 | cachedUint8Memory0 = null; 690 | 691 | wasm.__wbindgen_start(); 692 | return wasm; 693 | } 694 | 695 | function initSync(module) { 696 | if (wasm !== undefined) return wasm; 697 | 698 | const imports = __wbg_get_imports(); 699 | 700 | __wbg_init_memory(imports); 701 | 702 | if (!(module instanceof WebAssembly.Module)) { 703 | module = new WebAssembly.Module(module); 704 | } 705 | 706 | const instance = new WebAssembly.Instance(module, imports); 707 | 708 | return __wbg_finalize_init(instance, module); 709 | } 710 | 711 | async function __wbg_init(input) { 712 | if (wasm !== undefined) return wasm; 713 | 714 | if (typeof input === 'undefined') { 715 | input = new URL('typst-as-library-web_bg.wasm', import.meta.url); 716 | } 717 | const imports = __wbg_get_imports(); 718 | 719 | if (typeof input === 'string' || (typeof Request === 'function' && input instanceof Request) || (typeof URL === 'function' && input instanceof URL)) { 720 | input = fetch(input); 721 | } 722 | 723 | __wbg_init_memory(imports); 724 | 725 | const { instance, module } = await __wbg_load(await input, imports); 726 | 727 | return __wbg_finalize_init(instance, module); 728 | } 729 | 730 | export { initSync } 731 | export default __wbg_init; 732 | -------------------------------------------------------------------------------- /examples/native/Cargo.lock: -------------------------------------------------------------------------------- 1 | # This file is automatically @generated by Cargo. 2 | # It is not intended for manual editing. 3 | version = 4 4 | 5 | [[package]] 6 | name = "adler" 7 | version = "1.0.2" 8 | source = "registry+https://github.com/rust-lang/crates.io-index" 9 | checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" 10 | 11 | [[package]] 12 | name = "adler2" 13 | version = "2.0.0" 14 | source = "registry+https://github.com/rust-lang/crates.io-index" 15 | checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" 16 | 17 | [[package]] 18 | name = "aho-corasick" 19 | version = "1.1.3" 20 | source = "registry+https://github.com/rust-lang/crates.io-index" 21 | checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" 22 | dependencies = [ 23 | "memchr", 24 | ] 25 | 26 | [[package]] 27 | name = "approx" 28 | version = "0.5.1" 29 | source = "registry+https://github.com/rust-lang/crates.io-index" 30 | checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" 31 | dependencies = [ 32 | "num-traits", 33 | ] 34 | 35 | [[package]] 36 | name = "arrayref" 37 | version = "0.3.8" 38 | source = "registry+https://github.com/rust-lang/crates.io-index" 39 | checksum = "9d151e35f61089500b617991b791fc8bfd237ae50cd5950803758a179b41e67a" 40 | 41 | [[package]] 42 | name = "arrayvec" 43 | version = "0.7.6" 44 | source = "registry+https://github.com/rust-lang/crates.io-index" 45 | checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" 46 | 47 | [[package]] 48 | name = "autocfg" 49 | version = "1.3.0" 50 | source = "registry+https://github.com/rust-lang/crates.io-index" 51 | checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" 52 | 53 | [[package]] 54 | name = "az" 55 | version = "1.2.1" 56 | source = "registry+https://github.com/rust-lang/crates.io-index" 57 | checksum = "7b7e4c2464d97fe331d41de9d5db0def0a96f4d823b8b32a2efd503578988973" 58 | 59 | [[package]] 60 | name = "base64" 61 | version = "0.22.1" 62 | source = "registry+https://github.com/rust-lang/crates.io-index" 63 | checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" 64 | 65 | [[package]] 66 | name = "biblatex" 67 | version = "0.10.0" 68 | source = "registry+https://github.com/rust-lang/crates.io-index" 69 | checksum = "a35a7317fcbdbef94b60d0dd0a658711a936accfce4a631fea4bf8e527eff3c2" 70 | dependencies = [ 71 | "numerals", 72 | "paste", 73 | "strum", 74 | "unicode-normalization", 75 | "unscanny", 76 | ] 77 | 78 | [[package]] 79 | name = "bincode" 80 | version = "1.3.3" 81 | source = "registry+https://github.com/rust-lang/crates.io-index" 82 | checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" 83 | dependencies = [ 84 | "serde", 85 | ] 86 | 87 | [[package]] 88 | name = "bit-set" 89 | version = "0.5.3" 90 | source = "registry+https://github.com/rust-lang/crates.io-index" 91 | checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" 92 | dependencies = [ 93 | "bit-vec", 94 | ] 95 | 96 | [[package]] 97 | name = "bit-vec" 98 | version = "0.6.3" 99 | source = "registry+https://github.com/rust-lang/crates.io-index" 100 | checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" 101 | 102 | [[package]] 103 | name = "bitflags" 104 | version = "1.3.2" 105 | source = "registry+https://github.com/rust-lang/crates.io-index" 106 | checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" 107 | 108 | [[package]] 109 | name = "bitflags" 110 | version = "2.6.0" 111 | source = "registry+https://github.com/rust-lang/crates.io-index" 112 | checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" 113 | dependencies = [ 114 | "serde", 115 | ] 116 | 117 | [[package]] 118 | name = "bumpalo" 119 | version = "3.16.0" 120 | source = "registry+https://github.com/rust-lang/crates.io-index" 121 | checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" 122 | 123 | [[package]] 124 | name = "by_address" 125 | version = "1.2.1" 126 | source = "registry+https://github.com/rust-lang/crates.io-index" 127 | checksum = "64fa3c856b712db6612c019f14756e64e4bcea13337a6b33b696333a9eaa2d06" 128 | 129 | [[package]] 130 | name = "bytemuck" 131 | version = "1.16.3" 132 | source = "registry+https://github.com/rust-lang/crates.io-index" 133 | checksum = "102087e286b4677862ea56cf8fc58bb2cdfa8725c40ffb80fe3a008eb7f2fc83" 134 | 135 | [[package]] 136 | name = "byteorder" 137 | version = "1.5.0" 138 | source = "registry+https://github.com/rust-lang/crates.io-index" 139 | checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" 140 | 141 | [[package]] 142 | name = "byteorder-lite" 143 | version = "0.1.0" 144 | source = "registry+https://github.com/rust-lang/crates.io-index" 145 | checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495" 146 | 147 | [[package]] 148 | name = "cc" 149 | version = "1.1.7" 150 | source = "registry+https://github.com/rust-lang/crates.io-index" 151 | checksum = "26a5c3fd7bfa1ce3897a3a3501d362b2d87b7f2583ebcb4a949ec25911025cbc" 152 | 153 | [[package]] 154 | name = "cfg-if" 155 | version = "1.0.0" 156 | source = "registry+https://github.com/rust-lang/crates.io-index" 157 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 158 | 159 | [[package]] 160 | name = "chinese-number" 161 | version = "0.7.7" 162 | source = "registry+https://github.com/rust-lang/crates.io-index" 163 | checksum = "49fccaef6346f6d6a741908d3b79fe97c2debe2fbb5eb3a7d00ff5981b52bb6c" 164 | dependencies = [ 165 | "chinese-variant", 166 | "enum-ordinalize", 167 | "num-bigint", 168 | "num-traits", 169 | ] 170 | 171 | [[package]] 172 | name = "chinese-variant" 173 | version = "1.1.3" 174 | source = "registry+https://github.com/rust-lang/crates.io-index" 175 | checksum = "7588475145507237ded760e52bf2f1085495245502033756d28ea72ade0e498b" 176 | 177 | [[package]] 178 | name = "ciborium" 179 | version = "0.2.2" 180 | source = "registry+https://github.com/rust-lang/crates.io-index" 181 | checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" 182 | dependencies = [ 183 | "ciborium-io", 184 | "ciborium-ll", 185 | "serde", 186 | ] 187 | 188 | [[package]] 189 | name = "ciborium-io" 190 | version = "0.2.2" 191 | source = "registry+https://github.com/rust-lang/crates.io-index" 192 | checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" 193 | 194 | [[package]] 195 | name = "ciborium-ll" 196 | version = "0.2.2" 197 | source = "registry+https://github.com/rust-lang/crates.io-index" 198 | checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" 199 | dependencies = [ 200 | "ciborium-io", 201 | "half", 202 | ] 203 | 204 | [[package]] 205 | name = "citationberg" 206 | version = "0.5.0" 207 | source = "registry+https://github.com/rust-lang/crates.io-index" 208 | checksum = "e4595e03beafb40235070080b5286d3662525efc622cca599585ff1d63f844fa" 209 | dependencies = [ 210 | "quick-xml 0.36.2", 211 | "serde", 212 | ] 213 | 214 | [[package]] 215 | name = "cobs" 216 | version = "0.2.3" 217 | source = "registry+https://github.com/rust-lang/crates.io-index" 218 | checksum = "67ba02a97a2bd10f4b59b25c7973101c79642302776489e030cd13cdab09ed15" 219 | 220 | [[package]] 221 | name = "codex" 222 | version = "0.1.1" 223 | source = "registry+https://github.com/rust-lang/crates.io-index" 224 | checksum = "724d27a0ee38b700e5e164350e79aba601a0db673ac47fce1cb74c3e38864036" 225 | 226 | [[package]] 227 | name = "color_quant" 228 | version = "1.1.0" 229 | source = "registry+https://github.com/rust-lang/crates.io-index" 230 | checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" 231 | 232 | [[package]] 233 | name = "comemo" 234 | version = "0.4.0" 235 | source = "registry+https://github.com/rust-lang/crates.io-index" 236 | checksum = "df6916408a724339aa77b18214233355f3eb04c42eb895e5f8909215bd8a7a91" 237 | dependencies = [ 238 | "comemo-macros", 239 | "once_cell", 240 | "parking_lot", 241 | "siphasher 1.0.1", 242 | ] 243 | 244 | [[package]] 245 | name = "comemo-macros" 246 | version = "0.4.0" 247 | source = "registry+https://github.com/rust-lang/crates.io-index" 248 | checksum = "c8936e42f9b4f5bdfaf23700609ac1f11cb03ad4c1ec128a4ee4fd0903e228db" 249 | dependencies = [ 250 | "proc-macro2", 251 | "quote", 252 | "syn", 253 | ] 254 | 255 | [[package]] 256 | name = "core-foundation" 257 | version = "0.9.4" 258 | source = "registry+https://github.com/rust-lang/crates.io-index" 259 | checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" 260 | dependencies = [ 261 | "core-foundation-sys", 262 | "libc", 263 | ] 264 | 265 | [[package]] 266 | name = "core-foundation-sys" 267 | version = "0.8.7" 268 | source = "registry+https://github.com/rust-lang/crates.io-index" 269 | checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" 270 | 271 | [[package]] 272 | name = "core_maths" 273 | version = "0.1.0" 274 | source = "registry+https://github.com/rust-lang/crates.io-index" 275 | checksum = "e3b02505ccb8c50b0aa21ace0fc08c3e53adebd4e58caa18a36152803c7709a3" 276 | dependencies = [ 277 | "libm", 278 | ] 279 | 280 | [[package]] 281 | name = "crc32fast" 282 | version = "1.4.2" 283 | source = "registry+https://github.com/rust-lang/crates.io-index" 284 | checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" 285 | dependencies = [ 286 | "cfg-if", 287 | ] 288 | 289 | [[package]] 290 | name = "crossbeam-deque" 291 | version = "0.8.5" 292 | source = "registry+https://github.com/rust-lang/crates.io-index" 293 | checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" 294 | dependencies = [ 295 | "crossbeam-epoch", 296 | "crossbeam-utils", 297 | ] 298 | 299 | [[package]] 300 | name = "crossbeam-epoch" 301 | version = "0.9.18" 302 | source = "registry+https://github.com/rust-lang/crates.io-index" 303 | checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" 304 | dependencies = [ 305 | "crossbeam-utils", 306 | ] 307 | 308 | [[package]] 309 | name = "crossbeam-utils" 310 | version = "0.8.20" 311 | source = "registry+https://github.com/rust-lang/crates.io-index" 312 | checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" 313 | 314 | [[package]] 315 | name = "crunchy" 316 | version = "0.2.2" 317 | source = "registry+https://github.com/rust-lang/crates.io-index" 318 | checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" 319 | 320 | [[package]] 321 | name = "csv" 322 | version = "1.3.0" 323 | source = "registry+https://github.com/rust-lang/crates.io-index" 324 | checksum = "ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe" 325 | dependencies = [ 326 | "csv-core", 327 | "itoa", 328 | "ryu", 329 | "serde", 330 | ] 331 | 332 | [[package]] 333 | name = "csv-core" 334 | version = "0.1.11" 335 | source = "registry+https://github.com/rust-lang/crates.io-index" 336 | checksum = "5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70" 337 | dependencies = [ 338 | "memchr", 339 | ] 340 | 341 | [[package]] 342 | name = "data-url" 343 | version = "0.3.1" 344 | source = "registry+https://github.com/rust-lang/crates.io-index" 345 | checksum = "5c297a1c74b71ae29df00c3e22dd9534821d60eb9af5a0192823fa2acea70c2a" 346 | 347 | [[package]] 348 | name = "deranged" 349 | version = "0.3.11" 350 | source = "registry+https://github.com/rust-lang/crates.io-index" 351 | checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" 352 | dependencies = [ 353 | "powerfmt", 354 | ] 355 | 356 | [[package]] 357 | name = "dirs" 358 | version = "6.0.0" 359 | source = "registry+https://github.com/rust-lang/crates.io-index" 360 | checksum = "c3e8aa94d75141228480295a7d0e7feb620b1a5ad9f12bc40be62411e38cce4e" 361 | dependencies = [ 362 | "dirs-sys", 363 | ] 364 | 365 | [[package]] 366 | name = "dirs-sys" 367 | version = "0.5.0" 368 | source = "registry+https://github.com/rust-lang/crates.io-index" 369 | checksum = "e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab" 370 | dependencies = [ 371 | "libc", 372 | "option-ext", 373 | "redox_users", 374 | "windows-sys 0.59.0", 375 | ] 376 | 377 | [[package]] 378 | name = "displaydoc" 379 | version = "0.2.5" 380 | source = "registry+https://github.com/rust-lang/crates.io-index" 381 | checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" 382 | dependencies = [ 383 | "proc-macro2", 384 | "quote", 385 | "syn", 386 | ] 387 | 388 | [[package]] 389 | name = "downcast-rs" 390 | version = "1.2.1" 391 | source = "registry+https://github.com/rust-lang/crates.io-index" 392 | checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" 393 | 394 | [[package]] 395 | name = "ecow" 396 | version = "0.2.2" 397 | source = "registry+https://github.com/rust-lang/crates.io-index" 398 | checksum = "54bfbb1708988623190a6c4dbedaeaf0f53c20c6395abd6a01feb327b3146f4b" 399 | dependencies = [ 400 | "serde", 401 | ] 402 | 403 | [[package]] 404 | name = "either" 405 | version = "1.13.0" 406 | source = "registry+https://github.com/rust-lang/crates.io-index" 407 | checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" 408 | 409 | [[package]] 410 | name = "embedded-io" 411 | version = "0.4.0" 412 | source = "registry+https://github.com/rust-lang/crates.io-index" 413 | checksum = "ef1a6892d9eef45c8fa6b9e0086428a2cca8491aca8f787c534a3d6d0bcb3ced" 414 | 415 | [[package]] 416 | name = "enum-ordinalize" 417 | version = "4.3.0" 418 | source = "registry+https://github.com/rust-lang/crates.io-index" 419 | checksum = "fea0dcfa4e54eeb516fe454635a95753ddd39acda650ce703031c6973e315dd5" 420 | dependencies = [ 421 | "enum-ordinalize-derive", 422 | ] 423 | 424 | [[package]] 425 | name = "enum-ordinalize-derive" 426 | version = "4.3.1" 427 | source = "registry+https://github.com/rust-lang/crates.io-index" 428 | checksum = "0d28318a75d4aead5c4db25382e8ef717932d0346600cacae6357eb5941bc5ff" 429 | dependencies = [ 430 | "proc-macro2", 431 | "quote", 432 | "syn", 433 | ] 434 | 435 | [[package]] 436 | name = "env_proxy" 437 | version = "0.4.1" 438 | source = "registry+https://github.com/rust-lang/crates.io-index" 439 | checksum = "3a5019be18538406a43b5419a5501461f0c8b49ea7dfda0cfc32f4e51fc44be1" 440 | dependencies = [ 441 | "log", 442 | "url", 443 | ] 444 | 445 | [[package]] 446 | name = "equivalent" 447 | version = "1.0.1" 448 | source = "registry+https://github.com/rust-lang/crates.io-index" 449 | checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" 450 | 451 | [[package]] 452 | name = "errno" 453 | version = "0.3.9" 454 | source = "registry+https://github.com/rust-lang/crates.io-index" 455 | checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" 456 | dependencies = [ 457 | "libc", 458 | "windows-sys 0.52.0", 459 | ] 460 | 461 | [[package]] 462 | name = "fancy-regex" 463 | version = "0.11.0" 464 | source = "registry+https://github.com/rust-lang/crates.io-index" 465 | checksum = "b95f7c0680e4142284cf8b22c14a476e87d61b004a3a0861872b32ef7ead40a2" 466 | dependencies = [ 467 | "bit-set", 468 | "regex", 469 | ] 470 | 471 | [[package]] 472 | name = "fast-srgb8" 473 | version = "1.0.0" 474 | source = "registry+https://github.com/rust-lang/crates.io-index" 475 | checksum = "dd2e7510819d6fbf51a5545c8f922716ecfb14df168a3242f7d33e0239efe6a1" 476 | 477 | [[package]] 478 | name = "fastrand" 479 | version = "2.3.0" 480 | source = "registry+https://github.com/rust-lang/crates.io-index" 481 | checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" 482 | 483 | [[package]] 484 | name = "fdeflate" 485 | version = "0.3.4" 486 | source = "registry+https://github.com/rust-lang/crates.io-index" 487 | checksum = "4f9bfee30e4dedf0ab8b422f03af778d9612b63f502710fc500a334ebe2de645" 488 | dependencies = [ 489 | "simd-adler32", 490 | ] 491 | 492 | [[package]] 493 | name = "filetime" 494 | version = "0.2.23" 495 | source = "registry+https://github.com/rust-lang/crates.io-index" 496 | checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd" 497 | dependencies = [ 498 | "cfg-if", 499 | "libc", 500 | "redox_syscall 0.4.1", 501 | "windows-sys 0.52.0", 502 | ] 503 | 504 | [[package]] 505 | name = "flate2" 506 | version = "1.0.30" 507 | source = "registry+https://github.com/rust-lang/crates.io-index" 508 | checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae" 509 | dependencies = [ 510 | "crc32fast", 511 | "miniz_oxide 0.7.4", 512 | ] 513 | 514 | [[package]] 515 | name = "float-cmp" 516 | version = "0.9.0" 517 | source = "registry+https://github.com/rust-lang/crates.io-index" 518 | checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4" 519 | 520 | [[package]] 521 | name = "fnv" 522 | version = "1.0.7" 523 | source = "registry+https://github.com/rust-lang/crates.io-index" 524 | checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 525 | 526 | [[package]] 527 | name = "foldhash" 528 | version = "0.1.4" 529 | source = "registry+https://github.com/rust-lang/crates.io-index" 530 | checksum = "a0d2fde1f7b3d48b8395d5f2de76c18a528bd6a9cdde438df747bfcba3e05d6f" 531 | 532 | [[package]] 533 | name = "fontconfig-parser" 534 | version = "0.5.7" 535 | source = "registry+https://github.com/rust-lang/crates.io-index" 536 | checksum = "c1fcfcd44ca6e90c921fee9fa665d530b21ef1327a4c1a6c5250ea44b776ada7" 537 | dependencies = [ 538 | "roxmltree", 539 | ] 540 | 541 | [[package]] 542 | name = "fontdb" 543 | version = "0.21.0" 544 | source = "registry+https://github.com/rust-lang/crates.io-index" 545 | checksum = "37be9fc20d966be438cd57a45767f73349477fb0f85ce86e000557f787298afb" 546 | dependencies = [ 547 | "fontconfig-parser", 548 | "log", 549 | "memmap2", 550 | "slotmap", 551 | "tinyvec", 552 | "ttf-parser 0.24.1", 553 | ] 554 | 555 | [[package]] 556 | name = "foreign-types" 557 | version = "0.3.2" 558 | source = "registry+https://github.com/rust-lang/crates.io-index" 559 | checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" 560 | dependencies = [ 561 | "foreign-types-shared", 562 | ] 563 | 564 | [[package]] 565 | name = "foreign-types-shared" 566 | version = "0.1.1" 567 | source = "registry+https://github.com/rust-lang/crates.io-index" 568 | checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" 569 | 570 | [[package]] 571 | name = "form_urlencoded" 572 | version = "1.2.1" 573 | source = "registry+https://github.com/rust-lang/crates.io-index" 574 | checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" 575 | dependencies = [ 576 | "percent-encoding", 577 | ] 578 | 579 | [[package]] 580 | name = "getrandom" 581 | version = "0.2.15" 582 | source = "registry+https://github.com/rust-lang/crates.io-index" 583 | checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" 584 | dependencies = [ 585 | "cfg-if", 586 | "libc", 587 | "wasi", 588 | ] 589 | 590 | [[package]] 591 | name = "gif" 592 | version = "0.13.1" 593 | source = "registry+https://github.com/rust-lang/crates.io-index" 594 | checksum = "3fb2d69b19215e18bb912fa30f7ce15846e301408695e44e0ef719f1da9e19f2" 595 | dependencies = [ 596 | "color_quant", 597 | "weezl", 598 | ] 599 | 600 | [[package]] 601 | name = "half" 602 | version = "2.4.1" 603 | source = "registry+https://github.com/rust-lang/crates.io-index" 604 | checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888" 605 | dependencies = [ 606 | "cfg-if", 607 | "crunchy", 608 | ] 609 | 610 | [[package]] 611 | name = "hashbrown" 612 | version = "0.14.5" 613 | source = "registry+https://github.com/rust-lang/crates.io-index" 614 | checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" 615 | 616 | [[package]] 617 | name = "hashbrown" 618 | version = "0.15.2" 619 | source = "registry+https://github.com/rust-lang/crates.io-index" 620 | checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" 621 | dependencies = [ 622 | "foldhash", 623 | ] 624 | 625 | [[package]] 626 | name = "hayagriva" 627 | version = "0.8.1" 628 | source = "registry+https://github.com/rust-lang/crates.io-index" 629 | checksum = "954907554bb7fcba29a4f917c2d43e289ec21b69d872ccf97db160eca6caeed8" 630 | dependencies = [ 631 | "biblatex", 632 | "ciborium", 633 | "citationberg", 634 | "indexmap", 635 | "numerals", 636 | "paste", 637 | "serde", 638 | "serde_yaml", 639 | "thiserror 1.0.63", 640 | "unic-langid", 641 | "unicode-segmentation", 642 | "unscanny", 643 | "url", 644 | ] 645 | 646 | [[package]] 647 | name = "heck" 648 | version = "0.5.0" 649 | source = "registry+https://github.com/rust-lang/crates.io-index" 650 | checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" 651 | 652 | [[package]] 653 | name = "hypher" 654 | version = "0.1.5" 655 | source = "registry+https://github.com/rust-lang/crates.io-index" 656 | checksum = "3b24ad5637230df201ab1034d593f1d09bf7f2a9274f2e8897638078579f4265" 657 | 658 | [[package]] 659 | name = "icu_collections" 660 | version = "1.5.0" 661 | source = "registry+https://github.com/rust-lang/crates.io-index" 662 | checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" 663 | dependencies = [ 664 | "displaydoc", 665 | "serde", 666 | "yoke", 667 | "zerofrom", 668 | "zerovec", 669 | ] 670 | 671 | [[package]] 672 | name = "icu_locid" 673 | version = "1.5.0" 674 | source = "registry+https://github.com/rust-lang/crates.io-index" 675 | checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" 676 | dependencies = [ 677 | "displaydoc", 678 | "litemap", 679 | "tinystr", 680 | "writeable", 681 | "zerovec", 682 | ] 683 | 684 | [[package]] 685 | name = "icu_locid_transform" 686 | version = "1.5.0" 687 | source = "registry+https://github.com/rust-lang/crates.io-index" 688 | checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" 689 | dependencies = [ 690 | "displaydoc", 691 | "icu_locid", 692 | "icu_locid_transform_data", 693 | "icu_provider", 694 | "tinystr", 695 | "zerovec", 696 | ] 697 | 698 | [[package]] 699 | name = "icu_locid_transform_data" 700 | version = "1.5.0" 701 | source = "registry+https://github.com/rust-lang/crates.io-index" 702 | checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" 703 | 704 | [[package]] 705 | name = "icu_properties" 706 | version = "1.5.1" 707 | source = "registry+https://github.com/rust-lang/crates.io-index" 708 | checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" 709 | dependencies = [ 710 | "displaydoc", 711 | "icu_collections", 712 | "icu_locid_transform", 713 | "icu_properties_data", 714 | "icu_provider", 715 | "serde", 716 | "tinystr", 717 | "zerovec", 718 | ] 719 | 720 | [[package]] 721 | name = "icu_properties_data" 722 | version = "1.5.0" 723 | source = "registry+https://github.com/rust-lang/crates.io-index" 724 | checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" 725 | 726 | [[package]] 727 | name = "icu_provider" 728 | version = "1.5.0" 729 | source = "registry+https://github.com/rust-lang/crates.io-index" 730 | checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" 731 | dependencies = [ 732 | "displaydoc", 733 | "icu_locid", 734 | "icu_provider_macros", 735 | "postcard", 736 | "serde", 737 | "stable_deref_trait", 738 | "tinystr", 739 | "writeable", 740 | "yoke", 741 | "zerofrom", 742 | "zerovec", 743 | ] 744 | 745 | [[package]] 746 | name = "icu_provider_adapters" 747 | version = "1.5.0" 748 | source = "registry+https://github.com/rust-lang/crates.io-index" 749 | checksum = "d6324dfd08348a8e0374a447ebd334044d766b1839bb8d5ccf2482a99a77c0bc" 750 | dependencies = [ 751 | "icu_locid", 752 | "icu_locid_transform", 753 | "icu_provider", 754 | "tinystr", 755 | "zerovec", 756 | ] 757 | 758 | [[package]] 759 | name = "icu_provider_blob" 760 | version = "1.5.0" 761 | source = "registry+https://github.com/rust-lang/crates.io-index" 762 | checksum = "c24b98d1365f55d78186c205817631a4acf08d7a45bdf5dc9dcf9c5d54dccf51" 763 | dependencies = [ 764 | "icu_provider", 765 | "postcard", 766 | "serde", 767 | "writeable", 768 | "zerotrie", 769 | "zerovec", 770 | ] 771 | 772 | [[package]] 773 | name = "icu_provider_macros" 774 | version = "1.5.0" 775 | source = "registry+https://github.com/rust-lang/crates.io-index" 776 | checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" 777 | dependencies = [ 778 | "proc-macro2", 779 | "quote", 780 | "syn", 781 | ] 782 | 783 | [[package]] 784 | name = "icu_segmenter" 785 | version = "1.5.0" 786 | source = "registry+https://github.com/rust-lang/crates.io-index" 787 | checksum = "a717725612346ffc2d7b42c94b820db6908048f39434504cb130e8b46256b0de" 788 | dependencies = [ 789 | "core_maths", 790 | "displaydoc", 791 | "icu_collections", 792 | "icu_locid", 793 | "icu_provider", 794 | "icu_segmenter_data", 795 | "serde", 796 | "utf8_iter", 797 | "zerovec", 798 | ] 799 | 800 | [[package]] 801 | name = "icu_segmenter_data" 802 | version = "1.5.0" 803 | source = "registry+https://github.com/rust-lang/crates.io-index" 804 | checksum = "f739ee737260d955e330bc83fdeaaf1631f7fb7ed218761d3c04bb13bb7d79df" 805 | 806 | [[package]] 807 | name = "idna" 808 | version = "0.5.0" 809 | source = "registry+https://github.com/rust-lang/crates.io-index" 810 | checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" 811 | dependencies = [ 812 | "unicode-bidi", 813 | "unicode-normalization", 814 | ] 815 | 816 | [[package]] 817 | name = "if_chain" 818 | version = "1.0.2" 819 | source = "registry+https://github.com/rust-lang/crates.io-index" 820 | checksum = "cb56e1aa765b4b4f3aadfab769793b7087bb03a4ea4920644a6d238e2df5b9ed" 821 | 822 | [[package]] 823 | name = "image" 824 | version = "0.25.5" 825 | source = "registry+https://github.com/rust-lang/crates.io-index" 826 | checksum = "cd6f44aed642f18953a158afeb30206f4d50da59fbc66ecb53c66488de73563b" 827 | dependencies = [ 828 | "bytemuck", 829 | "byteorder-lite", 830 | "color_quant", 831 | "gif", 832 | "num-traits", 833 | "png", 834 | "zune-core", 835 | "zune-jpeg", 836 | ] 837 | 838 | [[package]] 839 | name = "image-webp" 840 | version = "0.1.3" 841 | source = "registry+https://github.com/rust-lang/crates.io-index" 842 | checksum = "f79afb8cbee2ef20f59ccd477a218c12a93943d075b492015ecb1bb81f8ee904" 843 | dependencies = [ 844 | "byteorder-lite", 845 | "quick-error", 846 | ] 847 | 848 | [[package]] 849 | name = "imagesize" 850 | version = "0.13.0" 851 | source = "registry+https://github.com/rust-lang/crates.io-index" 852 | checksum = "edcd27d72f2f071c64249075f42e205ff93c9a4c5f6c6da53e79ed9f9832c285" 853 | 854 | [[package]] 855 | name = "indexmap" 856 | version = "2.3.0" 857 | source = "registry+https://github.com/rust-lang/crates.io-index" 858 | checksum = "de3fc2e30ba82dd1b3911c8de1ffc143c74a914a14e99514d7637e3099df5ea0" 859 | dependencies = [ 860 | "equivalent", 861 | "hashbrown 0.14.5", 862 | "serde", 863 | ] 864 | 865 | [[package]] 866 | name = "itoa" 867 | version = "1.0.11" 868 | source = "registry+https://github.com/rust-lang/crates.io-index" 869 | checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" 870 | 871 | [[package]] 872 | name = "kamadak-exif" 873 | version = "0.6.1" 874 | source = "registry+https://github.com/rust-lang/crates.io-index" 875 | checksum = "1130d80c7374efad55a117d715a3af9368f0fa7a2c54573afc15a188cd984837" 876 | dependencies = [ 877 | "mutate_once", 878 | ] 879 | 880 | [[package]] 881 | name = "kurbo" 882 | version = "0.11.1" 883 | source = "registry+https://github.com/rust-lang/crates.io-index" 884 | checksum = "89234b2cc610a7dd927ebde6b41dd1a5d4214cffaef4cf1fb2195d592f92518f" 885 | dependencies = [ 886 | "arrayvec", 887 | "smallvec", 888 | ] 889 | 890 | [[package]] 891 | name = "libc" 892 | version = "0.2.155" 893 | source = "registry+https://github.com/rust-lang/crates.io-index" 894 | checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" 895 | 896 | [[package]] 897 | name = "libm" 898 | version = "0.2.8" 899 | source = "registry+https://github.com/rust-lang/crates.io-index" 900 | checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" 901 | 902 | [[package]] 903 | name = "libredox" 904 | version = "0.1.3" 905 | source = "registry+https://github.com/rust-lang/crates.io-index" 906 | checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" 907 | dependencies = [ 908 | "bitflags 2.6.0", 909 | "libc", 910 | ] 911 | 912 | [[package]] 913 | name = "linked-hash-map" 914 | version = "0.5.6" 915 | source = "registry+https://github.com/rust-lang/crates.io-index" 916 | checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" 917 | 918 | [[package]] 919 | name = "linux-raw-sys" 920 | version = "0.4.14" 921 | source = "registry+https://github.com/rust-lang/crates.io-index" 922 | checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" 923 | 924 | [[package]] 925 | name = "lipsum" 926 | version = "0.9.1" 927 | source = "registry+https://github.com/rust-lang/crates.io-index" 928 | checksum = "636860251af8963cc40f6b4baadee105f02e21b28131d76eba8e40ce84ab8064" 929 | dependencies = [ 930 | "rand", 931 | "rand_chacha", 932 | ] 933 | 934 | [[package]] 935 | name = "litemap" 936 | version = "0.7.3" 937 | source = "registry+https://github.com/rust-lang/crates.io-index" 938 | checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" 939 | dependencies = [ 940 | "serde", 941 | ] 942 | 943 | [[package]] 944 | name = "lock_api" 945 | version = "0.4.12" 946 | source = "registry+https://github.com/rust-lang/crates.io-index" 947 | checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" 948 | dependencies = [ 949 | "autocfg", 950 | "scopeguard", 951 | ] 952 | 953 | [[package]] 954 | name = "log" 955 | version = "0.4.22" 956 | source = "registry+https://github.com/rust-lang/crates.io-index" 957 | checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" 958 | 959 | [[package]] 960 | name = "memchr" 961 | version = "2.7.4" 962 | source = "registry+https://github.com/rust-lang/crates.io-index" 963 | checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" 964 | 965 | [[package]] 966 | name = "memmap2" 967 | version = "0.9.4" 968 | source = "registry+https://github.com/rust-lang/crates.io-index" 969 | checksum = "fe751422e4a8caa417e13c3ea66452215d7d63e19e604f4980461212f3ae1322" 970 | dependencies = [ 971 | "libc", 972 | ] 973 | 974 | [[package]] 975 | name = "miniz_oxide" 976 | version = "0.7.4" 977 | source = "registry+https://github.com/rust-lang/crates.io-index" 978 | checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" 979 | dependencies = [ 980 | "adler", 981 | "simd-adler32", 982 | ] 983 | 984 | [[package]] 985 | name = "miniz_oxide" 986 | version = "0.8.0" 987 | source = "registry+https://github.com/rust-lang/crates.io-index" 988 | checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" 989 | dependencies = [ 990 | "adler2", 991 | ] 992 | 993 | [[package]] 994 | name = "multi-stash" 995 | version = "0.2.0" 996 | source = "registry+https://github.com/rust-lang/crates.io-index" 997 | checksum = "685a9ac4b61f4e728e1d2c6a7844609c16527aeb5e6c865915c08e619c16410f" 998 | 999 | [[package]] 1000 | name = "mutate_once" 1001 | version = "0.1.1" 1002 | source = "registry+https://github.com/rust-lang/crates.io-index" 1003 | checksum = "16cf681a23b4d0a43fc35024c176437f9dcd818db34e0f42ab456a0ee5ad497b" 1004 | 1005 | [[package]] 1006 | name = "native-tls" 1007 | version = "0.2.14" 1008 | source = "registry+https://github.com/rust-lang/crates.io-index" 1009 | checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" 1010 | dependencies = [ 1011 | "libc", 1012 | "log", 1013 | "openssl", 1014 | "openssl-probe", 1015 | "openssl-sys", 1016 | "schannel", 1017 | "security-framework", 1018 | "security-framework-sys", 1019 | "tempfile", 1020 | ] 1021 | 1022 | [[package]] 1023 | name = "num-bigint" 1024 | version = "0.4.6" 1025 | source = "registry+https://github.com/rust-lang/crates.io-index" 1026 | checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" 1027 | dependencies = [ 1028 | "num-integer", 1029 | "num-traits", 1030 | ] 1031 | 1032 | [[package]] 1033 | name = "num-conv" 1034 | version = "0.1.0" 1035 | source = "registry+https://github.com/rust-lang/crates.io-index" 1036 | checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" 1037 | 1038 | [[package]] 1039 | name = "num-integer" 1040 | version = "0.1.46" 1041 | source = "registry+https://github.com/rust-lang/crates.io-index" 1042 | checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" 1043 | dependencies = [ 1044 | "num-traits", 1045 | ] 1046 | 1047 | [[package]] 1048 | name = "num-traits" 1049 | version = "0.2.19" 1050 | source = "registry+https://github.com/rust-lang/crates.io-index" 1051 | checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" 1052 | dependencies = [ 1053 | "autocfg", 1054 | ] 1055 | 1056 | [[package]] 1057 | name = "numerals" 1058 | version = "0.1.4" 1059 | source = "registry+https://github.com/rust-lang/crates.io-index" 1060 | checksum = "e25be21376a772d15f97ae789845340a9651d3c4246ff5ebb6a2b35f9c37bd31" 1061 | 1062 | [[package]] 1063 | name = "once_cell" 1064 | version = "1.20.3" 1065 | source = "registry+https://github.com/rust-lang/crates.io-index" 1066 | checksum = "945462a4b81e43c4e3ba96bd7b49d834c6f61198356aa858733bc4acf3cbe62e" 1067 | 1068 | [[package]] 1069 | name = "openssl" 1070 | version = "0.10.71" 1071 | source = "registry+https://github.com/rust-lang/crates.io-index" 1072 | checksum = "5e14130c6a98cd258fdcb0fb6d744152343ff729cbfcb28c656a9d12b999fbcd" 1073 | dependencies = [ 1074 | "bitflags 2.6.0", 1075 | "cfg-if", 1076 | "foreign-types", 1077 | "libc", 1078 | "once_cell", 1079 | "openssl-macros", 1080 | "openssl-sys", 1081 | ] 1082 | 1083 | [[package]] 1084 | name = "openssl-macros" 1085 | version = "0.1.1" 1086 | source = "registry+https://github.com/rust-lang/crates.io-index" 1087 | checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" 1088 | dependencies = [ 1089 | "proc-macro2", 1090 | "quote", 1091 | "syn", 1092 | ] 1093 | 1094 | [[package]] 1095 | name = "openssl-probe" 1096 | version = "0.1.6" 1097 | source = "registry+https://github.com/rust-lang/crates.io-index" 1098 | checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" 1099 | 1100 | [[package]] 1101 | name = "openssl-sys" 1102 | version = "0.9.106" 1103 | source = "registry+https://github.com/rust-lang/crates.io-index" 1104 | checksum = "8bb61ea9811cc39e3c2069f40b8b8e2e70d8569b361f879786cc7ed48b777cdd" 1105 | dependencies = [ 1106 | "cc", 1107 | "libc", 1108 | "pkg-config", 1109 | "vcpkg", 1110 | ] 1111 | 1112 | [[package]] 1113 | name = "option-ext" 1114 | version = "0.2.0" 1115 | source = "registry+https://github.com/rust-lang/crates.io-index" 1116 | checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" 1117 | 1118 | [[package]] 1119 | name = "palette" 1120 | version = "0.7.6" 1121 | source = "registry+https://github.com/rust-lang/crates.io-index" 1122 | checksum = "4cbf71184cc5ecc2e4e1baccdb21026c20e5fc3dcf63028a086131b3ab00b6e6" 1123 | dependencies = [ 1124 | "approx", 1125 | "fast-srgb8", 1126 | "libm", 1127 | "palette_derive", 1128 | ] 1129 | 1130 | [[package]] 1131 | name = "palette_derive" 1132 | version = "0.7.6" 1133 | source = "registry+https://github.com/rust-lang/crates.io-index" 1134 | checksum = "f5030daf005bface118c096f510ffb781fc28f9ab6a32ab224d8631be6851d30" 1135 | dependencies = [ 1136 | "by_address", 1137 | "proc-macro2", 1138 | "quote", 1139 | "syn", 1140 | ] 1141 | 1142 | [[package]] 1143 | name = "parking_lot" 1144 | version = "0.12.3" 1145 | source = "registry+https://github.com/rust-lang/crates.io-index" 1146 | checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" 1147 | dependencies = [ 1148 | "lock_api", 1149 | "parking_lot_core", 1150 | ] 1151 | 1152 | [[package]] 1153 | name = "parking_lot_core" 1154 | version = "0.9.10" 1155 | source = "registry+https://github.com/rust-lang/crates.io-index" 1156 | checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" 1157 | dependencies = [ 1158 | "cfg-if", 1159 | "libc", 1160 | "redox_syscall 0.5.3", 1161 | "smallvec", 1162 | "windows-targets", 1163 | ] 1164 | 1165 | [[package]] 1166 | name = "paste" 1167 | version = "1.0.15" 1168 | source = "registry+https://github.com/rust-lang/crates.io-index" 1169 | checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" 1170 | 1171 | [[package]] 1172 | name = "pdf-writer" 1173 | version = "0.12.1" 1174 | source = "registry+https://github.com/rust-lang/crates.io-index" 1175 | checksum = "5df03c7d216de06f93f398ef06f1385a60f2c597bb96f8195c8d98e08a26b1d5" 1176 | dependencies = [ 1177 | "bitflags 2.6.0", 1178 | "itoa", 1179 | "memchr", 1180 | "ryu", 1181 | ] 1182 | 1183 | [[package]] 1184 | name = "percent-encoding" 1185 | version = "2.3.1" 1186 | source = "registry+https://github.com/rust-lang/crates.io-index" 1187 | checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" 1188 | 1189 | [[package]] 1190 | name = "phf" 1191 | version = "0.11.2" 1192 | source = "registry+https://github.com/rust-lang/crates.io-index" 1193 | checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" 1194 | dependencies = [ 1195 | "phf_macros", 1196 | "phf_shared", 1197 | ] 1198 | 1199 | [[package]] 1200 | name = "phf_generator" 1201 | version = "0.11.2" 1202 | source = "registry+https://github.com/rust-lang/crates.io-index" 1203 | checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" 1204 | dependencies = [ 1205 | "phf_shared", 1206 | "rand", 1207 | ] 1208 | 1209 | [[package]] 1210 | name = "phf_macros" 1211 | version = "0.11.2" 1212 | source = "registry+https://github.com/rust-lang/crates.io-index" 1213 | checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b" 1214 | dependencies = [ 1215 | "phf_generator", 1216 | "phf_shared", 1217 | "proc-macro2", 1218 | "quote", 1219 | "syn", 1220 | ] 1221 | 1222 | [[package]] 1223 | name = "phf_shared" 1224 | version = "0.11.2" 1225 | source = "registry+https://github.com/rust-lang/crates.io-index" 1226 | checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" 1227 | dependencies = [ 1228 | "siphasher 0.3.11", 1229 | ] 1230 | 1231 | [[package]] 1232 | name = "pico-args" 1233 | version = "0.5.0" 1234 | source = "registry+https://github.com/rust-lang/crates.io-index" 1235 | checksum = "5be167a7af36ee22fe3115051bc51f6e6c7054c9348e28deb4f49bd6f705a315" 1236 | 1237 | [[package]] 1238 | name = "pkg-config" 1239 | version = "0.3.32" 1240 | source = "registry+https://github.com/rust-lang/crates.io-index" 1241 | checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" 1242 | 1243 | [[package]] 1244 | name = "plist" 1245 | version = "1.7.0" 1246 | source = "registry+https://github.com/rust-lang/crates.io-index" 1247 | checksum = "42cf17e9a1800f5f396bc67d193dc9411b59012a5876445ef450d449881e1016" 1248 | dependencies = [ 1249 | "base64", 1250 | "indexmap", 1251 | "quick-xml 0.32.0", 1252 | "serde", 1253 | "time", 1254 | ] 1255 | 1256 | [[package]] 1257 | name = "png" 1258 | version = "0.17.13" 1259 | source = "registry+https://github.com/rust-lang/crates.io-index" 1260 | checksum = "06e4b0d3d1312775e782c86c91a111aa1f910cbb65e1337f9975b5f9a554b5e1" 1261 | dependencies = [ 1262 | "bitflags 1.3.2", 1263 | "crc32fast", 1264 | "fdeflate", 1265 | "flate2", 1266 | "miniz_oxide 0.7.4", 1267 | ] 1268 | 1269 | [[package]] 1270 | name = "portable-atomic" 1271 | version = "1.7.0" 1272 | source = "registry+https://github.com/rust-lang/crates.io-index" 1273 | checksum = "da544ee218f0d287a911e9c99a39a8c9bc8fcad3cb8db5959940044ecfc67265" 1274 | 1275 | [[package]] 1276 | name = "postcard" 1277 | version = "1.0.8" 1278 | source = "registry+https://github.com/rust-lang/crates.io-index" 1279 | checksum = "a55c51ee6c0db07e68448e336cf8ea4131a620edefebf9893e759b2d793420f8" 1280 | dependencies = [ 1281 | "cobs", 1282 | "embedded-io", 1283 | "serde", 1284 | ] 1285 | 1286 | [[package]] 1287 | name = "powerfmt" 1288 | version = "0.2.0" 1289 | source = "registry+https://github.com/rust-lang/crates.io-index" 1290 | checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" 1291 | 1292 | [[package]] 1293 | name = "ppv-lite86" 1294 | version = "0.2.18" 1295 | source = "registry+https://github.com/rust-lang/crates.io-index" 1296 | checksum = "dee4364d9f3b902ef14fab8a1ddffb783a1cb6b4bba3bfc1fa3922732c7de97f" 1297 | dependencies = [ 1298 | "zerocopy", 1299 | ] 1300 | 1301 | [[package]] 1302 | name = "proc-macro2" 1303 | version = "1.0.93" 1304 | source = "registry+https://github.com/rust-lang/crates.io-index" 1305 | checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99" 1306 | dependencies = [ 1307 | "unicode-ident", 1308 | ] 1309 | 1310 | [[package]] 1311 | name = "psm" 1312 | version = "0.1.21" 1313 | source = "registry+https://github.com/rust-lang/crates.io-index" 1314 | checksum = "5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874" 1315 | dependencies = [ 1316 | "cc", 1317 | ] 1318 | 1319 | [[package]] 1320 | name = "qcms" 1321 | version = "0.3.0" 1322 | source = "registry+https://github.com/rust-lang/crates.io-index" 1323 | checksum = "edecfcd5d755a5e5d98e24cf43113e7cdaec5a070edd0f6b250c03a573da30fa" 1324 | 1325 | [[package]] 1326 | name = "quick-error" 1327 | version = "2.0.1" 1328 | source = "registry+https://github.com/rust-lang/crates.io-index" 1329 | checksum = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3" 1330 | 1331 | [[package]] 1332 | name = "quick-xml" 1333 | version = "0.32.0" 1334 | source = "registry+https://github.com/rust-lang/crates.io-index" 1335 | checksum = "1d3a6e5838b60e0e8fa7a43f22ade549a37d61f8bdbe636d0d7816191de969c2" 1336 | dependencies = [ 1337 | "memchr", 1338 | ] 1339 | 1340 | [[package]] 1341 | name = "quick-xml" 1342 | version = "0.36.2" 1343 | source = "registry+https://github.com/rust-lang/crates.io-index" 1344 | checksum = "f7649a7b4df05aed9ea7ec6f628c67c9953a43869b8bc50929569b2999d443fe" 1345 | dependencies = [ 1346 | "memchr", 1347 | "serde", 1348 | ] 1349 | 1350 | [[package]] 1351 | name = "quote" 1352 | version = "1.0.36" 1353 | source = "registry+https://github.com/rust-lang/crates.io-index" 1354 | checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" 1355 | dependencies = [ 1356 | "proc-macro2", 1357 | ] 1358 | 1359 | [[package]] 1360 | name = "rand" 1361 | version = "0.8.5" 1362 | source = "registry+https://github.com/rust-lang/crates.io-index" 1363 | checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" 1364 | dependencies = [ 1365 | "rand_core", 1366 | ] 1367 | 1368 | [[package]] 1369 | name = "rand_chacha" 1370 | version = "0.3.1" 1371 | source = "registry+https://github.com/rust-lang/crates.io-index" 1372 | checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" 1373 | dependencies = [ 1374 | "ppv-lite86", 1375 | "rand_core", 1376 | ] 1377 | 1378 | [[package]] 1379 | name = "rand_core" 1380 | version = "0.6.4" 1381 | source = "registry+https://github.com/rust-lang/crates.io-index" 1382 | checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" 1383 | 1384 | [[package]] 1385 | name = "rayon" 1386 | version = "1.10.0" 1387 | source = "registry+https://github.com/rust-lang/crates.io-index" 1388 | checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" 1389 | dependencies = [ 1390 | "either", 1391 | "rayon-core", 1392 | ] 1393 | 1394 | [[package]] 1395 | name = "rayon-core" 1396 | version = "1.12.1" 1397 | source = "registry+https://github.com/rust-lang/crates.io-index" 1398 | checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" 1399 | dependencies = [ 1400 | "crossbeam-deque", 1401 | "crossbeam-utils", 1402 | ] 1403 | 1404 | [[package]] 1405 | name = "redox_syscall" 1406 | version = "0.4.1" 1407 | source = "registry+https://github.com/rust-lang/crates.io-index" 1408 | checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" 1409 | dependencies = [ 1410 | "bitflags 1.3.2", 1411 | ] 1412 | 1413 | [[package]] 1414 | name = "redox_syscall" 1415 | version = "0.5.3" 1416 | source = "registry+https://github.com/rust-lang/crates.io-index" 1417 | checksum = "2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4" 1418 | dependencies = [ 1419 | "bitflags 2.6.0", 1420 | ] 1421 | 1422 | [[package]] 1423 | name = "redox_users" 1424 | version = "0.5.0" 1425 | source = "registry+https://github.com/rust-lang/crates.io-index" 1426 | checksum = "dd6f9d3d47bdd2ad6945c5015a226ec6155d0bcdfd8f7cd29f86b71f8de99d2b" 1427 | dependencies = [ 1428 | "getrandom", 1429 | "libredox", 1430 | "thiserror 2.0.12", 1431 | ] 1432 | 1433 | [[package]] 1434 | name = "regex" 1435 | version = "1.10.5" 1436 | source = "registry+https://github.com/rust-lang/crates.io-index" 1437 | checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f" 1438 | dependencies = [ 1439 | "aho-corasick", 1440 | "memchr", 1441 | "regex-automata", 1442 | "regex-syntax", 1443 | ] 1444 | 1445 | [[package]] 1446 | name = "regex-automata" 1447 | version = "0.4.7" 1448 | source = "registry+https://github.com/rust-lang/crates.io-index" 1449 | checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" 1450 | dependencies = [ 1451 | "aho-corasick", 1452 | "memchr", 1453 | "regex-syntax", 1454 | ] 1455 | 1456 | [[package]] 1457 | name = "regex-syntax" 1458 | version = "0.8.4" 1459 | source = "registry+https://github.com/rust-lang/crates.io-index" 1460 | checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" 1461 | 1462 | [[package]] 1463 | name = "resvg" 1464 | version = "0.43.0" 1465 | source = "registry+https://github.com/rust-lang/crates.io-index" 1466 | checksum = "c7314563c59c7ce31c18e23ad3dd092c37b928a0fa4e1c0a1a6504351ab411d1" 1467 | dependencies = [ 1468 | "gif", 1469 | "image-webp", 1470 | "log", 1471 | "pico-args", 1472 | "rgb", 1473 | "svgtypes", 1474 | "tiny-skia", 1475 | "usvg", 1476 | "zune-jpeg", 1477 | ] 1478 | 1479 | [[package]] 1480 | name = "rgb" 1481 | version = "0.8.45" 1482 | source = "registry+https://github.com/rust-lang/crates.io-index" 1483 | checksum = "ade4539f42266ded9e755c605bdddf546242b2c961b03b06a7375260788a0523" 1484 | dependencies = [ 1485 | "bytemuck", 1486 | ] 1487 | 1488 | [[package]] 1489 | name = "ring" 1490 | version = "0.17.8" 1491 | source = "registry+https://github.com/rust-lang/crates.io-index" 1492 | checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" 1493 | dependencies = [ 1494 | "cc", 1495 | "cfg-if", 1496 | "getrandom", 1497 | "libc", 1498 | "spin", 1499 | "untrusted", 1500 | "windows-sys 0.52.0", 1501 | ] 1502 | 1503 | [[package]] 1504 | name = "roxmltree" 1505 | version = "0.20.0" 1506 | source = "registry+https://github.com/rust-lang/crates.io-index" 1507 | checksum = "6c20b6793b5c2fa6553b250154b78d6d0db37e72700ae35fad9387a46f487c97" 1508 | 1509 | [[package]] 1510 | name = "rust_decimal" 1511 | version = "1.36.0" 1512 | source = "registry+https://github.com/rust-lang/crates.io-index" 1513 | checksum = "b082d80e3e3cc52b2ed634388d436fe1f4de6af5786cc2de9ba9737527bdf555" 1514 | dependencies = [ 1515 | "arrayvec", 1516 | "num-traits", 1517 | ] 1518 | 1519 | [[package]] 1520 | name = "rustix" 1521 | version = "0.38.34" 1522 | source = "registry+https://github.com/rust-lang/crates.io-index" 1523 | checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" 1524 | dependencies = [ 1525 | "bitflags 2.6.0", 1526 | "errno", 1527 | "libc", 1528 | "linux-raw-sys", 1529 | "windows-sys 0.52.0", 1530 | ] 1531 | 1532 | [[package]] 1533 | name = "rustls" 1534 | version = "0.23.12" 1535 | source = "registry+https://github.com/rust-lang/crates.io-index" 1536 | checksum = "c58f8c84392efc0a126acce10fa59ff7b3d2ac06ab451a33f2741989b806b044" 1537 | dependencies = [ 1538 | "log", 1539 | "once_cell", 1540 | "ring", 1541 | "rustls-pki-types", 1542 | "rustls-webpki", 1543 | "subtle", 1544 | "zeroize", 1545 | ] 1546 | 1547 | [[package]] 1548 | name = "rustls-pki-types" 1549 | version = "1.7.0" 1550 | source = "registry+https://github.com/rust-lang/crates.io-index" 1551 | checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d" 1552 | 1553 | [[package]] 1554 | name = "rustls-webpki" 1555 | version = "0.102.6" 1556 | source = "registry+https://github.com/rust-lang/crates.io-index" 1557 | checksum = "8e6b52d4fda176fd835fdc55a835d4a89b8499cad995885a21149d5ad62f852e" 1558 | dependencies = [ 1559 | "ring", 1560 | "rustls-pki-types", 1561 | "untrusted", 1562 | ] 1563 | 1564 | [[package]] 1565 | name = "rustversion" 1566 | version = "1.0.17" 1567 | source = "registry+https://github.com/rust-lang/crates.io-index" 1568 | checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" 1569 | 1570 | [[package]] 1571 | name = "rustybuzz" 1572 | version = "0.18.0" 1573 | source = "registry+https://github.com/rust-lang/crates.io-index" 1574 | checksum = "c85d1ccd519e61834798eb52c4e886e8c2d7d698dd3d6ce0b1b47eb8557f1181" 1575 | dependencies = [ 1576 | "bitflags 2.6.0", 1577 | "bytemuck", 1578 | "core_maths", 1579 | "log", 1580 | "smallvec", 1581 | "ttf-parser 0.24.1", 1582 | "unicode-bidi-mirroring", 1583 | "unicode-ccc", 1584 | "unicode-properties", 1585 | "unicode-script", 1586 | ] 1587 | 1588 | [[package]] 1589 | name = "ryu" 1590 | version = "1.0.18" 1591 | source = "registry+https://github.com/rust-lang/crates.io-index" 1592 | checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" 1593 | 1594 | [[package]] 1595 | name = "same-file" 1596 | version = "1.0.6" 1597 | source = "registry+https://github.com/rust-lang/crates.io-index" 1598 | checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" 1599 | dependencies = [ 1600 | "winapi-util", 1601 | ] 1602 | 1603 | [[package]] 1604 | name = "schannel" 1605 | version = "0.1.27" 1606 | source = "registry+https://github.com/rust-lang/crates.io-index" 1607 | checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d" 1608 | dependencies = [ 1609 | "windows-sys 0.59.0", 1610 | ] 1611 | 1612 | [[package]] 1613 | name = "scopeguard" 1614 | version = "1.2.0" 1615 | source = "registry+https://github.com/rust-lang/crates.io-index" 1616 | checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" 1617 | 1618 | [[package]] 1619 | name = "security-framework" 1620 | version = "2.11.1" 1621 | source = "registry+https://github.com/rust-lang/crates.io-index" 1622 | checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" 1623 | dependencies = [ 1624 | "bitflags 2.6.0", 1625 | "core-foundation", 1626 | "core-foundation-sys", 1627 | "libc", 1628 | "security-framework-sys", 1629 | ] 1630 | 1631 | [[package]] 1632 | name = "security-framework-sys" 1633 | version = "2.14.0" 1634 | source = "registry+https://github.com/rust-lang/crates.io-index" 1635 | checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32" 1636 | dependencies = [ 1637 | "core-foundation-sys", 1638 | "libc", 1639 | ] 1640 | 1641 | [[package]] 1642 | name = "serde" 1643 | version = "1.0.218" 1644 | source = "registry+https://github.com/rust-lang/crates.io-index" 1645 | checksum = "e8dfc9d19bdbf6d17e22319da49161d5d0108e4188e8b680aef6299eed22df60" 1646 | dependencies = [ 1647 | "serde_derive", 1648 | ] 1649 | 1650 | [[package]] 1651 | name = "serde_derive" 1652 | version = "1.0.218" 1653 | source = "registry+https://github.com/rust-lang/crates.io-index" 1654 | checksum = "f09503e191f4e797cb8aac08e9a4a4695c5edf6a2e70e376d961ddd5c969f82b" 1655 | dependencies = [ 1656 | "proc-macro2", 1657 | "quote", 1658 | "syn", 1659 | ] 1660 | 1661 | [[package]] 1662 | name = "serde_json" 1663 | version = "1.0.121" 1664 | source = "registry+https://github.com/rust-lang/crates.io-index" 1665 | checksum = "4ab380d7d9f22ef3f21ad3e6c1ebe8e4fc7a2000ccba2e4d71fc96f15b2cb609" 1666 | dependencies = [ 1667 | "itoa", 1668 | "memchr", 1669 | "ryu", 1670 | "serde", 1671 | ] 1672 | 1673 | [[package]] 1674 | name = "serde_spanned" 1675 | version = "0.6.7" 1676 | source = "registry+https://github.com/rust-lang/crates.io-index" 1677 | checksum = "eb5b1b31579f3811bf615c144393417496f152e12ac8b7663bf664f4a815306d" 1678 | dependencies = [ 1679 | "serde", 1680 | ] 1681 | 1682 | [[package]] 1683 | name = "serde_yaml" 1684 | version = "0.9.34+deprecated" 1685 | source = "registry+https://github.com/rust-lang/crates.io-index" 1686 | checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" 1687 | dependencies = [ 1688 | "indexmap", 1689 | "itoa", 1690 | "ryu", 1691 | "serde", 1692 | "unsafe-libyaml", 1693 | ] 1694 | 1695 | [[package]] 1696 | name = "simd-adler32" 1697 | version = "0.3.7" 1698 | source = "registry+https://github.com/rust-lang/crates.io-index" 1699 | checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" 1700 | 1701 | [[package]] 1702 | name = "simplecss" 1703 | version = "0.2.1" 1704 | source = "registry+https://github.com/rust-lang/crates.io-index" 1705 | checksum = "a11be7c62927d9427e9f40f3444d5499d868648e2edbc4e2116de69e7ec0e89d" 1706 | dependencies = [ 1707 | "log", 1708 | ] 1709 | 1710 | [[package]] 1711 | name = "siphasher" 1712 | version = "0.3.11" 1713 | source = "registry+https://github.com/rust-lang/crates.io-index" 1714 | checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" 1715 | 1716 | [[package]] 1717 | name = "siphasher" 1718 | version = "1.0.1" 1719 | source = "registry+https://github.com/rust-lang/crates.io-index" 1720 | checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" 1721 | 1722 | [[package]] 1723 | name = "slotmap" 1724 | version = "1.0.7" 1725 | source = "registry+https://github.com/rust-lang/crates.io-index" 1726 | checksum = "dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a" 1727 | dependencies = [ 1728 | "version_check", 1729 | ] 1730 | 1731 | [[package]] 1732 | name = "smallvec" 1733 | version = "1.13.2" 1734 | source = "registry+https://github.com/rust-lang/crates.io-index" 1735 | checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" 1736 | 1737 | [[package]] 1738 | name = "spin" 1739 | version = "0.9.8" 1740 | source = "registry+https://github.com/rust-lang/crates.io-index" 1741 | checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" 1742 | 1743 | [[package]] 1744 | name = "stable_deref_trait" 1745 | version = "1.2.0" 1746 | source = "registry+https://github.com/rust-lang/crates.io-index" 1747 | checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" 1748 | 1749 | [[package]] 1750 | name = "stacker" 1751 | version = "0.1.15" 1752 | source = "registry+https://github.com/rust-lang/crates.io-index" 1753 | checksum = "c886bd4480155fd3ef527d45e9ac8dd7118a898a46530b7b94c3e21866259fce" 1754 | dependencies = [ 1755 | "cc", 1756 | "cfg-if", 1757 | "libc", 1758 | "psm", 1759 | "winapi", 1760 | ] 1761 | 1762 | [[package]] 1763 | name = "strict-num" 1764 | version = "0.1.1" 1765 | source = "registry+https://github.com/rust-lang/crates.io-index" 1766 | checksum = "6637bab7722d379c8b41ba849228d680cc12d0a45ba1fa2b48f2a30577a06731" 1767 | dependencies = [ 1768 | "float-cmp", 1769 | ] 1770 | 1771 | [[package]] 1772 | name = "string-interner" 1773 | version = "0.18.0" 1774 | source = "registry+https://github.com/rust-lang/crates.io-index" 1775 | checksum = "1a3275464d7a9f2d4cac57c89c2ef96a8524dba2864c8d6f82e3980baf136f9b" 1776 | dependencies = [ 1777 | "hashbrown 0.15.2", 1778 | "serde", 1779 | ] 1780 | 1781 | [[package]] 1782 | name = "strum" 1783 | version = "0.26.3" 1784 | source = "registry+https://github.com/rust-lang/crates.io-index" 1785 | checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" 1786 | dependencies = [ 1787 | "strum_macros", 1788 | ] 1789 | 1790 | [[package]] 1791 | name = "strum_macros" 1792 | version = "0.26.4" 1793 | source = "registry+https://github.com/rust-lang/crates.io-index" 1794 | checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" 1795 | dependencies = [ 1796 | "heck", 1797 | "proc-macro2", 1798 | "quote", 1799 | "rustversion", 1800 | "syn", 1801 | ] 1802 | 1803 | [[package]] 1804 | name = "subsetter" 1805 | version = "0.2.0" 1806 | source = "registry+https://github.com/rust-lang/crates.io-index" 1807 | checksum = "74f98178f34057d4d4de93d68104007c6dea4dfac930204a69ab4622daefa648" 1808 | 1809 | [[package]] 1810 | name = "subtle" 1811 | version = "2.6.1" 1812 | source = "registry+https://github.com/rust-lang/crates.io-index" 1813 | checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" 1814 | 1815 | [[package]] 1816 | name = "svg2pdf" 1817 | version = "0.12.0" 1818 | source = "registry+https://github.com/rust-lang/crates.io-index" 1819 | checksum = "5014c9dadcf318fb7ef8c16438e95abcc9de1ae24d60d5bccc64c55100c50364" 1820 | dependencies = [ 1821 | "fontdb", 1822 | "image", 1823 | "log", 1824 | "miniz_oxide 0.8.0", 1825 | "once_cell", 1826 | "pdf-writer", 1827 | "resvg", 1828 | "siphasher 1.0.1", 1829 | "subsetter", 1830 | "tiny-skia", 1831 | "ttf-parser 0.24.1", 1832 | "usvg", 1833 | ] 1834 | 1835 | [[package]] 1836 | name = "svgtypes" 1837 | version = "0.15.2" 1838 | source = "registry+https://github.com/rust-lang/crates.io-index" 1839 | checksum = "794de53cc48eaabeed0ab6a3404a65f40b3e38c067e4435883a65d2aa4ca000e" 1840 | dependencies = [ 1841 | "kurbo", 1842 | "siphasher 1.0.1", 1843 | ] 1844 | 1845 | [[package]] 1846 | name = "syn" 1847 | version = "2.0.98" 1848 | source = "registry+https://github.com/rust-lang/crates.io-index" 1849 | checksum = "36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1" 1850 | dependencies = [ 1851 | "proc-macro2", 1852 | "quote", 1853 | "unicode-ident", 1854 | ] 1855 | 1856 | [[package]] 1857 | name = "synstructure" 1858 | version = "0.13.1" 1859 | source = "registry+https://github.com/rust-lang/crates.io-index" 1860 | checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" 1861 | dependencies = [ 1862 | "proc-macro2", 1863 | "quote", 1864 | "syn", 1865 | ] 1866 | 1867 | [[package]] 1868 | name = "syntect" 1869 | version = "5.2.0" 1870 | source = "registry+https://github.com/rust-lang/crates.io-index" 1871 | checksum = "874dcfa363995604333cf947ae9f751ca3af4522c60886774c4963943b4746b1" 1872 | dependencies = [ 1873 | "bincode", 1874 | "bitflags 1.3.2", 1875 | "fancy-regex", 1876 | "flate2", 1877 | "fnv", 1878 | "once_cell", 1879 | "plist", 1880 | "regex-syntax", 1881 | "serde", 1882 | "serde_derive", 1883 | "serde_json", 1884 | "thiserror 1.0.63", 1885 | "walkdir", 1886 | "yaml-rust", 1887 | ] 1888 | 1889 | [[package]] 1890 | name = "tar" 1891 | version = "0.4.41" 1892 | source = "registry+https://github.com/rust-lang/crates.io-index" 1893 | checksum = "cb797dad5fb5b76fcf519e702f4a589483b5ef06567f160c392832c1f5e44909" 1894 | dependencies = [ 1895 | "filetime", 1896 | "libc", 1897 | "xattr", 1898 | ] 1899 | 1900 | [[package]] 1901 | name = "tempfile" 1902 | version = "3.12.0" 1903 | source = "registry+https://github.com/rust-lang/crates.io-index" 1904 | checksum = "04cbcdd0c794ebb0d4cf35e88edd2f7d2c4c3e9a5a6dab322839b321c6a87a64" 1905 | dependencies = [ 1906 | "cfg-if", 1907 | "fastrand", 1908 | "once_cell", 1909 | "rustix", 1910 | "windows-sys 0.59.0", 1911 | ] 1912 | 1913 | [[package]] 1914 | name = "thin-vec" 1915 | version = "0.2.13" 1916 | source = "registry+https://github.com/rust-lang/crates.io-index" 1917 | checksum = "a38c90d48152c236a3ab59271da4f4ae63d678c5d7ad6b7714d7cb9760be5e4b" 1918 | 1919 | [[package]] 1920 | name = "thiserror" 1921 | version = "1.0.63" 1922 | source = "registry+https://github.com/rust-lang/crates.io-index" 1923 | checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" 1924 | dependencies = [ 1925 | "thiserror-impl 1.0.63", 1926 | ] 1927 | 1928 | [[package]] 1929 | name = "thiserror" 1930 | version = "2.0.12" 1931 | source = "registry+https://github.com/rust-lang/crates.io-index" 1932 | checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" 1933 | dependencies = [ 1934 | "thiserror-impl 2.0.12", 1935 | ] 1936 | 1937 | [[package]] 1938 | name = "thiserror-impl" 1939 | version = "1.0.63" 1940 | source = "registry+https://github.com/rust-lang/crates.io-index" 1941 | checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" 1942 | dependencies = [ 1943 | "proc-macro2", 1944 | "quote", 1945 | "syn", 1946 | ] 1947 | 1948 | [[package]] 1949 | name = "thiserror-impl" 1950 | version = "2.0.12" 1951 | source = "registry+https://github.com/rust-lang/crates.io-index" 1952 | checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" 1953 | dependencies = [ 1954 | "proc-macro2", 1955 | "quote", 1956 | "syn", 1957 | ] 1958 | 1959 | [[package]] 1960 | name = "time" 1961 | version = "0.3.36" 1962 | source = "registry+https://github.com/rust-lang/crates.io-index" 1963 | checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" 1964 | dependencies = [ 1965 | "deranged", 1966 | "itoa", 1967 | "num-conv", 1968 | "powerfmt", 1969 | "serde", 1970 | "time-core", 1971 | "time-macros", 1972 | ] 1973 | 1974 | [[package]] 1975 | name = "time-core" 1976 | version = "0.1.2" 1977 | source = "registry+https://github.com/rust-lang/crates.io-index" 1978 | checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" 1979 | 1980 | [[package]] 1981 | name = "time-macros" 1982 | version = "0.2.18" 1983 | source = "registry+https://github.com/rust-lang/crates.io-index" 1984 | checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" 1985 | dependencies = [ 1986 | "num-conv", 1987 | "time-core", 1988 | ] 1989 | 1990 | [[package]] 1991 | name = "tiny-skia" 1992 | version = "0.11.4" 1993 | source = "registry+https://github.com/rust-lang/crates.io-index" 1994 | checksum = "83d13394d44dae3207b52a326c0c85a8bf87f1541f23b0d143811088497b09ab" 1995 | dependencies = [ 1996 | "arrayref", 1997 | "arrayvec", 1998 | "bytemuck", 1999 | "cfg-if", 2000 | "log", 2001 | "png", 2002 | "tiny-skia-path", 2003 | ] 2004 | 2005 | [[package]] 2006 | name = "tiny-skia-path" 2007 | version = "0.11.4" 2008 | source = "registry+https://github.com/rust-lang/crates.io-index" 2009 | checksum = "9c9e7fc0c2e86a30b117d0462aa261b72b7a99b7ebd7deb3a14ceda95c5bdc93" 2010 | dependencies = [ 2011 | "arrayref", 2012 | "bytemuck", 2013 | "strict-num", 2014 | ] 2015 | 2016 | [[package]] 2017 | name = "tinystr" 2018 | version = "0.7.6" 2019 | source = "registry+https://github.com/rust-lang/crates.io-index" 2020 | checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" 2021 | dependencies = [ 2022 | "displaydoc", 2023 | "serde", 2024 | "zerovec", 2025 | ] 2026 | 2027 | [[package]] 2028 | name = "tinyvec" 2029 | version = "1.8.0" 2030 | source = "registry+https://github.com/rust-lang/crates.io-index" 2031 | checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" 2032 | dependencies = [ 2033 | "tinyvec_macros", 2034 | ] 2035 | 2036 | [[package]] 2037 | name = "tinyvec_macros" 2038 | version = "0.1.1" 2039 | source = "registry+https://github.com/rust-lang/crates.io-index" 2040 | checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" 2041 | 2042 | [[package]] 2043 | name = "toml" 2044 | version = "0.8.19" 2045 | source = "registry+https://github.com/rust-lang/crates.io-index" 2046 | checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" 2047 | dependencies = [ 2048 | "serde", 2049 | "serde_spanned", 2050 | "toml_datetime", 2051 | "toml_edit", 2052 | ] 2053 | 2054 | [[package]] 2055 | name = "toml_datetime" 2056 | version = "0.6.8" 2057 | source = "registry+https://github.com/rust-lang/crates.io-index" 2058 | checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" 2059 | dependencies = [ 2060 | "serde", 2061 | ] 2062 | 2063 | [[package]] 2064 | name = "toml_edit" 2065 | version = "0.22.20" 2066 | source = "registry+https://github.com/rust-lang/crates.io-index" 2067 | checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d" 2068 | dependencies = [ 2069 | "indexmap", 2070 | "serde", 2071 | "serde_spanned", 2072 | "toml_datetime", 2073 | "winnow", 2074 | ] 2075 | 2076 | [[package]] 2077 | name = "ttf-parser" 2078 | version = "0.24.1" 2079 | source = "registry+https://github.com/rust-lang/crates.io-index" 2080 | checksum = "5be21190ff5d38e8b4a2d3b6a3ae57f612cc39c96e83cedeaf7abc338a8bac4a" 2081 | dependencies = [ 2082 | "core_maths", 2083 | ] 2084 | 2085 | [[package]] 2086 | name = "ttf-parser" 2087 | version = "0.25.0" 2088 | source = "registry+https://github.com/rust-lang/crates.io-index" 2089 | checksum = "5902c5d130972a0000f60860bfbf46f7ca3db5391eddfedd1b8728bd9dc96c0e" 2090 | 2091 | [[package]] 2092 | name = "two-face" 2093 | version = "0.4.3" 2094 | source = "registry+https://github.com/rust-lang/crates.io-index" 2095 | checksum = "384eda438ddf62e2c6f39a174452d952d9d9df5a8ad5ade22198609f8dcaf852" 2096 | dependencies = [ 2097 | "once_cell", 2098 | "serde", 2099 | "syntect", 2100 | ] 2101 | 2102 | [[package]] 2103 | name = "typed-arena" 2104 | version = "2.0.2" 2105 | source = "registry+https://github.com/rust-lang/crates.io-index" 2106 | checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a" 2107 | 2108 | [[package]] 2109 | name = "typst" 2110 | version = "0.13.1" 2111 | source = "registry+https://github.com/rust-lang/crates.io-index" 2112 | checksum = "140458bc8c72b014266f8ea5fad57165c8159845105eea8949c8954b2a8f49f4" 2113 | dependencies = [ 2114 | "comemo", 2115 | "ecow", 2116 | "typst-eval", 2117 | "typst-html", 2118 | "typst-layout", 2119 | "typst-library", 2120 | "typst-macros", 2121 | "typst-realize", 2122 | "typst-syntax", 2123 | "typst-timing", 2124 | "typst-utils", 2125 | ] 2126 | 2127 | [[package]] 2128 | name = "typst-as-library" 2129 | version = "0.1.0" 2130 | dependencies = [ 2131 | "comemo", 2132 | "tar", 2133 | "time", 2134 | "ttf-parser 0.25.0", 2135 | "typst", 2136 | "typst-kit", 2137 | "ureq", 2138 | "zune-inflate", 2139 | ] 2140 | 2141 | [[package]] 2142 | name = "typst-as-library-example" 2143 | version = "0.1.0" 2144 | dependencies = [ 2145 | "typst", 2146 | "typst-as-library", 2147 | "typst-pdf", 2148 | "typst-svg", 2149 | ] 2150 | 2151 | [[package]] 2152 | name = "typst-assets" 2153 | version = "0.13.1" 2154 | source = "registry+https://github.com/rust-lang/crates.io-index" 2155 | checksum = "b5bf0cc3c2265502b51fcb73147cc7c951ceb694507195b93c2ab0b901abb902" 2156 | 2157 | [[package]] 2158 | name = "typst-eval" 2159 | version = "0.13.1" 2160 | source = "registry+https://github.com/rust-lang/crates.io-index" 2161 | checksum = "850733c95becdb1b0153fd50e979b06d1a3d42f2411f2a0206b3a793501205ac" 2162 | dependencies = [ 2163 | "comemo", 2164 | "ecow", 2165 | "if_chain", 2166 | "indexmap", 2167 | "stacker", 2168 | "toml", 2169 | "typst-library", 2170 | "typst-macros", 2171 | "typst-syntax", 2172 | "typst-timing", 2173 | "typst-utils", 2174 | "unicode-segmentation", 2175 | ] 2176 | 2177 | [[package]] 2178 | name = "typst-html" 2179 | version = "0.13.1" 2180 | source = "registry+https://github.com/rust-lang/crates.io-index" 2181 | checksum = "654de5a88b9104f9b19723166eb16b8aec6df72a060d91736b81dc72e905e7cc" 2182 | dependencies = [ 2183 | "comemo", 2184 | "ecow", 2185 | "typst-library", 2186 | "typst-macros", 2187 | "typst-svg", 2188 | "typst-syntax", 2189 | "typst-timing", 2190 | "typst-utils", 2191 | ] 2192 | 2193 | [[package]] 2194 | name = "typst-kit" 2195 | version = "0.13.1" 2196 | source = "registry+https://github.com/rust-lang/crates.io-index" 2197 | checksum = "818fa9d54e1663fe20d15f6359945616cc4026d68c4de6c4eb0add7556fe2a90" 2198 | dependencies = [ 2199 | "dirs", 2200 | "ecow", 2201 | "env_proxy", 2202 | "flate2", 2203 | "fontdb", 2204 | "native-tls", 2205 | "once_cell", 2206 | "openssl", 2207 | "serde", 2208 | "serde_json", 2209 | "tar", 2210 | "typst-assets", 2211 | "typst-library", 2212 | "typst-syntax", 2213 | "typst-timing", 2214 | "typst-utils", 2215 | "ureq", 2216 | ] 2217 | 2218 | [[package]] 2219 | name = "typst-layout" 2220 | version = "0.13.1" 2221 | source = "registry+https://github.com/rust-lang/crates.io-index" 2222 | checksum = "dc7f7129c44423e54e9943c8a87403a82e8a5a1bdfd3ef08c0aae1b66deec696" 2223 | dependencies = [ 2224 | "az", 2225 | "bumpalo", 2226 | "comemo", 2227 | "ecow", 2228 | "hypher", 2229 | "icu_properties", 2230 | "icu_provider", 2231 | "icu_provider_adapters", 2232 | "icu_provider_blob", 2233 | "icu_segmenter", 2234 | "kurbo", 2235 | "rustybuzz", 2236 | "smallvec", 2237 | "ttf-parser 0.24.1", 2238 | "typst-assets", 2239 | "typst-library", 2240 | "typst-macros", 2241 | "typst-syntax", 2242 | "typst-timing", 2243 | "typst-utils", 2244 | "unicode-bidi", 2245 | "unicode-math-class", 2246 | "unicode-script", 2247 | "unicode-segmentation", 2248 | ] 2249 | 2250 | [[package]] 2251 | name = "typst-library" 2252 | version = "0.13.1" 2253 | source = "registry+https://github.com/rust-lang/crates.io-index" 2254 | checksum = "722b0d6dfd05aa5bb7da7f282586f624f452e3f285cd3a10ac0d7e99f3bc3048" 2255 | dependencies = [ 2256 | "az", 2257 | "bitflags 2.6.0", 2258 | "bumpalo", 2259 | "chinese-number", 2260 | "ciborium", 2261 | "codex", 2262 | "comemo", 2263 | "csv", 2264 | "ecow", 2265 | "flate2", 2266 | "fontdb", 2267 | "hayagriva", 2268 | "icu_properties", 2269 | "icu_provider", 2270 | "icu_provider_blob", 2271 | "image", 2272 | "indexmap", 2273 | "kamadak-exif", 2274 | "kurbo", 2275 | "lipsum", 2276 | "memchr", 2277 | "palette", 2278 | "phf", 2279 | "png", 2280 | "qcms", 2281 | "rayon", 2282 | "regex", 2283 | "regex-syntax", 2284 | "roxmltree", 2285 | "rust_decimal", 2286 | "rustybuzz", 2287 | "serde", 2288 | "serde_json", 2289 | "serde_yaml", 2290 | "siphasher 1.0.1", 2291 | "smallvec", 2292 | "syntect", 2293 | "time", 2294 | "toml", 2295 | "ttf-parser 0.24.1", 2296 | "two-face", 2297 | "typed-arena", 2298 | "typst-assets", 2299 | "typst-macros", 2300 | "typst-syntax", 2301 | "typst-timing", 2302 | "typst-utils", 2303 | "unicode-math-class", 2304 | "unicode-segmentation", 2305 | "unscanny", 2306 | "usvg", 2307 | "wasmi", 2308 | "xmlwriter", 2309 | ] 2310 | 2311 | [[package]] 2312 | name = "typst-macros" 2313 | version = "0.13.1" 2314 | source = "registry+https://github.com/rust-lang/crates.io-index" 2315 | checksum = "c5a7667bf2ff3111e25744e72abfdbbed5fed9a37476043448e935697e55a6fb" 2316 | dependencies = [ 2317 | "heck", 2318 | "proc-macro2", 2319 | "quote", 2320 | "syn", 2321 | ] 2322 | 2323 | [[package]] 2324 | name = "typst-pdf" 2325 | version = "0.13.1" 2326 | source = "registry+https://github.com/rust-lang/crates.io-index" 2327 | checksum = "a78718a94c28b5ed5e9ee9826fa995004a81abbcc1c9d0e88a7e87656cbec5a4" 2328 | dependencies = [ 2329 | "arrayvec", 2330 | "base64", 2331 | "bytemuck", 2332 | "comemo", 2333 | "ecow", 2334 | "image", 2335 | "indexmap", 2336 | "miniz_oxide 0.8.0", 2337 | "pdf-writer", 2338 | "serde", 2339 | "subsetter", 2340 | "svg2pdf", 2341 | "ttf-parser 0.24.1", 2342 | "typst-assets", 2343 | "typst-library", 2344 | "typst-macros", 2345 | "typst-syntax", 2346 | "typst-timing", 2347 | "typst-utils", 2348 | "xmp-writer", 2349 | ] 2350 | 2351 | [[package]] 2352 | name = "typst-realize" 2353 | version = "0.13.1" 2354 | source = "registry+https://github.com/rust-lang/crates.io-index" 2355 | checksum = "7bc724c3303b9864c01f25292d82c3aa8f0492512bd890836f1fb7242fa5b8af" 2356 | dependencies = [ 2357 | "arrayvec", 2358 | "bumpalo", 2359 | "comemo", 2360 | "ecow", 2361 | "regex", 2362 | "typst-library", 2363 | "typst-macros", 2364 | "typst-syntax", 2365 | "typst-timing", 2366 | "typst-utils", 2367 | ] 2368 | 2369 | [[package]] 2370 | name = "typst-svg" 2371 | version = "0.13.1" 2372 | source = "registry+https://github.com/rust-lang/crates.io-index" 2373 | checksum = "674c8e5cb94015c9f870c48bace6b64eb706075766643f3b1f67606c6b03feae" 2374 | dependencies = [ 2375 | "base64", 2376 | "comemo", 2377 | "ecow", 2378 | "flate2", 2379 | "image", 2380 | "ttf-parser 0.24.1", 2381 | "typst-library", 2382 | "typst-macros", 2383 | "typst-timing", 2384 | "typst-utils", 2385 | "xmlparser", 2386 | "xmlwriter", 2387 | ] 2388 | 2389 | [[package]] 2390 | name = "typst-syntax" 2391 | version = "0.13.1" 2392 | source = "registry+https://github.com/rust-lang/crates.io-index" 2393 | checksum = "5ba949ac75a374ea6b2f61d32e6c63acb818e6179d16f78b2cba988fbb5e23a8" 2394 | dependencies = [ 2395 | "ecow", 2396 | "serde", 2397 | "toml", 2398 | "typst-timing", 2399 | "typst-utils", 2400 | "unicode-ident", 2401 | "unicode-math-class", 2402 | "unicode-script", 2403 | "unicode-segmentation", 2404 | "unscanny", 2405 | ] 2406 | 2407 | [[package]] 2408 | name = "typst-timing" 2409 | version = "0.13.1" 2410 | source = "registry+https://github.com/rust-lang/crates.io-index" 2411 | checksum = "8ba4541664e98be2023db2267d92af206190eb903063a0229c668e1ab9dca976" 2412 | dependencies = [ 2413 | "parking_lot", 2414 | "serde", 2415 | "serde_json", 2416 | ] 2417 | 2418 | [[package]] 2419 | name = "typst-utils" 2420 | version = "0.13.1" 2421 | source = "registry+https://github.com/rust-lang/crates.io-index" 2422 | checksum = "0eb71d59967e0fb32341f8a94f41ced8da520c63705cca2686ae653c9408fd96" 2423 | dependencies = [ 2424 | "once_cell", 2425 | "portable-atomic", 2426 | "rayon", 2427 | "siphasher 1.0.1", 2428 | "thin-vec", 2429 | "unicode-math-class", 2430 | ] 2431 | 2432 | [[package]] 2433 | name = "unic-langid" 2434 | version = "0.9.5" 2435 | source = "registry+https://github.com/rust-lang/crates.io-index" 2436 | checksum = "23dd9d1e72a73b25e07123a80776aae3e7b0ec461ef94f9151eed6ec88005a44" 2437 | dependencies = [ 2438 | "unic-langid-impl", 2439 | ] 2440 | 2441 | [[package]] 2442 | name = "unic-langid-impl" 2443 | version = "0.9.5" 2444 | source = "registry+https://github.com/rust-lang/crates.io-index" 2445 | checksum = "0a5422c1f65949306c99240b81de9f3f15929f5a8bfe05bb44b034cc8bf593e5" 2446 | dependencies = [ 2447 | "serde", 2448 | "tinystr", 2449 | ] 2450 | 2451 | [[package]] 2452 | name = "unicode-bidi" 2453 | version = "0.3.18" 2454 | source = "registry+https://github.com/rust-lang/crates.io-index" 2455 | checksum = "5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5" 2456 | 2457 | [[package]] 2458 | name = "unicode-bidi-mirroring" 2459 | version = "0.3.0" 2460 | source = "registry+https://github.com/rust-lang/crates.io-index" 2461 | checksum = "64af057ad7466495ca113126be61838d8af947f41d93a949980b2389a118082f" 2462 | 2463 | [[package]] 2464 | name = "unicode-ccc" 2465 | version = "0.3.0" 2466 | source = "registry+https://github.com/rust-lang/crates.io-index" 2467 | checksum = "260bc6647b3893a9a90668360803a15f96b85a5257b1c3a0c3daf6ae2496de42" 2468 | 2469 | [[package]] 2470 | name = "unicode-ident" 2471 | version = "1.0.12" 2472 | source = "registry+https://github.com/rust-lang/crates.io-index" 2473 | checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" 2474 | 2475 | [[package]] 2476 | name = "unicode-math-class" 2477 | version = "0.1.0" 2478 | source = "registry+https://github.com/rust-lang/crates.io-index" 2479 | checksum = "7d246cf599d5fae3c8d56e04b20eb519adb89a8af8d0b0fbcded369aa3647d65" 2480 | 2481 | [[package]] 2482 | name = "unicode-normalization" 2483 | version = "0.1.23" 2484 | source = "registry+https://github.com/rust-lang/crates.io-index" 2485 | checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" 2486 | dependencies = [ 2487 | "tinyvec", 2488 | ] 2489 | 2490 | [[package]] 2491 | name = "unicode-properties" 2492 | version = "0.1.1" 2493 | source = "registry+https://github.com/rust-lang/crates.io-index" 2494 | checksum = "e4259d9d4425d9f0661581b804cb85fe66a4c631cadd8f490d1c13a35d5d9291" 2495 | 2496 | [[package]] 2497 | name = "unicode-script" 2498 | version = "0.5.6" 2499 | source = "registry+https://github.com/rust-lang/crates.io-index" 2500 | checksum = "ad8d71f5726e5f285a935e9fe8edfd53f0491eb6e9a5774097fdabee7cd8c9cd" 2501 | 2502 | [[package]] 2503 | name = "unicode-segmentation" 2504 | version = "1.11.0" 2505 | source = "registry+https://github.com/rust-lang/crates.io-index" 2506 | checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" 2507 | 2508 | [[package]] 2509 | name = "unicode-vo" 2510 | version = "0.1.0" 2511 | source = "registry+https://github.com/rust-lang/crates.io-index" 2512 | checksum = "b1d386ff53b415b7fe27b50bb44679e2cc4660272694b7b6f3326d8480823a94" 2513 | 2514 | [[package]] 2515 | name = "unsafe-libyaml" 2516 | version = "0.2.11" 2517 | source = "registry+https://github.com/rust-lang/crates.io-index" 2518 | checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" 2519 | 2520 | [[package]] 2521 | name = "unscanny" 2522 | version = "0.1.0" 2523 | source = "registry+https://github.com/rust-lang/crates.io-index" 2524 | checksum = "e9df2af067a7953e9c3831320f35c1cc0600c30d44d9f7a12b01db1cd88d6b47" 2525 | 2526 | [[package]] 2527 | name = "untrusted" 2528 | version = "0.9.0" 2529 | source = "registry+https://github.com/rust-lang/crates.io-index" 2530 | checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" 2531 | 2532 | [[package]] 2533 | name = "ureq" 2534 | version = "2.10.0" 2535 | source = "registry+https://github.com/rust-lang/crates.io-index" 2536 | checksum = "72139d247e5f97a3eff96229a7ae85ead5328a39efe76f8bf5a06313d505b6ea" 2537 | dependencies = [ 2538 | "base64", 2539 | "flate2", 2540 | "log", 2541 | "native-tls", 2542 | "once_cell", 2543 | "rustls", 2544 | "rustls-pki-types", 2545 | "serde", 2546 | "serde_json", 2547 | "url", 2548 | "webpki-roots", 2549 | ] 2550 | 2551 | [[package]] 2552 | name = "url" 2553 | version = "2.5.2" 2554 | source = "registry+https://github.com/rust-lang/crates.io-index" 2555 | checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" 2556 | dependencies = [ 2557 | "form_urlencoded", 2558 | "idna", 2559 | "percent-encoding", 2560 | "serde", 2561 | ] 2562 | 2563 | [[package]] 2564 | name = "usvg" 2565 | version = "0.43.0" 2566 | source = "registry+https://github.com/rust-lang/crates.io-index" 2567 | checksum = "6803057b5cbb426e9fb8ce2216f3a9b4ca1dd2c705ba3cbebc13006e437735fd" 2568 | dependencies = [ 2569 | "base64", 2570 | "data-url", 2571 | "flate2", 2572 | "fontdb", 2573 | "imagesize", 2574 | "kurbo", 2575 | "log", 2576 | "pico-args", 2577 | "roxmltree", 2578 | "rustybuzz", 2579 | "simplecss", 2580 | "siphasher 1.0.1", 2581 | "strict-num", 2582 | "svgtypes", 2583 | "tiny-skia-path", 2584 | "unicode-bidi", 2585 | "unicode-script", 2586 | "unicode-vo", 2587 | "xmlwriter", 2588 | ] 2589 | 2590 | [[package]] 2591 | name = "utf8_iter" 2592 | version = "1.0.4" 2593 | source = "registry+https://github.com/rust-lang/crates.io-index" 2594 | checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" 2595 | 2596 | [[package]] 2597 | name = "vcpkg" 2598 | version = "0.2.15" 2599 | source = "registry+https://github.com/rust-lang/crates.io-index" 2600 | checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" 2601 | 2602 | [[package]] 2603 | name = "version_check" 2604 | version = "0.9.5" 2605 | source = "registry+https://github.com/rust-lang/crates.io-index" 2606 | checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" 2607 | 2608 | [[package]] 2609 | name = "walkdir" 2610 | version = "2.5.0" 2611 | source = "registry+https://github.com/rust-lang/crates.io-index" 2612 | checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" 2613 | dependencies = [ 2614 | "same-file", 2615 | "winapi-util", 2616 | ] 2617 | 2618 | [[package]] 2619 | name = "wasi" 2620 | version = "0.11.0+wasi-snapshot-preview1" 2621 | source = "registry+https://github.com/rust-lang/crates.io-index" 2622 | checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" 2623 | 2624 | [[package]] 2625 | name = "wasmi" 2626 | version = "0.40.0" 2627 | source = "registry+https://github.com/rust-lang/crates.io-index" 2628 | checksum = "a19af97fcb96045dd1d6b4d23e2b4abdbbe81723dbc5c9f016eb52145b320063" 2629 | dependencies = [ 2630 | "arrayvec", 2631 | "multi-stash", 2632 | "smallvec", 2633 | "spin", 2634 | "wasmi_collections", 2635 | "wasmi_core", 2636 | "wasmi_ir", 2637 | "wasmparser", 2638 | ] 2639 | 2640 | [[package]] 2641 | name = "wasmi_collections" 2642 | version = "0.40.0" 2643 | source = "registry+https://github.com/rust-lang/crates.io-index" 2644 | checksum = "e80d6b275b1c922021939d561574bf376613493ae2b61c6963b15db0e8813562" 2645 | dependencies = [ 2646 | "string-interner", 2647 | ] 2648 | 2649 | [[package]] 2650 | name = "wasmi_core" 2651 | version = "0.40.0" 2652 | source = "registry+https://github.com/rust-lang/crates.io-index" 2653 | checksum = "3a8c51482cc32d31c2c7ff211cd2bedd73c5bd057ba16a2ed0110e7a96097c33" 2654 | dependencies = [ 2655 | "downcast-rs", 2656 | "libm", 2657 | ] 2658 | 2659 | [[package]] 2660 | name = "wasmi_ir" 2661 | version = "0.40.0" 2662 | source = "registry+https://github.com/rust-lang/crates.io-index" 2663 | checksum = "6e431a14c186db59212a88516788bd68ed51f87aa1e08d1df742522867b5289a" 2664 | dependencies = [ 2665 | "wasmi_core", 2666 | ] 2667 | 2668 | [[package]] 2669 | name = "wasmparser" 2670 | version = "0.221.3" 2671 | source = "registry+https://github.com/rust-lang/crates.io-index" 2672 | checksum = "d06bfa36ab3ac2be0dee563380147a5b81ba10dd8885d7fbbc9eb574be67d185" 2673 | dependencies = [ 2674 | "bitflags 2.6.0", 2675 | "indexmap", 2676 | ] 2677 | 2678 | [[package]] 2679 | name = "webpki-roots" 2680 | version = "0.26.3" 2681 | source = "registry+https://github.com/rust-lang/crates.io-index" 2682 | checksum = "bd7c23921eeb1713a4e851530e9b9756e4fb0e89978582942612524cf09f01cd" 2683 | dependencies = [ 2684 | "rustls-pki-types", 2685 | ] 2686 | 2687 | [[package]] 2688 | name = "weezl" 2689 | version = "0.1.8" 2690 | source = "registry+https://github.com/rust-lang/crates.io-index" 2691 | checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082" 2692 | 2693 | [[package]] 2694 | name = "winapi" 2695 | version = "0.3.9" 2696 | source = "registry+https://github.com/rust-lang/crates.io-index" 2697 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 2698 | dependencies = [ 2699 | "winapi-i686-pc-windows-gnu", 2700 | "winapi-x86_64-pc-windows-gnu", 2701 | ] 2702 | 2703 | [[package]] 2704 | name = "winapi-i686-pc-windows-gnu" 2705 | version = "0.4.0" 2706 | source = "registry+https://github.com/rust-lang/crates.io-index" 2707 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 2708 | 2709 | [[package]] 2710 | name = "winapi-util" 2711 | version = "0.1.8" 2712 | source = "registry+https://github.com/rust-lang/crates.io-index" 2713 | checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b" 2714 | dependencies = [ 2715 | "windows-sys 0.52.0", 2716 | ] 2717 | 2718 | [[package]] 2719 | name = "winapi-x86_64-pc-windows-gnu" 2720 | version = "0.4.0" 2721 | source = "registry+https://github.com/rust-lang/crates.io-index" 2722 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 2723 | 2724 | [[package]] 2725 | name = "windows-sys" 2726 | version = "0.52.0" 2727 | source = "registry+https://github.com/rust-lang/crates.io-index" 2728 | checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" 2729 | dependencies = [ 2730 | "windows-targets", 2731 | ] 2732 | 2733 | [[package]] 2734 | name = "windows-sys" 2735 | version = "0.59.0" 2736 | source = "registry+https://github.com/rust-lang/crates.io-index" 2737 | checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" 2738 | dependencies = [ 2739 | "windows-targets", 2740 | ] 2741 | 2742 | [[package]] 2743 | name = "windows-targets" 2744 | version = "0.52.6" 2745 | source = "registry+https://github.com/rust-lang/crates.io-index" 2746 | checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" 2747 | dependencies = [ 2748 | "windows_aarch64_gnullvm", 2749 | "windows_aarch64_msvc", 2750 | "windows_i686_gnu", 2751 | "windows_i686_gnullvm", 2752 | "windows_i686_msvc", 2753 | "windows_x86_64_gnu", 2754 | "windows_x86_64_gnullvm", 2755 | "windows_x86_64_msvc", 2756 | ] 2757 | 2758 | [[package]] 2759 | name = "windows_aarch64_gnullvm" 2760 | version = "0.52.6" 2761 | source = "registry+https://github.com/rust-lang/crates.io-index" 2762 | checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" 2763 | 2764 | [[package]] 2765 | name = "windows_aarch64_msvc" 2766 | version = "0.52.6" 2767 | source = "registry+https://github.com/rust-lang/crates.io-index" 2768 | checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" 2769 | 2770 | [[package]] 2771 | name = "windows_i686_gnu" 2772 | version = "0.52.6" 2773 | source = "registry+https://github.com/rust-lang/crates.io-index" 2774 | checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" 2775 | 2776 | [[package]] 2777 | name = "windows_i686_gnullvm" 2778 | version = "0.52.6" 2779 | source = "registry+https://github.com/rust-lang/crates.io-index" 2780 | checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" 2781 | 2782 | [[package]] 2783 | name = "windows_i686_msvc" 2784 | version = "0.52.6" 2785 | source = "registry+https://github.com/rust-lang/crates.io-index" 2786 | checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" 2787 | 2788 | [[package]] 2789 | name = "windows_x86_64_gnu" 2790 | version = "0.52.6" 2791 | source = "registry+https://github.com/rust-lang/crates.io-index" 2792 | checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" 2793 | 2794 | [[package]] 2795 | name = "windows_x86_64_gnullvm" 2796 | version = "0.52.6" 2797 | source = "registry+https://github.com/rust-lang/crates.io-index" 2798 | checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" 2799 | 2800 | [[package]] 2801 | name = "windows_x86_64_msvc" 2802 | version = "0.52.6" 2803 | source = "registry+https://github.com/rust-lang/crates.io-index" 2804 | checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" 2805 | 2806 | [[package]] 2807 | name = "winnow" 2808 | version = "0.6.18" 2809 | source = "registry+https://github.com/rust-lang/crates.io-index" 2810 | checksum = "68a9bda4691f099d435ad181000724da8e5899daa10713c2d432552b9ccd3a6f" 2811 | dependencies = [ 2812 | "memchr", 2813 | ] 2814 | 2815 | [[package]] 2816 | name = "writeable" 2817 | version = "0.5.5" 2818 | source = "registry+https://github.com/rust-lang/crates.io-index" 2819 | checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" 2820 | 2821 | [[package]] 2822 | name = "xattr" 2823 | version = "1.3.1" 2824 | source = "registry+https://github.com/rust-lang/crates.io-index" 2825 | checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f" 2826 | dependencies = [ 2827 | "libc", 2828 | "linux-raw-sys", 2829 | "rustix", 2830 | ] 2831 | 2832 | [[package]] 2833 | name = "xmlparser" 2834 | version = "0.13.6" 2835 | source = "registry+https://github.com/rust-lang/crates.io-index" 2836 | checksum = "66fee0b777b0f5ac1c69bb06d361268faafa61cd4682ae064a171c16c433e9e4" 2837 | 2838 | [[package]] 2839 | name = "xmlwriter" 2840 | version = "0.1.0" 2841 | source = "registry+https://github.com/rust-lang/crates.io-index" 2842 | checksum = "ec7a2a501ed189703dba8b08142f057e887dfc4b2cc4db2d343ac6376ba3e0b9" 2843 | 2844 | [[package]] 2845 | name = "xmp-writer" 2846 | version = "0.3.1" 2847 | source = "registry+https://github.com/rust-lang/crates.io-index" 2848 | checksum = "7eb5954c9ca6dcc869e98d3e42760ed9dab08f3e70212b31d7ab8ae7f3b7a487" 2849 | 2850 | [[package]] 2851 | name = "yaml-rust" 2852 | version = "0.4.5" 2853 | source = "registry+https://github.com/rust-lang/crates.io-index" 2854 | checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85" 2855 | dependencies = [ 2856 | "linked-hash-map", 2857 | ] 2858 | 2859 | [[package]] 2860 | name = "yoke" 2861 | version = "0.7.4" 2862 | source = "registry+https://github.com/rust-lang/crates.io-index" 2863 | checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" 2864 | dependencies = [ 2865 | "serde", 2866 | "stable_deref_trait", 2867 | "yoke-derive", 2868 | "zerofrom", 2869 | ] 2870 | 2871 | [[package]] 2872 | name = "yoke-derive" 2873 | version = "0.7.4" 2874 | source = "registry+https://github.com/rust-lang/crates.io-index" 2875 | checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" 2876 | dependencies = [ 2877 | "proc-macro2", 2878 | "quote", 2879 | "syn", 2880 | "synstructure", 2881 | ] 2882 | 2883 | [[package]] 2884 | name = "zerocopy" 2885 | version = "0.6.6" 2886 | source = "registry+https://github.com/rust-lang/crates.io-index" 2887 | checksum = "854e949ac82d619ee9a14c66a1b674ac730422372ccb759ce0c39cabcf2bf8e6" 2888 | dependencies = [ 2889 | "byteorder", 2890 | "zerocopy-derive", 2891 | ] 2892 | 2893 | [[package]] 2894 | name = "zerocopy-derive" 2895 | version = "0.6.6" 2896 | source = "registry+https://github.com/rust-lang/crates.io-index" 2897 | checksum = "125139de3f6b9d625c39e2efdd73d41bdac468ccd556556440e322be0e1bbd91" 2898 | dependencies = [ 2899 | "proc-macro2", 2900 | "quote", 2901 | "syn", 2902 | ] 2903 | 2904 | [[package]] 2905 | name = "zerofrom" 2906 | version = "0.1.4" 2907 | source = "registry+https://github.com/rust-lang/crates.io-index" 2908 | checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" 2909 | dependencies = [ 2910 | "zerofrom-derive", 2911 | ] 2912 | 2913 | [[package]] 2914 | name = "zerofrom-derive" 2915 | version = "0.1.4" 2916 | source = "registry+https://github.com/rust-lang/crates.io-index" 2917 | checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" 2918 | dependencies = [ 2919 | "proc-macro2", 2920 | "quote", 2921 | "syn", 2922 | "synstructure", 2923 | ] 2924 | 2925 | [[package]] 2926 | name = "zeroize" 2927 | version = "1.8.1" 2928 | source = "registry+https://github.com/rust-lang/crates.io-index" 2929 | checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" 2930 | 2931 | [[package]] 2932 | name = "zerotrie" 2933 | version = "0.1.3" 2934 | source = "registry+https://github.com/rust-lang/crates.io-index" 2935 | checksum = "fb594dd55d87335c5f60177cee24f19457a5ec10a065e0a3014722ad252d0a1f" 2936 | dependencies = [ 2937 | "displaydoc", 2938 | "litemap", 2939 | "serde", 2940 | "zerovec", 2941 | ] 2942 | 2943 | [[package]] 2944 | name = "zerovec" 2945 | version = "0.10.4" 2946 | source = "registry+https://github.com/rust-lang/crates.io-index" 2947 | checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" 2948 | dependencies = [ 2949 | "serde", 2950 | "yoke", 2951 | "zerofrom", 2952 | "zerovec-derive", 2953 | ] 2954 | 2955 | [[package]] 2956 | name = "zerovec-derive" 2957 | version = "0.10.3" 2958 | source = "registry+https://github.com/rust-lang/crates.io-index" 2959 | checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" 2960 | dependencies = [ 2961 | "proc-macro2", 2962 | "quote", 2963 | "syn", 2964 | ] 2965 | 2966 | [[package]] 2967 | name = "zune-core" 2968 | version = "0.4.12" 2969 | source = "registry+https://github.com/rust-lang/crates.io-index" 2970 | checksum = "3f423a2c17029964870cfaabb1f13dfab7d092a62a29a89264f4d36990ca414a" 2971 | 2972 | [[package]] 2973 | name = "zune-inflate" 2974 | version = "0.2.54" 2975 | source = "registry+https://github.com/rust-lang/crates.io-index" 2976 | checksum = "73ab332fe2f6680068f3582b16a24f90ad7096d5d39b974d1c0aff0125116f02" 2977 | dependencies = [ 2978 | "simd-adler32", 2979 | ] 2980 | 2981 | [[package]] 2982 | name = "zune-jpeg" 2983 | version = "0.4.13" 2984 | source = "registry+https://github.com/rust-lang/crates.io-index" 2985 | checksum = "16099418600b4d8f028622f73ff6e3deaabdff330fb9a2a131dea781ee8b0768" 2986 | dependencies = [ 2987 | "zune-core", 2988 | ] 2989 | --------------------------------------------------------------------------------